summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgreg@kroah.com <greg@kroah.com>2004-04-01 21:38:59 -0800
committerGreg KH <gregkh@suse.de>2005-04-26 21:35:13 -0700
commitd5853b48fb098ca63af813ae74cd6af3a9400d01 (patch)
tree6f22e7df60eb8bd543609b2054dbeacab67eaf17
parenta008521bb8a619b63a2d6e9c1e16b3a113a6cf20 (diff)
[PATCH] add hotplug.dev script to handle renamed network devices.
-rw-r--r--etc/dev.d/net/hotplug.dev23
-rw-r--r--test/net_test49
2 files changed, 72 insertions, 0 deletions
diff --git a/etc/dev.d/net/hotplug.dev b/etc/dev.d/net/hotplug.dev
new file mode 100644
index 0000000000..ed64c08cf2
--- /dev/null
+++ b/etc/dev.d/net/hotplug.dev
@@ -0,0 +1,23 @@
+#!/bin/sh
+#
+# Script to ensure that any network device that udev renames
+# still gets the hotplug script run with the proper name.
+#
+# Released under the GPL v2
+#
+# Copyright (C) 2004 Greg Kroah-Hartman <greg@kroah.com>
+#
+
+# See if we really did rename this device.
+if [ "$INTERFACE" = "$DEVNAME" ]; then
+ exit 0
+fi
+
+# ok, we have renamed this device, so let's set $INTERFACE to the new name
+# and call the network hotplug script to handle it properly...
+INTERFACE=$DEVNAME
+export INTERFACE
+if [ -f /etc/hotplug.d/default/default.hotplug ]; then
+ /etc/hotplug.d/default/default.hotplug net
+fi
+
diff --git a/test/net_test b/test/net_test
new file mode 100644
index 0000000000..b99a4acd54
--- /dev/null
+++ b/test/net_test
@@ -0,0 +1,49 @@
+#!/bin/bash
+
+RULES=label_test.rules
+CONFIG=label_test.conf
+
+export UDEV_TEST=yes
+export SYSFS_PATH=$PWD/sys/
+export UDEV_CONFIG_FILE=$PWD/$CONFIG
+
+cat > $RULES << EOF
+BUS="scsi", SYSFS{vendor}="IBM-ESXS", SYSFS{model}="ST336605LW !#", NAME="boot_diskX%n"
+BUS="scsi", SYSFS{vendor}="IBM-ESXS", SYSFS{model}="ST336605LW !#", NAME="boot_disk%n"
+EOF
+
+cat > $CONFIG << EOF
+udev_root="$PWD/udev/"
+udev_db="$PWD/udev/.udev.tdb"
+udev_rules="$PWD/$RULES"
+udev_permissions="$PWD/udev.permissions"
+EOF
+
+mkdir udev
+
+export ACTION=add
+export DEVPATH=block/sda
+
+../udev block
+ls -l udev
+
+export DEVPATH=block/sda/sda3
+
+../udev block
+ls -l udev
+
+export ACTION=remove
+export DEVPATH=block/sda
+
+../udev block
+ls -l udev
+
+export DEVPATH=block/sda/sda3
+
+../udev block
+ls -l udev
+
+
+rm $RULES
+rm $CONFIG
+rm -rf udev