summaryrefslogtreecommitdiffstats
path: root/shorewall-model.lua
diff options
context:
space:
mode:
Diffstat (limited to 'shorewall-model.lua')
-rw-r--r--shorewall-model.lua19
1 files changed, 10 insertions, 9 deletions
diff --git a/shorewall-model.lua b/shorewall-model.lua
index bf42891..ce436c4 100644
--- a/shorewall-model.lua
+++ b/shorewall-model.lua
@@ -1,20 +1,21 @@
-- shorewall model methods
module (..., package.seeall)
-local function XXXfile_info ( path )
- local file = io.popen("ls -lh " .. path )
- local file_info_result = file:read("*a") or "unknown"
- file:close()
- local size,lastmod = string.match(file_info_result, "^%S+%s+%S+%s+%S+%s+%S+%s+(%S+)%s+(%S+%s+%S+%s+%S+)" )
- return {lastmod=lastmod,size=size, longname=path}
-end
local function file_info ( path )
require("posix")
- filedetails = posix.stat(path)
- filedetails.longname = path
+ modfiledetails = {}
+ local filedetails = posix.stat(path)
+ filedetails["owner"]=rawget((posix.getgroup(filedetails["uid"])),"1")
+ filedetails["group"]=rawget((posix.getgroup(filedetails["gid"])),"name")
+ filedetails["atimelong"]=os.date("%c", filedetails["atime"])
+ filedetails["mtimelong"]=os.date("%c", filedetails["mtime"])
+ filedetails["longname"]=path
+
return filedetails
end
+-- ################################################################################
+-- PUBLIC FUNCTIONS
function get_status ()
local f,error = io.popen("/sbin/shorewall status")