From e83e95ad53bd14a7c215a72af948daa0b8d07031 Mon Sep 17 00:00:00 2001 From: acinonyx Date: Wed, 14 Sep 2011 13:37:40 +0000 Subject: [PATCH] Revert "[package] base-files: Add support for assigning multiple IPv6 addresses on an interface" Multiple IPv6 addresses should be handled with alias sections git-svn-id: svn://svn.openwrt.org/openwrt/trunk@28240 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/base-files/files/lib/network/config.sh | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/package/base-files/files/lib/network/config.sh b/package/base-files/files/lib/network/config.sh index 5975f17df..cf5b197b5 100755 --- a/package/base-files/files/lib/network/config.sh +++ b/package/base-files/files/lib/network/config.sh @@ -242,10 +242,10 @@ setup_interface_static() { local iface="$1" local config="$2" - local ipaddr netmask ip6addrs ipaddr + local ipaddr netmask ip6addr config_get ipaddr "$config" ipaddr config_get netmask "$config" netmask - config_get ip6addrs "$config" ip6addr + config_get ip6addr "$config" ip6addr [ -z "$ipaddr" -o -z "$netmask" ] && [ -z "$ip6addr" ] && return 1 local gateway ip6gw dns bcast metric @@ -255,14 +255,13 @@ setup_interface_static() { config_get bcast "$config" broadcast config_get metric "$config" metric + case "$ip6addr" in + */*) ;; + *:*) ip6addr="$ip6addr/64" ;; + esac + [ -z "$ipaddr" ] || $DEBUG ifconfig "$iface" "$ipaddr" netmask "$netmask" broadcast "${bcast:-+}" - for ip6addr in $ip6addrs; do - case "$ip6addr" in - */*) ;; - *:*) ip6addr="$ip6addr/64" ;; - esac - $DEBUG ifconfig "$iface" add "$ip6addr" - done + [ -z "$ip6addr" ] || $DEBUG ifconfig "$iface" add "$ip6addr" [ -z "$gateway" ] || $DEBUG route add default gw "$gateway" ${metric:+metric $metric} dev "$iface" [ -z "$ip6gw" ] || $DEBUG route -A inet6 add default gw "$ip6gw" ${metric:+metric $metric} dev "$iface" [ -z "$dns" ] || add_dns "$config" $dns