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@gmail.com> [combined into a single &&-connected statement] Signed-off-by: Daniel Golle <daniel@makrotopia.org>
This commit is contained in:
		 Valentyn Datsko
					Valentyn Datsko
				
			
				
					committed by
					
						 Daniel Golle
						Daniel Golle
					
				
			
			
				
	
			
			
			 Daniel Golle
						Daniel Golle
					
				
			
						parent
						
							64f629e207
						
					
				
				
					commit
					76f55e3c3f
				
			| @@ -1156,6 +1156,11 @@ dnsmasq_start() | |||||||
| 	[ -n "$user_dhcpscript" ] && procd_set_param env USER_DHCPSCRIPT="$user_dhcpscript" | 	[ -n "$user_dhcpscript" ] && procd_set_param env USER_DHCPSCRIPT="$user_dhcpscript" | ||||||
| 	procd_set_param respawn | 	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 dnsmasq ubus log | ||||||
| 	procd_add_jail_mount $CONFIGFILE $DHCPBOGUSHOSTNAMEFILE $DHCPSCRIPT $DHCPSCRIPT_DEPENDS | 	procd_add_jail_mount $CONFIGFILE $DHCPBOGUSHOSTNAMEFILE $DHCPSCRIPT $DHCPSCRIPT_DEPENDS | ||||||
| 	procd_add_jail_mount $EXTRA_MOUNT $RFC6761FILE $TRUSTANCHORSFILE | 	procd_add_jail_mount $EXTRA_MOUNT $RFC6761FILE $TRUSTANCHORSFILE | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user