diff options
author | Ermal <eri@pfsense.org> | 2011-08-15 20:19:25 +0000 |
---|---|---|
committer | Ermal <eri@pfsense.org> | 2011-08-15 20:23:18 +0000 |
commit | 7a787c581eb272e7dba5fe83994e129db06bfb2c (patch) | |
tree | 1347fff2ce5750a7a8552e6e8b1346638c368599 /etc | |
parent | 1e37f324adeca824bacc75a5419d1e82b72043df (diff) | |
download | pfsense-7a787c581eb272e7dba5fe83994e129db06bfb2c.zip pfsense-7a787c581eb272e7dba5fe83994e129db06bfb2c.tar.gz |
Resolves #1731. Correctly handle nested alias that have hostnames. While here prevent putting duplicated dns hostnames under the same table to prevent possible hickups and save double work.
Diffstat (limited to 'etc')
-rw-r--r-- | etc/inc/filter.inc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/etc/inc/filter.inc b/etc/inc/filter.inc index 113df08..5957d05 100644 --- a/etc/inc/filter.inc +++ b/etc/inc/filter.inc @@ -488,10 +488,12 @@ 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($address, $aliastable[$address], $aliasnesting, $aliasaddrnesting); + $tmpline = filter_generate_nested_alias($name, $aliastable[$address], $aliasnesting, $aliasaddrnesting); } else if(!isset($aliasaddrnesting[$address])) { - if(!is_ipaddr($address) && !is_subnet($address) && !is_port($address)) { + if (!is_ipaddr($address) && !is_subnet($address) && !is_port($address)) { $filterdns .= "pf {$address} {$name}\n"; + /* Guarantee unique dns names on filterdns config */ + $aliasaddrnesting[$address] = $address; continue; } $aliasaddrnesting[$address] = $address; |