X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=extras%2Frule_generator%2Fwrite_net_rules;h=d1086f086ee998cd16d6937bfec56cd003fa87ed;hb=e4255f115330b949c1caeb561cbe0e39f5225f50;hp=9b66c938f39380c1b6970f57b1447fe263192de5;hpb=6e509e539b15ae882afd8ce3fafe1fbd33008509;p=elogind.git diff --git a/extras/rule_generator/write_net_rules b/extras/rule_generator/write_net_rules index 9b66c938f..d1086f086 100644 --- a/extras/rule_generator/write_net_rules +++ b/extras/rule_generator/write_net_rules @@ -15,6 +15,7 @@ # variables used to communicate: # MATCHADDR MAC address used for the match # MATCHID bus_id used for the match +# MATCHDEVID dev_id used for the match # MATCHDRV driver name used for the match # MATCHIFTYPE interface type match # COMMENT comment to add to the generated rule @@ -78,6 +79,10 @@ if [ "$MATCHDRV" ]; then match="$match, DRIVERS==\"$MATCHDRV\"" fi +if [ "$MATCHDEVID" ]; then + match="$match, ATTR{dev_id}==\"$MATCHDEVID\"" +fi + if [ "$MATCHID" ]; then match="$match, KERNELS==\"$MATCHID\"" fi @@ -92,6 +97,9 @@ if [ -z "$match" ]; then exit 1 fi +basename=${INTERFACE%%[0-9]*} +match="$match, KERNEL==\"$basename*\"" + if [ "$INTERFACE_NAME" ]; then # external tools may request a custom name COMMENT="$COMMENT (custom name provided by external tool)" @@ -101,7 +109,6 @@ if [ "$INTERFACE_NAME" ]; then fi else # if a rule using the current name already exists, find a new name - basename=${INTERFACE%%[0-9]*} if interface_name_taken; then INTERFACE="$basename$(find_next_available "$basename[0-9]*")" echo "INTERFACE_NEW=$INTERFACE"