Patchwork busybox: udhcpc shouldn't be a service

login
register
mail settings
Submitter Jesse Zhang
Date July 27, 2012, 9:03 a.m.
Message ID <1343379832-13421-2-git-send-email-sen.zhang@windriver.com>
Download mbox | patch
Permalink /patch/33183/
State New
Headers show

Comments

Jesse Zhang - July 27, 2012, 9:03 a.m.
udhcpc is invoked from the networking service, so it shouldn't exist
standalone. If /etc/init.d/busybox-udhcpc is present, it will cause
udhcpc to be started two times.

And since the script doesn't support the stop action, it will cause
udhcpc to be started even when system is being shutdown.

Remove /etc/init.d/busybox-udhcpc to resolve the issues.

[YOCTO #2840]

Signed-off-by: Jesse Zhang <sen.zhang@windriver.com>
---
 meta/recipes-core/busybox/busybox.inc          |    6 +---
 meta/recipes-core/busybox/busybox_1.19.4.bb    |    3 +-
 meta/recipes-core/busybox/files/busybox-udhcpc |   25 ------------------------
 3 files changed, 3 insertions(+), 31 deletions(-)
 delete mode 100755 meta/recipes-core/busybox/files/busybox-udhcpc

Patch

diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc
index b2fbd52..0a4c067 100644
--- a/meta/recipes-core/busybox/busybox.inc
+++ b/meta/recipes-core/busybox/busybox.inc
@@ -20,16 +20,15 @@  FILES_${PN}-httpd = "${sysconfdir}/init.d/busybox-httpd /srv/www"
 FILES_${PN}-syslog = "${sysconfdir}/init.d/syslog* ${sysconfdir}/syslog-startup.conf*"
 FILES_${PN}-mdev = "${sysconfdir}/init.d/mdev ${sysconfdir}/mdev.conf"
 FILES_${PN}-udhcpd = "${sysconfdir}/init.d/busybox-udhcpd"
-FILES_${PN}-udhcpc = "${sysconfdir}/udhcpc.d ${datadir}/udhcpc ${sysconfdir}/init.d/busybox-udhcpc"
+FILES_${PN}-udhcpc = "${sysconfdir}/udhcpc.d ${datadir}/udhcpc"
 
-INITSCRIPT_PACKAGES = "${PN}-httpd ${PN}-syslog ${PN}-udhcpd ${PN}-udhcpc ${PN}-mdev"
+INITSCRIPT_PACKAGES = "${PN}-httpd ${PN}-syslog ${PN}-udhcpd ${PN}-mdev"
 
 INITSCRIPT_NAME_${PN}-httpd = "busybox-httpd"
 INITSCRIPT_NAME_${PN}-syslog = "syslog"
 INITSCRIPT_NAME_${PN}-mdev = "mdev"
 INITSCRIPT_PARAMS_${PN}-mdev = "start 06 S ."
 INITSCRIPT_NAME_${PN}-udhcpd = "busybox-udhcpd" 
-INITSCRIPT_NAME_${PN}-udhcpc = "busybox-udhcpc" 
 CONFFILES_${PN}-syslog = "${sysconfdir}/syslog-startup.conf.${BPN}"
 CONFFILES_${PN}-mdev = "${sysconfdir}/mdev.conf"
 
@@ -186,7 +185,6 @@  do_install () {
 		install -d ${D}${datadir}/udhcpc
                 install -m 0755 ${WORKDIR}/simple.script ${D}${sysconfdir}/udhcpc.d/50default
 		install -m 0755 ${WORKDIR}/default.script ${D}${datadir}/udhcpc/default.script
-		install -m 0755 ${WORKDIR}/busybox-udhcpc ${D}${sysconfdir}/init.d/
 	fi
 	if grep "CONFIG_INETD=y" ${WORKDIR}/defconfig; then
 		install -m 0755 ${WORKDIR}/inetd ${D}${sysconfdir}/init.d/inetd.${BPN}
diff --git a/meta/recipes-core/busybox/busybox_1.19.4.bb b/meta/recipes-core/busybox/busybox_1.19.4.bb
index 6e69d22..4614cb6 100644
--- a/meta/recipes-core/busybox/busybox_1.19.4.bb
+++ b/meta/recipes-core/busybox/busybox_1.19.4.bb
@@ -1,5 +1,5 @@ 
 require busybox.inc
-PR = "r10"
+PR = "r11"
 
 SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
            file://B921600.patch \
@@ -14,7 +14,6 @@  SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
            file://busybox-cron \
            file://busybox-httpd \
            file://busybox-udhcpd \
-           file://busybox-udhcpc \
            file://default.script \
            file://simple.script \
            file://hwclock.sh \
diff --git a/meta/recipes-core/busybox/files/busybox-udhcpc b/meta/recipes-core/busybox/files/busybox-udhcpc
deleted file mode 100755
index 2c43f8d..0000000
--- a/meta/recipes-core/busybox/files/busybox-udhcpc
+++ /dev/null
@@ -1,25 +0,0 @@ 
-#!/bin/sh
-#
-# (c) 2010-2011 Wind River Systems, Inc.
-#
-# Busybox udhcpc init script
-#
-# script to start the udpchc DHCP client on boots where
-# the parameter 'ip=dhcp' was included in the kernel parameters
-
-# ensure the required binaries are present
-[ -x /sbin/udhcpc ] || exit 1
-[ -x /bin/grep ] || exit 1
-[ -x /bin/mount ] || exit 1
-
-# ensure /proc is mounted
-if ! mount | grep -q "/proc "; then
-	exit 2
-fi
-
-rc=0
-if grep -q -E "\bip=dhcp\b" /proc/cmdline; then
-	/sbin/udhcpc -D -s /usr/share/udhcpc/default.script
-	rc=$?
-fi
-exit $rc