mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-05-04 17:34:21 +02:00
31 lines
646 B
Lua
31 lines
646 B
Lua
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
|