summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjim-p <jimp@pfsense.org>2017-03-24 13:58:55 -0400
committerjim-p <jimp@pfsense.org>2017-03-24 13:59:08 -0400
commit0034bbc15af953ddb460d883be637b0eed708d3f (patch)
tree6f14aac413d24f1b52cfa54580db2f7da38103cb
parent01dc83959c67b1ffab97a6f77a4e7820f81c7ad9 (diff)
downloadpfsense-0034bbc15af953ddb460d883be637b0eed708d3f.zip
pfsense-0034bbc15af953ddb460d883be637b0eed708d3f.tar.gz
Fix handling of port ranges in this validation test. Ticket #7421
-rw-r--r--src/etc/inc/filter.inc8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/etc/inc/filter.inc b/src/etc/inc/filter.inc
index d40e1f6..bc04d9a 100644
--- a/src/etc/inc/filter.inc
+++ b/src/etc/inc/filter.inc
@@ -2734,12 +2734,16 @@ function filter_generate_user_rule($rule) {
file_notice("Filter_Reload", $error_text);
return "# {$error_text}";
}
- if ($rule['source']['port'] && !alias_expand($rule['source']['port'])) {
+ if ($rule['source']['port']
+ && !(is_portrange(str_replace("-", ":", $rule['source']['port']))
+ || alias_expand($rule['source']['port']))) {
$error_text = sprintf(gettext("Unresolvable source port alias '%1\$s' for rule '%2\$s'"), $rule['source']['port'], $rule['descr']);
file_notice("Filter_Reload", $error_text);
return "# {$error_text}";
}
- if ($rule['destination']['port'] && !alias_expand($rule['destination']['port'])) {
+ if ($rule['destination']['port']
+ && !(is_portrange(str_replace("-", ":", $rule['destination']['port']))
+ || alias_expand($rule['destination']['port']))) {
$error_text = sprintf(gettext("Unresolvable destination port alias '%1\$s' for rule '%2\$s'"), $rule['destination']['port'], $rule['descr']);
file_notice("Filter_Reload", $error_text);
return "# {$error_text}";
OpenPOWER on IntegriCloud