Browse Source

ppp: propagate master peerdns setting to dynamic slave interface

Honour the parent interfaces peerdns option when spawning a virtual DHCPv6
interface in order to avoid pulling in IPv6 DNS servers when the user opted
to inhibit peer DNS servers in the configuration.

Fixes #597.

Signed-off-by: Jo-Philipp Wich <[email protected]>
Jo-Philipp Wich 8 years ago
parent
commit
64de1cb1fd

+ 1 - 1
package/network/services/ppp/Makefile

@@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=ppp
 PKG_VERSION:=2.4.7
-PKG_RELEASE:=10
+PKG_RELEASE:=11
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://download.samba.org/pub/ppp/

+ 1 - 0
package/network/services/ppp/files/lib/netifd/ppp6-up

@@ -23,6 +23,7 @@ if [ -n "$AUTOIPV6" ]; then
 	json_add_string proto "dhcpv6"
 	[ -n "$EXTENDPREFIX" ] && json_add_string extendprefix 1
 	[ -n "$IP6TABLE" ] && json_add_string ip6table $IP6TABLE
+	[ -n "$PEERDNS" ] && json_add_boolean peerdns $PEERDNS
 	json_close_object
 	ubus call network add_dynamic "$(json_dump)"
 fi

+ 2 - 1
package/network/services/ppp/files/ppp.sh

@@ -88,7 +88,7 @@ ppp_generic_setup() {
 	local config="$1"; shift
 	local localip
 
-	json_get_vars ipv6 ip6table demand keepalive keepalive_adaptive username password pppd_options pppname unnumbered persist maxfail holdoff
+	json_get_vars ipv6 ip6table demand keepalive keepalive_adaptive username password pppd_options pppname unnumbered persist maxfail holdoff peerdns
 	if [ "$ipv6" = 0 ]; then
 		ipv6=""
 	elif [ -z "$ipv6" -o "$ipv6" = auto ]; then
@@ -137,6 +137,7 @@ ppp_generic_setup() {
 		${ipv6:++ipv6} \
 		${autoipv6:+set AUTOIPV6=1} \
 		${ip6table:+set IP6TABLE=$ip6table} \
+		${peerdns:+set PEERDNS=$peerdns} \
 		nodefaultroute \
 		usepeerdns \
 		$demand $persist maxfail $maxfail \