[OE-core] [PATCH][RFC/RFT] busybox: Make busybox connman aware

Saul Wold sgw at linux.intel.com
Tue Aug 5 02:03:29 UTC 2014


This change makes busybox aware of both connman and the standard dhcp
client, while there is a caveat about using busybox's ifup/ifdown, this
change will make the 3 possibly dhcp clients behave better when busybox
is used.

Enable the CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP feature to busybox will
search for various external clients and then add connman as an external
client.

[YOCTO #6521]

Signed-off-by: Saul Wold <sgw at linux.intel.com>
---
 meta/recipes-core/busybox/busybox/defconfig               |  2 +-
 .../recipes-core/busybox/busybox/recognize_connmand.patch | 15 +++++++++++++++
 meta/recipes-core/busybox/busybox_1.22.1.bb               |  1 +
 3 files changed, 17 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-core/busybox/busybox/recognize_connmand.patch

diff --git a/meta/recipes-core/busybox/busybox/defconfig b/meta/recipes-core/busybox/busybox/defconfig
index 0107231..35f1026 100644
--- a/meta/recipes-core/busybox/busybox/defconfig
+++ b/meta/recipes-core/busybox/busybox/defconfig
@@ -781,7 +781,7 @@ CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN=y
 CONFIG_FEATURE_IFUPDOWN_IPV4=y
 CONFIG_FEATURE_IFUPDOWN_IPV6=y
 CONFIG_FEATURE_IFUPDOWN_MAPPING=y
-# CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set
+CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP=y
 # CONFIG_INETD is not set
 # CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO is not set
 # CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD is not set
diff --git a/meta/recipes-core/busybox/busybox/recognize_connmand.patch b/meta/recipes-core/busybox/busybox/recognize_connmand.patch
new file mode 100644
index 0000000..495bb05
--- /dev/null
+++ b/meta/recipes-core/busybox/busybox/recognize_connmand.patch
@@ -0,0 +1,15 @@
+Index: busybox-1.22.1/networking/ifupdown.c
+===================================================================
+--- busybox-1.22.1.orig/networking/ifupdown.c
++++ busybox-1.22.1/networking/ifupdown.c
+@@ -521,6 +521,10 @@ struct dhcp_client_t {
+ };
+ 
+ static const struct dhcp_client_t ext_dhcp_clients[] = {
++	{ "connmand",
++		"true",
++		"true",
++	},
+ 	{ "dhcpcd",
+ 		"dhcpcd[[ -h %hostname%]][[ -i %vendor%]][[ -I %client%]][[ -l %leasetime%]] %iface%",
+ 		"dhcpcd -k %iface%",
diff --git a/meta/recipes-core/busybox/busybox_1.22.1.bb b/meta/recipes-core/busybox/busybox_1.22.1.bb
index 46641e1..edee4a9 100644
--- a/meta/recipes-core/busybox/busybox_1.22.1.bb
+++ b/meta/recipes-core/busybox/busybox_1.22.1.bb
@@ -30,6 +30,7 @@ SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
            file://inetd \
            file://login-utilities.cfg \
            file://0001-build-system-Specify-nostldlib-when-linking-to-.o-fi.patch \
+           file://recognize_connmand.patch \
 "
 
 SRC_URI[tarball.md5sum] = "337d1a15ab1cb1d4ed423168b1eb7d7e"
-- 
1.8.3.2




More information about the Openembedded-core mailing list