diff options
Diffstat (limited to 'debian/network')
-rw-r--r-- | debian/network/if-post-down.d/vlan | 4 | ||||
-rw-r--r-- | debian/network/if-pre-up.d/vlan | 10 |
2 files changed, 12 insertions, 2 deletions
diff --git a/debian/network/if-post-down.d/vlan b/debian/network/if-post-down.d/vlan index 89b16fb..bade97f 100644 --- a/debian/network/if-post-down.d/vlan +++ b/debian/network/if-post-down.d/vlan @@ -10,9 +10,13 @@ case "$IFACE" in exit 0 ;; eth*.0*|bond*.0*|wlan*.0*) + # Silently ignore interfaces which ifupdown handles on its own + [ -z "$IF_VLAN_RAW_DEVICE" ] && exit 0 IF_VLAN_RAW_DEVICE=`echo $IFACE|sed "s/\(eth[0-9][0-9]*\)\..*/\1/;s/\(bond[0-9][0-9]*\)\..*/\1/;s/\(wlan[0-9][0-9]*\)\..*/\1/"` ;; eth*.*|bond*.*|wlan*.*) + # Silently ignore interfaces which ifupdown handles on its own + [ -z "$IF_VLAN_RAW_DEVICE" ] && exit 0 IF_VLAN_RAW_DEVICE=`echo $IFACE|sed "s/\(eth[0-9][0-9]*\)\..*/\1/;s/\(bond[0-9][0-9]*\)\..*/\1/;s/\(wlan[0-9][0-9]*\)\..*/\1/"` ;; # Test for vlan raw device (#196890, #292648) diff --git a/debian/network/if-pre-up.d/vlan b/debian/network/if-pre-up.d/vlan index b977be8..391c2ec 100644 --- a/debian/network/if-pre-up.d/vlan +++ b/debian/network/if-pre-up.d/vlan @@ -16,11 +16,15 @@ case "$IFACE" in VLANID=`echo $IFACE|sed "s/vlan0*//"` ;; eth*.0*|bond*.0*|wlan*.0*) + # Silently ignore interfaces which ifupdown handles on its own + [ -z "$IF_VLAN_RAW_DEVICE" ] && exit 0 vconfig set_name_type DEV_PLUS_VID VLANID=`echo $IFACE|sed "s/eth[0-9][0-9]*\.0*//g;s/bond[0-9][0-9]*\.0*//;s/wlan[0-9][0-9]*\.0*//"` IF_VLAN_RAW_DEVICE=`echo $IFACE|sed "s/\(eth[0-9][0-9]*\)\..*/\1/;s/\(bond[0-9][0-9]*\)\..*/\1/;s/\(wlan[0-9][0-9]*\)\..*/\1/"` ;; eth*.*|bond*.*|wlan*.*) + # Silently ignore interfaces which ifupdown handles on its own + [ -z "$IF_VLAN_RAW_DEVICE" ] && exit 0 vconfig set_name_type DEV_PLUS_VID_NO_PAD VLANID=`echo $IFACE|sed "s/eth[0-9][0-9]*\.0*//g;s/bond[0-9][0-9]*\.0*//g;s/wlan[0-9][0-9]*\.0*//g"` IF_VLAN_RAW_DEVICE=`echo $IFACE|sed "s/\(eth[0-9][0-9]*\)\..*/\1/;s/\(bond[0-9][0-9]*\)\..*/\1/;s/\(wlan[0-9][0-9]*\)\..*/\1/"` @@ -51,8 +55,10 @@ if [ -n "$IF_VLAN_RAW_DEVICE" ]; then echo "$IF_VLAN_RAW_DEVICE does not exist, unable to create $IFACE" exit 1 fi - ip link set up dev $IF_VLAN_RAW_DEVICE - vconfig add $IF_VLAN_RAW_DEVICE $VLANID + if [ ! -e "/sys/class/net/$IFACE" ]; then + ip link set up dev $IF_VLAN_RAW_DEVICE + vconfig add $IF_VLAN_RAW_DEVICE $VLANID + fi fi # This is not vlan specific, and should actually go somewhere else. |