diff options
author | Renato Botelho <garga@FreeBSD.org> | 2013-08-14 07:56:44 -0300 |
---|---|---|
committer | Renato Botelho <garga@FreeBSD.org> | 2013-08-14 07:56:44 -0300 |
commit | c6592f21c68cbf4b63bad09ae8850bc953cc1cf3 (patch) | |
tree | 6abab47d179db1ca21f0d8bc51c40d982bd11c28 /etc | |
parent | 4be0c837bafcc46d66240114e8b7654c14ed85c9 (diff) | |
download | pfsense-c6592f21c68cbf4b63bad09ae8850bc953cc1cf3.zip pfsense-c6592f21c68cbf4b63bad09ae8850bc953cc1cf3.tar.gz |
Add a parameter, off by default, to expand all alias items, including hostnames
Diffstat (limited to 'etc')
-rw-r--r-- | etc/inc/filter.inc | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/etc/inc/filter.inc b/etc/inc/filter.inc index 70a138f..88cfa8d 100644 --- a/etc/inc/filter.inc +++ b/etc/inc/filter.inc @@ -462,7 +462,7 @@ function filter_generate_scrubing() { return $scrubrules; } -function filter_generate_nested_alias($name, $alias, &$aliasnesting, &$aliasaddrnesting) { +function filter_generate_nested_alias($name, $alias, &$aliasnesting, &$aliasaddrnesting, $all = false) { global $aliastable, $filterdns; $addresses = explode(" ", $alias); @@ -493,9 +493,9 @@ function filter_generate_nested_alias($name, $alias, &$aliasnesting, &$aliasaddr } /* We already expanded this alias so there is no neccessity to do it again. */ else if(!isset($aliasnesting[$address])) - $tmpline = filter_generate_nested_alias($name, $aliastable[$address], $aliasnesting, $aliasaddrnesting); + $tmpline = filter_generate_nested_alias($name, $aliastable[$address], $aliasnesting, $aliasaddrnesting, $all); } else if(!isset($aliasaddrnesting[$address])) { - if (!is_ipaddr($address) && !is_subnet($address) && !is_port($address) && is_hostname($address)) { + if ($all === false && !is_ipaddr($address) && !is_subnet($address) && !is_port($address) && is_hostname($address)) { if (!isset($filterdns["{$address}{$name}"])) $filterdns["{$address}{$name}"] = "pf {$address} {$name}\n"; continue; @@ -514,7 +514,7 @@ function filter_generate_nested_alias($name, $alias, &$aliasnesting, &$aliasaddr return $finallist; } -function filter_expand_alias($alias_name) +function filter_expand_alias($alias_name, $all = false) { global $config; @@ -523,14 +523,14 @@ function filter_expand_alias($alias_name) if($aliased['name'] == $alias_name) { $aliasnesting = array(); $aliasaddrnesting = array(); - return filter_generate_nested_alias($aliased['name'], $aliased['address'], $aliasnesting, $aliasaddrnesting); + return filter_generate_nested_alias($aliased['name'], $aliased['address'], $aliasnesting, $aliasaddrnesting, $all); } } } } -function filter_expand_alias_array($alias_name) { - $expansion = filter_expand_alias($alias_name); +function filter_expand_alias_array($alias_name, $all = false) { + $expansion = filter_expand_alias($alias_name, $all); return explode(" ", preg_replace('/\s+/', ' ', trim($expansion))); } |