libs/sys: properly parse iptables rules with not target set

This commit is contained in:
Jo-Philipp Wich 2009-06-07 12:48:28 +00:00
parent f4c6554f4c
commit 99c213eff8

View file

@ -19,7 +19,7 @@ luci.util = require "luci.util"
luci.sys = require "luci.sys"
luci.ip = require "luci.ip"
local tonumber, ipairs = tonumber, ipairs
local tonumber, ipairs, table = tonumber, ipairs, table
--- LuCI iptables parser and query library
-- @cstyle instance
@ -279,6 +279,11 @@ function IptParser._parse_rules( self )
local rule_parts = luci.util.split( rule, "%s+", nil, true )
local rule_details = { }
-- cope with rules that have no target assigned
if rule:match("^%d+%s+%d+%s+%d+%s%s") then
table.insert(rule_parts, 4, nil)
end
rule_details["table"] = tbl
rule_details["chain"] = self._chain
rule_details["index"] = tonumber(rule_parts[1])