From 4a64818533733e194138a45656aaf14d5a123e98 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 3 Feb 2006 09:02:41 +0000 Subject: Update to udev 084 from OE. This adds a coldplug script to emulate the calls necessary to load devices already inserted into the system at boot. It also adds a network interface control script. git-svn-id: https://svn.o-hand.com/repos/poky@247 311d38ba-8fff-0310-9ca6-ca027cbcb966 --- openembedded/packages/udev/files/init | 16 +++++++++++++--- openembedded/packages/udev/files/local.rules | 2 ++ openembedded/packages/udev/files/network.sh | 26 ++++++++++++++++++++++++++ 3 files changed, 41 insertions(+), 3 deletions(-) create mode 100644 openembedded/packages/udev/files/network.sh (limited to 'openembedded/packages/udev/files') diff --git a/openembedded/packages/udev/files/init b/openembedded/packages/udev/files/init index 6ad6fd581..1022b40c8 100755 --- a/openembedded/packages/udev/files/init +++ b/openembedded/packages/udev/files/init @@ -52,9 +52,19 @@ mount_tmpfs() { mkdir -p /dev/.static/dev chmod 700 /dev/.static/ - # Make sure it's busybox mount we're using. util-linux mount doesn't handle - # -o move. - busybox mount -n -o move /etc/udev /dev/.static/dev + # The mount options in busybox are non-standard... + if test -x /bin/mount.util-linux + then + /bin/mount.util-linux --move /etc/udev /dev/.static/dev + elif test -x /bin/busybox + then + busybox mount -n -o move /etc/udev /dev/.static/dev + else + echo "udev requires an identifiable mount command, not started." + umount /etc/udev + umount /dev + exit 1 + fi } # I hate this hack. -- Md diff --git a/openembedded/packages/udev/files/local.rules b/openembedded/packages/udev/files/local.rules index 95b3e1083..4bcaaa8ab 100644 --- a/openembedded/packages/udev/files/local.rules +++ b/openembedded/packages/udev/files/local.rules @@ -1,3 +1,5 @@ SUBSYSTEM=="block", ACTION=="add" RUN+="/etc/udev/scripts/mount.sh" SUBSYSTEM=="block", ACTION=="remove" RUN+="/etc/udev/scripts/mount.sh" +SUBSYSTEM=="net", ACTION=="add" RUN+="/etc/udev/scripts/network.sh" +SUBSYSTEM=="net", ACTION=="remove" RUN+="/etc/udev/scripts/network.sh" diff --git a/openembedded/packages/udev/files/network.sh b/openembedded/packages/udev/files/network.sh new file mode 100644 index 000000000..2cfbfa91b --- /dev/null +++ b/openembedded/packages/udev/files/network.sh @@ -0,0 +1,26 @@ +#!/bin/sh + +# Do not run when pcmcia-cs is installed +test -x /sbin/cardctl && exit 0 + +# We get two "add" events for hostap cards due to wifi0 +echo "$INTERFACE" | grep -q wifi && exit 0 + +# +# Code taken from pcmcia-cs:/etc/pcmcia/network +# + +# if this interface has an entry in /etc/network/interfaces, let ifupdown +# handle it +if grep -q "iface \+$INTERFACE" /etc/network/interfaces; then + case $ACTION in + add) + ifup $INTERFACE + ;; + remove) + ifdown $INTERFACE + ;; + esac + + exit 0 +fi -- cgit v1.2.3