summaryrefslogtreecommitdiffstats
path: root/dhcp-model.lua
diff options
context:
space:
mode:
Diffstat (limited to 'dhcp-model.lua')
-rw-r--r--dhcp-model.lua19
1 files changed, 16 insertions, 3 deletions
diff --git a/dhcp-model.lua b/dhcp-model.lua
index d5a676f..247b6c3 100644
--- a/dhcp-model.lua
+++ b/dhcp-model.lua
@@ -8,6 +8,8 @@ require("validator")
local subnet = {}
local configfile = "/etc/dhcp/dhcpd.conf"
+local confdfile = "/etc/conf.d/dhcpd"
+local filelist = {configfile, confdfile}
local processname = "dhcpd"
local packagename = "dhcp"
local leasefile = "/var/lib/dhcp/dhcpd.leases"
@@ -765,12 +767,23 @@ update_settings = function ( settings )
return settings
end
-getconfigfile = function()
- return modelfunctions.getfiledetails(configfile)
+listconfigfiles = function()
+ local listed_files = {}
+ for i,name in ipairs(filelist) do
+ local filedetails = fs.stat(name) or {}
+ table.insert ( listed_files , {filename=name, mtime=filedetails.mtime or "---", filesize=filedetails.size or "0"} )
+ end
+ table.sort(listed_files, function (a,b) return (a.filename < b.filename) end )
+
+ return cfe({ type="list", value=listed_files, label="DHCP File List" })
+end
+
+getconfigfile = function(filename)
+ return modelfunctions.getfiledetails(filename, filelist)
end
setconfigfile = function(filedetails)
- return modelfunctions.setfiledetails(filedetails, {configfile})
+ return modelfunctions.setfiledetails(filedetails, filelist)
end
getleases = function()