diff options
author | Mika Havela <mika.havela@gmail.com> | 2008-03-04 08:49:41 +0000 |
---|---|---|
committer | Mika Havela <mika.havela@gmail.com> | 2008-03-04 08:49:41 +0000 |
commit | 73433bf9ea9a0f7f56203bafa111821bb47856cf (patch) | |
tree | 8961f85a4d8827ad05c6c085daf04f0de998b0a3 /shorewall-model.lua | |
parent | 8c41156d76be7332fd34d1ab18a078510745b81a (diff) | |
download | acf-shorewall-73433bf9ea9a0f7f56203bafa111821bb47856cf.tar.bz2 acf-shorewall-73433bf9ea9a0f7f56203bafa111821bb47856cf.tar.xz |
Added the missing (example)-page. Added functionallity so that the page has live data
git-svn-id: svn://svn.alpinelinux.org/acf/shorewall/trunk@799 ab2d0c66-481e-0410-8bed-d214d4d58bed
Diffstat (limited to 'shorewall-model.lua')
-rw-r--r-- | shorewall-model.lua | 30 |
1 files changed, 26 insertions, 4 deletions
diff --git a/shorewall-model.lua b/shorewall-model.lua index cecf0a1..081f842 100644 --- a/shorewall-model.lua +++ b/shorewall-model.lua @@ -34,6 +34,20 @@ local function getdetails() return programversion,programstatus,programstate end +local function read_config(file) + local path = baseurl .. file + if not (fs.is_file(path)) then + return {} + end + local filecontent = fs.read_file_as_array(path) + local output = {} + for k,v in pairs(filecontent) do + if not string.find ( v, "^[;#].*" ) then + table.insert(output, v) + end + end + return output +end -- ################################################################################ -- PUBLIC FUNCTIONS @@ -51,11 +65,19 @@ end function getconfig() local config = {} + config.params_list = cfe({ + name = "params_list", + label="List of parameters", + type="select", + option=read_config("params"), + }) + config.params_list.size=#config.params_list.option + 1 + config.interfaces_list = cfe({ name = "interfaces_list", label="List of interfaces", type="select", - option={"BRN", "DMZ", "REZ", } + option=read_config("interfaces"), }) config.interfaces_list.size=#config.interfaces_list.option + 1 @@ -63,7 +85,7 @@ function getconfig() name = "zones_list", label="List of zones", type="select", - option={"BRN", "DMZ", "REZ", } + option=read_config("zones"), }) config.zones_list.size=#config.zones_list.option + 1 @@ -71,7 +93,7 @@ function getconfig() name = "policies_list", label="List of policies", type="select", - option={"ACCET BRN FW", } + option=read_config("policy"), }) config.policies_list.size=#config.policies_list.option + 1 @@ -79,7 +101,7 @@ function getconfig() name = "rules_list", label="List of rules", type="select", - option={"ACCET BRN FW", } + option=read_config("rules"), }) config.rules_list.size=#config.rules_list.option + 1 |