diff options
author | Phil Davis <phil.davis@inf.org> | 2014-12-18 13:02:23 +0545 |
---|---|---|
committer | Phil Davis <phil.davis@inf.org> | 2014-12-18 13:02:23 +0545 |
commit | 5454fd1b34657442eb094f7c272f0284b52433b8 (patch) | |
tree | 890d2982439609cf34aced8da173a1ab43e6dd5a /etc/inc/util.inc | |
parent | a03551c249d66e2d2c67eb9bed543c0fabbf1953 (diff) | |
download | pfsense-5454fd1b34657442eb094f7c272f0284b52433b8.zip pfsense-5454fd1b34657442eb094f7c272f0284b52433b8.tar.gz |
Allow dot at end of FQDN for a host
Redmine #4124 has discussion of this.
Diffstat (limited to 'etc/inc/util.inc')
-rw-r--r-- | etc/inc/util.inc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/etc/inc/util.inc b/etc/inc/util.inc index 5d4a1e2..232dd30 100644 --- a/etc/inc/util.inc +++ b/etc/inc/util.inc @@ -686,8 +686,13 @@ function is_hostname($hostname) { if (!is_string($hostname)) return false; - if (preg_match('/^(?:(?:[a-z0-9_]|[a-z0-9_][a-z0-9_\-]*[a-z0-9_])\.)*(?:[a-z0-9_]|[a-z0-9_][a-z0-9_\-]*[a-z0-9_])$/i', $hostname)) - return true; + if (is_domain($hostname)) + if ((substr_count($hostname, ".") == 1) && ($hostname[strlen($hostname)-1] == ".")) { + /* Only a single dot at the end like "test." - hosts cannot be directly in the root domain. */ + return false; + } else { + return true; + } else return false; } |