aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>2017-05-21 21:24:18 +0300
committerKaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>2017-05-21 21:24:18 +0300
commitcf335b68f8a8f3dfa5fefa8abdf782cc44fb9d75 (patch)
tree75042a4215d5603c94e41a49930e960b8c074a82
parent463c4117d2c985b3e6d693508240fdf34272f22d (diff)
downloadawall-cf335b68f8a8f3dfa5fefa8abdf782cc44fb9d75.tar.bz2
awall-cf335b68f8a8f3dfa5fefa8abdf782cc44fb9d75.tar.xz
Rule: deterministic ordering of services
-rw-r--r--awall/model.lua7
1 files changed, 5 insertions, 2 deletions
diff --git a/awall/model.lua b/awall/model.lua
index fbe4f34..f062904 100644
--- a/awall/model.lua
+++ b/awall/model.lua
@@ -27,6 +27,7 @@ local listpairs = util.listpairs
local map = util.map
local maplist = util.maplist
local setdefault = util.setdefault
+local sortedkeys = util.sortedkeys
local startswith = require('stringy').startswith
@@ -365,11 +366,13 @@ function M.Rule:servoptfrags()
end
local popt = ' --'..(self.reverse and 's' or 'd')..'port'
- for family, pports in pairs(fports) do
+ for _, family in sortedkeys(fports) do
local ofrags = {}
+ local pports = fports[family]
- for proto, ports in pairs(pports) do
+ for _, proto in sortedkeys(pports) do
local propt = '-p '..proto
+ local ports = pports[proto]
if ports[1] then
local len = #ports