projects
/
project
/
luci.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
luci-mod-admin-full: allow setting dns cachesize
[project/luci.git]
/
modules
/
luci-mod-admin-full
/
luasrc
/
model
/
cbi
/
admin_network
/
dhcp.lua
diff --git
a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua
b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua
index
0c01cef
..
d298480
100644
(file)
--- a/
modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua
+++ b/
modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua
@@
-2,6
+2,7
@@
-- Licensed to the public under the Apache License 2.0.
local ipc = require "luci.ip"
-- Licensed to the public under the Apache License 2.0.
local ipc = require "luci.ip"
+local sys = require "luci.sys"
local o
require "luci.util"
local o
require "luci.util"
@@
-114,7
+115,7
@@
s:taboption("advanced", Flag, "nonegcache",
s:taboption("advanced", Value, "serversfile",
translate("Additional servers file"),
translate("This file may contain lines like 'server=/domain/1.2.3.4' or 'server=1.2.3.4' for"..
s:taboption("advanced", Value, "serversfile",
translate("Additional servers file"),
translate("This file may contain lines like 'server=/domain/1.2.3.4' or 'server=1.2.3.4' for"..
- "domain-specific or full upstream <abbr title=\"Domain Name System\">DNS</abbr> servers."))
+ "domain-specific or full upstream <abbr title=\"Domain Name System\">DNS</abbr> servers."))
s:taboption("advanced", Flag, "strictorder",
translate("Strict order"),
s:taboption("advanced", Flag, "strictorder",
translate("Strict order"),
@@
-211,6
+212,12
@@
cq.optional = true
cq.datatype = "uinteger"
cq.placeholder = 150
cq.datatype = "uinteger"
cq.placeholder = 150
+cs = s:taboption("advanced", Value, "cachesize",
+ translate("Size of DNS query cache"),
+ translate("Maximum number of cached DNS entries"))
+cs.optional = true
+cs.datatype = "uinteger"
+cs.placeholder = 150
s:taboption("tftp", Flag, "enable_tftp",
translate("Enable TFTP server")).optional = true
s:taboption("tftp", Flag, "enable_tftp",
translate("Enable TFTP server")).optional = true
@@
-263,8
+270,8
@@
s = m:section(TypedSection, "host", translate("Static Leases"),
"DHCP clients. They are also required for non-dynamic interface configurations where " ..
"only hosts with a corresponding lease are served.") .. "<br />" ..
translate("Use the <em>Add</em> Button to add a new lease entry. The <em>MAC-Address</em> " ..
"DHCP clients. They are also required for non-dynamic interface configurations where " ..
"only hosts with a corresponding lease are served.") .. "<br />" ..
translate("Use the <em>Add</em> Button to add a new lease entry. The <em>MAC-Address</em> " ..
- "indentifies the host, the <em>IPv4-Address</em> specifies t
o t
he fixed address to " ..
- "use
and the <em>Hostname</em> is assigned as
symbolic name to the requesting host. " ..
+ "indentifies the host, the <em>IPv4-Address</em> specifies the fixed address to " ..
+ "use
, and the <em>Hostname</em> is assigned as a
symbolic name to the requesting host. " ..
"The optional <em>Lease time</em> can be used to set non-standard host-specific " ..
"lease time, e.g. 12h, 3d or infinite."))
"The optional <em>Lease time</em> can be used to set non-standard host-specific " ..
"lease time, e.g. 12h, 3d or infinite."))
@@
-273,7
+280,7
@@
s.anonymous = true
s.template = "cbi/tblsection"
name = s:option(Value, "name", translate("Hostname"))
s.template = "cbi/tblsection"
name = s:option(Value, "name", translate("Hostname"))
-name.datatype = "hostname"
+name.datatype = "hostname
('strict')
"
name.rmempty = true
function name.write(self, section, value)
name.rmempty = true
function name.write(self, section, value)
@@
-294,10
+301,10
@@
ip = s:option(Value, "ip", translate("<abbr title=\"Internet Protocol Version 4\
ip.datatype = "or(ip4addr,'ignore')"
time = s:option(Value, "leasetime", translate("Lease time"))
ip.datatype = "or(ip4addr,'ignore')"
time = s:option(Value, "leasetime", translate("Lease time"))
-time.rmempty
= true
+time.rmempty = true
duid = s:option(Value, "duid", translate("<abbr title=\"The DHCP Unique Identifier\">DUID</abbr>"))
duid = s:option(Value, "duid", translate("<abbr title=\"The DHCP Unique Identifier\">DUID</abbr>"))
-duid.datatype = "and(rangelength(2
8
,36),hexstring)"
+duid.datatype = "and(rangelength(2
0
,36),hexstring)"
fp = io.open("/var/hosts/odhcpd")
if fp then
for line in fp:lines() do
fp = io.open("/var/hosts/odhcpd")
if fp then
for line in fp:lines() do
@@
-311,10
+318,10
@@
end
hostid = s:option(Value, "hostid", translate("<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Suffix (hex)"))
hostid = s:option(Value, "hostid", translate("<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Suffix (hex)"))
-
ipc.neighbors({ family = 4 }, function(n
)
- if
n.mac and n.dest
then
- ip:value(
n.dest:string()
)
- mac:value(
n.mac, "%s (%s)" %{ n.mac, n.dest:string()
})
+
sys.net.host_hints(function(m, v4, v6, name
)
+ if
m and v4
then
+ ip:value(
v4
)
+ mac:value(
m, "%s (%s)" %{ m, name or v4
})
end
end)
end
end)