summaryrefslogtreecommitdiffstats
path: root/ipsec-tools-model.lua
diff options
context:
space:
mode:
authorNatanael Copa <natanael.copa@gmail.com>2008-03-27 13:54:16 +0000
committerNatanael Copa <natanael.copa@gmail.com>2008-03-27 13:54:16 +0000
commit3142bc1bcec3ab55677cdb2cdadf5cf23d15f4b4 (patch)
tree52ef2dc6343f07199d7c8b03cafdeae572a67ef0 /ipsec-tools-model.lua
downloadacf-ipsec-tools-3142bc1bcec3ab55677cdb2cdadf5cf23d15f4b4.tar.bz2
acf-ipsec-tools-3142bc1bcec3ab55677cdb2cdadf5cf23d15f4b4.tar.xz
added ipsec-tools
git-svn-id: svn://svn.alpinelinux.org/acf/ipsec-tools/trunk@845 ab2d0c66-481e-0410-8bed-d214d4d58bed
Diffstat (limited to 'ipsec-tools-model.lua')
-rw-r--r--ipsec-tools-model.lua56
1 files changed, 56 insertions, 0 deletions
diff --git a/ipsec-tools-model.lua b/ipsec-tools-model.lua
new file mode 100644
index 0000000..3994007
--- /dev/null
+++ b/ipsec-tools-model.lua
@@ -0,0 +1,56 @@
+module(..., package.seeall)
+
+require("fs")
+require("procps")
+require("getopts")
+require("format")
+require("daemoncontrol")
+require("validator")
+
+local configfile = "/etc/racoon/racoon.conf"
+local processname = "racoon"
+local pkgname = "ipsec-tools"
+local baseurl = "/etc/racoon/"
+
+local function get_version()
+ local cmd_output_result, cmd_output_error
+ local cmd = "/sbin/apk_version -vs " .. pkgname .." 2>/dev/null"
+ local f = io.popen( cmd )
+ local cmdresult = f:read("*l")
+ if (cmdresult) and (#cmdresult > 0) then
+ cmd_output_result = string.match(cmdresult,"^%S*") or "Unknown"
+ else
+ cmd_output_error = "Program not installed"
+ end
+ f:close()
+ return cmd_output_result,cmd_output_error
+end
+
+
+function process_status_text(procname)
+ local t = procps.pidof(procname)
+ if #t > 0 then
+ return "Enabled"
+ else
+ return "Disabled"
+ end
+end
+
+-- ################################################################################
+-- PUBLIC FUNCTIONS
+
+
+function getstatus()
+ local status = {}
+ status.version = cfe({ name = "version",
+ label="Program version",
+ value=get_version(),
+ })
+ status.status = cfe({ name="status",
+ label="Program status",
+ value=process_status_text(processname),
+ })
+ return status
+end
+
+