[backfire] backport r25454
[openwrt-10.03/.git] / package / base-files / files / lib / network / config.sh
index 0844acc18de6f8a2cce2d5c64b64e471d0f14d35..9e4128bc95af54fb6cc469a7965c2b16b8d3ddb0 100755 (executable)
@@ -164,15 +164,6 @@ prepare_interface() {
                        local macaddr
                        config_get macaddr "$config" macaddr
                        [ -x /usr/sbin/brctl ] && {
-                               # Remove IPv6 link local addr before adding the iface to the bridge
-                               local llv6="$(ifconfig "$iface")"
-                               case "$llv6" in
-                                       *fe80:*/64*)
-                                               llv6="${llv6#* fe80:}"
-                                               ifconfig "$iface" del "fe80:${llv6%% *}"
-                                       ;;
-                               esac
-
                                ifconfig "br-$config" 2>/dev/null >/dev/null && {
                                        local newdevs devices
                                        config_get devices "$config" device
@@ -181,6 +172,7 @@ prepare_interface() {
                                        done
                                        uci_set_state network "$config" device "$newdevs"
                                        $DEBUG ifconfig "$iface" 0.0.0.0
+                                       $DEBUG do_sysctl "net.ipv6.conf.$iface.disable_ipv6" 1
                                        $DEBUG brctl addif "br-$config" "$iface"
                                        # Bridge existed already. No further processing necesary
                                } || {
@@ -190,6 +182,7 @@ prepare_interface() {
                                        $DEBUG brctl setfd "br-$config" 0
                                        $DEBUG ifconfig "br-$config" up
                                        $DEBUG ifconfig "$iface" 0.0.0.0
+                                       $DEBUG do_sysctl "net.ipv6.conf.$iface.disable_ipv6" 1
                                        $DEBUG brctl addif "br-$config" "$iface"
                                        $DEBUG brctl stp "br-$config" $stp
                                        # Creating the bridge here will have triggered a hotplug event, which will