dnsmasq: add interface-name uci list.
authorDaniel Danzberger <daniel@dd-wrt.com>
Tue, 2 May 2017 15:05:07 +0000 (17:05 +0200)
committerHans Dedecker <dedeckeh@gmail.com>
Tue, 9 May 2017 08:00:49 +0000 (10:00 +0200)
This patch adds the interface-name option for each dhcp config
in /etc/config/dhcp.

With the interface_name option users can define a DNS name for each dhcp section
that will be resolved by dnsmasq with the underlaying interface address.

For example:
config dhcp 'lan'
option interface 'lan'
...
list interface_name 'home.lan'
...

Signed-off-by: Daniel Danzberger <daniel@dd-wrt.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
package/network/services/dnsmasq/Makefile
package/network/services/dnsmasq/files/dnsmasq.init

index e8d8e8583c6090e6b567c828ab2da45a1155e439..113a6f154d3ba07fa35e6975a814a5ff61a1e5ed 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=dnsmasq
 PKG_VERSION:=2.77test5
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq/test-releases
index 3b801303b58813bd34a13215eae0e7f956521573..c742205321c346c010a42290f5e5ad94bcc86a5f 100644 (file)
@@ -142,6 +142,10 @@ append_pxe_service() {
        xappend "--pxe-service=$1"
 }
 
+append_interface_name() {
+       xappend "--interface-name=$1,$2"
+}
+
 filter_dnsmasq() {
        local cfg="$1" func="$2" match_cfg="$3" found_cfg
 
@@ -467,6 +471,8 @@ dhcp_add() {
        config_get ra_management "$cfg" ra_management
        config_get ra_preference "$cfg" ra_preference
 
+       config_list_foreach "$cfg" "interface_name" append_interface_name "$ifname"
+
        # Put the router host name on this DHCP served interface address(es)
        dhcp_this_host_add "$net" "$ifname" "$ADD_LOCAL_FQDN"