From 06bdccb5c4df44745863a2290cbb83fd190f66df Mon Sep 17 00:00:00 2001 From: Saul Wold Date: Mon, 4 Aug 2014 19:03:00 -0700 Subject: busybox: Make busybox connman aware 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 Signed-off-by: Richard Purdie --- 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 0107231e56..35f1026d65 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 0000000000..495bb05297 --- /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 46641e19fa..edee4a9963 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" -- cgit 1.2.3-korg