if [ "$PRINT_HEADER" ]; then
PRINT_HEADER=
echo "# This file was automatically generated by the $0"
- echo "# program, probably run by the persistent-net-generator.rules rules file."
+ echo "# program run by the persistent-net-generator.rules rules file."
echo "#"
echo "# You can modify it, as long as you keep each rule on a single line."
fi
} >> $RULES_FILE
}
-# used only if $RULES_FILE is empty, like on installation
-if [ "$1" = "all_interfaces" ]; then
- if [ -e $RULES_FILE ]; then
- printf "$RULES_FILE exists, persistent interface names\nnot saved.\n" >&2
- exit 0
- fi
-
- if [ ! -e /sys/class/net/ ]; then
- echo "/sys/class/net/ is not available, persistent interface names not saved." >&2
- exit 0
- fi
-
- cd /sys/class/net/ || return 0
-
- for INTERFACE in *; do
- case $INTERFACE in
- eth*|ath*|wlan*|ra*|sta*|ctc*|hsi*) ;;
- *) continue ;;
- esac
-
- INTERFACE="$INTERFACE" DEVPATH="/class/net/$INTERFACE" \
- /lib/udev/write_net_rules || true
- done
-
- exit 0
-fi
-
if [ -z "$INTERFACE" ]; then
echo "Missing \$INTERFACE." >&2
exit 1
# the DRIVERS key is needed to not match bridges and VLAN sub-interfaces
if [ "$MAC_ADDR" ] ; then
- match="DRIVERS==\"?*\", ATTRS{address}==\"$MAC_ADDR\""
+ match="DRIVERS==\"?*\", ATTR{address}==\"$MAC_ADDR\""
else
match="DRIVERS==\"$DRIVER\", KERNELS==\"$ID\""
fi
if [ $basename = "ath" -o $basename = "wlan" ]; then
- match="$match, ATTRS{type}==\"1\"" # do not match the wifi* interfaces
+ match="$match, ATTR{type}==\"1\"" # do not match the wifi* interfaces
fi
write_rule "$match" "$INTERFACE" "$COMMENT"