Exemplo n.º 1
0
    } else {
        if (strtolower($location) == 'any') {
            $location = 'any';
        } else {
            if (strtolower($location) == 'all') {
                $location = 'any';
            }
        }
    }
}
$rulesLocation = array_unique($rulesLocation);
$rulesToProcess = array();
foreach ($rulesLocation as $location) {
    $locationFound = false;
    if ($configType == 'panos') {
        foreach ($pan->getVirtualSystems() as $sub) {
            if ($location == 'any' || $location == 'all' || $location == $sub->name() && !isset($ruleStoresToProcess[$sub->name()])) {
                if (array_search('any', $ruleTypes) !== false || array_search('security', $ruleTypes) !== false) {
                    $rulesToProcess[] = array('store' => $sub->securityRules, 'rules' => $sub->securityRules->rules());
                }
                if (array_search('any', $ruleTypes) !== false || array_search('nat', $ruleTypes) !== false) {
                    $rulesToProcess[] = array('store' => $sub->natRules, 'rules' => $sub->natRules->rules());
                }
                if (array_search('any', $ruleTypes) !== false || array_search('decryption', $ruleTypes) !== false) {
                    $rulesToProcess[] = array('store' => $sub->decryptionRules, 'rules' => $sub->decryptionRules->rules());
                }
                if (array_search('any', $ruleTypes) !== false || array_search('appoverride', $ruleTypes) !== false) {
                    $rulesToProcess[] = array('store' => $sub->appOverrideRules, 'rules' => $sub->appOverrideRules->rules());
                }
                $locationFound = true;
            }