summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Klug <john.klug@multitech.com>2019-05-28 22:51:04 -0500
committerJohn Klug <john.klug@multitech.com>2019-07-05 11:08:04 -0500
commitdd7843d5a587dc926df379419a9c7721b177133f (patch)
tree097e55bb1010eb2e9d8ab46cc39989e83d263617
parent53ed76e415654526b2641d560ce9112d68de500e (diff)
downloadmeta-mlinux-dd7843d5a587dc926df379419a9c7721b177133f.tar.gz
meta-mlinux-dd7843d5a587dc926df379419a9c7721b177133f.tar.bz2
meta-mlinux-dd7843d5a587dc926df379419a9c7721b177133f.zip
Patch ifplugd to allow for drivers being loaded, and allow symlinks in config paths.
-rw-r--r--recipes-core/busybox/busybox_%.bbappend3
-rwxr-xr-xrecipes-core/busybox/files/ifplugd.init2
-rw-r--r--recipes-core/busybox/files/ifplugd.patch20
3 files changed, 23 insertions, 2 deletions
diff --git a/recipes-core/busybox/busybox_%.bbappend b/recipes-core/busybox/busybox_%.bbappend
index b8bbdf7..6ead22b 100644
--- a/recipes-core/busybox/busybox_%.bbappend
+++ b/recipes-core/busybox/busybox_%.bbappend
@@ -1,4 +1,4 @@
-PR .= ".mlinux3"
+PR .= ".mlinux4"
PACKAGES =+ "busybox-ifplugd"
FILESEXTRAPATHS_prepend := ":${THISDIR}/files:"
RDEPENDS_${PN} += "bash"
@@ -9,6 +9,7 @@ SRC_URI += "file://udhcpd.conf.example \
file://ifplugd.init \
file://eth0.conf \
file://eth1.conf.example \
+ file://ifplugd.patch \
"
do_install_append () {
diff --git a/recipes-core/busybox/files/ifplugd.init b/recipes-core/busybox/files/ifplugd.init
index 87f2408..418b088 100755
--- a/recipes-core/busybox/files/ifplugd.init
+++ b/recipes-core/busybox/files/ifplugd.init
@@ -9,7 +9,7 @@
startdaemon(){
# Start the application
echo -n "Starting ifplugd: "
- CONFS=($(find /etc/ifplugd -name '*.conf'))
+ CONFS=($(find -L /etc/ifplugd -name '*.conf'))
((i=0))
logger -p daemon.info "Found ${#CONFS[@]} Configurations"
while ((i < ${#CONFS[@]})) ; do
diff --git a/recipes-core/busybox/files/ifplugd.patch b/recipes-core/busybox/files/ifplugd.patch
new file mode 100644
index 0000000..839a8a2
--- /dev/null
+++ b/recipes-core/busybox/files/ifplugd.patch
@@ -0,0 +1,20 @@
+#
+# This patch is found here:
+# http://lists.busybox.net/pipermail/busybox/2018-March/086328.html
+# Basically ifplugd will not stay up if the driver is loading.
+# This is particularly apparent with gadget.
+diff -arNu a/networking/ifplugd.c b/networking/ifplugd.c
+--- a/networking/ifplugd.c 2019-05-28 18:11:43.836982315 -0500
++++ b/networking/ifplugd.c 2019-05-28 18:13:13.088979672 -0500
+@@ -358,8 +358,10 @@
+ ifrequest.ifr_flags |= IFF_UP;
+ /* Let user know we mess up with interface */
+ bb_error_msg("upping interface");
+- if (network_ioctl(SIOCSIFFLAGS, &ifrequest, "setting interface flags") < 0)
++ if (network_ioctl(SIOCSIFFLAGS, &ifrequest, "setting interface flags") < 0) {
++ if (errno != ENODEV && errno != EADDRNOTAVAIL)
+ xfunc_die();
++ }
+ }
+
+ #if 0 /* why do we mess with IP addr? It's not our business */