Forked from
alpine / aports
199406 commits behind the upstream repository.
-
Timo Teräs authored
also use json to talk between client and server. and make the client program handle all command line flags.
Timo Teräs authoredalso use json to talk between client and server. and make the client program handle all command line flags.
aaudit-common.lua 646 B
local M = {}
local posix = require 'posix'
local json = require 'cjson'
M.config = "/etc/aaudit/aaudit.json"
function M.readfile(fn)
local F = io.open(fn, "r")
if F == nil then return nil end
local ret = F:read("*all")
F:close()
return ret
end
function M.readconfig(fn)
fn = fn or M.config
local success, res = pcall(json.decode, M.readfile(fn))
if not success then io.stderr:write(("Error reading %s: %s\n"):format(fn, res)) end
return res
end
function M.writefile(content, fn)
assert(io.open(fn, "w")):write(content):close()
end
function M.writeconfig(config, fn)
M.writefile(json.encode(config), fn or M.config)
end
return M