[openwrt/openwrt] dnsmasq: add procd interface index tracking

LEDE Commits lede-commits at lists.infradead.org
Wed Apr 6 09:35:08 PDT 2022


dangole pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/76f55e3c3f32dea63a385e9b3c8eaed1322089c7

commit 76f55e3c3f32dea63a385e9b3c8eaed1322089c7
Author: Valentyn Datsko <valikk.d at gmail.com>
AuthorDate: Wed Apr 6 16:13:13 2022 +0300

    dnsmasq: add procd interface index tracking
    
    Problem exist when dnsmasq is exclusively bind to particular interface.
    After reconfiguring or restarting this interface, its index changes, but
    dnsmasq uses the old one. When this problem occurs, dnsmasq does not
    listen on the correct interface so DHCP does not work, and clients do not
    get an IP address. Procd netdev param can be added to restart dnsmasq when
    the interface index is changed.
    
    Signed-off-by: Valentyn Datsko <valikk.d at gmail.com>
    [combined into a single &&-connected statement]
    Signed-off-by: Daniel Golle <daniel at makrotopia.org>
---
 package/network/services/dnsmasq/files/dnsmasq.init | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/package/network/services/dnsmasq/files/dnsmasq.init b/package/network/services/dnsmasq/files/dnsmasq.init
index 09dce0a78d..d95502c0da 100755
--- a/package/network/services/dnsmasq/files/dnsmasq.init
+++ b/package/network/services/dnsmasq/files/dnsmasq.init
@@ -1156,6 +1156,11 @@ dnsmasq_start()
 	[ -n "$user_dhcpscript" ] && procd_set_param env USER_DHCPSCRIPT="$user_dhcpscript"
 	procd_set_param respawn
 
+	local instance_ifc instance_netdev
+	config_get instance_ifc "$cfg" interface
+	[ -n "$instance_ifc" ] && network_get_device instance_netdev "$instance_ifc" &&
+		[ -n "$instance_netdev" ] && procd_set_param netdev $instance_netdev
+
 	procd_add_jail dnsmasq ubus log
 	procd_add_jail_mount $CONFIGFILE $DHCPBOGUSHOSTNAMEFILE $DHCPSCRIPT $DHCPSCRIPT_DEPENDS
 	procd_add_jail_mount $EXTRA_MOUNT $RFC6761FILE $TRUSTANCHORSFILE




More information about the lede-commits mailing list