Example #1
0
 public function &getXPath()
 {
     if ($this->isTmp()) {
         derr('no xpath on temporary objects');
     }
     $str = $this->owner->getXPath() . "/entry[@name='" . $this->name . "']";
     return $str;
 }
 public function display_statistics()
 {
     $gpreSecRules = $this->securityRules->countPreRules();
     $gpreNatRules = $this->natRules->countPreRules();
     $gpreDecryptRules = $this->decryptionRules->countPreRules();
     $gpostSecRules = $this->securityRules->countPostRules();
     $gpostNatRules = $this->natRules->countPostRules();
     $gpostDecryptRules = $this->decryptionRules->countPostRules();
     $gnservices = $this->serviceStore->countServices();
     $gnservicesUnused = $this->serviceStore->countUnusedServices();
     $gnserviceGs = $this->serviceStore->countServiceGroups();
     $gnserviceGsUnused = $this->serviceStore->countUnusedServiceGroups();
     $gnTmpServices = $this->serviceStore->countTmpServices();
     $gnaddresss = $this->addressStore->countAddresses();
     $gnaddresssUnused = $this->addressStore->countUnusedAddresses();
     $gnaddressGs = $this->addressStore->countAddressGroups();
     $gnaddressGsUnused = $this->addressStore->countUnusedAddressGroups();
     $gnTmpAddresses = $this->addressStore->countTmpAddresses();
     foreach ($this->deviceGroups as $cur) {
         $gpreSecRules += $cur->securityRules->countPreRules();
         $gpreNatRules += $cur->natRules->countPreRules();
         $gpreDecryptRules += $cur->decryptionRules->countPreRules();
         $gpostSecRules += $cur->securityRules->countPostRules();
         $gpostNatRules += $cur->natRules->countPostRules();
         $gpostDecryptRules += $cur->decryptionRules->countPostRules();
         $gnservices += $cur->serviceStore->countServices();
         $gnservicesUnused += $cur->serviceStore->countUnusedServices();
         $gnserviceGs += $cur->serviceStore->countServiceGroups();
         $gnserviceGsUnused += $cur->serviceStore->countUnusedServiceGroups();
         $gnTmpServices += $cur->serviceStore->countTmpServices();
         $gnaddresss += $cur->addressStore->countAddresses();
         $gnaddresssUnused += $cur->addressStore->countUnusedAddresses();
         $gnaddressGs += $cur->addressStore->countAddressGroups();
         $gnaddressGsUnused += $cur->addressStore->countUnusedAddressGroups();
         $gnTmpAddresses += $cur->addressStore->countTmpAddresses();
     }
     print "Statistics for PanoramaConf '" . $this->name . "'\n";
     print "- " . $this->securityRules->countPreRules() . " (" . $gpreSecRules . ") pre-SecRules\n";
     print "- " . $this->securityRules->countPostRules() . " (" . $gpostSecRules . ") post-SecRules\n";
     print "- " . $this->natRules->countPreRules() . " (" . $gpreNatRules . ") pre-NatRules\n";
     print "- " . $this->natRules->countPostRules() . " (" . $gpostNatRules . ") post-NatRules\n";
     print "- " . $this->decryptionRules->countPreRules() . " (" . $gpreDecryptRules . ") pre-NatRules\n";
     print "- " . $this->decryptionRules->countPostRules() . " (" . $gpostDecryptRules . ") post-NatRules\n";
     print "- " . $this->addressStore->countAddresses() . " (" . $gnaddresss . ") address objects. {$gnaddresssUnused} unused\n";
     print "- " . $this->addressStore->countAddressGroups() . " (" . $gnaddressGs . ") address groups. {$gnaddressGsUnused} unused\n";
     print "- " . $this->serviceStore->countServices() . " (" . $gnservices . ") service objects. {$gnservicesUnused} unused\n";
     print "- " . $this->serviceStore->countServiceGroups() . " (" . $gnserviceGs . ") service groups. {$gnserviceGsUnused} unused\n";
     print "- " . $this->addressStore->countTmpAddresses() . " (" . $gnTmpAddresses . ") temporary address objects\n";
     print "- " . $this->serviceStore->countTmpServices() . " (" . $gnTmpServices . ") temporary service objects\n";
     print "- " . $this->zoneStore->count() . " zones\n";
     print "- " . $this->tagStore->count() . " tags\n";
 }
 public function display_statistics()
 {
     print "Statistics for VSYS '" . $this->name . "'\n";
     print "- " . $this->securityRules->count() . " security rules\n";
     print "- " . $this->natRules->count() . " nat rules\n";
     print "- " . $this->decryptionRules->count() . " decryption rules\n";
     print "- " . $this->addressStore->countAddresses() . " address objects\n";
     print "- " . $this->addressStore->countAddressGroups() . " address groups\n";
     print "- " . $this->serviceStore->countServices() . " service objects\n";
     print "- " . $this->serviceStore->countServiceGroups() . " service groups\n";
     print "- " . $this->addressStore->countTmpAddresses() . " temporary address objects\n";
     print "- " . $this->serviceStore->countTmpServices() . " temporary service objects\n";
     print "- " . $this->tagStore->count() . " tags. " . $this->tagStore->countUnused() . " unused\n";
     print "- " . $this->zoneStore->count() . " zones.\n";
     print "- " . $this->appStore->count() . " apps.\n";
 }
 /**
  * should only be called from a Rule constructor
  * @ignore
  */
 public function load_from_domxml($xml)
 {
     //print "started to extract '".$this->toString()."' from xml\n";
     $this->xmlroot = $xml;
     $i = 0;
     foreach ($xml->childNodes as $node) {
         if ($node->nodeType != 1) {
             continue;
         }
         if ($i == 0 && strtolower($node->textContent) == 'any') {
             return;
         }
         if (strlen($node->textContent) < 1) {
             derr('this container has members with empty name!', $node);
         }
         $f = $this->parentCentralStore->findOrCreate($node->textContent, $this);
         $this->o[] = $f;
         $i++;
     }
 }