From 12fb4bb834dc715ce43bf428c35b489e89e776a1 Mon Sep 17 00:00:00 2001 From: Hannu Nyman Date: Tue, 31 Jul 2018 16:55:42 +0300 Subject: [PATCH] busybox: update to 1.29.2 * Update busybox to 1.29.2 * refresh default config * remove upstreamed patches Config refreshed with cd config/ ../convert_menuconfig.pl ../../../../build_dir/target-arm_cortex-a9+vfpv3_musl_eabi/busybox-1.29.2 cd .. ./convert_defaults.pl < ../../../build_dir/target-arm_cortex-a9+vfpv3_musl_eabi/busybox-1.29.2/.config > Config-defaults.in Signed-off-by: Hannu Nyman Tested-by: Hans Dedecker --- package/utils/busybox/Config-defaults.in | 60 +++++++++ package/utils/busybox/Makefile | 6 +- package/utils/busybox/config/Config.in | 10 +- .../patches/001-resource_h_include.patch | 10 -- .../patches/111-i386_no_arch_flags.patch | 10 -- .../patches/130-mconf_missing_sigwinch.patch | 6 +- .../patches/200-udhcpc_reduce_msgs.patch | 4 +- .../patches/201-udhcpc_changed_ifindex.patch | 2 +- .../203-udhcpc_renew_no_deconfig.patch | 2 +- .../301-ip-link-fix-netlink-msg-size.patch | 2 +- ...de-which-requires-server-ID-to-be-on.patch | 117 ------------------ 11 files changed, 80 insertions(+), 149 deletions(-) delete mode 100644 package/utils/busybox/patches/001-resource_h_include.patch delete mode 100644 package/utils/busybox/patches/111-i386_no_arch_flags.patch delete mode 100644 package/utils/busybox/patches/400-udhcpc-remove-code-which-requires-server-ID-to-be-on.patch diff --git a/package/utils/busybox/Config-defaults.in b/package/utils/busybox/Config-defaults.in index daba431d2e03..d6c182145eba 100644 --- a/package/utils/busybox/Config-defaults.in +++ b/package/utils/busybox/Config-defaults.in @@ -121,6 +121,9 @@ config BUSYBOX_DEFAULT_EXTRA_LDLIBS config BUSYBOX_DEFAULT_USE_PORTABLE_CODE bool default n +config BUSYBOX_DEFAULT_STACK_OPTIMIZATION_386 + bool + default n config BUSYBOX_DEFAULT_INSTALL_APPLET_SYMLINKS bool default y @@ -199,6 +202,9 @@ config BUSYBOX_DEFAULT_FEATURE_FAST_TOP config BUSYBOX_DEFAULT_FEATURE_ETC_NETWORKS bool default n +config BUSYBOX_DEFAULT_FEATURE_ETC_SERVICES + bool + default n config BUSYBOX_DEFAULT_FEATURE_EDITING bool default y @@ -229,6 +235,9 @@ config BUSYBOX_DEFAULT_FEATURE_USERNAME_COMPLETION config BUSYBOX_DEFAULT_FEATURE_EDITING_FANCY_PROMPT bool default y +config BUSYBOX_DEFAULT_FEATURE_EDITING_WINCH + bool + default n config BUSYBOX_DEFAULT_FEATURE_EDITING_ASK_TERMINAL bool default n @@ -352,6 +361,9 @@ config BUSYBOX_DEFAULT_XZ config BUSYBOX_DEFAULT_BZIP2 bool default n +config BUSYBOX_DEFAULT_BZIP2_SMALL + int + default 0 config BUSYBOX_DEFAULT_FEATURE_BZIP2_DECOMPRESS bool default y @@ -739,6 +751,9 @@ config BUSYBOX_DEFAULT_SORT config BUSYBOX_DEFAULT_FEATURE_SORT_BIG bool default n +config BUSYBOX_DEFAULT_FEATURE_SORT_OPTIMIZE_MEMORY + bool + default n config BUSYBOX_DEFAULT_SPLIT bool default n @@ -1192,6 +1207,9 @@ config BUSYBOX_DEFAULT_POWEROFF config BUSYBOX_DEFAULT_REBOOT bool default y +config BUSYBOX_DEFAULT_FEATURE_WAIT_FOR_INIT + bool + default n config BUSYBOX_DEFAULT_FEATURE_CALL_TELINIT bool default n @@ -1789,6 +1807,9 @@ config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_ISO9660 config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_JFS bool default n +config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_LFS + bool + default n config BUSYBOX_DEFAULT_FEATURE_VOLUMEID_LINUXRAID bool default n @@ -2005,6 +2026,12 @@ config BUSYBOX_DEFAULT_FEATURE_LESS_DASHCMD config BUSYBOX_DEFAULT_FEATURE_LESS_LINENUMS bool default n +config BUSYBOX_DEFAULT_FEATURE_LESS_RAW + bool + default n +config BUSYBOX_DEFAULT_FEATURE_LESS_ENV + bool + default n config BUSYBOX_DEFAULT_LOCK bool default y @@ -2356,6 +2383,12 @@ config BUSYBOX_DEFAULT_FEATURE_NETSTAT_PRG config BUSYBOX_DEFAULT_NSLOOKUP bool default n +config BUSYBOX_DEFAULT_FEATURE_NSLOOKUP_BIG + bool + default n +config BUSYBOX_DEFAULT_FEATURE_NSLOOKUP_LONG_OPTIONS + bool + default n config BUSYBOX_DEFAULT_NSLOOKUP_OPENWRT bool default y @@ -2392,6 +2425,12 @@ config BUSYBOX_DEFAULT_SLATTACH config BUSYBOX_DEFAULT_SSL_CLIENT bool default n +config BUSYBOX_DEFAULT_TC + bool + default n +config BUSYBOX_DEFAULT_FEATURE_TC_INGRESS + bool + default n config BUSYBOX_DEFAULT_TCPSVD bool default n @@ -2533,6 +2572,9 @@ config BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC4704 config BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC4833 bool default n +config BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC5970 + bool + default n config BUSYBOX_DEFAULT_FEATURE_UDHCP_PORT bool default n @@ -2731,6 +2773,9 @@ config BUSYBOX_DEFAULT_SV_DEFAULT_SERVICE_DIR config BUSYBOX_DEFAULT_SVC bool default n +config BUSYBOX_DEFAULT_SVOK + bool + default n config BUSYBOX_DEFAULT_SVLOGD bool default n @@ -2803,6 +2848,12 @@ config BUSYBOX_DEFAULT_ASH_INTERNAL_GLOB config BUSYBOX_DEFAULT_ASH_BASH_COMPAT bool default y +config BUSYBOX_DEFAULT_ASH_BASH_SOURCE_CURDIR + bool + default n +config BUSYBOX_DEFAULT_ASH_BASH_NOT_FOUND_HOOK + bool + default n config BUSYBOX_DEFAULT_ASH_JOB_CONTROL bool default y @@ -2851,6 +2902,12 @@ config BUSYBOX_DEFAULT_HUSH_BASH_COMPAT config BUSYBOX_DEFAULT_HUSH_BRACE_EXPANSION bool default n +config BUSYBOX_DEFAULT_HUSH_LINENO_VAR + bool + default n +config BUSYBOX_DEFAULT_HUSH_BASH_SOURCE_CURDIR + bool + default n config BUSYBOX_DEFAULT_HUSH_INTERACTIVE bool default n @@ -2911,6 +2968,9 @@ config BUSYBOX_DEFAULT_HUSH_KILL config BUSYBOX_DEFAULT_HUSH_WAIT bool default n +config BUSYBOX_DEFAULT_HUSH_COMMAND + bool + default n config BUSYBOX_DEFAULT_HUSH_TRAP bool default n diff --git a/package/utils/busybox/Makefile b/package/utils/busybox/Makefile index 315dd42f8d23..1578b63c297c 100644 --- a/package/utils/busybox/Makefile +++ b/package/utils/busybox/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=busybox -PKG_VERSION:=1.28.4 -PKG_RELEASE:=3 +PKG_VERSION:=1.29.2 +PKG_RELEASE:=1 PKG_FLAGS:=essential PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://www.busybox.net/downloads \ http://sources.buildroot.net -PKG_HASH:=e3c14a3699dc7e82fed397392957afc78e37bdf25398ac38ead6e84621b2ae6a +PKG_HASH:=67d2fa6e147a45875fe972de62d907ef866fe784c495c363bf34756c444a5d61 PKG_BUILD_DEPENDS:=BUSYBOX_USE_LIBRPC:librpc BUSYBOX_CONFIG_PAM:libpam PKG_BUILD_PARALLEL:=1 diff --git a/package/utils/busybox/config/Config.in b/package/utils/busybox/config/Config.in index 68f140a9c7a0..7c9226978208 100644 --- a/package/utils/busybox/config/Config.in +++ b/package/utils/busybox/config/Config.in @@ -1,6 +1,6 @@ # # For a description of the syntax of this configuration file, -# see scripts/kbuild/config-language.txt. +# see docs/Kconfig-language.txt. # @@ -517,6 +517,14 @@ config BUSYBOX_CONFIG_USE_PORTABLE_CODE compiler other than gcc. If you do use gcc, this option may needlessly increase code size. +config BUSYBOX_CONFIG_STACK_OPTIMIZATION_386 + bool "Use -mpreferred-stack-boundary=2 on i386 arch" + default BUSYBOX_DEFAULT_STACK_OPTIMIZATION_386 + help + This option makes for smaller code, but some libc versions + do not work with it (they use SSE instructions without + ensuring stack alignment). + comment 'Installation Options ("make install" behavior)' choice diff --git a/package/utils/busybox/patches/001-resource_h_include.patch b/package/utils/busybox/patches/001-resource_h_include.patch deleted file mode 100644 index 33e12c8bd4bb..000000000000 --- a/package/utils/busybox/patches/001-resource_h_include.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/include/libbb.h -+++ b/include/libbb.h -@@ -41,6 +41,7 @@ - #include - #include - #include -+#include - #include - #include - #include diff --git a/package/utils/busybox/patches/111-i386_no_arch_flags.patch b/package/utils/busybox/patches/111-i386_no_arch_flags.patch deleted file mode 100644 index 45601368714b..000000000000 --- a/package/utils/busybox/patches/111-i386_no_arch_flags.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/arch/i386/Makefile -+++ /dev/null -@@ -1,7 +0,0 @@ --# ========================================================================== --# Build system --# ========================================================================== -- --# -mpreferred-stack-boundary=2 is essential in preventing gcc 4.2.x --# from aligning stack to 16 bytes. (Which is gcc's way of supporting SSE). --CFLAGS += $(call cc-option,-march=i386 -mpreferred-stack-boundary=2,) diff --git a/package/utils/busybox/patches/130-mconf_missing_sigwinch.patch b/package/utils/busybox/patches/130-mconf_missing_sigwinch.patch index 54f878a6c1b2..b8ca2122b808 100644 --- a/package/utils/busybox/patches/130-mconf_missing_sigwinch.patch +++ b/package/utils/busybox/patches/130-mconf_missing_sigwinch.patch @@ -1,8 +1,8 @@ --- a/scripts/kconfig/mconf.c +++ b/scripts/kconfig/mconf.c -@@ -27,6 +27,10 @@ - #include - #include +@@ -31,6 +31,10 @@ + #define SIGWINCH 28 + #endif +#ifndef SIGWINCH +#define SIGWINCH 28 diff --git a/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch b/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch index a47c4fcc106d..4e498b807d2c 100644 --- a/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch +++ b/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch @@ -1,6 +1,6 @@ --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c -@@ -711,6 +711,7 @@ static int bcast_or_ucast(struct dhcp_pa +@@ -705,6 +705,7 @@ static int bcast_or_ucast(struct dhcp_pa static NOINLINE int send_discover(uint32_t xid, uint32_t requested) { struct dhcp_packet packet; @@ -8,7 +8,7 @@ /* Fill in: op, htype, hlen, cookie, chaddr fields, * random xid field (we override it below), -@@ -728,6 +729,7 @@ static NOINLINE int send_discover(uint32 +@@ -722,6 +723,7 @@ static NOINLINE int send_discover(uint32 */ add_client_options(&packet); diff --git a/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch b/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch index 51b15a73cc31..ad6fb9b0262b 100644 --- a/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch +++ b/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch @@ -1,6 +1,6 @@ --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c -@@ -1417,6 +1417,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c +@@ -1407,6 +1407,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c /* silence "uninitialized!" warning */ unsigned timestamp_before_wait = timestamp_before_wait; diff --git a/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch b/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch index f8e66403898a..301f65863a7b 100644 --- a/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch +++ b/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch @@ -1,6 +1,6 @@ --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c -@@ -1124,7 +1124,6 @@ static void perform_renew(void) +@@ -1118,7 +1118,6 @@ static void perform_renew(void) state = RENEW_REQUESTED; break; case RENEW_REQUESTED: /* impatient are we? fine, square 1 */ diff --git a/package/utils/busybox/patches/301-ip-link-fix-netlink-msg-size.patch b/package/utils/busybox/patches/301-ip-link-fix-netlink-msg-size.patch index ca76c44cc808..f7cd2322c909 100644 --- a/package/utils/busybox/patches/301-ip-link-fix-netlink-msg-size.patch +++ b/package/utils/busybox/patches/301-ip-link-fix-netlink-msg-size.patch @@ -1,6 +1,6 @@ --- a/networking/libiproute/iplink.c +++ b/networking/libiproute/iplink.c -@@ -598,7 +598,7 @@ static int do_add_or_delete(char **argv, +@@ -652,7 +652,7 @@ static int do_add_or_delete(char **argv, } xrtnl_open(&rth); ll_init_map(&rth); diff --git a/package/utils/busybox/patches/400-udhcpc-remove-code-which-requires-server-ID-to-be-on.patch b/package/utils/busybox/patches/400-udhcpc-remove-code-which-requires-server-ID-to-be-on.patch deleted file mode 100644 index 6770391cf241..000000000000 --- a/package/utils/busybox/patches/400-udhcpc-remove-code-which-requires-server-ID-to-be-on.patch +++ /dev/null @@ -1,117 +0,0 @@ -From 148788eb0ee96026105755cf3fd1ad3d94f49cd2 Mon Sep 17 00:00:00 2001 -From: Denys Vlasenko -Date: Thu, 21 Jun 2018 17:36:22 +0200 -Subject: [PATCH] udhcpc: remove code which requires server ID to be on local - network - -This reverts "udhcpc: paranoia when using kernel UDP mode -for sending renew: server ID may be bogus". - -Users complain that they do have servers behind routers -(with DHCP relays). - -function old new delta -send_packet 168 166 -2 -bcast_or_ucast 25 23 -2 -udhcp_send_kernel_packet 301 295 -6 ------------------------------------------------------------------------------- -(add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-10) Total: -10 bytes - -Signed-off-by: Denys Vlasenko ---- - networking/udhcp/common.h | 4 +--- - networking/udhcp/d6_dhcpc.c | 4 +--- - networking/udhcp/dhcpc.c | 10 ++-------- - networking/udhcp/dhcpd.c | 4 +--- - networking/udhcp/packet.c | 7 +++---- - 5 files changed, 8 insertions(+), 21 deletions(-) - ---- a/networking/udhcp/common.h -+++ b/networking/udhcp/common.h -@@ -308,9 +308,7 @@ int udhcp_send_raw_packet(struct dhcp_pa - - int udhcp_send_kernel_packet(struct dhcp_packet *dhcp_pkt, - uint32_t source_nip, int source_port, -- uint32_t dest_nip, int dest_port, -- int send_flags --) FAST_FUNC; -+ uint32_t dest_nip, int dest_port) FAST_FUNC; - - void udhcp_sp_setup(void) FAST_FUNC; - void udhcp_sp_fd_set(struct pollfd *pfds, int extra_fd) FAST_FUNC; ---- a/networking/udhcp/d6_dhcpc.c -+++ b/networking/udhcp/d6_dhcpc.c -@@ -702,15 +702,13 @@ static NOINLINE int send_d6_renew(uint32 - opt_ptr = add_d6_client_options(opt_ptr); - - bb_error_msg("sending %s", "renew"); -- if (server_ipv6) { -+ if (server_ipv6) - return d6_send_kernel_packet( - &packet, (opt_ptr - (uint8_t*) &packet), - our_cur_ipv6, CLIENT_PORT6, - server_ipv6, SERVER_PORT6, - client_config.ifindex -- /* TODO? send_flags: MSG_DONTROUTE (see IPv4 code for reason why) */ - ); -- } - return d6_mcast_from_client_config_ifindex(&packet, opt_ptr); - } - ---- a/networking/udhcp/dhcpc.c -+++ b/networking/udhcp/dhcpc.c -@@ -693,16 +693,10 @@ static int raw_bcast_from_client_config_ - - static int bcast_or_ucast(struct dhcp_packet *packet, uint32_t ciaddr, uint32_t server) - { -- if (server) { -- /* Without MSG_DONTROUTE, the packet was seen routed over -- * _other interface_ if server ID is bogus (example: 1.1.1.1). -- */ -+ if (server) - return udhcp_send_kernel_packet(packet, - ciaddr, CLIENT_PORT, -- server, SERVER_PORT, -- /*send_flags: "to hosts only on directly connected networks" */ MSG_DONTROUTE -- ); -- } -+ server, SERVER_PORT); - return raw_bcast_from_client_config_ifindex(packet, ciaddr); - } - ---- a/networking/udhcp/dhcpd.c -+++ b/networking/udhcp/dhcpd.c -@@ -588,9 +588,7 @@ static void send_packet_to_relay(struct - - udhcp_send_kernel_packet(dhcp_pkt, - server_config.server_nip, SERVER_PORT, -- dhcp_pkt->gateway_nip, SERVER_PORT, -- /*send_flags:*/ 0 -- ); -+ dhcp_pkt->gateway_nip, SERVER_PORT); - } - - static void send_packet(struct dhcp_packet *dhcp_pkt, int force_broadcast) ---- a/networking/udhcp/packet.c -+++ b/networking/udhcp/packet.c -@@ -189,8 +189,7 @@ int FAST_FUNC udhcp_send_raw_packet(stru - /* Let the kernel do all the work for packet generation */ - int FAST_FUNC udhcp_send_kernel_packet(struct dhcp_packet *dhcp_pkt, - uint32_t source_nip, int source_port, -- uint32_t dest_nip, int dest_port, -- int send_flags) -+ uint32_t dest_nip, int dest_port) - { - struct sockaddr_in sa; - unsigned padding; -@@ -227,8 +226,8 @@ int FAST_FUNC udhcp_send_kernel_packet(s - padding = DHCP_OPTIONS_BUFSIZE - 1 - udhcp_end_option(dhcp_pkt->options); - if (padding > DHCP_SIZE - 300) - padding = DHCP_SIZE - 300; -- result = send(fd, dhcp_pkt, DHCP_SIZE - padding, send_flags); -- msg = "send"; -+ result = safe_write(fd, dhcp_pkt, DHCP_SIZE - padding); -+ msg = "write"; - ret_close: - close(fd); - if (result < 0) { -- 2.30.2