diff options
Diffstat (limited to 'lib/processinfo.lua')
-rw-r--r-- | lib/processinfo.lua | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/lib/processinfo.lua b/lib/processinfo.lua new file mode 100644 index 0000000..3b27663 --- /dev/null +++ b/lib/processinfo.lua @@ -0,0 +1,31 @@ + +module(..., package.seeall) + +require("posix") + +function package_version(packagename) + local cmderrors + local f = io.popen( "/sbin/apk_version -vs " .. packagename .." | egrep -v 'acf' 2>/dev/null" ) + local cmdresult = f:read("*l") + if (cmdresult) and (#cmdresult > 0) then + cmdresult = (string.match(cmdresult,"^%S*") or "Unknown") + else + cmderrors = "Program not installed" + end + f:close() + return cmdresult,cmderrors +end + +function process_botsequence(processname) + local cmderrors + local f = io.popen( "/sbin/rc_status | egrep '^S' | egrep '" .. processname .."' 2>/dev/null" ) + local cmdresult = f:read("*a") + if (cmdresult) and (#cmdresult > 0) then + cmdresult = "Process will autostart at next boot (at sequence '" .. string.match(cmdresult,"^%a+(%d%d)") .. "')" + else + cmderrors = "Not programmed to autostart" + end + f:close() + return cmdresult,cmderrors +end + |