chiark / gitweb /
rules_generator: add missing write_net_rules unlock
[elogind.git] / extras / rule_generator / 75-persistent-net-generator.rules
index d09bc3802868974ffa47e73f1c268274e2ec2736..2aa3076a5932c8b6add2b7f54bbe6231ecacf0e5 100644 (file)
@@ -20,15 +20,15 @@ NAME=="?*", GOTO="persistent_net_generator_end"
 # device name whitelist
 KERNEL!="eth*|ath*|wlan*[0-9]|ra*|sta*|ctc*|lcs*|hsi*", GOTO="persistent_net_generator_end"
 
-# add interface type match for some devices
-KERNEL=="wlan*|ath*", ENV{MATCHIFTYPE}="1"
-
 # ignore Xen virtual interfaces
 SUBSYSTEMS=="xen", GOTO="persistent_net_generator_end"
 
 # read MAC address
 ENV{MATCHADDR}="$attr{address}"
 
+# match interface type
+ENV{MATCHIFTYPE}="$attr{type}"
+
 # do not use "locally administered" MAC address
 ENV{MATCHADDR}=="?[2367abef]:*", ENV{MATCHADDR}=""
 
@@ -44,6 +44,9 @@ SUBSYSTEMS=="ieee1394", ENV{COMMENT}="Firewire device $attr{host_id})"
 # S/390 uses id matches only, do not use MAC address match
 SUBSYSTEMS=="ccwgroup", ENV{COMMENT}="S/390 $driver device at $id", ENV{MATCHID}="$id", ENV{MATCHDRV}="$driver", ENV{MATCHADDR}=""
 
+# see if we got enough data to create a rule
+ENV{MATCHADDR}=="", ENV{MATCHID}=="", ENV{INTERFACE_NAME}=="", GOTO="persistent_net_generator_end"
+
 # default comment
 ENV{COMMENT}=="", ENV{COMMENT}="$env{SUBSYSTEM} device"