summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRegis Dargent <regis.dargent@gmail.com>2024-10-18 15:32:38 +0200
committerSteve Sakoman <steve@sakoman.com>2024-11-26 05:37:09 -0800
commit30f687033c126801776a217d1f66cb2ec6164111 (patch)
treea3be7790cf63d270ad2fe28fa4336002a698e8ec
parentcc6492d4182f75cbb4b2958769bbfd603d4ac29f (diff)
downloadpoky-30f687033c126801776a217d1f66cb2ec6164111.tar.gz
udev-extraconf: fix network.sh script did not configure hotplugged interfaces
Udev script network.sh is called when a new ethernet interface is plugged (eg. USB). Due to some (old) missing files, this script does nothing, instead of configuring the interfaces with ifup. I just commented the corresponding lines to allow the script to reach the part where it calls ifup. (From OE-Core rev: 55069a5f68ade552e3c45333d441dc2d18753476) Signed-off-by: Regis Dargent <regis.dargent@gmail.com> Fixes [YOCTO 15616] network.sh relies on (long) missing files (eg. /etc/network/options, /etc/init.d/network) to decide if it should configure the new network interface (ifup) or put its name in /etc/udev_network_queue for future initialization by /etc/init.d/network service. The actual result was that the new hotplugged interface was never automatically configured. Removing the obsolete tests allows the script to do its intended job. Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit 160f7139172ffdf510a0d7d4e85f7fbaac7fd000) Signed-off-by: Steve Sakoman <steve@sakoman.com>
-rw-r--r--meta/recipes-core/udev/udev-extraconf/network.sh32
1 files changed, 0 insertions, 32 deletions
diff --git a/meta/recipes-core/udev/udev-extraconf/network.sh b/meta/recipes-core/udev/udev-extraconf/network.sh
index 3ee92714af..ace38808cd 100644
--- a/meta/recipes-core/udev/udev-extraconf/network.sh
+++ b/meta/recipes-core/udev/udev-extraconf/network.sh
@@ -6,38 +6,6 @@ echo "$INTERFACE" | grep -q wifi && exit 0
6# udevd does clearenv(). Export shell PATH to children. 6# udevd does clearenv(). Export shell PATH to children.
7export PATH 7export PATH
8 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 9# if this interface has an entry in /etc/network/interfaces, let ifupdown
42# handle it 10# handle it
43if grep -q "iface \+$INTERFACE" /etc/network/interfaces; then 11if grep -q "iface \+$INTERFACE" /etc/network/interfaces; then