From: Jo-Philipp Wich Date: Thu, 16 Jan 2020 17:16:55 +0000 (+0100) Subject: luci-app-firewall: support 'mark' parameter for redirects X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=819079e26819e270bcbc21f4f57d499fe0067228;p=oweals%2Fluci.git luci-app-firewall: support 'mark' parameter for redirects Signed-off-by: Jo-Philipp Wich (cherry picked from commit cdf240f0a08aa72767adb162230a048f3445fa6c) --- diff --git a/applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/forwards.js b/applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/forwards.js index 49c8cd75f..030b78b2d 100644 --- a/applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/forwards.js +++ b/applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/forwards.js @@ -299,6 +299,22 @@ return L.view.extend({ return _('Unknown or not installed conntrack helper "%s"').format(value); }; + o = s.taboption('advanced', form.Value, 'mark', _('Match mark'), + _('Matches a specific firewall mark or a range of different marks.')); + o.modalonly = true; + o.rmempty = true; + o.validate = function(section_id, value) { + if (value == '') + return true; + + var m = String(value).match(/^(?:!\s*)?(0x[0-9a-f]{1,8}|[0-9]{1,10})(?:\/(0x[0-9a-f]{1,8}|[0-9]{1,10}))?$/i); + + if (!m || +m[1] > 0xffffffff || (m[2] != null && +m[2] > 0xffffffff)) + return _('Expecting: %s').format(_('valid firewall mark')); + + return true; + }; + o = s.taboption('advanced', form.Value, 'extra', _('Extra arguments'), _('Passes additional arguments to iptables. Use with care!')); o.modalonly = true;