diff options
author | Chris Buechler <cmb@pfsense.org> | 2016-07-06 00:37:49 -0500 |
---|---|---|
committer | Chris Buechler <cmb@pfsense.org> | 2016-07-06 00:37:49 -0500 |
commit | e55810246439f22523cfd13846749aae34c3b700 (patch) | |
tree | 949db1c8993531db81844c921ee4a252286cecbf /src | |
parent | 42d9ae11df5f8bb548f9468c041b8030c175c208 (diff) | |
download | pfsense-e55810246439f22523cfd13846749aae34c3b700.zip pfsense-e55810246439f22523cfd13846749aae34c3b700.tar.gz |
Leave an empty file for URL Table aliases that return an empty file, and include it in the ruleset regardless so it doesn't generate any filter errors. Ticket #6181
Diffstat (limited to 'src')
-rw-r--r-- | src/etc/inc/pfsense-utils.inc | 2 | ||||
-rw-r--r-- | src/etc/inc/util.inc | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/etc/inc/pfsense-utils.inc b/src/etc/inc/pfsense-utils.inc index 7f7fa9b..5f38101 100644 --- a/src/etc/inc/pfsense-utils.inc +++ b/src/etc/inc/pfsense-utils.inc @@ -2421,6 +2421,8 @@ function process_alias_urltable($name, $type, $url, $freq, $forceupdate=false, $ } if (is_array($parsed_contents)) { file_put_contents($urltable_filename, implode("\n", $parsed_contents)); + } else { + touch($urltable_filename); } /* If this backup is still there on a full install, but we aren't going to use ram disks, remove the archive since this is a transition. */ diff --git a/src/etc/inc/util.inc b/src/etc/inc/util.inc index d41a79b..c83fd9c 100644 --- a/src/etc/inc/util.inc +++ b/src/etc/inc/util.inc @@ -1776,7 +1776,11 @@ function alias_expand_urltable($name) { if (is_array($config['aliases']['alias'])) { foreach ($config['aliases']['alias'] as $alias) { if (preg_match("/urltable/i", $alias['type']) && ($alias['name'] == $name)) { - if (is_URL($alias["url"]) && file_exists($urltable_filename) && filesize($urltable_filename)) { + if (is_URL($alias["url"]) && file_exists($urltable_filename)) { + if (!filesize($urltable_filename)) { + // file exists, but is empty, try to sync + send_event("service sync alias {$name}"); + } return $urltable_filename; } else { send_event("service sync alias {$name}"); |