avoid duplicate vlan add events
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 1 Aug 2008 03:01:25 +0000 (03:01 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 1 Aug 2008 03:01:25 +0000 (03:01 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@12057 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/base-files/files/lib/network/config.sh

index b3e9fed..0a74644 100755 (executable)
@@ -61,7 +61,9 @@ add_vlan() {
        [ "$1" = "$vif" ] || ifconfig "$1" >/dev/null 2>/dev/null || {
                ifconfig "$vif" up 2>/dev/null >/dev/null || add_vlan "$vif"
                $DEBUG vconfig add "$vif" "${1##*\.}"
+               return 0
        }
+       return 1
 }
 
 # sort the device list, drop duplicates
@@ -94,7 +96,7 @@ prepare_interface() {
        }
 
        # Setup VLAN interfaces
-       add_vlan "$iface"
+       add_vlan "$iface" && return 1
        ifconfig "$iface" 2>/dev/null >/dev/null || return 0
 
        # Setup bridging