diff options
Diffstat (limited to 'applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/snats.js')
-rw-r--r-- | applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/snats.js | 54 |
1 files changed, 3 insertions, 51 deletions
diff --git a/applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/snats.js b/applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/snats.js index b46791587a..919a418fe6 100644 --- a/applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/snats.js +++ b/applications/luci-app-firewall/htdocs/luci-static/resources/view/firewall/snats.js @@ -313,57 +313,9 @@ return L.view.extend({ o.modalonly = true; o.rmempty = true; - 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, 'limit', _('Limit matching'), - _('Limits traffic matching to the specified rate.')); - o.modalonly = true; - o.rmempty = true; - o.placeholder = _('unlimited'); - o.value('10/second'); - o.value('60/minute'); - o.value('3/hour'); - o.value('500/day'); - o.validate = function(section_id, value) { - if (value == '') - return true; - - var m = String(value).toLowerCase().match(/^(?:0x[0-9a-f]{1,8}|[0-9]{1,10})\/([a-z]+)$/), - u = ['second', 'minute', 'hour', 'day'], - i = 0; - - if (m) - for (i = 0; i < u.length; i++) - if (u[i].indexOf(m[1]) == 0) - break; - - if (!m || i >= u.length) - return _('Invalid limit value'); - - return true; - }; - - o = s.taboption('advanced', form.Value, 'limit_burst', _('Limit burst'), - _('Maximum initial number of packets to match: this number gets recharged by one every time the limit specified above is not reached, up to this number.')); - o.modalonly = true; - o.rmempty = true; - o.placeholder = '5'; - o.datatype = 'uinteger'; - o.depends({ limit: null, '!reverse': true }); + fwtool.addMarkOption(s, false); + fwtool.addLimitOption(s); + fwtool.addLimitBurstOption(s); o = s.taboption('advanced', form.Value, 'extra', _('Extra arguments'), _('Passes additional arguments to iptables. Use with care!')); |