diff options
author | Scott Ullrich <sullrich@pfSense.org> | 2009-12-23 21:43:07 -0500 |
---|---|---|
committer | Scott Ullrich <sullrich@pfSense.org> | 2009-12-23 21:43:07 -0500 |
commit | 457a816a08c7b1fbf88ea7a8370281f141003b9b (patch) | |
tree | f1265801eb40fd717cfb51af7cfb0cee6fb41fad /etc | |
parent | 6b12d9b5a83ca56300a3c649297e2cefce56d3bc (diff) | |
download | pfsense-457a816a08c7b1fbf88ea7a8370281f141003b9b.zip pfsense-457a816a08c7b1fbf88ea7a8370281f141003b9b.tar.gz |
Adding late pf hooks for packages. Name is 'pflate'
Diffstat (limited to 'etc')
-rw-r--r-- | etc/inc/filter.inc | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/etc/inc/filter.inc b/etc/inc/filter.inc index 358f692..023662c 100644 --- a/etc/inc/filter.inc +++ b/etc/inc/filter.inc @@ -247,7 +247,7 @@ function filter_configure_sync() { $pkg_generate_rules = "{$pkg}_generate_pf_early"; if (function_exists($pkg_generate_rules)) { update_filter_reload_status("Processing early PF rules for package {$pkg}"); - $rules .= $pkg_generate_rules ('pfearly'); + $rules .= $pkg_generate_rules('pfearly'); } } } @@ -265,6 +265,20 @@ function filter_configure_sync() { $rules .= "{$altq_queues}\n"; $rules .= "{$natrules}\n"; $rules .= "{$pfrules}\n"; + + if(is_dir("/usr/local/pkg")) { + $files = split(" ", trim(`/usr/local/pkg/*.inc`)); + foreach($files as $pkg_inc) { + update_filter_reload_status("Checking for late PF hooks in package {$pkg}"); + require_once($pkg_inc); + $pkg = basename($pkg_inc); + $pkg_generate_rules = "{$pkg}_generate_pf_late"; + if (function_exists($pkg_generate_rules)) { + update_filter_reload_status("Processing late PF rules for package {$pkg}"); + $rules .= $pkg_generate_rules('pflate'); + } + } + } if (!file_put_contents("{$g['tmp_path']}/rules.debug", $rules, LOCK_EX)) { log_error("WARNING: Could not write new rules!"); |