]> git.ipfire.org Git - ipfire-2.x.git/blobdiff - config/udev/network-hotplug-rename
udev: Rename interfaces when MACs are uppercase
[ipfire-2.x.git] / config / udev / network-hotplug-rename
index aaae641e1529fa3cf2120ac0827c1892d4ebf0f4..71a25c317d64989e1728ffbb268ac5b5f5eec135 100644 (file)
@@ -63,15 +63,29 @@ for zone in ${ZONES}; do
        [ -n "${!address}" -a -n "${!device}" ] || continue
 
        # Compare MAC addresses
-       [ "${ADDRESS}" = "${!address}" ] || continue
+       [ "${ADDRESS}" = "${!address,,}" ] || continue
 
        # If a matching interface has been found we will
        # print the name to which udev will rename it.
-       if [ "${!mode}" = "macvtap" ]; then
-               echo "${!device}phys"
-       else
-               echo "${!device}"
-       fi
+       case "${!mode}" in
+               bridge)
+                       echo "${!device%0}phys0"
+                       ;;
+
+               macvtap)
+                       # MACVTAP mode doesn't work for WiFi devices
+                       if [ -d "/sys/class/net/${INTERFACE}/phy80211" ]; then
+                               logger -t network "MACVTAP mode is not supported for wireless devices"
+                               echo "${!device}"
+                       else
+                               echo "${!device%0}phys0"
+                       fi
+                       ;;
+
+               *)
+                       echo "${!device}"
+                       ;;
+       esac
 
        exit 0
 done