dnsmasq: Create rDNS records for LuCI "Hostnames"

LuCI creates "domain" UCI config sections, which the dnsmasq init file
then, currently, translates into "address" config lines. This is not
the correct usage of "address" (see r36943), and also causes rDNS
records to not be created. This patches dnsmasq.init to utilize the
additional hosts file introduced in r40799 for such domain names,
resolving both issues.

Signed-off-by: Tyler Fenby <tylerf@securecominc.com>

SVN-Revision: 42318
This commit is contained in:
John Crispin 2014-08-28 06:27:49 +00:00
parent 254b2670e1
commit 449994b8c2

View File

@ -441,13 +441,10 @@ dhcp_domain_add() {
[ -n "$ip" ] || return 0
for name in $names; do
[ "${name%.*}" == "$name" ] && \
name="$name${DOMAIN:+.$DOMAIN}"
record="${record:+$record/}$name"
record="${record:+$record }$name"
done
xappend "--address=/$record/$ip"
echo "$ip $record" >> $HOSTFILE
}
dhcp_srv_add() {
@ -572,7 +569,7 @@ start_service() {
local lanaddr
[ $ADD_LOCAL_HOSTNAME -eq 1 ] && network_get_ipaddr lanaddr "lan" && {
local hostname="$(uci_get system @system[0] hostname OpenWrt)"
dhcp_hostrecord_add "" "${hostname%.$DOMAIN}${DOMAIN:+.$DOMAIN ${hostname%.$DOMAIN}}" "$lanaddr"
dhcp_domain_add "" "$hostname" "$lanaddr"
}
echo >> $CONFIGFILE