summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/udev/udev-extraconf/network.sh
diff options
context:
space:
mode:
authorMartin Jansa <martin.jansa@gmail.com>2012-07-30 17:03:14 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-09-04 14:08:35 +0100
commit0cc01a67f1c0bf1bff491c9c644348d6be318a72 (patch)
tree2c090dc35a587707b0944162cd265a4c7574b4e9 /meta/recipes-core/udev/udev-extraconf/network.sh
parentc5003a45d9c54a7a6d1c78799b8c2e3962cf1e52 (diff)
downloadpoky-0cc01a67f1c0bf1bff491c9c644348d6be318a72.tar.gz
udev-extraconf: Merge with udev-extra-rules from meta-oe
* Move parts of local.rules from udev to udev-extraconf * Move mount.sh and network.sh to udev-extraconf along with rule fragments * Add mount.blacklist to CONFFILES * Change PV to 1.0 and bump PR to provide upgrade path from meta-oe's udev-extra-rules including RREPLACE/RPROVIDES/RCONFLICTS trio (From OE-Core rev: 0ca3a7823e97c4e4af6e89d852f98d29ed6193d7) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core/udev/udev-extraconf/network.sh')
-rw-r--r--meta/recipes-core/udev/udev-extraconf/network.sh54
1 files changed, 54 insertions, 0 deletions
diff --git a/meta/recipes-core/udev/udev-extraconf/network.sh b/meta/recipes-core/udev/udev-extraconf/network.sh
new file mode 100644
index 0000000000..3ee92714af
--- /dev/null
+++ b/meta/recipes-core/udev/udev-extraconf/network.sh
@@ -0,0 +1,54 @@
1#!/bin/sh
2
3# We get two "add" events for hostap cards due to wifi0
4echo "$INTERFACE" | grep -q wifi && exit 0
5
6# udevd does clearenv(). Export shell PATH to children.
7export PATH
8
9# Check if /etc/init.d/network has been run yet to see if we are
10# called by starting /etc/rcS.d/S03udev and not by hotplugging a device
11#
12# At this stage, network interfaces should not be brought up
13# automatically because:
14# a) /etc/init.d/network has not been run yet (security issue)
15# b) /var has not been populated yet so /etc/resolv,conf points to
16# oblivion, making the network unusable
17#
18
19spoofp="`grep ^spoofprotect /etc/network/options`"
20if test -z "$spoofp"
21then
22 # This is the default from /etc/init.d/network
23 spoofp_val=yes
24else
25 spoofp_val=${spoofp#spoofprotect=}
26fi
27
28test "$spoofp_val" = yes && spoofp_val=1 || spoofp_val=0
29
30# I think it is safe to assume that "lo" will always be there ;)
31if test "`cat /proc/sys/net/ipv4/conf/lo/rp_filter`" != "$spoofp_val" -a -n "$spoofp_val"
32then
33 echo "$INTERFACE" >> /dev/udev_network_queue
34 exit 0
35fi
36
37#
38# Code taken from pcmcia-cs:/etc/pcmcia/network
39#
40
41# if this interface has an entry in /etc/network/interfaces, let ifupdown
42# handle it
43if grep -q "iface \+$INTERFACE" /etc/network/interfaces; then
44 case $ACTION in
45 add)
46 ifconfig | grep -q "^$INTERFACE" || ifup $INTERFACE
47 ;;
48 remove)
49 ifdown $INTERFACE
50 ;;
51 esac
52
53 exit 0
54fi