summaryrefslogtreecommitdiffstats
path: root/shorewall-model.lua
diff options
context:
space:
mode:
authorMika Havela <mika.havela@gmail.com>2008-05-15 15:12:42 +0000
committerMika Havela <mika.havela@gmail.com>2008-05-15 15:12:42 +0000
commita3965b138f8c37b32cc28889250d55e20124983f (patch)
tree158a140cab494c92f9a03f3fa953b45465a3ce14 /shorewall-model.lua
parent2019d21baffd94e03608d28eba103150fb1ba1cd (diff)
downloadacf-shorewall-a3965b138f8c37b32cc28889250d55e20124983f.tar.bz2
acf-shorewall-a3965b138f8c37b32cc28889250d55e20124983f.tar.xz
Saving work for today.
Applying the component functionallity to acf-shorewall. Cleaning up and rebuilding the view-files. git-svn-id: svn://svn.alpinelinux.org/acf/shorewall/trunk@1121 ab2d0c66-481e-0410-8bed-d214d4d58bed
Diffstat (limited to 'shorewall-model.lua')
-rw-r--r--shorewall-model.lua60
1 files changed, 34 insertions, 26 deletions
diff --git a/shorewall-model.lua b/shorewall-model.lua
index 92c4640..a8627c7 100644
--- a/shorewall-model.lua
+++ b/shorewall-model.lua
@@ -199,15 +199,9 @@ function modify_config(self, addremove, file, value, orgvalue )
return addremove_config(addremove, file, value, orgvalue )
end
--- action should be a CFE
function startstop_service ( self, action )
- local cmd = action.value
- local cmdresult,cmdmessage,cmderror,cmdaction = daemoncontrol.daemoncontrol(processname, cmd)
- action.descr=cmdmessage
- action.errtxt=cmderror
- -- Reporting back (true|false, the original acition)
- return cmdresult,action
-
+ local cmdresult,cmdmessage,cmderror,cmdaction = daemoncontrol.daemoncontrol(processname, action)
+ return cfe({ type="boolean", value=cmdresult, descr=cmdmessage, errtxt=cmderror, label=action.." result" })
end
function getconfig()
@@ -252,41 +246,55 @@ function getconfig()
option=read_config("rules"),
})
+ config.masq = cfe({
+ name = "masq",
+ label="List of rules",
+ type="select",
+ option=read_config("masq"),
+ })
+
return config
end
-function getstatus()
- local status = {}
-
+function getversion()
local value, errtxt = processinfo.package_version(packagename)
- status.version = cfe({ name = "version",
+ local version = cfe({ name = "version",
label="Program version",
value=value,
errtxt=errtxt,
})
+ return version
+end
+function getautostart()
+ local autostart_sequense, autostart_errtxt = processinfo.process_botsequence(processname)
+ local autostart = cfe({ name="autostart",
+ label="Autostart sequence",
+ value=autostart_sequense,
+ errtxt=autostart_errtxt,
+ })
+ return autostart
+end
+function getstatus()
local programversion,programstatus,programstate = getdetails()
- status.status = cfe({ name="status",
+ local status = cfe({ name="status",
label="Program status",
value=programstatus,
})
-
- status.state = cfe({ name="state",
+ return status
+end
+function getstatusdetails()
+ local details = {}
+ local programversion,programstatus,programstate = getdetails()
+ details.state = cfe({ name="state",
label="Program reports",
value=programstate,
})
-
- local autostart_sequense, autostart_errtxt = processinfo.process_botsequence(processname)
- status.autostart = cfe({ name="autostart",
- label="Autostart sequence",
- value=autostart_sequense,
- errtxt=autostart_errtxt,
- })
-
- return status
+ return details
end
+
function configcheck ()
local check = {}
local f,err = io.popen("/bin/echo -n '>> Check starts at: ';/bin/date; /bin/echo; /etc/init.d/shorewall check; /bin/echo; /bin/echo -n '>> Check stops at: '; /bin/date;")
@@ -400,11 +408,11 @@ function updatefilecontent (self, filetochange)
end
if not (path) then
filetochange.errtxt = "Invalid path!"
- return filetochange
+ return false, filetochange
end
local file_result,err = fs.write_file(path, format.dostounix(filetochange.value))
- return file_result, err
+ return true
end