fixup! Gluon-core: Allow multiple domain names for next_node-feature

This commit is contained in:
Christof Schulze 2018-02-03 12:27:20 +01:00
parent 728130004c
commit 122bd5138c
3 changed files with 9 additions and 11 deletions

View File

@ -173,8 +173,13 @@ next_node \: package
omitted, there will be no IPv4 or IPv6 anycast address. The MAC address
defaults to ``16:41:95:40:f7:dc``; this value usually doesn't need to be
changed, but it can be adjusted to match existing deployments that use a
different value. Each entry in the ``name``-field will be resolved as the
different value. Each entry in the ``name``-field will be resolved to the
ipv4 and ipv6-address.
For this to work, clients must use the next-node as their resolver. In
batman-based networks this requires setting the central dhcp server to
deliver this address as DNS-server via DHCP-option. When running a radvd
inside the network, this should be set to deliver the next-node
ipv6-address via rdnss.
mesh \: optional
Options specific to routing protocols.

View File

@ -70,12 +70,7 @@ if need_table({'dns'}, nil, false) then
need_number({'dns', 'cacheentries'}, false)
end
if need_table('next_node', nil, false) then
need_string_match('next_node.ip6', '^[%x:]+$', false)
need_string_match('next_node.ip4', '^%d+.%d+.%d+.%d+$', false)
need_string_array('next_node.name', false)
end
need_string_array(in_domain({'next_node', 'name'}), false)
need_string_match(in_domain({'next_node', 'ip6'}), '^[%x:]+$', false)
need_string_match(in_domain({'next_node', 'ip4'}), '^%d+.%d+.%d+.%d+$', false)

View File

@ -34,10 +34,8 @@ local function set_dns_record(name, ip, sectionname)
end
uci:foreach("dhcp", "domain", function(s)
for key, value in pairs(s) do
if (key == ".name" and string.gmatch(value, "^nextnode[46]")) then
uci:delete("dhcp", value)
end
if (s['.name'] and string.match(s['.name'], "^nextnode[46]_")) then
uci:delete("dhcp", s['.name'])
end
end)