diff options
Diffstat (limited to 'dhcp-model.lua')
-rw-r--r-- | dhcp-model.lua | 19 |
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() |