diff options
author | Jo-Philipp Wich <jo@mein.io> | 2022-11-23 13:43:15 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-23 13:43:15 +0100 |
commit | 885e3a5f0b3323f007cb265be210e9efe939530b (patch) | |
tree | 72a5c55c2ae33e778aab134121d3972261d4e537 | |
parent | 8607aa7a6712d6a78e4c8cc1be391fe60b85908c (diff) | |
parent | de9341648aba82ebbf4af1843854dffb9e63322e (diff) |
Merge pull request #6063 from Zeranoe/fix-address-validator
luci-mod-network: fix address validation
-rw-r--r-- | modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js b/modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js index ddfbcaa98f..b539c3887a 100644 --- a/modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js +++ b/modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js @@ -126,7 +126,7 @@ function validateHostname(sid, s) { if (s.length > 256) return _('Expecting: %s').format(_('valid hostname')); - var labels = s.replace(/^\.+|\.$/g, '').split(/\./); + var labels = s.replace(/^\*?\.?|\.$/g, '').split(/\./); for (var i = 0; i < labels.length; i++) if (!labels[i].match(/^[a-z0-9_](?:[a-z0-9-]{0,61}[a-z0-9])?$/i)) @@ -156,13 +156,15 @@ function validateServerSpec(sid, s) { if (s == null || s == '') return true; - var m = s.match(/^(?:\/(.+)\/)?(.*)$/); + var m = s.match(/^(\/.*\/)?(.*)$/); if (!m) return _('Expecting: %s').format(_('valid hostname')); - var res = validateAddressList(sid, m[1]); - if (res !== true) - return res; + if (m[1] != '//' && m[1] != '/#/') { + var res = validateAddressList(sid, m[1]); + if (res !== true) + return res; + } if (m[2] == '' || m[2] == '#') return true; |