diff options
author | Ted Trask <ttrask01@yahoo.com> | 2008-12-08 14:21:47 +0000 |
---|---|---|
committer | Ted Trask <ttrask01@yahoo.com> | 2008-12-08 14:21:47 +0000 |
commit | 7a69cc8a348535a9913f4d4b66653390f6ac45f0 (patch) | |
tree | a1f8ae9e21445eeb6752741e0d2843f5aded5377 | |
parent | 34df9998d90048c2b639aefae057e3741308f2c1 (diff) | |
download | acf-dhcp-7a69cc8a348535a9913f4d4b66653390f6ac45f0.tar.bz2 acf-dhcp-7a69cc8a348535a9913f4d4b66653390f6ac45f0.tar.xz |
Modified dhcp to add required ddns-update-style parameter to globals.
git-svn-id: svn://svn.alpinelinux.org/acf/dhcp/trunk@1624 ab2d0c66-481e-0410-8bed-d214d4d58bed
-rw-r--r-- | dhcp-model.lua | 30 | ||||
-rw-r--r-- | dhcp-settings-html.lsp | 2 |
2 files changed, 21 insertions, 11 deletions
diff --git a/dhcp-model.lua b/dhcp-model.lua index f542554..ccbbb57 100644 --- a/dhcp-model.lua +++ b/dhcp-model.lua @@ -149,7 +149,7 @@ local validate_subnet = function( net ) end local validate_settings = function ( settings ) - local success = true + local success = modelfunctions.validateselect(settings.value.dnsupdatestyle) if settings.value.defleasetime.value ~= "" and not validator.is_integer_in_range(settings.value.defleasetime.value, 1800, 86400) then settings.value.defleasetime.errtxt = "Out of range 1800 < x < 86400 or not integer" success = false @@ -672,25 +672,29 @@ end read_settings = function() config = config or parseconfigfile(fs.read_file(configfile)) - local domainname = cfe({ label="Domain Name" }) - local domainnameservers = cfe({ label="Domain Name Servers", descr="Comma-separated addresses" }) - local defleasetime = cfe({ label="Default Lease Time" }) - local maxleasetime = cfe({ label="Maximum Lease Time" }) + local settings = {} + settings.domainname = cfe({ label="Domain Name" }) + settings.domainnameservers = cfe({ label="Domain Name Servers", descr="Comma-separated addresses" }) + settings.dnsupdatestyle = cfe({ type="select", label="DNS Update Style", option={"none", "ad-hoc", "interim"} }) + settings.defleasetime = cfe({ label="Default Lease Time" }) + settings.maxleasetime = cfe({ label="Maximum Lease Time" }) for i,value in ipairs(config) do if value[1] == "option" then if value[2] == "domain-name" then - domainname.value = string.sub(value[3] or "", 2, -2) + settings.domainname.value = string.sub(value[3] or "", 2, -2) elseif value[2] == "domain-name-servers" then - domainnameservers.value = table.concat(value, " ", 3) + settings.domainnameservers.value = table.concat(value, " ", 3) end elseif value[1] == "default-lease-time" then - defleasetime.value = value[2] or "" + settings.defleasetime.value = value[2] or "" elseif value[1] == "max-lease-time" then - maxleasetime.value = value[2] or "" + settings.maxleasetime.value = value[2] or "" + elseif value[1] == "ddns-update-style" then + settings.dnsupdatestyle.value = value[2] or "" end end - return cfe({ type="group", value={domainname=domainname, domainnameservers=domainnameservers, defleasetime=defleasetime, maxleasetime=maxleasetime}, label = "Global settings" }) + return cfe({ type="group", value=settings, label = "Global settings" }) end update_settings = function ( settings ) @@ -706,6 +710,7 @@ update_settings = function ( settings ) if settings.value.domainnameservers.value ~= "" then settings.value.domainnameservers.replace = "option domain-name-servers "..settings.value.domainnameservers.value end + settings.value.dnsupdatestyle.replace = "ddns-update-style "..settings.value.dnsupdatestyle.value if settings.value.defleasetime.value ~= "" then settings.value.defleasetime.replace = "default-lease-time "..settings.value.defleasetime.value end @@ -723,6 +728,9 @@ update_settings = function ( settings ) file = replaceentry(file, value, settings.value.domainnameservers.replace) settings.value.domainnameservers.replace = nil end + elseif value[1] == "ddns-update-style" then + file = replaceentry(file, value, settings.value.dnsupdatestyle.replace) + settings.value.dnsupdatestyle.replace = nil elseif value[1] == "default-lease-time" then file = replaceentry(file, value, settings.value.defleasetime.replace) settings.value.defleasetime.replace = nil @@ -738,6 +746,8 @@ update_settings = function ( settings ) settings.value.domainname.replace = nil newlines[#newlines+1] = settings.value.domainnameservers.replace settings.value.domainnameservers.replace = nil + newlines[#newlines+1] = settings.value.dnsupdatestyle.replace + settings.value.dnsupdatestyle.replace = nil newlines[#newlines+1] = settings.value.defleasetime.replace settings.value.defleasetime.replace = nil newlines[#newlines+1] = settings.value.maxleasetime.replace diff --git a/dhcp-settings-html.lsp b/dhcp-settings-html.lsp index 098bb78..de209bf 100644 --- a/dhcp-settings-html.lsp +++ b/dhcp-settings-html.lsp @@ -4,6 +4,6 @@ <h1><%= form.label %></h1> <% form.action = page_info.script .. page_info.prefix .. page_info.controller .. "/" .. page_info.action - local order = {"domainname", "domainnameservers", "defleasetime", "maxleasetime"} + local order = {"domainname", "domainnameservers", "dnsupdatestyle", "defleasetime", "maxleasetime"} displayform(form, order) %> |