From 9bdca442ef3f7d54cea9827605ec635712009735 Mon Sep 17 00:00:00 2001 From: Kay Sievers Date: Thu, 23 Oct 2008 15:44:34 +0200 Subject: [PATCH] rule_generator: fix netif NAME= value extraction regex $ sed -n -r \ -e 's/^#.*//' \ -e 's/[[:space:],]NAME="(eth[0-9]*)"[[:space:]]*(,.*|\\|)$/\1/p' \ /dev/null /etc/udev/rules.d/70-persistent-net.rules SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:16:41:e2:8d:c7", ATTR{type}=="1", KERNEL=="eth*",eth4 $ sed -n -r \ -e 's/^#.*//' \ -e 's/.*[[:space:],]NAME="(eth[0-9]*)".*/\1/p' \ /dev/null /etc/udev/rules.d/70-persistent-net.rules eth4 --- extras/rule_generator/rule_generator.functions | 3 +-- extras/rule_generator/write_cd_rules | 13 ++++++++++--- extras/rule_generator/write_net_rules | 12 ++++++++++-- 3 files changed, 21 insertions(+), 7 deletions(-) diff --git a/extras/rule_generator/rule_generator.functions b/extras/rule_generator/rule_generator.functions index aaf66a6fa0..b972091615 100644 --- a/extras/rule_generator/rule_generator.functions +++ b/extras/rule_generator/rule_generator.functions @@ -92,8 +92,7 @@ find_all_rules() { local linkre="$2" local match="$3" - local search='[[:space:],]'"$key"'"('"$linkre"')"[[:space:]]*(,.*|\\|)$' - + local search='.*[[:space:],]'"$key"'"('"$linkre"')".*' echo $(sed -n -r -e 's/^#.*//' -e "${match}s/${search}/\1/p" \ $RO_RULES_FILE \ $([ -e $RULES_FILE ] && echo $RULES_FILE) \ diff --git a/extras/rule_generator/write_cd_rules b/extras/rule_generator/write_cd_rules index d74b20128d..8de227661d 100644 --- a/extras/rule_generator/write_cd_rules +++ b/extras/rule_generator/write_cd_rules @@ -11,6 +11,13 @@ # under the terms of the GNU General Public License as published by the # Free Software Foundation version 2 of the License. +# debug, if UDEV_LOG= +if [ -n "$UDEV_LOG" ]; then + if [ "$UDEV_LOG" -ge 7 ]; then + set -x + fi +fi + RULES_FILE="/etc/udev/rules.d/70-persistent-cd.rules" . /lib/udev/rule_generator.functions @@ -28,10 +35,10 @@ write_rule() { if [ "$PRINT_HEADER" ]; then PRINT_HEADER= echo "# This file was automatically generated by the $0" - echo "# program, probably run by the cd-aliases-generator.rules rules file." + echo "# program, run by the cd-aliases-generator.rules rules file." echo "#" - echo "# You can modify it, as long as you keep each rule on a single line" - echo "# and set the \$GENERATED variable." + echo "# You can modify it, as long as you keep each rule on a single" + echo "# line, and set the \$GENERATED variable." echo "" fi diff --git a/extras/rule_generator/write_net_rules b/extras/rule_generator/write_net_rules index d1086f086e..cb346757cc 100644 --- a/extras/rule_generator/write_net_rules +++ b/extras/rule_generator/write_net_rules @@ -22,6 +22,13 @@ # INTERFACE_NAME requested name supplied by external tool # INTERFACE_NEW new interface name returned by rule writer +# debug, if UDEV_LOG= +if [ -n "$UDEV_LOG" ]; then + if [ "$UDEV_LOG" -ge 7 ]; then + set -x + fi +fi + RULES_FILE='/etc/udev/rules.d/70-persistent-net.rules' . /lib/udev/rule_generator.functions @@ -48,9 +55,10 @@ write_rule() { if [ "$PRINT_HEADER" ]; then PRINT_HEADER= echo "# This file was automatically generated by the $0" - echo "# program 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." + echo "# You can modify it, as long as you keep each rule on a single" + echo "# line, and change only the value of the NAME= key." fi echo ""