From: cyrus Date: Thu, 13 Mar 2014 10:33:26 +0000 (+0000) Subject: netifd: pass on delegate flag from dhcp to 6rd X-Git-Url: https://git.archive.openwrt.org/?p=openwrt.git;a=commitdiff_plain;h=be559e7fa606e6649976b0d464caa47f927dc5c4 netifd: pass on delegate flag from dhcp to 6rd git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39909 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- diff --git a/package/network/config/netifd/Makefile b/package/network/config/netifd/Makefile index 29c0300c65..d8ee840eb6 100644 --- a/package/network/config/netifd/Makefile +++ b/package/network/config/netifd/Makefile @@ -1,7 +1,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=netifd -PKG_VERSION:=2014-03-11 +PKG_VERSION:=2014-03-13 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_SOURCE_PROTO:=git diff --git a/package/network/config/netifd/files/lib/netifd/dhcp.script b/package/network/config/netifd/files/lib/netifd/dhcp.script index 77b77f5fec..c597840362 100755 --- a/package/network/config/netifd/files/lib/netifd/dhcp.script +++ b/package/network/config/netifd/files/lib/netifd/dhcp.script @@ -53,6 +53,7 @@ setup_interface () { json_add_string ip6prefix "$ip6rdprefix" json_add_int ip6prefixlen "$ip6rdprefixlen" json_add_string tunlink "$INTERFACE" + [ -n "$IFACE6RD_DELEGATE" ] && json_add_boolean delegate "$IFACE6RD_DELEGATE" json_close_object ubus call network add_dynamic "$(json_dump)" diff --git a/package/network/config/netifd/files/lib/netifd/proto/dhcp.sh b/package/network/config/netifd/files/lib/netifd/proto/dhcp.sh index 80668ee4fd..0481d05132 100755 --- a/package/network/config/netifd/files/lib/netifd/proto/dhcp.sh +++ b/package/network/config/netifd/files/lib/netifd/proto/dhcp.sh @@ -14,14 +14,15 @@ proto_dhcp_init_config() { proto_config_add_string 'reqopts:list(string)' proto_config_add_string iface6rd proto_config_add_string sendopts + proto_config_add_boolean delegate } proto_dhcp_setup() { local config="$1" local iface="$2" - local ipaddr hostname clientid vendorid broadcast reqopts iface6rd sendopts - json_get_vars ipaddr hostname clientid vendorid broadcast reqopts iface6rd sendopts + local ipaddr hostname clientid vendorid broadcast reqopts iface6rd sendopts delegate + json_get_vars ipaddr hostname clientid vendorid broadcast reqopts iface6rd sendopts delegate local opt dhcpopts for opt in $reqopts; do @@ -35,6 +36,7 @@ proto_dhcp_setup() { [ "$broadcast" = 1 ] && broadcast="-B" || broadcast= [ -n "$clientid" ] && clientid="-x 0x3d:${clientid//:/}" || clientid="-C" [ -n "$iface6rd" ] && proto_export "IFACE6RD=$iface6rd" + [ "$delegate" = "0" ] && proto_export "IFACE6RD_DELEGATE=0" proto_export "INTERFACE=$config" proto_run_command "$config" udhcpc \