diff options
author | Ermal Luçi <eri@pfsense.org> | 2009-05-12 18:35:20 +0000 |
---|---|---|
committer | Ermal Luçi <eri@pfsense.org> | 2009-05-12 18:35:20 +0000 |
commit | 43ea937c1864fd4d9df1b96ab5f8fab373db8018 (patch) | |
tree | 2b77c5556bce0f0b2dadaaf08b409494e63fda55 /etc | |
parent | 71569a7e8498439750fa5b2fc33001de712b3805 (diff) | |
download | pfsense-43ea937c1864fd4d9df1b96ab5f8fab373db8018.zip pfsense-43ea937c1864fd4d9df1b96ab5f8fab373db8018.tar.gz |
Fix fallout of tables from the refactoring of address generation. This is a better fix from the quick one jim-p pushed already.
Diffstat (limited to 'etc')
-rw-r--r-- | etc/inc/filter.inc | 34 |
1 files changed, 7 insertions, 27 deletions
diff --git a/etc/inc/filter.inc b/etc/inc/filter.inc index 0e0b6c7..15e1647 100644 --- a/etc/inc/filter.inc +++ b/etc/inc/filter.inc @@ -1072,7 +1072,7 @@ function generate_user_filter_rule_arr($rule) function filter_generate_address(& $rule, $target = "source") { - global $FilterIflist, $src_table, $src_table_line, $dst_table, $dst_table_line; + global $FilterIflist, $table_cache; $src = ""; if (isset($rule[$target]['any'])) { @@ -1139,6 +1139,8 @@ function filter_generate_address(& $rule, $target = "source") /* support for tables */ $src_table_line = "table $src_table {$src}\n"; $src = $src_table; + /* cache entries */ + $table_cache[$src_table] = $src_table_line; } else $src = "{ {$not} {$expsrc} }"; } @@ -1175,8 +1177,8 @@ function filter_generate_address(& $rule, $target = "source") function generate_user_filter_rule($rule) { global $config, $g, $FilterIflist, $GatewaysList, $GatewayGroupsList; - global $table_cache, $src_table, $src_table_line, $dst_table, $dst_table_line; global $layer7_rules_list; + if(isset($config['system']['developerspew'])) { $mt = microtime(); echo "generate_user_filter_rule() being called $mt\n"; @@ -1185,12 +1187,6 @@ function generate_user_filter_rule($rule) if (isset($rule['disabled'])) { return "# rule " . $rule['descr'] . " disabled \n"; } - /* Setup cache array if not already existing */ - if (!isset($table_cache)) { - if ($g['debug']) - echo "Creating table cache\n"; - $table_cache = array(); - } update_filter_reload_status("Creating filter rules {$rule['descr']} ..."); $pptpdcfg = $config['pptpd']; $pppoecfg = $config['pppoe']; @@ -1491,25 +1487,6 @@ function generate_user_filter_rule($rule) $aline['dnpipe'] .= ") "; } } - /* cache entries */ - if (isset($src_table)) - if (isset($table_cache[$src_table])) { - if ($g['debug']) - echo "{$src_table} found in cache\n"; - } else { - if ($g['debug']) - echo "{$src_table} NOT found in cache...adding\n"; - $table_cache[$src_table] = $src_table_line; - } - if (isset($dst_table)) - if (isset($table_cache[$dst_table])) { - if ($g['debug']) - echo "{$dst_table} found in cache\n"; - } else { - if ($g['debug']) - echo "{$dst_table} NOT found in cache...adding\n"; - $table_cache[$dst_table] = $dst_table_line; - } /* is a time based rule schedule attached? */ if(!empty($rule['sched']) && !empty($config['schedules'])) { @@ -1561,6 +1538,9 @@ function filter_rules_generate() echo "filter_rules_generate() being called $mt\n"; } + if (!is_array($table_cache)) + $table_cache = array(); + $pptpdcfg = $config['pptpd']; $pppoecfg = $config['pppoe']; |