diff options
author | Phil Davis <phil.davis@inf.org> | 2017-03-26 13:44:27 +0545 |
---|---|---|
committer | Phil Davis <phil.davis@inf.org> | 2017-03-26 13:44:27 +0545 |
commit | 4081ecacd6caa61a182c7db3723a22b0a3113f64 (patch) | |
tree | 09864fe20a6d14e35fdb9f0638f7614fef5c5f26 /src/etc/inc/util.inc | |
parent | dd844c430622fa68de1f868b62ec375d7131ce16 (diff) | |
download | pfsense-4081ecacd6caa61a182c7db3723a22b0a3113f64.zip pfsense-4081ecacd6caa61a182c7db3723a22b0a3113f64.tar.gz |
Provide functions for checking port range alias combinations
Diffstat (limited to 'src/etc/inc/util.inc')
-rw-r--r-- | src/etc/inc/util.inc | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/etc/inc/util.inc b/src/etc/inc/util.inc index 4440bdc..76410b4 100644 --- a/src/etc/inc/util.inc +++ b/src/etc/inc/util.inc @@ -1124,6 +1124,11 @@ function is_portrange($portrange) { return (count($ports) == 2 && is_port($ports[0]) && is_port($ports[1])); } +/* returns true if $port is a valid TCP/UDP port number or range ("<port>:<port>") */ +function is_portorrange($port) { + return (is_port($port) || is_portrange($port)); +} + /* returns true if $port is a valid port number or an alias thereof */ function is_portoralias($port) { global $config; @@ -1142,6 +1147,11 @@ function is_portoralias($port) { } } +/* returns true if $port is a valid TCP/UDP port number or range ("<port>:<port>") or an alias thereof */ +function is_portorrangeoralias($port) { + return (is_portoralias($port) || is_portrange($port)); +} + /* create ranges of sequential port numbers (200:215) and remove duplicates */ function group_ports($ports, $kflc = false) { if (!is_array($ports) || empty($ports)) { @@ -1781,7 +1791,7 @@ function alias_expand($name) { } } return "\${$name}"; - } else if (is_ipaddr($name) || is_subnet($name) || is_port($name) || is_portrange($name)) { + } else if (is_ipaddr($name) || is_subnet($name) || is_portorrange($name)) { return "{$name}"; } else { return null; |