aboutsummaryrefslogtreecommitdiffstats
path: root/main
diff options
context:
space:
mode:
Diffstat (limited to 'main')
-rw-r--r--main/busybox/0001-add-remove-shell-fix-crash-when-shell-is-already-add.patch33
-rw-r--r--main/busybox/0001-ash-add-support-for-command_not_found_handle-hook-fu.patch12
-rw-r--r--main/busybox/0002-fsck-resolve-LABEL-.-UUID-.-spec-to-device.patch (renamed from main/busybox/0001-fsck-resolve-LABEL-.-UUID-.-spec-to-device.patch)8
-rw-r--r--main/busybox/0003-ash-exec-busybox.static.patch (renamed from main/busybox/0001-ash-exec-busybox.static.patch)10
-rw-r--r--main/busybox/0003-udhcpc-set-default-discover-retries-to-5.patch35
-rw-r--r--main/busybox/0004-app-location-for-cpio-vi-and-lspci.patch (renamed from main/busybox/0002-app-location-for-cpio-vi-and-lspci.patch)30
-rw-r--r--main/busybox/0005-udhcpc-set-default-discover-retries-to-5.patch35
-rw-r--r--main/busybox/0006-ping-make-ping-work-without-root-privileges.patch (renamed from main/busybox/0004-ping-make-ping-work-without-root-privileges.patch)54
-rw-r--r--main/busybox/0007-fbsplash-support-console-switching.patch (renamed from main/busybox/0005-fbsplash-support-console-switching.patch)39
-rw-r--r--main/busybox/0008-fbsplash-support-image-and-bar-alignment-and-positio.patch (renamed from main/busybox/0006-fbsplash-support-image-and-bar-alignment-and-positio.patch)28
-rw-r--r--main/busybox/0009-depmod-support-generating-kmod-binary-index-files.patch (renamed from main/busybox/0007-depmod-support-generating-kmod-binary-index-files.patch)28
-rw-r--r--main/busybox/0010-Add-flag-for-not-following-symlinks-when-recursing.patch (renamed from main/busybox/0008-diff-add-support-for-no-dereference.patch)24
-rw-r--r--main/busybox/0011-sysklogd-add-Z-option-to-adjust-message-timezones.patch (renamed from main/busybox/0009-sysklogd-add-Z-option-to-adjust-message-timezones.patch)10
-rw-r--r--main/busybox/0012-udhcpc-Don-t-background-if-n-is-given.patch (renamed from main/busybox/0010-udhcpc-Don-t-background-if-n-is-given.patch)10
-rw-r--r--main/busybox/0013-CVE-2017-16544.patch40
-rw-r--r--main/busybox/0013-testsuite-fix-cpio-tests.patch (renamed from main/busybox/0011-testsuite-fix-cpio-tests.patch)6
-rw-r--r--main/busybox/0014-CVE-2017-15873.patch98
-rw-r--r--main/busybox/0014-miscutils-microcom-Fixed-segfault.patch (renamed from main/busybox/0012-microcom-segfault.patch)10
-rw-r--r--main/busybox/0015-CVE-2017-15874.patch31
-rw-r--r--main/busybox/0015-ash-introduce-a-config-option-to-search-current-dire.patch (renamed from main/busybox/0001-ash-introduce-a-config-option-to-search-current.patch)19
-rw-r--r--main/busybox/0016-top-handle-much-larger-VSZ-values.patch61
-rw-r--r--main/busybox/APKBUILD88
-rw-r--r--main/busybox/bbsuid.c1
-rw-r--r--main/busybox/busyboxconfig84
-rw-r--r--main/busybox/busyboxconfig-extras85
-rw-r--r--main/busybox/nologin.c2
-rw-r--r--main/busybox/top-buffer-overflow.patch20
27 files changed, 371 insertions, 530 deletions
diff --git a/main/busybox/0001-add-remove-shell-fix-crash-when-shell-is-already-add.patch b/main/busybox/0001-add-remove-shell-fix-crash-when-shell-is-already-add.patch
deleted file mode 100644
index e4b65c8147..0000000000
--- a/main/busybox/0001-add-remove-shell-fix-crash-when-shell-is-already-add.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From cc86b2ad965bff071185edbb77b5a6ea45023e43 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
-Date: Fri, 14 Jul 2017 09:59:52 +0200
-Subject: [PATCH] add-remove-shell: fix crash when shell is already added
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Avoid dereferencing 'don_add' in strcmp since it is invalid
-pointer.
-
-Signed-off-by: Timo Teräs <timo.teras@iki.fi>
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- loginutils/add-remove-shell.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/loginutils/add-remove-shell.c b/loginutils/add-remove-shell.c
-index 922b3333d..54b62c773 100644
---- a/loginutils/add-remove-shell.c
-+++ b/loginutils/add-remove-shell.c
-@@ -84,7 +84,7 @@ int add_remove_shell_main(int argc UNUSED_PARAM, char **argv)
- while ((line = xmalloc_fgetline(orig_fp)) != NULL) {
- char **cpp = argv;
- while (*cpp) {
-- if (strcmp(*cpp, line) == 0) {
-+ if (*cpp != dont_add && strcmp(*cpp, line) == 0) {
- /* Old file has this shell name */
- if (REMOVE_SHELL) {
- /* we are remove-shell */
---
-2.15.0
-
diff --git a/main/busybox/0001-ash-add-support-for-command_not_found_handle-hook-fu.patch b/main/busybox/0001-ash-add-support-for-command_not_found_handle-hook-fu.patch
index e4ba6ece5b..929370b9d0 100644
--- a/main/busybox/0001-ash-add-support-for-command_not_found_handle-hook-fu.patch
+++ b/main/busybox/0001-ash-add-support-for-command_not_found_handle-hook-fu.patch
@@ -1,8 +1,8 @@
-From f76c1ddd625b3d9912d9e6df2e90fcb94d08be99 Mon Sep 17 00:00:00 2001
+From 185ba65457e991ebd0f6e64266380df5e11cc489 Mon Sep 17 00:00:00 2001
From: William Pitcock <nenolod@dereferenced.org>
Date: Thu, 19 Oct 2017 17:24:40 +0000
-Subject: [PATCH] ash: add support for command_not_found_handle hook function,
- like bash
+Subject: [PATCH 01/16] ash: add support for command_not_found_handle hook
+ function, like bash
This implements support for the command_not_found_handle hook function, which is
useful for allowing package managers to suggest packages which could provide the
@@ -17,7 +17,7 @@ Signed-off-by: William Pitcock <nenolod@dereferenced.org>
1 file changed, 22 insertions(+), 2 deletions(-)
diff --git a/shell/ash.c b/shell/ash.c
-index 88e607f08..c3c4f4e93 100644
+index b73a79975..7ceb91920 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -132,6 +132,15 @@
@@ -36,7 +36,7 @@ index 88e607f08..c3c4f4e93 100644
//config:endif # ash options
//applet:IF_ASH(APPLET(ash, BB_DIR_BIN, BB_SUID_DROP))
-@@ -13123,8 +13132,19 @@ find_command(char *name, struct cmdentry *entry, int act, const char *path)
+@@ -13166,8 +13175,19 @@ find_command(char *name, struct cmdentry *entry, int act, const char *path)
/* We failed. If there was an entry for this command, delete it */
if (cmdp && updatetbl)
delete_cmd_entry();
@@ -59,5 +59,5 @@ index 88e607f08..c3c4f4e93 100644
return;
--
-2.14.2
+2.16.2
diff --git a/main/busybox/0001-fsck-resolve-LABEL-.-UUID-.-spec-to-device.patch b/main/busybox/0002-fsck-resolve-LABEL-.-UUID-.-spec-to-device.patch
index 31d8e3f89d..72df8ecf9c 100644
--- a/main/busybox/0001-fsck-resolve-LABEL-.-UUID-.-spec-to-device.patch
+++ b/main/busybox/0002-fsck-resolve-LABEL-.-UUID-.-spec-to-device.patch
@@ -1,14 +1,14 @@
-From 54f76ba53e22fdbc9efebe8b42dd121ec3126fef Mon Sep 17 00:00:00 2001
+From bce882404ab41d32d5d9def274e49264717135b2 Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Tue, 28 Nov 2017 13:23:17 +0100
-Subject: [PATCH] fsck: resolve LABEL=.../UUID=... spec to device
+Subject: [PATCH 02/16] fsck: resolve LABEL=.../UUID=... spec to device
---
e2fsprogs/fsck.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/e2fsprogs/fsck.c b/e2fsprogs/fsck.c
-index eb53002b1..338701c6a 100644
+index 1c285bb92..5af38c0aa 100644
--- a/e2fsprogs/fsck.c
+++ b/e2fsprogs/fsck.c
@@ -60,6 +60,7 @@
@@ -55,5 +55,5 @@ index eb53002b1..338701c6a 100644
devices[num_devices++] = arg;
continue;
--
-2.15.0
+2.16.2
diff --git a/main/busybox/0001-ash-exec-busybox.static.patch b/main/busybox/0003-ash-exec-busybox.static.patch
index fdf1349601..94239a2eb9 100644
--- a/main/busybox/0001-ash-exec-busybox.static.patch
+++ b/main/busybox/0003-ash-exec-busybox.static.patch
@@ -1,17 +1,17 @@
-From 134582e8dd1c85cbcf1fc047956a57fcd642e46a Mon Sep 17 00:00:00 2001
+From 36b6cc36d1f259e4ac76a1c2de743113845ff4cd Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Thu, 4 Aug 2016 11:03:07 +0200
-Subject: [PATCH 01/11] ash: exec busybox.static
+Subject: [PATCH 03/16] ash: exec busybox.static
---
shell/ash.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/shell/ash.c b/shell/ash.c
-index b7635a823..e613ee6bb 100644
+index 7ceb91920..d04096a9b 100644
--- a/shell/ash.c
+++ b/shell/ash.c
-@@ -7721,6 +7721,8 @@ tryexec(IF_FEATURE_SH_STANDALONE(int applet_no,) char *cmd, char **argv, char **
+@@ -7845,6 +7845,8 @@ tryexec(IF_FEATURE_SH_STANDALONE(int applet_no,) const char *cmd, char **argv, c
}
/* re-exec ourselves with the new arguments */
execve(bb_busybox_exec_path, argv, envp);
@@ -21,5 +21,5 @@ index b7635a823..e613ee6bb 100644
* executable, fall through */
}
--
-2.13.2
+2.16.2
diff --git a/main/busybox/0003-udhcpc-set-default-discover-retries-to-5.patch b/main/busybox/0003-udhcpc-set-default-discover-retries-to-5.patch
deleted file mode 100644
index 5671ee1b0c..0000000000
--- a/main/busybox/0003-udhcpc-set-default-discover-retries-to-5.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 18415adc1cd9993a95d100dd773daf69b8ec819e Mon Sep 17 00:00:00 2001
-From: Natanael Copa <ncopa@alpinelinux.org>
-Date: Thu, 4 Aug 2016 11:08:35 +0200
-Subject: [PATCH 03/11] udhcpc: set default discover retries to 5
-
-Some slower nics needs more attempts to get a lease
----
- networking/udhcp/dhcpc.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c
-index 1a66c610e..43aac1b85 100644
---- a/networking/udhcp/dhcpc.c
-+++ b/networking/udhcp/dhcpc.c
-@@ -1191,7 +1191,7 @@ static void client_background(void)
- //usage: "\n -s,--script PROG Run PROG at DHCP events (default "CONFIG_UDHCPC_DEFAULT_SCRIPT")"
- //usage: "\n -p,--pidfile FILE Create pidfile"
- //usage: "\n -B,--broadcast Request broadcast replies"
--//usage: "\n -t,--retries N Send up to N discover packets (default 3)"
-+//usage: "\n -t,--retries N Send up to N discover packets (default 5)"
- //usage: "\n -T,--timeout SEC Pause between packets (default 3)"
- //usage: "\n -A,--tryagain SEC Wait if lease is not obtained (default 20)"
- //usage: "\n -n,--now Exit if lease is not obtained"
-@@ -1274,7 +1274,7 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
- llist_t *list_x = NULL;
- int tryagain_timeout = 20;
- int discover_timeout = 3;
-- int discover_retries = 3;
-+ int discover_retries = 5;
- uint32_t server_addr = server_addr; /* for compiler */
- uint32_t requested_ip = 0;
- uint32_t xid = xid; /* for compiler */
---
-2.13.2
-
diff --git a/main/busybox/0002-app-location-for-cpio-vi-and-lspci.patch b/main/busybox/0004-app-location-for-cpio-vi-and-lspci.patch
index 8c8e4ee7a0..7f105cb679 100644
--- a/main/busybox/0002-app-location-for-cpio-vi-and-lspci.patch
+++ b/main/busybox/0004-app-location-for-cpio-vi-and-lspci.patch
@@ -1,7 +1,7 @@
-From 8937e2dfb3dbfa23597853e9605f930b3607fa63 Mon Sep 17 00:00:00 2001
+From 9bbc93f12f7cff8fb51a0bf89907d9875f5c14e6 Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Tue, 27 Dec 2016 20:46:59 +0100
-Subject: [PATCH 02/11] app location for cpio, vi and lspci
+Subject: [PATCH 04/16] app location for cpio, vi and lspci
Adjust location to where alpine linux installs them
---
@@ -11,25 +11,25 @@ Adjust location to where alpine linux installs them
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/archival/cpio.c b/archival/cpio.c
-index 683f0bb1f..45362b6bc 100644
+index 1d6cbd1e2..0c14f79e7 100644
--- a/archival/cpio.c
+++ b/archival/cpio.c
-@@ -43,7 +43,7 @@
+@@ -39,7 +39,7 @@
//config: help
- //config: Passthrough mode. Rarely used.
+ //config: Passthrough mode. Rarely used.
-//applet:IF_CPIO(APPLET(cpio, BB_DIR_BIN, BB_SUID_DROP))
+//applet:IF_CPIO(APPLET(cpio, BB_DIR_USR_BIN, BB_SUID_DROP))
+
//kbuild:lib-$(CONFIG_CPIO) += cpio.o
- //usage:#define cpio_trivial_usage
diff --git a/editors/vi.c b/editors/vi.c
-index 76d1f261b..73d0a67a9 100644
+index cdfb27cc5..20077727e 100644
--- a/editors/vi.c
+++ b/editors/vi.c
-@@ -163,7 +163,7 @@
- //config: Unless you want more (or less) frequent "undo points" while typing,
- //config: you should probably leave this unchanged.
+@@ -161,7 +161,7 @@
+ //config: Unless you want more (or less) frequent "undo points" while typing,
+ //config: you should probably leave this unchanged.
-//applet:IF_VI(APPLET(vi, BB_DIR_BIN, BB_SUID_DROP))
+//applet:IF_VI(APPLET(vi, BB_DIR_USR_BIN, BB_SUID_DROP))
@@ -37,18 +37,18 @@ index 76d1f261b..73d0a67a9 100644
//kbuild:lib-$(CONFIG_VI) += vi.o
diff --git a/util-linux/lspci.c b/util-linux/lspci.c
-index 8b38a2366..f918f0972 100644
+index 0000fbfda..34189d2b5 100644
--- a/util-linux/lspci.c
+++ b/util-linux/lspci.c
@@ -16,7 +16,7 @@
//config:
- //config: This version uses sysfs (/sys/bus/pci/devices) only.
+ //config: This version uses sysfs (/sys/bus/pci/devices) only.
--//applet:IF_LSPCI(APPLET(lspci, BB_DIR_USR_BIN, BB_SUID_DROP))
-+//applet:IF_LSPCI(APPLET(lspci, BB_DIR_USR_SBIN, BB_SUID_DROP))
+-//applet:IF_LSPCI(APPLET_NOEXEC(lspci, lspci, BB_DIR_USR_BIN, BB_SUID_DROP, lspci))
++//applet:IF_LSPCI(APPLET_NOEXEC(lspci, lspci, BB_DIR_USR_SBIN, BB_SUID_DROP, lspci))
//kbuild:lib-$(CONFIG_LSPCI) += lspci.o
--
-2.13.2
+2.16.2
diff --git a/main/busybox/0005-udhcpc-set-default-discover-retries-to-5.patch b/main/busybox/0005-udhcpc-set-default-discover-retries-to-5.patch
new file mode 100644
index 0000000000..181acdb9a8
--- /dev/null
+++ b/main/busybox/0005-udhcpc-set-default-discover-retries-to-5.patch
@@ -0,0 +1,35 @@
+From b67940090709f3bbd868557dd4d5317cb807250d Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Thu, 4 Aug 2016 11:08:35 +0200
+Subject: [PATCH 05/16] udhcpc: set default discover retries to 5
+
+Some slower nics needs more attempts to get a lease
+---
+ networking/udhcp/dhcpc.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c
+index 55f21c187..cc1d22c8e 100644
+--- a/networking/udhcp/dhcpc.c
++++ b/networking/udhcp/dhcpc.c
+@@ -1203,7 +1203,7 @@ static void client_background(void)
+ //usage: "\n -p FILE Create pidfile"
+ //usage: "\n -B Request broadcast replies"
+ //usage: "\n -t N Send up to N discover packets (default 3)"
+-//usage: "\n -T SEC Pause between packets (default 3)"
++//usage: "\n -T SEC Pause between packets (default 5)"
+ //usage: "\n -A SEC Wait if lease is not obtained (default 20)"
+ //usage: "\n -n Exit if lease is not obtained"
+ //usage: "\n -q Exit after obtaining lease"
+@@ -1247,7 +1247,7 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
+ llist_t *list_x = NULL;
+ int tryagain_timeout = 20;
+ int discover_timeout = 3;
+- int discover_retries = 3;
++ int discover_retries = 5;
+ uint32_t server_addr = server_addr; /* for compiler */
+ uint32_t requested_ip = 0;
+ uint32_t xid = xid; /* for compiler */
+--
+2.16.2
+
diff --git a/main/busybox/0004-ping-make-ping-work-without-root-privileges.patch b/main/busybox/0006-ping-make-ping-work-without-root-privileges.patch
index 77fa5ed76e..630619b4a8 100644
--- a/main/busybox/0004-ping-make-ping-work-without-root-privileges.patch
+++ b/main/busybox/0006-ping-make-ping-work-without-root-privileges.patch
@@ -1,17 +1,17 @@
-From bef770d1ee4179e380dff24305d9b6d899147add Mon Sep 17 00:00:00 2001
+From 21d74f2989d0046e5b7c586f5a052643d5da8dcc Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Tue, 29 Mar 2016 18:59:22 +0200
-Subject: [PATCH 04/11] ping: make ping work without root privileges
+Subject: [PATCH 06/16] ping: make ping work without root privileges
---
networking/ping.c | 103 +++++++++++++++++++++++++++++++++++++++++++++---------
1 file changed, 87 insertions(+), 16 deletions(-)
diff --git a/networking/ping.c b/networking/ping.c
-index 94fb007f5..26e40e1fc 100644
+index d1d59d545..c0ebc0f9a 100644
--- a/networking/ping.c
+++ b/networking/ping.c
-@@ -155,6 +155,7 @@ enum {
+@@ -163,6 +163,7 @@ enum {
pingsock = 0,
};
@@ -19,7 +19,7 @@ index 94fb007f5..26e40e1fc 100644
static void
#if ENABLE_PING6
create_icmp_socket(len_and_sockaddr *lsa)
-@@ -171,9 +172,23 @@ create_icmp_socket(void)
+@@ -179,9 +180,23 @@ create_icmp_socket(void)
#endif
sock = socket(AF_INET, SOCK_RAW, 1); /* 1 == ICMP */
if (sock < 0) {
@@ -46,7 +46,7 @@ index 94fb007f5..26e40e1fc 100644
}
xmove_fd(sock, pingsock);
-@@ -226,10 +241,12 @@ static void ping4(len_and_sockaddr *lsa)
+@@ -234,10 +249,12 @@ static void ping4(len_and_sockaddr *lsa)
bb_perror_msg("recvfrom");
continue;
}
@@ -62,7 +62,7 @@ index 94fb007f5..26e40e1fc 100644
if (pkt->icmp_id != G.myid)
continue; /* not our ping */
if (pkt->icmp_type == ICMP_ECHOREPLY)
-@@ -627,19 +644,21 @@ static void unpack_tail(int sz, uint32_t *tp,
+@@ -634,19 +651,21 @@ static void unpack_tail(int sz, uint32_t *tp,
}
static void unpack4(char *buf, int sz, struct sockaddr_in *from)
{
@@ -90,7 +90,7 @@ index 94fb007f5..26e40e1fc 100644
if (icmppkt->icmp_id != myid)
return; /* not our ping */
-@@ -651,7 +670,7 @@ static void unpack4(char *buf, int sz, struct sockaddr_in *from)
+@@ -658,7 +677,7 @@ static void unpack4(char *buf, int sz, struct sockaddr_in *from)
tp = (uint32_t *) icmppkt->icmp_data;
unpack_tail(sz, tp,
inet_ntoa(*(struct in_addr *) &from->sin_addr.s_addr),
@@ -99,7 +99,7 @@ index 94fb007f5..26e40e1fc 100644
} else if (icmppkt->icmp_type != ICMP_ECHO) {
bb_error_msg("warning: got ICMP %d (%s)",
icmppkt->icmp_type,
-@@ -695,11 +714,31 @@ static void ping4(len_and_sockaddr *lsa)
+@@ -702,11 +721,31 @@ static void ping4(len_and_sockaddr *lsa)
int sockopt;
pingaddr.sin = lsa->u.sin;
@@ -132,7 +132,7 @@ index 94fb007f5..26e40e1fc 100644
}
/* enable broadcast pings */
-@@ -716,6 +755,15 @@ static void ping4(len_and_sockaddr *lsa)
+@@ -723,6 +762,15 @@ static void ping4(len_and_sockaddr *lsa)
setsockopt_int(pingsock, IPPROTO_IP, IP_MULTICAST_TTL, opt_ttl);
}
@@ -148,7 +148,7 @@ index 94fb007f5..26e40e1fc 100644
signal(SIGINT, print_stats_and_exit);
/* start the ping's going ... */
-@@ -749,10 +797,33 @@ static void ping6(len_and_sockaddr *lsa)
+@@ -756,10 +804,33 @@ static void ping6(len_and_sockaddr *lsa)
char control_buf[CMSG_SPACE(36)];
pingaddr.sin6 = lsa->u.sin6;
@@ -156,26 +156,26 @@ index 94fb007f5..26e40e1fc 100644
+ if (source_lsa && !using_dgram)
xbind(pingsock, &source_lsa->u.sa, source_lsa->len);
+ else if(using_dgram) {
-+ struct sockaddr_in6 sa = {0};
-+ socklen_t sl;
++ struct sockaddr_in6 sa = {0};
++ socklen_t sl;
+
-+ sa.sin6_family = AF_INET6;
-+ sa.sin6_port = 0;
++ sa.sin6_family = AF_INET6;
++ sa.sin6_port = 0;
+ if(source_lsa) {
+ memcpy(&sa.sin6_addr, &source_lsa->u.sin6.sin6_addr, sizeof(struct in6_addr));
+ }
-+ sl = sizeof(sa);
++ sl = sizeof(sa);
+
-+ if (bind(pingsock, (struct sockaddr *) &sa, sl) == -1) {
-+ perror("bind");
-+ exit(2);
-+ }
++ if (bind(pingsock, (struct sockaddr *) &sa, sl) == -1) {
++ perror("bind");
++ exit(2);
++ }
+
-+ if (getsockname(pingsock, (struct sockaddr *) &sa, &sl) == -1) {
-+ perror("getsockname");
-+ exit(2);
-+ }
-+ myid = sa.sin6_port;
++ if (getsockname(pingsock, (struct sockaddr *) &sa, &sl) == -1) {
++ perror("getsockname");
++ exit(2);
++ }
++ myid = sa.sin6_port;
+ }
#ifdef ICMP6_FILTER
@@ -183,7 +183,7 @@ index 94fb007f5..26e40e1fc 100644
{
struct icmp6_filter filt;
if (!(option_mask32 & OPT_VERBOSE)) {
-@@ -880,7 +951,7 @@ static int common_ping_main(int opt, char **argv)
+@@ -890,7 +961,7 @@ static int common_ping_main(int opt, char **argv)
if (opt & OPT_p)
G.pattern = xstrtou_range(str_p, 16, 0, 255);
@@ -193,5 +193,5 @@ index 94fb007f5..26e40e1fc 100644
#if ENABLE_PING6
{
--
-2.13.2
+2.16.2
diff --git a/main/busybox/0005-fbsplash-support-console-switching.patch b/main/busybox/0007-fbsplash-support-console-switching.patch
index 792c2d6c8e..ef226d0096 100644
--- a/main/busybox/0005-fbsplash-support-console-switching.patch
+++ b/main/busybox/0007-fbsplash-support-console-switching.patch
@@ -1,18 +1,14 @@
-From a8f7d33f47cc28732cd04573ae1fb6a1ca6e9617 Mon Sep 17 00:00:00 2001
+From 377e2f20c1034de1195fd900fc637821952cfa49 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
Date: Mon, 24 Sep 2012 07:58:29 +0300
-Subject: [PATCH 05/11] fbsplash: support console switching
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
+Subject: [PATCH 07/16] fbsplash: support console switching
-Signed-off-by: Timo Teräs <timo.teras@iki.fi>
---
- miscutils/fbsplash.c | 83 +++++++++++++++++++++++++++++++++++++++++++++++-----
- 1 file changed, 76 insertions(+), 7 deletions(-)
+ miscutils/fbsplash.c | 82 +++++++++++++++++++++++++++++++++++++++++++++++-----
+ 1 file changed, 75 insertions(+), 7 deletions(-)
diff --git a/miscutils/fbsplash.c b/miscutils/fbsplash.c
-index fc6c9b953..ec5947314 100644
+index 5b2e5ac56..bc80f728c 100644
--- a/miscutils/fbsplash.c
+++ b/miscutils/fbsplash.c
@@ -47,7 +47,7 @@
@@ -42,7 +38,7 @@ index fc6c9b953..ec5947314 100644
/* If you want logging messages on /tmp/fbsplash.log... */
#define DEBUG 0
-@@ -73,6 +79,8 @@ struct globals {
+@@ -75,6 +81,8 @@ struct globals {
unsigned char *addr; // pointer to framebuffer memory
unsigned ns[7]; // n-parameters
const char *image_filename;
@@ -51,7 +47,7 @@ index fc6c9b953..ec5947314 100644
struct fb_var_screeninfo scr_var;
struct fb_fix_screeninfo scr_fix;
unsigned bytes_per_pixel;
-@@ -483,6 +491,11 @@ static void init(const char *cfg_filename)
+@@ -485,6 +493,11 @@ static void init(const char *cfg_filename)
config_close(parser);
}
@@ -63,7 +59,7 @@ index fc6c9b953..ec5947314 100644
int fbsplash_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
int fbsplash_main(int argc UNUSED_PARAM, char **argv)
-@@ -492,6 +505,9 @@ int fbsplash_main(int argc UNUSED_PARAM, char **argv)
+@@ -494,6 +507,9 @@ int fbsplash_main(int argc UNUSED_PARAM, char **argv)
char *num_buf;
unsigned num;
bool bCursorOff;
@@ -73,20 +69,19 @@ index fc6c9b953..ec5947314 100644
INIT_G();
-@@ -499,8 +515,10 @@ int fbsplash_main(int argc UNUSED_PARAM, char **argv)
+@@ -501,8 +517,9 @@ int fbsplash_main(int argc UNUSED_PARAM, char **argv)
fb_device = "/dev/fb0";
cfg_filename = NULL;
fifo_filename = NULL;
- bCursorOff = 1 & getopt32(argv, "cs:d:i:f:",
- &G.image_filename, &fb_device, &cfg_filename, &fifo_filename);
-+ opt_complementary = "T+"; // numeric params
+ bCursorOff = 1 & getopt32(argv, "cs:d:i:f:T:",
+ &G.image_filename, &fb_device, &cfg_filename, &fifo_filename,
+ &G.silent_tty);
// parse configuration file
if (cfg_filename)
-@@ -510,11 +528,43 @@ int fbsplash_main(int argc UNUSED_PARAM, char **argv)
+@@ -512,11 +529,43 @@ int fbsplash_main(int argc UNUSED_PARAM, char **argv)
if (!G.image_filename)
bb_show_usage();
@@ -126,12 +121,12 @@ index fc6c9b953..ec5947314 100644
if (fifo_filename && bCursorOff) {
// hide cursor (BEFORE any fb ops)
-- full_write(STDOUT_FILENO, "\033[?25l", 6);
-+ full_write(G.fd_tty_s, "\033[?25l", 6);
+- full_write(STDOUT_FILENO, ESC"[?25l", 6);
++ full_write(G.fd_tty_s, ESC"[?25l", 6);
}
fb_drawimage();
-@@ -522,6 +572,7 @@ int fbsplash_main(int argc UNUSED_PARAM, char **argv)
+@@ -524,6 +573,7 @@ int fbsplash_main(int argc UNUSED_PARAM, char **argv)
if (!fifo_filename)
return EXIT_SUCCESS;
@@ -139,7 +134,7 @@ index fc6c9b953..ec5947314 100644
fp = xfopen_stdin(fifo_filename);
if (fp != stdin) {
// For named pipes, we want to support this:
-@@ -537,8 +588,9 @@ int fbsplash_main(int argc UNUSED_PARAM, char **argv)
+@@ -539,8 +589,9 @@ int fbsplash_main(int argc UNUSED_PARAM, char **argv)
// and become an additional writer :)
open(fifo_filename, O_WRONLY); // errors are ignored
}
@@ -150,7 +145,7 @@ index fc6c9b953..ec5947314 100644
// Block on read, waiting for some input.
// Use of <stdio.h> style I/O allows to correctly
// handle a case when we have many buffered lines
-@@ -553,12 +605,29 @@ int fbsplash_main(int argc UNUSED_PARAM, char **argv)
+@@ -555,12 +606,29 @@ int fbsplash_main(int argc UNUSED_PARAM, char **argv)
#if DEBUG
DEBUG_MESSAGE(itoa(num));
#endif
@@ -179,9 +174,9 @@ index fc6c9b953..ec5947314 100644
+ console_make_active(fd_tty0, active_vt);
+ ioctl(fd_tty0, VT_DISALLOCATE, (void *)(ptrdiff_t)G.silent_tty);
+ } else if (bCursorOff) // restore cursor
- full_write(STDOUT_FILENO, "\033[?25h", 6);
+ full_write(STDOUT_FILENO, ESC"[?25h", 6);
return EXIT_SUCCESS;
--
-2.13.2
+2.16.2
diff --git a/main/busybox/0006-fbsplash-support-image-and-bar-alignment-and-positio.patch b/main/busybox/0008-fbsplash-support-image-and-bar-alignment-and-positio.patch
index 65c4231783..b0cb5cc3d4 100644
--- a/main/busybox/0006-fbsplash-support-image-and-bar-alignment-and-positio.patch
+++ b/main/busybox/0008-fbsplash-support-image-and-bar-alignment-and-positio.patch
@@ -1,19 +1,15 @@
-From 64e2d2e495f82ef7ccc952bfa4216d1ff8ab3481 Mon Sep 17 00:00:00 2001
+From 97fcb49bfbe74fa17a52e63b2196d8a5c3b27d93 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
Date: Fri, 21 Nov 2014 16:06:34 +0200
-Subject: [PATCH 06/11] fbsplash: support image and bar alignment and
+Subject: [PATCH 08/16] fbsplash: support image and bar alignment and
positioning
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-Signed-off-by: Timo Teräs <timo.teras@iki.fi>
---
miscutils/fbsplash.c | 91 +++++++++++++++++++++++++++++++++++++++++++---------
1 file changed, 76 insertions(+), 15 deletions(-)
diff --git a/miscutils/fbsplash.c b/miscutils/fbsplash.c
-index ec5947314..34bbf81f5 100644
+index bc80f728c..9089131b8 100644
--- a/miscutils/fbsplash.c
+++ b/miscutils/fbsplash.c
@@ -53,6 +53,7 @@
@@ -24,9 +20,9 @@ index ec5947314..34bbf81f5 100644
//usage: "\n BAR_LEFT,BAR_TOP,BAR_WIDTH,BAR_HEIGHT"
//usage: "\n BAR_R,BAR_G,BAR_B"
//usage: "\n -f Control pipe (else exit after drawing image)"
-@@ -71,13 +72,38 @@
- /* If you want logging messages on /tmp/fbsplash.log... */
- #define DEBUG 0
+@@ -73,13 +74,38 @@
+
+ #define ESC "\033"
+enum {
+ image_align,
@@ -64,7 +60,7 @@ index ec5947314..34bbf81f5 100644
const char *image_filename;
int silent_tty, fd_tty_s;
bool do_not_draw;
-@@ -94,14 +120,6 @@ struct globals {
+@@ -96,14 +122,6 @@ struct globals {
SET_PTR_TO_GLOBALS(xzalloc(sizeof(G))); \
} while (0)
@@ -79,7 +75,7 @@ index ec5947314..34bbf81f5 100644
#if DEBUG
#define DEBUG_MESSAGE(strMessage, args...) \
if (G.bdebug_messages) { \
-@@ -382,7 +400,7 @@ static void fb_drawimage(void)
+@@ -384,7 +402,7 @@ static void fb_drawimage(void)
FILE *theme_file;
char *read_ptr;
unsigned char *pixline;
@@ -88,7 +84,7 @@ index ec5947314..34bbf81f5 100644
if (LONE_DASH(G.image_filename)) {
theme_file = stdin;
-@@ -432,18 +450,46 @@ static void fb_drawimage(void)
+@@ -434,18 +452,46 @@ static void fb_drawimage(void)
line_size = width*3;
pixline = xmalloc(line_size);
@@ -137,7 +133,7 @@ index ec5947314..34bbf81f5 100644
for (i = 0; i < width; i++) {
unsigned thispix = fb_pixel_value(pixel[0], pixel[1], pixel[2]);
fb_write_pixel(src, thispix);
-@@ -462,9 +508,17 @@ static void fb_drawimage(void)
+@@ -464,9 +510,17 @@ static void fb_drawimage(void)
*/
static void init(const char *cfg_filename)
{
@@ -155,7 +151,7 @@ index ec5947314..34bbf81f5 100644
"BAR_R\0" "BAR_G\0" "BAR_B\0"
#if DEBUG
"DEBUG\0"
-@@ -474,14 +528,21 @@ static void init(const char *cfg_filename)
+@@ -476,14 +530,21 @@ static void init(const char *cfg_filename)
parser_t *parser = config_open2(cfg_filename, xfopen_stdin);
while (config_read(parser, token, 2, 2, "#=",
(PARSE_NORMAL | PARSE_MIN_DIE) & ~(PARSE_TRIM | PARSE_COLLAPSE))) {
@@ -181,5 +177,5 @@ index ec5947314..34bbf81f5 100644
if (G.bdebug_messages)
G.logfile_fd = xfopen_for_write("/tmp/fbsplash.log");
--
-2.13.2
+2.16.2
diff --git a/main/busybox/0007-depmod-support-generating-kmod-binary-index-files.patch b/main/busybox/0009-depmod-support-generating-kmod-binary-index-files.patch
index 8b89902deb..2034f5c88c 100644
--- a/main/busybox/0007-depmod-support-generating-kmod-binary-index-files.patch
+++ b/main/busybox/0009-depmod-support-generating-kmod-binary-index-files.patch
@@ -1,19 +1,13 @@
-From ab4df89615fc2c5726b4ce55546e4dc098211a0b Mon Sep 17 00:00:00 2001
+From d13cb44f10d730eeac83340f71ea95b6faa0c142 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
Date: Sun, 25 Oct 2015 22:21:41 +0200
-Subject: [PATCH 07/11] depmod: support generating kmod binary index files
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
+Subject: [PATCH 09/16] depmod: support generating kmod binary index files
-This allows to use busybox depmod, and run daemons
-using libkmod (or even kmod modprobe if needed).
+This allows to use busybox depmod, and run daemons using libkmod (or
+even kmod modprobe if needed).
-About +1500 bytes when enabled. This patch merges some
-depmod code paths, so when this is disabled it shrinks
-the code size a little bit.
-
-Signed-off-by: Timo Teräs <timo.teras@iki.fi>
+About +1500 bytes when enabled. This patch merges some depmod code
+paths, so when this is disabled it shrinks the code size a little bit.
---
modutils/Config.src | 9 ++
modutils/depmod.c | 281 ++++++++++++++++++++++++++++++++++++++++++----------
@@ -23,12 +17,12 @@ Signed-off-by: Timo Teräs <timo.teras@iki.fi>
5 files changed, 286 insertions(+), 66 deletions(-)
diff --git a/modutils/Config.src b/modutils/Config.src
-index 9b76c83d2..9e3b9b71e 100644
+index e413702bb..1be7434a5 100644
--- a/modutils/Config.src
+++ b/modutils/Config.src
@@ -152,6 +152,15 @@ config FEATURE_MODUTILS_ALIAS
- Say Y if unsure.
+ Say Y if unsure.
+config FEATURE_MODUTILS_BIN
+ bool "Support for the kmod .bin file format"
@@ -43,7 +37,7 @@ index 9b76c83d2..9e3b9b71e 100644
bool "Support module.symbols file"
default y
diff --git a/modutils/depmod.c b/modutils/depmod.c
-index b7965ebd2..73ba7d0f4 100644
+index 004c67a11..05c1a9bce 100644
--- a/modutils/depmod.c
+++ b/modutils/depmod.c
@@ -2,7 +2,7 @@
@@ -402,7 +396,7 @@ index b7965ebd2..73ba7d0f4 100644
if (ENABLE_FEATURE_CLEAN_UP)
moddb_free(&modules);
diff --git a/modutils/modprobe.c b/modutils/modprobe.c
-index 51ede9204..d1fcc0b7f 100644
+index 59f6d54f3..0a398a60f 100644
--- a/modutils/modprobe.c
+++ b/modutils/modprobe.c
@@ -192,21 +192,6 @@ struct globals {
@@ -512,5 +506,5 @@ index 4a702e97c..73e816028 100644
char *filename2modname(const char *filename, char *modname) FAST_FUNC;
#if ENABLE_FEATURE_CMDLINE_MODULE_OPTIONS
--
-2.13.2
+2.16.2
diff --git a/main/busybox/0008-diff-add-support-for-no-dereference.patch b/main/busybox/0010-Add-flag-for-not-following-symlinks-when-recursing.patch
index 95063a863e..a45c46d09d 100644
--- a/main/busybox/0008-diff-add-support-for-no-dereference.patch
+++ b/main/busybox/0010-Add-flag-for-not-following-symlinks-when-recursing.patch
@@ -1,9 +1,7 @@
-From d70be9891718ffb94ea9946cc3540b1b62eced77 Mon Sep 17 00:00:00 2001
+From 1c8c2316f98c2e4894c4c1686f0aa7937fcc0a17 Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Fri, 25 Jul 2014 15:28:33 +0200
-Subject: [PATCH 08/11] diff: add support for --no-dereference
-
-Add flag for not following symlinks when recursing
+Subject: [PATCH 10/16] Add flag for not following symlinks when recursing
function old new delta
.rodata 7934 7967 +33
@@ -12,17 +10,15 @@ packed_usage 1704 1720 +16
diff_main 1665 1662 -3
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/1 up/down: 66/-3) Total: 63 bytes
-
-Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
---
editors/diff.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/editors/diff.c b/editors/diff.c
-index 7687518f3..f07cafb19 100644
+index 1462a9b18..2c899578e 100644
--- a/editors/diff.c
+++ b/editors/diff.c
-@@ -115,6 +115,9 @@
+@@ -113,6 +113,9 @@
//usage: "\n -N Treat absent files as empty"
//usage: "\n -q Output only whether files differ"
//usage: "\n -r Recurse"
@@ -32,7 +28,7 @@ index 7687518f3..f07cafb19 100644
//usage: "\n -S Start with FILE when comparing directories"
//usage: "\n -T Make tabs line up by prefixing a tab when necessary"
//usage: "\n -s Report when two files are the same"
-@@ -156,6 +159,7 @@ enum { /* Commandline flags */
+@@ -154,6 +157,7 @@ enum { /* Commandline flags */
FLAG_p, /* not implemented */
FLAG_B,
FLAG_E, /* not implemented */
@@ -40,7 +36,7 @@ index 7687518f3..f07cafb19 100644
};
#define FLAG(x) (1 << FLAG_##x)
-@@ -869,7 +873,8 @@ static void diffdir(char *p[2], const char *s_start)
+@@ -867,7 +871,8 @@ static void diffdir(char *p[2], const char *s_start)
* Using list.len to specify its length,
* add_to_dirlist will remove it. */
list[i].len = strlen(p[i]);
@@ -50,14 +46,14 @@ index 7687518f3..f07cafb19 100644
add_to_dirlist, skip_dir, &list[i], 0);
/* Sort dl alphabetically.
* GNU diff does this ignoring any number of trailing dots.
-@@ -966,6 +971,7 @@ static const char diff_longopts[] ALIGN1 =
+@@ -964,6 +969,7 @@ static const char diff_longopts[] ALIGN1 =
"report-identical-files\0" No_argument "s"
"starting-file\0" Required_argument "S"
"minimal\0" No_argument "d"
+ "no-dereference\0" No_argument "\xff"
;
- #endif
-
+ # define GETOPT32 getopt32long
+ # define LONGOPTS ,diff_longopts
--
-2.13.2
+2.16.2
diff --git a/main/busybox/0009-sysklogd-add-Z-option-to-adjust-message-timezones.patch b/main/busybox/0011-sysklogd-add-Z-option-to-adjust-message-timezones.patch
index 2624675c4b..b4ba240c4a 100644
--- a/main/busybox/0009-sysklogd-add-Z-option-to-adjust-message-timezones.patch
+++ b/main/busybox/0011-sysklogd-add-Z-option-to-adjust-message-timezones.patch
@@ -1,7 +1,7 @@
-From 1cb2e911c47f1b798ee610deabbea21ba6fb6961 Mon Sep 17 00:00:00 2001
+From 889a08dc0ae0d6b76692e6ed811f431c5b5db53c Mon Sep 17 00:00:00 2001
From: Shiz <hi@shiz.me>
Date: Mon, 8 May 2017 23:09:13 +0200
-Subject: [PATCH 09/11] sysklogd: add -Z option to adjust message timezones
+Subject: [PATCH 11/16] sysklogd: add -Z option to adjust message timezones
Some syslog() implementations like musl's[1] always send timestamps in UTC.
This change adds a new option to syslogd, -Z, to assume incoming timestamps
@@ -16,7 +16,7 @@ Signed-off-by: Shiz <hi@shiz.me>
1 file changed, 19 insertions(+), 4 deletions(-)
diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c
-index d64ff278f..159336ed7 100644
+index 4265f4f90..eca955891 100644
--- a/sysklogd/syslogd.c
+++ b/sysklogd/syslogd.c
@@ -122,6 +122,7 @@
@@ -88,7 +88,7 @@ index d64ff278f..159336ed7 100644
msg += 16;
}
timestamp[15] = '\0';
-@@ -1130,6 +1141,10 @@ int syslogd_main(int argc UNUSED_PARAM, char **argv)
+@@ -1129,6 +1140,10 @@ int syslogd_main(int argc UNUSED_PARAM, char **argv)
if (opts & OPT_loglevel) // -l
G.logLevel = xatou_range(opt_l, 1, 8);
//if (opts & OPT_small) // -S
@@ -100,5 +100,5 @@ index d64ff278f..159336ed7 100644
if (opts & OPT_filesize) // -s
G.logFileSize = xatou_range(opt_s, 0, INT_MAX/1024) * 1024;
--
-2.13.2
+2.16.2
diff --git a/main/busybox/0010-udhcpc-Don-t-background-if-n-is-given.patch b/main/busybox/0012-udhcpc-Don-t-background-if-n-is-given.patch
index 75fe62dfd7..50719b0035 100644
--- a/main/busybox/0010-udhcpc-Don-t-background-if-n-is-given.patch
+++ b/main/busybox/0012-udhcpc-Don-t-background-if-n-is-given.patch
@@ -1,7 +1,7 @@
-From a663349a9ae6d62bfad1243a8781fb254065b480 Mon Sep 17 00:00:00 2001
+From 7f3d0620051c30e2047593092aa054565756b57f Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Thu, 6 Jul 2017 13:39:15 +0200
-Subject: [PATCH 10/11] udhcpc: Don't background if -n is given
+Subject: [PATCH 12/16] udhcpc: Don't background if -n is given
we need add -b to our udhcpc options to prevent boot forever if there are no
dhcp server. We also need a way for users to disable this behavior by making
@@ -11,10 +11,10 @@ it possible to set -n option at runtime.
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c
-index 43aac1b85..bf53dd559 100644
+index cc1d22c8e..10b846b0a 100644
--- a/networking/udhcp/dhcpc.c
+++ b/networking/udhcp/dhcpc.c
-@@ -1504,19 +1504,19 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
+@@ -1479,19 +1479,19 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
}
leasefail:
udhcp_run_script(NULL, "leasefail");
@@ -41,5 +41,5 @@ index 43aac1b85..bf53dd559 100644
timeout = tryagain_timeout;
packet_num = 0;
--
-2.13.2
+2.16.2
diff --git a/main/busybox/0013-CVE-2017-16544.patch b/main/busybox/0013-CVE-2017-16544.patch
deleted file mode 100644
index cbbdd53e9f..0000000000
--- a/main/busybox/0013-CVE-2017-16544.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From c3797d40a1c57352192c6106cc0f435e7d9c11e8 Mon Sep 17 00:00:00 2001
-From: Denys Vlasenko <vda.linux@googlemail.com>
-Date: Tue, 7 Nov 2017 18:09:29 +0100
-Subject: lineedit: do not tab-complete any strings which have control
- characters
-
-function old new delta
-add_match 41 68 +27
-
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- libbb/lineedit.c | 12 ++++++++++++
- 1 file changed, 12 insertions(+)
-
-diff --git a/libbb/lineedit.c b/libbb/lineedit.c
-index c0e35bb..56e8140 100644
---- a/libbb/lineedit.c
-+++ b/libbb/lineedit.c
-@@ -645,6 +645,18 @@ static void free_tab_completion_data(void)
-
- static void add_match(char *matched)
- {
-+ unsigned char *p = (unsigned char*)matched;
-+ while (*p) {
-+ /* ESC attack fix: drop any string with control chars */
-+ if (*p < ' '
-+ || (!ENABLE_UNICODE_SUPPORT && *p >= 0x7f)
-+ || (ENABLE_UNICODE_SUPPORT && *p == 0x7f)
-+ ) {
-+ free(matched);
-+ return;
-+ }
-+ p++;
-+ }
- matches = xrealloc_vector(matches, 4, num_matches);
- matches[num_matches] = matched;
- num_matches++;
---
-cgit v0.12
-
diff --git a/main/busybox/0011-testsuite-fix-cpio-tests.patch b/main/busybox/0013-testsuite-fix-cpio-tests.patch
index a6eb803de5..a9ba0c4d0d 100644
--- a/main/busybox/0011-testsuite-fix-cpio-tests.patch
+++ b/main/busybox/0013-testsuite-fix-cpio-tests.patch
@@ -1,7 +1,7 @@
-From 9a522cf388e321b47f9462bbbd7726323095f8db Mon Sep 17 00:00:00 2001
+From 495a53387a12bffe393dcd0d6de2bc64374d38d2 Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Thu, 6 Jul 2017 13:41:32 +0200
-Subject: [PATCH 11/11] testsuite: fix cpio tests
+Subject: [PATCH 13/16] testsuite: fix cpio tests
The cpio tests don't search for the right output line correctly,
using a hardcoded tail offset. Instead, grep for the file entry
@@ -78,5 +78,5 @@ index 39205242c..1d48e90be 100755
abc
123
--
-2.13.2
+2.16.2
diff --git a/main/busybox/0014-CVE-2017-15873.patch b/main/busybox/0014-CVE-2017-15873.patch
deleted file mode 100644
index 0bfdc76af6..0000000000
--- a/main/busybox/0014-CVE-2017-15873.patch
+++ /dev/null
@@ -1,98 +0,0 @@
-From 0402cb32df015d9372578e3db27db47b33d5c7b0 Mon Sep 17 00:00:00 2001
-From: Denys Vlasenko <vda.linux@googlemail.com>
-Date: Sun, 22 Oct 2017 18:23:23 +0200
-Subject: bunzip2: fix runCnt overflow from bug 10431
-
-This particular corrupted file can be dealth with by using "unsigned".
-If there will be cases where it genuinely overflows, there is a disabled
-code to deal with that too.
-
-function old new delta
-get_next_block 1678 1667 -11
-
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- archival/libarchive/decompress_bunzip2.c | 30 +++++++++++++++++++-----------
- 1 file changed, 19 insertions(+), 11 deletions(-)
-
-diff --git a/archival/libarchive/decompress_bunzip2.c b/archival/libarchive/decompress_bunzip2.c
-index 7cd18f5..bec89ed 100644
---- a/archival/libarchive/decompress_bunzip2.c
-+++ b/archival/libarchive/decompress_bunzip2.c
-@@ -156,15 +156,15 @@ static unsigned get_bits(bunzip_data *bd, int bits_wanted)
- static int get_next_block(bunzip_data *bd)
- {
- struct group_data *hufGroup;
-- int dbufCount, dbufSize, groupCount, *base, *limit, selector,
-- i, j, runPos, symCount, symTotal, nSelectors, byteCount[256];
-- int runCnt = runCnt; /* for compiler */
-+ int groupCount, *base, *limit, selector,
-+ i, j, symCount, symTotal, nSelectors, byteCount[256];
- uint8_t uc, symToByte[256], mtfSymbol[256], *selectors;
- uint32_t *dbuf;
- unsigned origPtr, t;
-+ unsigned dbufCount, runPos;
-+ unsigned runCnt = runCnt; /* for compiler */
-
- dbuf = bd->dbuf;
-- dbufSize = bd->dbufSize;
- selectors = bd->selectors;
-
- /* In bbox, we are ok with aborting through setjmp which is set up in start_bunzip */
-@@ -187,7 +187,7 @@ static int get_next_block(bunzip_data *bd)
- it didn't actually work. */
- if (get_bits(bd, 1)) return RETVAL_OBSOLETE_INPUT;
- origPtr = get_bits(bd, 24);
-- if ((int)origPtr > dbufSize) return RETVAL_DATA_ERROR;
-+ if (origPtr > bd->dbufSize) return RETVAL_DATA_ERROR;
-
- /* mapping table: if some byte values are never used (encoding things
- like ascii text), the compression code removes the gaps to have fewer
-@@ -435,7 +435,14 @@ static int get_next_block(bunzip_data *bd)
- symbols, but a run of length 0 doesn't mean anything in this
- context). Thus space is saved. */
- runCnt += (runPos << nextSym); /* +runPos if RUNA; +2*runPos if RUNB */
-- if (runPos < dbufSize) runPos <<= 1;
-+//The 32-bit overflow of runCnt wasn't yet seen, but probably can happen.
-+//This would be the fix (catches too large count way before it can overflow):
-+// if (runCnt > bd->dbufSize) {
-+// dbg("runCnt:%u > dbufSize:%u RETVAL_DATA_ERROR",
-+// runCnt, bd->dbufSize);
-+// return RETVAL_DATA_ERROR;
-+// }
-+ if (runPos < bd->dbufSize) runPos <<= 1;
- goto end_of_huffman_loop;
- }
-
-@@ -445,14 +452,15 @@ static int get_next_block(bunzip_data *bd)
- literal used is the one at the head of the mtfSymbol array.) */
- if (runPos != 0) {
- uint8_t tmp_byte;
-- if (dbufCount + runCnt > dbufSize) {
-- dbg("dbufCount:%d+runCnt:%d %d > dbufSize:%d RETVAL_DATA_ERROR",
-- dbufCount, runCnt, dbufCount + runCnt, dbufSize);
-+ if (dbufCount + runCnt > bd->dbufSize) {
-+ dbg("dbufCount:%u+runCnt:%u %u > dbufSize:%u RETVAL_DATA_ERROR",
-+ dbufCount, runCnt, dbufCount + runCnt, bd->dbufSize);
- return RETVAL_DATA_ERROR;
- }
- tmp_byte = symToByte[mtfSymbol[0]];
- byteCount[tmp_byte] += runCnt;
-- while (--runCnt >= 0) dbuf[dbufCount++] = (uint32_t)tmp_byte;
-+ while ((int)--runCnt >= 0)
-+ dbuf[dbufCount++] = (uint32_t)tmp_byte;
- runPos = 0;
- }
-
-@@ -466,7 +474,7 @@ static int get_next_block(bunzip_data *bd)
- first symbol in the mtf array, position 0, would have been handled
- as part of a run above. Therefore 1 unused mtf position minus
- 2 non-literal nextSym values equals -1.) */
-- if (dbufCount >= dbufSize) return RETVAL_DATA_ERROR;
-+ if (dbufCount >= bd->dbufSize) return RETVAL_DATA_ERROR;
- i = nextSym - 1;
- uc = mtfSymbol[i];
-
---
-cgit v0.12
-
diff --git a/main/busybox/0012-microcom-segfault.patch b/main/busybox/0014-miscutils-microcom-Fixed-segfault.patch
index 4789079b35..59114460a2 100644
--- a/main/busybox/0012-microcom-segfault.patch
+++ b/main/busybox/0014-miscutils-microcom-Fixed-segfault.patch
@@ -1,7 +1,7 @@
-From fd8a0116a29ea4014fac7fbdba2636fc7b51ffc2 Mon Sep 17 00:00:00 2001
+From 2881266313824ed1c2d422ea905e25509f9bc924 Mon Sep 17 00:00:00 2001
From: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
Date: Wed, 2 Aug 2017 23:36:08 +0200
-Subject: [PATCH] miscutils/microcom: Fixed segfault
+Subject: [PATCH 14/16] miscutils/microcom: Fixed segfault
microcom did not check if required parameter TTY is present. Thus,
bb_basename() was called with a NULL pointer if TTY was missing.
@@ -11,10 +11,10 @@ This commit adds the missing check.
1 file changed, 5 insertions(+)
diff --git a/miscutils/microcom.c b/miscutils/microcom.c
-index 14b9f3baf..38f6425c1 100644
+index fa090057e..96ea02b16 100644
--- a/miscutils/microcom.c
+++ b/miscutils/microcom.c
-@@ -78,6 +78,11 @@ int microcom_main(int argc UNUSED_PARAM, char **argv)
+@@ -76,6 +76,11 @@ int microcom_main(int argc UNUSED_PARAM, char **argv)
// argc -= optind;
argv += optind;
@@ -27,5 +27,5 @@ index 14b9f3baf..38f6425c1 100644
device_lock_file = (char *)bb_basename(argv[0]);
device_lock_file = xasprintf("/var/lock/LCK..%s", device_lock_file);
--
-2.13.3
+2.16.2
diff --git a/main/busybox/0015-CVE-2017-15874.patch b/main/busybox/0015-CVE-2017-15874.patch
deleted file mode 100644
index f2ec506ef5..0000000000
--- a/main/busybox/0015-CVE-2017-15874.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 9ac42c500586fa5f10a1f6d22c3f797df11b1f6b Mon Sep 17 00:00:00 2001
-From: Denys Vlasenko <vda.linux@googlemail.com>
-Date: Fri, 27 Oct 2017 15:37:03 +0200
-Subject: unlzma: fix SEGV, closes 10436
-
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- archival/libarchive/decompress_unlzma.c | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/archival/libarchive/decompress_unlzma.c b/archival/libarchive/decompress_unlzma.c
-index a904087..be43424 100644
---- a/archival/libarchive/decompress_unlzma.c
-+++ b/archival/libarchive/decompress_unlzma.c
-@@ -450,8 +450,12 @@ unpack_lzma_stream(transformer_state_t *xstate)
- IF_NOT_FEATURE_LZMA_FAST(string:)
- do {
- uint32_t pos = buffer_pos - rep0;
-- if ((int32_t)pos < 0)
-+ if ((int32_t)pos < 0) {
- pos += header.dict_size;
-+ /* bug 10436 has an example file where this triggers: */
-+ if ((int32_t)pos < 0)
-+ goto bad;
-+ }
- previous_byte = buffer[pos];
- IF_NOT_FEATURE_LZMA_FAST(one_byte2:)
- buffer[buffer_pos++] = previous_byte;
---
-cgit v0.12
-
diff --git a/main/busybox/0001-ash-introduce-a-config-option-to-search-current.patch b/main/busybox/0015-ash-introduce-a-config-option-to-search-current-dire.patch
index 4e9d3c4bf7..9fc6f7e681 100644
--- a/main/busybox/0001-ash-introduce-a-config-option-to-search-current.patch
+++ b/main/busybox/0015-ash-introduce-a-config-option-to-search-current-dire.patch
@@ -1,21 +1,20 @@
-From 01f7b9e182e257c12f7a7dec76c6b4168605ecd2 Mon Sep 17 00:00:00 2001
+From 13c7e0cc7767b84e183ddbc3400171874478bf06 Mon Sep 17 00:00:00 2001
From: Denys Vlasenko <vda.linux@googlemail.com>
Date: Fri, 26 Jan 2018 15:15:43 +0100
-Subject: ash: introduce a config option to search current directory for
- sourced files
+Subject: [PATCH 15/16] ash: introduce a config option to search current
+ directory for sourced files
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
---
shell/ash.c | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/shell/ash.c b/shell/ash.c
-index 865159d..d2c9372 100644
+index d04096a9b..5dd184360 100644
--- a/shell/ash.c
+++ b/shell/ash.c
-@@ -51,6 +51,13 @@
- //config: default y
- //config: depends on ASH || SH_IS_ASH || BASH_IS_ASH
+@@ -132,6 +132,13 @@
+ //config: you to run the specified command or builtin,
+ //config: even when there is a function with the same name.
//config:
+//config:config ASH_BASH_SOURCE_CURDIR
+//config: bool "'source' and '.' builtins search current directory after $PATH"
@@ -27,7 +26,7 @@ index 865159d..d2c9372 100644
//config:config ASH_COMMAND_NOT_FOUND_HOOK
//config: bool "command_not_found_handle hook support"
//config: default y
-@@ -12978,10 +12985,14 @@ find_dot_file(char *name)
+@@ -12919,10 +12926,14 @@ find_dot_file(char *name)
if (fullname != name)
stunalloc(fullname);
}
@@ -44,5 +43,5 @@ index 865159d..d2c9372 100644
static int FAST_FUNC
--
-cgit v0.12
+2.16.2
diff --git a/main/busybox/0016-top-handle-much-larger-VSZ-values.patch b/main/busybox/0016-top-handle-much-larger-VSZ-values.patch
new file mode 100644
index 0000000000..c8013403f0
--- /dev/null
+++ b/main/busybox/0016-top-handle-much-larger-VSZ-values.patch
@@ -0,0 +1,61 @@
+From 9d37e0e491d53e71c2e3ede1e002790e1026b9c6 Mon Sep 17 00:00:00 2001
+From: Denys Vlasenko <vda.linux@googlemail.com>
+Date: Wed, 7 Mar 2018 03:59:52 +0100
+Subject: [PATCH 16/16] top: handle much larger VSZ values
+
+function old new delta
+display_process_list 1018 999 -19
+
+Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
+---
+ procps/top.c | 12 +++++-------
+ 1 file changed, 5 insertions(+), 7 deletions(-)
+
+diff --git a/procps/top.c b/procps/top.c
+index b777c494e..9bb3eed29 100644
+--- a/procps/top.c
++++ b/procps/top.c
+@@ -607,7 +607,6 @@ static NOINLINE void display_process_list(int lines_rem, int scr_width)
+ };
+
+ top_status_t *s;
+- char vsz_str_buf[8];
+ unsigned long total_memory = display_header(scr_width, &lines_rem); /* or use total_vsz? */
+ /* xxx_shift and xxx_scale variables allow us to replace
+ * expensive divides with multiply and shift */
+@@ -688,19 +687,18 @@ static NOINLINE void display_process_list(int lines_rem, int scr_width)
+ lines_rem = ntop - G_scroll_ofs;
+ s = top + G_scroll_ofs;
+ while (--lines_rem >= 0) {
++ char vsz_str_buf[8];
+ unsigned col;
++
+ CALC_STAT(pmem, (s->vsz*pmem_scale + pmem_half) >> pmem_shift);
+ #if ENABLE_FEATURE_TOP_CPU_USAGE_PERCENTAGE
+ CALC_STAT(pcpu, (s->pcpu*pcpu_scale + pcpu_half) >> pcpu_shift);
+ #endif
+
+- if (s->vsz >= 100000)
+- sprintf(vsz_str_buf, "%6ldm", s->vsz/1024);
+- else
+- sprintf(vsz_str_buf, "%7lu", s->vsz);
++ smart_ulltoa5(s->vsz, vsz_str_buf, " mgtpezy");
+ /* PID PPID USER STAT VSZ %VSZ [%CPU] COMMAND */
+ col = snprintf(line_buf, scr_width,
+- "\n" "%5u%6u %-8.8s %s%s" FMT
++ "\n" "%5u%6u %-8.8s %s %.5s" FMT
+ IF_FEATURE_TOP_SMP_PROCESS(" %3d")
+ IF_FEATURE_TOP_CPU_USAGE_PERCENTAGE(FMT)
+ " ",
+@@ -710,7 +708,7 @@ static NOINLINE void display_process_list(int lines_rem, int scr_width)
+ IF_FEATURE_TOP_SMP_PROCESS(, s->last_seen_on_cpu)
+ IF_FEATURE_TOP_CPU_USAGE_PERCENTAGE(, SHOW_STAT(pcpu))
+ );
+- if ((int)(col + 1) < scr_width)
++ if ((int)(scr_width - col) > 1)
+ read_cmdline(line_buf + col, scr_width - col, s->pid, s->comm);
+ fputs(line_buf, stdout);
+ /* printf(" %d/%d %lld/%lld", s->pcpu, total_pcpu,
+--
+2.16.2
+
diff --git a/main/busybox/APKBUILD b/main/busybox/APKBUILD
index 3be21b018b..d57111600b 100644
--- a/main/busybox/APKBUILD
+++ b/main/busybox/APKBUILD
@@ -2,8 +2,8 @@
# Contributor: Oliver Smith <ollieparanoid@bitmessage.ch>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=busybox
-pkgver=1.27.2
-pkgrel=8
+pkgver=1.28.1
+pkgrel=0
pkgdesc="Size optimized toolbox of many common UNIX utilities"
url=http://busybox.net
arch="all"
@@ -19,30 +19,22 @@ subpackages="$pkgname-static $pkgname-suid $pkgname-extras"
options="suid !check"
triggers="busybox.trigger=/bin:/usr/bin:/sbin:/usr/sbin:/lib/modules/*"
source="http://busybox.net/downloads/$pkgname-$pkgver.tar.bz2
- 0001-add-remove-shell-fix-crash-when-shell-is-already-add.patch
0001-ash-add-support-for-command_not_found_handle-hook-fu.patch
- 0001-fsck-resolve-LABEL-.-UUID-.-spec-to-device.patch
-
- 0001-ash-exec-busybox.static.patch
- 0002-app-location-for-cpio-vi-and-lspci.patch
- 0003-udhcpc-set-default-discover-retries-to-5.patch
- 0004-ping-make-ping-work-without-root-privileges.patch
- 0005-fbsplash-support-console-switching.patch
- 0006-fbsplash-support-image-and-bar-alignment-and-positio.patch
- 0007-depmod-support-generating-kmod-binary-index-files.patch
- 0008-diff-add-support-for-no-dereference.patch
- 0009-sysklogd-add-Z-option-to-adjust-message-timezones.patch
- 0010-udhcpc-Don-t-background-if-n-is-given.patch
- 0011-testsuite-fix-cpio-tests.patch
- 0012-microcom-segfault.patch
-
- 0013-CVE-2017-16544.patch
- 0014-CVE-2017-15873.patch
- 0015-CVE-2017-15874.patch
-
- 0001-ash-introduce-a-config-option-to-search-current.patch
-
- top-buffer-overflow.patch
+ 0002-fsck-resolve-LABEL-.-UUID-.-spec-to-device.patch
+ 0003-ash-exec-busybox.static.patch
+ 0004-app-location-for-cpio-vi-and-lspci.patch
+ 0005-udhcpc-set-default-discover-retries-to-5.patch
+ 0006-ping-make-ping-work-without-root-privileges.patch
+ 0007-fbsplash-support-console-switching.patch
+ 0008-fbsplash-support-image-and-bar-alignment-and-positio.patch
+ 0009-depmod-support-generating-kmod-binary-index-files.patch
+ 0010-Add-flag-for-not-following-symlinks-when-recursing.patch
+ 0011-sysklogd-add-Z-option-to-adjust-message-timezones.patch
+ 0012-udhcpc-Don-t-background-if-n-is-given.patch
+ 0013-testsuite-fix-cpio-tests.patch
+ 0014-miscutils-microcom-Fixed-segfault.patch
+ 0015-ash-introduce-a-config-option-to-search-current-dire.patch
+ 0016-top-handle-much-larger-VSZ-values.patch
acpid.logrotate
busyboxconfig
@@ -186,30 +178,26 @@ static() {
"$subpkgdir"/bin/busybox.static
}
-sha512sums="d99e86b652562ebe1a5d50e1ba3877a1d1612997c17cb8d8e4212da181211a9b741a881cb051f14cb3ee8aea40226cf2cde80a076baed265d3bc0a4e96a5031c busybox-1.27.2.tar.bz2
-26be93ba073556e8eeffbd9427b5d55129a05952ce52cec4ee7e10fe22bb0ee10c2c43d71925bf56905bec1dcc74c97e9b3ef6d97dc7fe0d2878fed64d854f7c 0001-add-remove-shell-fix-crash-when-shell-is-already-add.patch
-dc08288c8e9e29d36be7174d58f3bee2d0508465977fb40d39807aa0b03149f7814f8cfed113d0a7589ef49890beb1805ef00f0d37b563447fe875e3cff08d1c 0001-ash-add-support-for-command_not_found_handle-hook-fu.patch
-7904e47350ebad3f5370b0bca1b344a808cf4f1ae238686309a502bd675df7969eb76859c77ef81f709b0861173c9ca0181c5d5b8c3978e6149564384bb0c157 0001-fsck-resolve-LABEL-.-UUID-.-spec-to-device.patch
-1930775839354a63c30970f0d52d00cfd3a8f6b9f48d6de45ea7d2478d080bde7193c1c2cce026dc7337d9ecf0b65f5ff1dd4351c1eb195e6f0c0c5126f10511 0001-ash-exec-busybox.static.patch
-a756aa89c4602cd091df0052e2e3d7b45a359fbfe953b70aa3029e3eeb8e5d1772cbf1525bb62df6ce6547f1e5605617195ddae336e1ffe41f5c58d524af6ba6 0002-app-location-for-cpio-vi-and-lspci.patch
-fc17ce9b12726e3449518692bf0d4906c36f091534706b5b91c910866bd8cd50d8f7d4b449d54eeed24ee656012a6ef04612bf092874e4b83b0723f852fdce0e 0003-udhcpc-set-default-discover-retries-to-5.patch
-dc0b660b60ef3028a4cc86f712e7f6d08ad7c00d27056f9978a2a103434f45edc7385d2c48eca5ee83efab8fc81735674bf1c40e78fb07a1b5d07ca9da37811a 0004-ping-make-ping-work-without-root-privileges.patch
-63838512679586eb6d83e7b7d3b1e318bb693b91dfb9675a48480e6623e03472b1aa7f86fb7e2ab9e8d6db7a9609b2bcf1c3c1de64fc7d73b65b4794cab87cbf 0005-fbsplash-support-console-switching.patch
-1afe261da507ca13869923033a4adbb3c22e512136cc4b771a2d14d0c25d8de6514cec1dd0363b0684410f0e6a274c3250c1ca8a8a839111f3ed16f800b1d403 0006-fbsplash-support-image-and-bar-alignment-and-positio.patch
-16804d38000bf4395ed2657c19ddf0a1414214db8d2e43541034d5a6db29f74c53c6d8fd28c4c865c7e87fa4a9b914d414e5a00430a261aeaa69ec86bf865780 0007-depmod-support-generating-kmod-binary-index-files.patch
-baac796f8aa96fbeab19f96eea7787ace5737b182f49e02f1b1e911d0a927ae14f3c334daad4241858617dc79607541b9ce66b367d0379b2cb32f67a1e9efc5b 0008-diff-add-support-for-no-dereference.patch
-d1c375184f806f7550bac5c82ab5471bdb8085d845172c973724b22af05ab3759b3ce982e088b4c45815ade56b9adfb7a677d0c180e077545ac7ec003c8aa7c4 0009-sysklogd-add-Z-option-to-adjust-message-timezones.patch
-9b5143d0be615b1604d82007628d59a62721f1e61a63cca7a4ffa5e60fa8da102bfc21fa20cc35c2f5a0a24bc8013598f8eff5888f9d0f3bcfa796343b5f5a91 0010-udhcpc-Don-t-background-if-n-is-given.patch
-f4e00eb13fda752df13f300a7ed9b1320ca9f573c4309247f292c8710464d7be8740148f42e4aff16312335eadabce5a629dce4af58334b9199faf2fd658e4f9 0011-testsuite-fix-cpio-tests.patch
-a09a64b3bce8048c58a68dcd2dd9e63c911009c06195d6bb4e5aecfb5700e479c25b34635c60899127975fae32275ad51846ee75f840d612e00668ce9aba8322 0012-microcom-segfault.patch
-74620e589e863f63ad3fed1e37405e385648789d59e8914074f94b2d279728ad54cd497073ff7afe2aac1bca81150fa1b396034206358599281f15fb2dd079d5 0013-CVE-2017-16544.patch
-8a9f314c7d08d349957549c59d306d1b608f147e27719a290d421cce288c11adb8593034a6d722688ae3c5dc60a5180f7aa948213987cd5b188340558607cbcb 0014-CVE-2017-15873.patch
-93b3188fe3397899a625c203bcc03ddedadb96cceeb38ecad3ad3395d75fdfa7e1ba7cfc34eb8ebc7c70165ae967da474735247bf114398bea00440e90b1bef7 0015-CVE-2017-15874.patch
-de61c39a31a7b43d3e23c48e1712faf1a468781a3b18872a937bf507980c474f3d66af815fb1708d282e53def32502f033bb2283926a506cb8f138e0667b1ebd 0001-ash-introduce-a-config-option-to-search-current.patch
-524e858b52cb31fb8d24e8c7f18606fff349aeab6a14da9cca3902641f6127980daed73c53586c6e8b41eecda06cdb29c40ff1dde2dc82a318c2649680458921 top-buffer-overflow.patch
+sha512sums="c2d551eb70210d63d891614f4469ad3ec151dbd10fce96b2355dd1f2ea43a32ed08cc8f1d1ab361fb547199a19902d17a2935b839aeee2e1c3c8a1ed012db732 busybox-1.28.1.tar.bz2
+51d4d58baff825a51d476bd4594cb8980ec2aa4d0c864a0eec39ccbbadd1ae9f1cd1b20f492a735ffcdf7c925573594f3c4363b0561c8aa7b91ef534bfc7b2e0 0001-ash-add-support-for-command_not_found_handle-hook-fu.patch
+5d2fd3e521ee29d970f377363e3a3144eaf9f7714bc57494d743ded9e39c1ad93ea8759b2febd9c3786968b41e61b8d01ce2361aa997df177b644d63718470ba 0002-fsck-resolve-LABEL-.-UUID-.-spec-to-device.patch
+cc5e5ce7a822ef51eb6b8065e1b802bc9d690857b8123cb4decf51b09c4ef655784401a68dd26e0a681fbb64bd2c0fed4001be6e33cac9049e516587ea53c17d 0003-ash-exec-busybox.static.patch
+5f0611d21d1dc106d43ba23234babd41a2167d7032f3b09e825ae3dc9f9aaeb8d1882f59341daff99adecdfb8ba52a5c9fb423c8df3168b2e2304c5bd0ac4991 0004-app-location-for-cpio-vi-and-lspci.patch
+bd4bb1f29f0287aa2ae4e43d791072802ba4f8863ea968612410a2819f7afaec5c0c731b4d91f360461ebfe26942f21e9ff69cbd5fb7d9800e62ef59fe954ab2 0005-udhcpc-set-default-discover-retries-to-5.patch
+f03f852b97f3875d3051b225e6ffe52ed02ae8a8550287b3e09c2ef4d63914e1ab045ba5e2bc2dc2f3c8bf643485de4ebb36b97c74a8a6e49b6ba0261f2ddb94 0006-ping-make-ping-work-without-root-privileges.patch
+a7b4ddb838f51e86040246e11a4b0df7bce37ed5159634bd2a8f388cf57be0551e6e63887b71b530a8a7b86dbdda6bbb3a090173f040050ea864b5f07674395d 0007-fbsplash-support-console-switching.patch
+f8655833f71715629a4a93997939ca295cacb35f17843a36cb6fda285213bdbd258b2f84e321f81859491971412a520f697748ebd6fb46808f830f4ccfa77af4 0008-fbsplash-support-image-and-bar-alignment-and-positio.patch
+f69031d048aa5e087cb6597ad2f7b39b520a5ef3713731e9090c5b65680cd7075bdf3a9443725fac49dce4345bc3345dc702b95d618d45a6d3be8682844784f4 0009-depmod-support-generating-kmod-binary-index-files.patch
+b558f3ceb63e39545c3219796da64a7962bb53515a4eedea2bf9d81057774096b429145f0cd98da2542e3bdadaf92fb11d710fb1879768c9980bf58ccd104b6e 0010-Add-flag-for-not-following-symlinks-when-recursing.patch
+f81d7966133d40a5d79cab4a4edf695bf7cc1f06cf2382c4ed99eea3a72cd222fe36c7b92e427262f67a81fcc2e7f6bff5986b32362c38da3c5163a49fd1ecab 0011-sysklogd-add-Z-option-to-adjust-message-timezones.patch
+a96aa81d2f0104b5c28f02e80b3f77dbce77af93c174c09015a34850474d69e42c160fc8061c62f03465b6f793ead109dde7b0cc367d1e87694805d823f19d7e 0012-udhcpc-Don-t-background-if-n-is-given.patch
+40c125a2ba19bcfaec46084bef98acb775a7f2521d854df41411afcfbc3025a1bdd029b0baf74550923db2541c23c1e9df5d5ded799d1d46dd7cf86a495e4c57 0013-testsuite-fix-cpio-tests.patch
+4cbd38a3c2730ae38e34c5973bb63e40609c32f700d4943cc0e922394e8ee522d1512eb19c7885f5cee49834ab22b2594cb07164cacffefa39964a3b863f4e50 0014-miscutils-microcom-Fixed-segfault.patch
+832eb44c52d2caad4bf6ea79fb17f10c116de3e90ed79038dabe3736d8e74507d1e0cb6f4f7689b4dd506b92437d8df7862038fc0213ecda259e40baf9d9b3de 0015-ash-introduce-a-config-option-to-search-current-dire.patch
+185f11578dc3c3637f1acd1285c71b9e31f4244c57cd85b0848912c085a7a8c833d4c935ab1cadcb9852cf3185c7ffb08db8ea728fb19ab6e6fa90d89f13c75b 0016-top-handle-much-larger-VSZ-values.patch
a9b1403c844c51934637215307dd9e2adb9458921047acff0d86dcf229b6e0027f4b2c6cdaa25a58407aad9d098fb5685d58eb5ff8d2aa3de4912cdea21fe54c acpid.logrotate
-c201ba9316450bac561a2ec831cabd6e98149e387721a140c95a2b441ed8d7589fb12cab9760315bfef491280e7638781e68905feed9a6fcfc55c0d864608964 busyboxconfig
-7759d1611ce72f7aa9e4afbd48f410806b3bd59701fe8a570675898c504c0e15f85bacbc1578f87345197844ee6175117d348acc4fe29a742b7ac96b84fe7386 busyboxconfig-extras
-e84087a453f8c9814951c9ad496cce19f8280b80a8ab6a1c8e21385f1facb17e987adc8d1d72c7cb463c04eb0cadd2bd6fb9b6f6c0067ddd21eeacf91ca42f32 bbsuid.c
+9c0ee35fcaa58a198bb471f48fa1e3b619a747eadca3b62a2921ac465dd1bfdfe8ad06a8d48bca92148729048eac50f9d69502212a9b2df7d16e49197ff10a50 busyboxconfig
+075d49ffbc606c2572b4c810435640ff2189afa40d3ed2e655b1be1e75fa9cbd810e48b25b86e1f1c735cac0379b55734aaab1fa5dfde7e62de03b2d49a17c36 busyboxconfig-extras
+0becc2186d6c32fb0c401cf7bc0e46268b38ce8892db33be1daf40273024c1c02d518283f44086a313a2ccef34230a1d945ec148cc173f26e6aa9d88a7426e54 bbsuid.c
a1127c8a384294135e11500fde7ead33b73d24b11c21911b08447a4c4ef71d7a9965d6466f60f2da64e3b877213b0a3e924a5add3c5333ee3ecde8c2a91c5e02 dad.if-up
-4e7c291a70e879b74c0fc07c54a73ef50537d8be68fee6b2d409425c07afd2d67f9b6afcd8c33a7971014913cc5de85e45079681c9e77200c6cc2f34acfba6d2 nologin.c"
+061f7417c1cbf0424a5fab77e2f5912aa1593f39b33ea294af4c03518ca712d793a77ea82ff1f36e9cb98751d9faacb9d0240cdf0894efd8f26c13c28a692404 nologin.c"
diff --git a/main/busybox/bbsuid.c b/main/busybox/bbsuid.c
index 8be2671b10..24d0d7d3e3 100644
--- a/main/busybox/bbsuid.c
+++ b/main/busybox/bbsuid.c
@@ -16,6 +16,7 @@
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
+#include <err.h>
#define BBSUID_PATH "/bin/bbsuid"
diff --git a/main/busybox/busyboxconfig b/main/busybox/busyboxconfig
index 3434e6d958..0903a251f0 100644
--- a/main/busybox/busyboxconfig
+++ b/main/busybox/busyboxconfig
@@ -1,40 +1,39 @@
#
# Automatically generated make config: don't edit
-# Busybox version: 1.27.2
-# Fri Oct 27 21:22:08 2017
+# Busybox version: 1.28.1
+# Tue Mar 6 23:09:37 2018
#
CONFIG_HAVE_DOT_CONFIG=y
#
-# Busybox Settings
+# Settings
#
CONFIG_DESKTOP=y
# CONFIG_EXTRA_COMPAT is not set
# CONFIG_FEDORA_COMPAT is not set
# CONFIG_INCLUDE_SUSv2 is not set
-# CONFIG_USE_PORTABLE_CODE is not set
+CONFIG_LONG_OPTS=y
CONFIG_SHOW_USAGE=y
CONFIG_FEATURE_VERBOSE_USAGE=y
CONFIG_FEATURE_COMPRESS_USAGE=y
-CONFIG_BUSYBOX=y
-CONFIG_FEATURE_INSTALLER=y
-# CONFIG_INSTALL_NO_USR is not set
+CONFIG_LFS=y
# CONFIG_PAM is not set
-CONFIG_LONG_OPTS=y
CONFIG_FEATURE_DEVPTS=y
-# CONFIG_FEATURE_CLEAN_UP is not set
# CONFIG_FEATURE_UTMP is not set
# CONFIG_FEATURE_WTMP is not set
CONFIG_FEATURE_PIDFILE=y
CONFIG_PID_FILE_PATH="/var/run"
+CONFIG_BUSYBOX=y
+CONFIG_FEATURE_INSTALLER=y
+# CONFIG_INSTALL_NO_USR is not set
CONFIG_FEATURE_SUID=y
# CONFIG_FEATURE_SUID_CONFIG is not set
# CONFIG_FEATURE_SUID_CONFIG_QUIET is not set
-# CONFIG_SELINUX is not set
# CONFIG_FEATURE_PREFER_APPLETS is not set
CONFIG_BUSYBOX_EXEC_PATH="/bin/busybox"
+# CONFIG_SELINUX is not set
+# CONFIG_FEATURE_CLEAN_UP is not set
CONFIG_FEATURE_SYSLOG=y
-# CONFIG_FEATURE_HAVE_RPC is not set
CONFIG_PLATFORM_LINUX=y
#
@@ -44,14 +43,15 @@ CONFIG_PLATFORM_LINUX=y
CONFIG_PIE=y
# CONFIG_NOMMU is not set
# CONFIG_BUILD_LIBBUSYBOX is not set
+# CONFIG_FEATURE_LIBBUSYBOX_STATIC is not set
# CONFIG_FEATURE_INDIVIDUAL is not set
# CONFIG_FEATURE_SHARED_BUSYBOX is not set
-CONFIG_LFS=y
CONFIG_CROSS_COMPILER_PREFIX=""
CONFIG_SYSROOT=""
CONFIG_EXTRA_CFLAGS=""
CONFIG_EXTRA_LDFLAGS=""
CONFIG_EXTRA_LDLIBS=""
+# CONFIG_USE_PORTABLE_CODE is not set
#
# Installation Options ("make install" behavior)
@@ -78,7 +78,7 @@ CONFIG_NO_DEBUG_LIB=y
# CONFIG_EFENCE is not set
#
-# Busybox Library Tuning
+# Library Tuning
#
# CONFIG_FEATURE_USE_BSS_TAIL is not set
CONFIG_FEATURE_RTMINMAX=y
@@ -145,7 +145,6 @@ CONFIG_BZCAT=y
CONFIG_UNLZMA=y
CONFIG_LZCAT=y
CONFIG_LZMA=y
-CONFIG_FEATURE_LZMA_FAST=y
CONFIG_UNXZ=y
CONFIG_XZCAT=y
# CONFIG_XZ is not set
@@ -184,12 +183,14 @@ CONFIG_FEATURE_UNZIP_CDF=y
CONFIG_FEATURE_UNZIP_BZIP2=y
CONFIG_FEATURE_UNZIP_LZMA=y
CONFIG_FEATURE_UNZIP_XZ=y
+CONFIG_FEATURE_LZMA_FAST=y
#
# Coreutils
#
CONFIG_BASENAME=y
CONFIG_CAT=y
+CONFIG_FEATURE_CATN=y
CONFIG_FEATURE_CATV=y
CONFIG_CHGRP=y
CONFIG_CHMOD=y
@@ -220,11 +221,8 @@ CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y
CONFIG_ECHO=y
CONFIG_FEATURE_FANCY_ECHO=y
CONFIG_ENV=y
-# CONFIG_FEATURE_ENV_LONG_OPTIONS is not set
CONFIG_EXPAND=y
-# CONFIG_FEATURE_EXPAND_LONG_OPTIONS is not set
CONFIG_UNEXPAND=y
-# CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS is not set
CONFIG_EXPR=y
CONFIG_EXPR_MATH_SUPPORT_64=y
CONFIG_FACTOR=y
@@ -262,12 +260,10 @@ CONFIG_SHA3SUM=y
#
CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
CONFIG_MKDIR=y
-# CONFIG_FEATURE_MKDIR_LONG_OPTIONS is not set
CONFIG_MKFIFO=y
CONFIG_MKNOD=y
CONFIG_MKTEMP=y
CONFIG_MV=y
-# CONFIG_FEATURE_MV_LONG_OPTIONS is not set
CONFIG_NICE=y
CONFIG_NL=y
CONFIG_NOHUP=y
@@ -282,7 +278,6 @@ CONFIG_FEATURE_READLINK_FOLLOW=y
CONFIG_REALPATH=y
CONFIG_RM=y
CONFIG_RMDIR=y
-# CONFIG_FEATURE_RMDIR_LONG_OPTIONS is not set
CONFIG_SEQ=y
CONFIG_SHRED=y
CONFIG_SHUF=y
@@ -321,6 +316,7 @@ CONFIG_TRUNCATE=y
CONFIG_TTY=y
CONFIG_UNAME=y
CONFIG_UNAME_OSNAME="Linux"
+CONFIG_BB_ARCH=y
CONFIG_UNIQ=y
CONFIG_UNLINK=y
CONFIG_USLEEP=y
@@ -393,6 +389,14 @@ CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS=y
CONFIG_WHICH=y
#
+# klibc-utils
+#
+# CONFIG_MINIPS is not set
+# CONFIG_NUKE is not set
+# CONFIG_RESUME is not set
+# CONFIG_RUN_INIT is not set
+
+#
# Editors
#
CONFIG_AWK=y
@@ -461,6 +465,8 @@ CONFIG_FEATURE_XARGS_SUPPORT_QUOTES=y
CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT=y
CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y
CONFIG_FEATURE_XARGS_SUPPORT_REPL_STR=y
+CONFIG_FEATURE_XARGS_SUPPORT_PARALLEL=y
+CONFIG_FEATURE_XARGS_SUPPORT_ARGS_FILE=y
#
# Init Utilities
@@ -496,10 +502,8 @@ CONFIG_FEATURE_SHADOWPASSWDS=y
CONFIG_ADD_SHELL=y
CONFIG_REMOVE_SHELL=y
CONFIG_ADDGROUP=y
-# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set
CONFIG_FEATURE_ADDUSER_TO_GROUP=y
CONFIG_ADDUSER=y
-# CONFIG_FEATURE_ADDUSER_LONG_OPTIONS is not set
CONFIG_FEATURE_CHECK_NAMES=y
CONFIG_LAST_ID=256000
CONFIG_FIRST_SYSTEM_ID=100
@@ -611,7 +615,6 @@ CONFIG_FEATURE_HEXDUMP_REVERSE=y
CONFIG_HD=y
CONFIG_XXD=y
CONFIG_HWCLOCK=y
-CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS=y
CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS=y
CONFIG_IONICE=y
CONFIG_IPCRM=y
@@ -651,7 +654,6 @@ CONFIG_FEATURE_MOUNT_FSTAB=y
# CONFIG_FEATURE_MOUNT_OTHERTAB is not set
CONFIG_MOUNTPOINT=y
CONFIG_NSENTER=y
-CONFIG_FEATURE_NSENTER_LONG_OPTS=y
# CONFIG_PIVOT_ROOT is not set
CONFIG_RDATE=y
CONFIG_RDEV=y
@@ -665,11 +667,15 @@ CONFIG_REV=y
CONFIG_LINUX32=y
CONFIG_LINUX64=y
CONFIG_SETPRIV=y
+CONFIG_FEATURE_SETPRIV_DUMP=y
+CONFIG_FEATURE_SETPRIV_CAPABILITIES=y
+CONFIG_FEATURE_SETPRIV_CAPABILITY_NAMES=y
CONFIG_SETSID=y
CONFIG_SWAPON=y
CONFIG_FEATURE_SWAPON_DISCARD=y
CONFIG_FEATURE_SWAPON_PRI=y
CONFIG_SWAPOFF=y
+CONFIG_FEATURE_SWAPONOFF_LABEL=y
CONFIG_SWITCH_ROOT=y
# CONFIG_TASKSET is not set
# CONFIG_FEATURE_TASKSET_FANCY is not set
@@ -703,6 +709,7 @@ CONFIG_FEATURE_VOLUMEID_JFS=y
CONFIG_FEATURE_VOLUMEID_LINUXRAID=y
CONFIG_FEATURE_VOLUMEID_LINUXSWAP=y
CONFIG_FEATURE_VOLUMEID_LUKS=y
+CONFIG_FEATURE_VOLUMEID_MINIX=y
CONFIG_FEATURE_VOLUMEID_NILFS=y
CONFIG_FEATURE_VOLUMEID_NTFS=y
CONFIG_FEATURE_VOLUMEID_OCFS2=y
@@ -735,6 +742,7 @@ CONFIG_CONSPY=y
CONFIG_CROND=y
CONFIG_FEATURE_CROND_D=y
CONFIG_FEATURE_CROND_CALL_SENDMAIL=y
+CONFIG_FEATURE_CROND_SPECIAL_TIMES=y
CONFIG_FEATURE_CROND_DIR="/var/spool/cron"
CONFIG_CRONTAB=y
CONFIG_DC=y
@@ -757,6 +765,7 @@ CONFIG_HDPARM=y
# CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set
# CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set
# CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set
+# CONFIG_HEXEDIT is not set
# CONFIG_I2CGET is not set
# CONFIG_I2CSET is not set
# CONFIG_I2CDUMP is not set
@@ -788,6 +797,7 @@ CONFIG_READAHEAD=y
CONFIG_RFKILL=y
# CONFIG_RUNLEVEL is not set
# CONFIG_RX is not set
+# CONFIG_SETFATTR is not set
CONFIG_SETSERIAL=y
CONFIG_STRINGS=y
CONFIG_TIME=y
@@ -883,6 +893,7 @@ CONFIG_NAMEIF=y
CONFIG_FEATURE_NAMEIF_EXTENDED=y
CONFIG_NBDCLIENT=y
CONFIG_NC=y
+# CONFIG_NETCAT is not set
CONFIG_NC_SERVER=y
CONFIG_NC_EXTRA=y
CONFIG_NC_110_COMPAT=y
@@ -910,11 +921,11 @@ CONFIG_SSL_CLIENT=y
# CONFIG_FEATURE_TELNETD_STANDALONE is not set
# CONFIG_FEATURE_TELNETD_INETD_WAIT is not set
# CONFIG_TFTP is not set
+# CONFIG_FEATURE_TFTP_PROGRESS_BAR is not set
# CONFIG_TFTPD is not set
# CONFIG_FEATURE_TFTP_GET is not set
# CONFIG_FEATURE_TFTP_PUT is not set
# CONFIG_FEATURE_TFTP_BLOCKSIZE is not set
-# CONFIG_FEATURE_TFTP_PROGRESS_BAR is not set
# CONFIG_TFTP_DEBUG is not set
CONFIG_TLS=y
CONFIG_TRACEROUTE=y
@@ -933,13 +944,9 @@ CONFIG_FEATURE_WGET_HTTPS=y
CONFIG_FEATURE_WGET_OPENSSL=y
CONFIG_WHOIS=y
# CONFIG_ZCIP is not set
-CONFIG_UDHCPC6=y
-CONFIG_FEATURE_UDHCPC6_RFC3646=y
-CONFIG_FEATURE_UDHCPC6_RFC4704=y
-CONFIG_FEATURE_UDHCPC6_RFC4833=y
# CONFIG_UDHCPD is not set
-# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set
# CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set
+# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set
CONFIG_DHCPD_LEASES_FILE=""
CONFIG_DUMPLEASES=y
# CONFIG_DHCPRELAY is not set
@@ -947,11 +954,19 @@ CONFIG_UDHCPC=y
CONFIG_FEATURE_UDHCPC_ARPING=y
CONFIG_FEATURE_UDHCPC_SANITIZEOPT=y
CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script"
+CONFIG_UDHCPC6=y
+CONFIG_FEATURE_UDHCPC6_RFC3646=y
+CONFIG_FEATURE_UDHCPC6_RFC4704=y
+CONFIG_FEATURE_UDHCPC6_RFC4833=y
+
+#
+# Common options for DHCP applets
+#
# CONFIG_FEATURE_UDHCP_PORT is not set
CONFIG_UDHCP_DEBUG=0
+CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
CONFIG_FEATURE_UDHCP_RFC3397=y
CONFIG_FEATURE_UDHCP_8021Q=y
-CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-b"
#
@@ -1031,13 +1046,11 @@ CONFIG_SV_DEFAULT_SERVICE_DIR=""
# CONFIG_SVC is not set
# CONFIG_SVLOGD is not set
# CONFIG_CHCON is not set
-# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set
# CONFIG_GETENFORCE is not set
# CONFIG_GETSEBOOL is not set
# CONFIG_LOAD_POLICY is not set
# CONFIG_MATCHPATHCON is not set
# CONFIG_RUNCON is not set
-# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set
# CONFIG_SELINUXENABLED is not set
# CONFIG_SESTATUS is not set
# CONFIG_SETENFORCE is not set
@@ -1094,17 +1107,19 @@ CONFIG_ASH_COMMAND_NOT_FOUND_HOOK=y
# CONFIG_HUSH_HELP is not set
# CONFIG_HUSH_EXPORT is not set
# CONFIG_HUSH_EXPORT_N is not set
+# CONFIG_HUSH_READONLY is not set
# CONFIG_HUSH_KILL is not set
# CONFIG_HUSH_WAIT is not set
# CONFIG_HUSH_TRAP is not set
# CONFIG_HUSH_TYPE is not set
+# CONFIG_HUSH_TIMES is not set
# CONFIG_HUSH_READ is not set
# CONFIG_HUSH_SET is not set
# CONFIG_HUSH_UNSET is not set
# CONFIG_HUSH_ULIMIT is not set
# CONFIG_HUSH_UMASK is not set
+# CONFIG_HUSH_GETOPTS is not set
# CONFIG_HUSH_MEMLEAK is not set
-# CONFIG_MSH is not set
#
# Options common to all shells
@@ -1114,6 +1129,7 @@ CONFIG_FEATURE_SH_MATH_64=y
CONFIG_FEATURE_SH_EXTRA_QUIET=y
# CONFIG_FEATURE_SH_STANDALONE is not set
# CONFIG_FEATURE_SH_NOFORK is not set
+CONFIG_FEATURE_SH_READ_FRAC=y
CONFIG_FEATURE_SH_HISTFILESIZE=y
#
diff --git a/main/busybox/busyboxconfig-extras b/main/busybox/busyboxconfig-extras
index c460d01442..c1dd4c56fd 100644
--- a/main/busybox/busyboxconfig-extras
+++ b/main/busybox/busyboxconfig-extras
@@ -1,40 +1,39 @@
#
# Automatically generated make config: don't edit
-# Busybox version: 1.27.2
-# Fri Oct 27 21:23:19 2017
+# Busybox version: 1.28.1
+# Tue Mar 6 23:09:10 2018
#
CONFIG_HAVE_DOT_CONFIG=y
#
-# Busybox Settings
+# Settings
#
# CONFIG_DESKTOP is not set
# CONFIG_EXTRA_COMPAT is not set
# CONFIG_FEDORA_COMPAT is not set
# CONFIG_INCLUDE_SUSv2 is not set
-# CONFIG_USE_PORTABLE_CODE is not set
+# CONFIG_LONG_OPTS is not set
CONFIG_SHOW_USAGE=y
CONFIG_FEATURE_VERBOSE_USAGE=y
CONFIG_FEATURE_COMPRESS_USAGE=y
-CONFIG_BUSYBOX=y
-CONFIG_FEATURE_INSTALLER=y
-# CONFIG_INSTALL_NO_USR is not set
+CONFIG_LFS=y
# CONFIG_PAM is not set
-# CONFIG_LONG_OPTS is not set
CONFIG_FEATURE_DEVPTS=y
-# CONFIG_FEATURE_CLEAN_UP is not set
# CONFIG_FEATURE_UTMP is not set
# CONFIG_FEATURE_WTMP is not set
# CONFIG_FEATURE_PIDFILE is not set
CONFIG_PID_FILE_PATH=""
+CONFIG_BUSYBOX=y
+CONFIG_FEATURE_INSTALLER=y
+# CONFIG_INSTALL_NO_USR is not set
# CONFIG_FEATURE_SUID is not set
# CONFIG_FEATURE_SUID_CONFIG is not set
# CONFIG_FEATURE_SUID_CONFIG_QUIET is not set
-# CONFIG_SELINUX is not set
# CONFIG_FEATURE_PREFER_APPLETS is not set
CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
+# CONFIG_SELINUX is not set
+# CONFIG_FEATURE_CLEAN_UP is not set
CONFIG_FEATURE_SYSLOG=y
-# CONFIG_FEATURE_HAVE_RPC is not set
CONFIG_PLATFORM_LINUX=y
#
@@ -44,14 +43,15 @@ CONFIG_PLATFORM_LINUX=y
CONFIG_PIE=y
# CONFIG_NOMMU is not set
# CONFIG_BUILD_LIBBUSYBOX is not set
+# CONFIG_FEATURE_LIBBUSYBOX_STATIC is not set
# CONFIG_FEATURE_INDIVIDUAL is not set
# CONFIG_FEATURE_SHARED_BUSYBOX is not set
-CONFIG_LFS=y
CONFIG_CROSS_COMPILER_PREFIX=""
CONFIG_SYSROOT=""
CONFIG_EXTRA_CFLAGS=""
CONFIG_EXTRA_LDFLAGS=""
CONFIG_EXTRA_LDLIBS=""
+# CONFIG_USE_PORTABLE_CODE is not set
#
# Installation Options ("make install" behavior)
@@ -78,7 +78,7 @@ CONFIG_NO_DEBUG_LIB=y
# CONFIG_EFENCE is not set
#
-# Busybox Library Tuning
+# Library Tuning
#
# CONFIG_FEATURE_USE_BSS_TAIL is not set
# CONFIG_FEATURE_RTMINMAX is not set
@@ -145,7 +145,6 @@ CONFIG_FEATURE_SEAMLESS_GZ=y
# CONFIG_UNLZMA is not set
# CONFIG_LZCAT is not set
# CONFIG_LZMA is not set
-# CONFIG_FEATURE_LZMA_FAST is not set
# CONFIG_UNXZ is not set
# CONFIG_XZCAT is not set
# CONFIG_XZ is not set
@@ -184,12 +183,14 @@ CONFIG_GZIP_FAST=0
# CONFIG_FEATURE_UNZIP_BZIP2 is not set
# CONFIG_FEATURE_UNZIP_LZMA is not set
# CONFIG_FEATURE_UNZIP_XZ is not set
+# CONFIG_FEATURE_LZMA_FAST is not set
#
# Coreutils
#
# CONFIG_BASENAME is not set
# CONFIG_CAT is not set
+# CONFIG_FEATURE_CATN is not set
# CONFIG_FEATURE_CATV is not set
# CONFIG_CHGRP is not set
# CONFIG_CHMOD is not set
@@ -220,11 +221,8 @@ CONFIG_GZIP_FAST=0
# CONFIG_ECHO is not set
# CONFIG_FEATURE_FANCY_ECHO is not set
# CONFIG_ENV is not set
-# CONFIG_FEATURE_ENV_LONG_OPTIONS is not set
# CONFIG_EXPAND is not set
-# CONFIG_FEATURE_EXPAND_LONG_OPTIONS is not set
# CONFIG_UNEXPAND is not set
-# CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS is not set
# CONFIG_EXPR is not set
# CONFIG_EXPR_MATH_SUPPORT_64 is not set
# CONFIG_FACTOR is not set
@@ -258,12 +256,10 @@ CONFIG_GZIP_FAST=0
# CONFIG_SHA3SUM is not set
# CONFIG_FEATURE_MD5_SHA1_SUM_CHECK is not set
# CONFIG_MKDIR is not set
-# CONFIG_FEATURE_MKDIR_LONG_OPTIONS is not set
# CONFIG_MKFIFO is not set
# CONFIG_MKNOD is not set
# CONFIG_MKTEMP is not set
# CONFIG_MV is not set
-# CONFIG_FEATURE_MV_LONG_OPTIONS is not set
# CONFIG_NICE is not set
# CONFIG_NL is not set
# CONFIG_NOHUP is not set
@@ -278,7 +274,6 @@ CONFIG_GZIP_FAST=0
# CONFIG_REALPATH is not set
# CONFIG_RM is not set
# CONFIG_RMDIR is not set
-# CONFIG_FEATURE_RMDIR_LONG_OPTIONS is not set
# CONFIG_SEQ is not set
# CONFIG_SHRED is not set
# CONFIG_SHUF is not set
@@ -317,6 +312,7 @@ CONFIG_GZIP_FAST=0
# CONFIG_TTY is not set
# CONFIG_UNAME is not set
CONFIG_UNAME_OSNAME=""
+CONFIG_BB_ARCH=y
# CONFIG_UNIQ is not set
# CONFIG_UNLINK is not set
# CONFIG_USLEEP is not set
@@ -377,6 +373,14 @@ CONFIG_DEFAULT_SETFONT_DIR=""
# CONFIG_WHICH is not set
#
+# klibc-utils
+#
+# CONFIG_MINIPS is not set
+# CONFIG_NUKE is not set
+# CONFIG_RESUME is not set
+# CONFIG_RUN_INIT is not set
+
+#
# Editors
#
# CONFIG_AWK is not set
@@ -445,6 +449,8 @@ CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=0
# CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT is not set
# CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM is not set
# CONFIG_FEATURE_XARGS_SUPPORT_REPL_STR is not set
+# CONFIG_FEATURE_XARGS_SUPPORT_PARALLEL is not set
+# CONFIG_FEATURE_XARGS_SUPPORT_ARGS_FILE is not set
#
# Init Utilities
@@ -480,10 +486,8 @@ CONFIG_INIT_TERMINAL_TYPE=""
# CONFIG_ADD_SHELL is not set
# CONFIG_REMOVE_SHELL is not set
# CONFIG_ADDGROUP is not set
-# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set
# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set
# CONFIG_ADDUSER is not set
-# CONFIG_FEATURE_ADDUSER_LONG_OPTIONS is not set
# CONFIG_FEATURE_CHECK_NAMES is not set
CONFIG_LAST_ID=0
CONFIG_FIRST_SYSTEM_ID=0
@@ -595,7 +599,6 @@ CONFIG_DEFAULT_DEPMOD_FILE=""
# CONFIG_HD is not set
# CONFIG_XXD is not set
# CONFIG_HWCLOCK is not set
-# CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS is not set
# CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set
# CONFIG_IONICE is not set
# CONFIG_IPCRM is not set
@@ -635,7 +638,6 @@ CONFIG_DEFAULT_DEPMOD_FILE=""
# CONFIG_FEATURE_MOUNT_OTHERTAB is not set
# CONFIG_MOUNTPOINT is not set
# CONFIG_NSENTER is not set
-# CONFIG_FEATURE_NSENTER_LONG_OPTS is not set
# CONFIG_PIVOT_ROOT is not set
# CONFIG_RDATE is not set
# CONFIG_RDEV is not set
@@ -649,11 +651,15 @@ CONFIG_DEFAULT_DEPMOD_FILE=""
# CONFIG_LINUX32 is not set
# CONFIG_LINUX64 is not set
# CONFIG_SETPRIV is not set
+# CONFIG_FEATURE_SETPRIV_DUMP is not set
+# CONFIG_FEATURE_SETPRIV_CAPABILITIES is not set
+# CONFIG_FEATURE_SETPRIV_CAPABILITY_NAMES is not set
# CONFIG_SETSID is not set
# CONFIG_SWAPON is not set
# CONFIG_FEATURE_SWAPON_DISCARD is not set
# CONFIG_FEATURE_SWAPON_PRI is not set
# CONFIG_SWAPOFF is not set
+# CONFIG_FEATURE_SWAPONOFF_LABEL is not set
# CONFIG_SWITCH_ROOT is not set
# CONFIG_TASKSET is not set
# CONFIG_FEATURE_TASKSET_FANCY is not set
@@ -679,6 +685,7 @@ CONFIG_DEFAULT_DEPMOD_FILE=""
# CONFIG_FEATURE_VOLUMEID_LINUXRAID is not set
# CONFIG_FEATURE_VOLUMEID_LINUXSWAP is not set
# CONFIG_FEATURE_VOLUMEID_LUKS is not set
+# CONFIG_FEATURE_VOLUMEID_MINIX is not set
# CONFIG_FEATURE_VOLUMEID_NILFS is not set
# CONFIG_FEATURE_VOLUMEID_NTFS is not set
# CONFIG_FEATURE_VOLUMEID_OCFS2 is not set
@@ -711,6 +718,7 @@ CONFIG_FEATURE_BEEP_LENGTH_MS=0
# CONFIG_CROND is not set
# CONFIG_FEATURE_CROND_D is not set
# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set
+# CONFIG_FEATURE_CROND_SPECIAL_TIMES is not set
CONFIG_FEATURE_CROND_DIR=""
# CONFIG_CRONTAB is not set
# CONFIG_DC is not set
@@ -733,6 +741,7 @@ CONFIG_FEATURE_CROND_DIR=""
# CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set
# CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set
# CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set
+# CONFIG_HEXEDIT is not set
# CONFIG_I2CGET is not set
# CONFIG_I2CSET is not set
# CONFIG_I2CDUMP is not set
@@ -764,6 +773,7 @@ CONFIG_READAHEAD=y
# CONFIG_RFKILL is not set
# CONFIG_RUNLEVEL is not set
# CONFIG_RX is not set
+# CONFIG_SETFATTR is not set
# CONFIG_SETSERIAL is not set
# CONFIG_STRINGS is not set
# CONFIG_TIME is not set
@@ -859,6 +869,7 @@ CONFIG_FAKEIDENTD=y
# CONFIG_FEATURE_NAMEIF_EXTENDED is not set
# CONFIG_NBDCLIENT is not set
# CONFIG_NC is not set
+# CONFIG_NETCAT is not set
# CONFIG_NC_SERVER is not set
# CONFIG_NC_EXTRA is not set
# CONFIG_NC_110_COMPAT is not set
@@ -886,6 +897,7 @@ CONFIG_TELNETD=y
CONFIG_FEATURE_TELNETD_STANDALONE=y
CONFIG_FEATURE_TELNETD_INETD_WAIT=y
CONFIG_TFTP=y
+CONFIG_FEATURE_TFTP_PROGRESS_BAR=y
CONFIG_TFTPD=y
#
@@ -894,7 +906,6 @@ CONFIG_TFTPD=y
CONFIG_FEATURE_TFTP_GET=y
CONFIG_FEATURE_TFTP_PUT=y
CONFIG_FEATURE_TFTP_BLOCKSIZE=y
-CONFIG_FEATURE_TFTP_PROGRESS_BAR=y
# CONFIG_TFTP_DEBUG is not set
# CONFIG_TLS is not set
# CONFIG_TRACEROUTE is not set
@@ -913,13 +924,9 @@ CONFIG_FEATURE_TFTP_PROGRESS_BAR=y
# CONFIG_FEATURE_WGET_OPENSSL is not set
# CONFIG_WHOIS is not set
# CONFIG_ZCIP is not set
-# CONFIG_UDHCPC6 is not set
-# CONFIG_FEATURE_UDHCPC6_RFC3646 is not set
-# CONFIG_FEATURE_UDHCPC6_RFC4704 is not set
-# CONFIG_FEATURE_UDHCPC6_RFC4833 is not set
CONFIG_UDHCPD=y
-CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY=y
CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC=y
+CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY=y
CONFIG_DHCPD_LEASES_FILE="/var/lib/udhcpd/udhcpd.leases"
# CONFIG_DUMPLEASES is not set
# CONFIG_DHCPRELAY is not set
@@ -927,11 +934,19 @@ CONFIG_DHCPD_LEASES_FILE="/var/lib/udhcpd/udhcpd.leases"
# CONFIG_FEATURE_UDHCPC_ARPING is not set
# CONFIG_FEATURE_UDHCPC_SANITIZEOPT is not set
CONFIG_UDHCPC_DEFAULT_SCRIPT=""
+# CONFIG_UDHCPC6 is not set
+# CONFIG_FEATURE_UDHCPC6_RFC3646 is not set
+# CONFIG_FEATURE_UDHCPC6_RFC4704 is not set
+# CONFIG_FEATURE_UDHCPC6_RFC4833 is not set
+
+#
+# Common options for DHCP applets
+#
# CONFIG_FEATURE_UDHCP_PORT is not set
CONFIG_UDHCP_DEBUG=0
+CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
CONFIG_FEATURE_UDHCP_RFC3397=y
CONFIG_FEATURE_UDHCP_8021Q=y
-CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS=""
#
@@ -1011,13 +1026,11 @@ CONFIG_SV_DEFAULT_SERVICE_DIR=""
# CONFIG_SVC is not set
# CONFIG_SVLOGD is not set
# CONFIG_CHCON is not set
-# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set
# CONFIG_GETENFORCE is not set
# CONFIG_GETSEBOOL is not set
# CONFIG_LOAD_POLICY is not set
# CONFIG_MATCHPATHCON is not set
# CONFIG_RUNCON is not set
-# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set
# CONFIG_SELINUXENABLED is not set
# CONFIG_SESTATUS is not set
# CONFIG_SETENFORCE is not set
@@ -1051,6 +1064,7 @@ CONFIG_BASH_IS_NONE=y
# CONFIG_ASH_HELP is not set
# CONFIG_ASH_GETOPTS is not set
# CONFIG_ASH_CMDCMD is not set
+# CONFIG_ASH_BASH_SOURCE_CURDIR is not set
# CONFIG_ASH_COMMAND_NOT_FOUND_HOOK is not set
# CONFIG_CTTYHACK is not set
# CONFIG_HUSH is not set
@@ -1073,17 +1087,19 @@ CONFIG_BASH_IS_NONE=y
# CONFIG_HUSH_HELP is not set
# CONFIG_HUSH_EXPORT is not set
# CONFIG_HUSH_EXPORT_N is not set
+# CONFIG_HUSH_READONLY is not set
# CONFIG_HUSH_KILL is not set
# CONFIG_HUSH_WAIT is not set
# CONFIG_HUSH_TRAP is not set
# CONFIG_HUSH_TYPE is not set
+# CONFIG_HUSH_TIMES is not set
# CONFIG_HUSH_READ is not set
# CONFIG_HUSH_SET is not set
# CONFIG_HUSH_UNSET is not set
# CONFIG_HUSH_ULIMIT is not set
# CONFIG_HUSH_UMASK is not set
+# CONFIG_HUSH_GETOPTS is not set
# CONFIG_HUSH_MEMLEAK is not set
-# CONFIG_MSH is not set
#
# Options common to all shells
@@ -1093,6 +1109,7 @@ CONFIG_BASH_IS_NONE=y
# CONFIG_FEATURE_SH_EXTRA_QUIET is not set
# CONFIG_FEATURE_SH_STANDALONE is not set
# CONFIG_FEATURE_SH_NOFORK is not set
+# CONFIG_FEATURE_SH_READ_FRAC is not set
# CONFIG_FEATURE_SH_HISTFILESIZE is not set
#
diff --git a/main/busybox/nologin.c b/main/busybox/nologin.c
index e0a4c56c77..75ad89eda1 100644
--- a/main/busybox/nologin.c
+++ b/main/busybox/nologin.c
@@ -26,7 +26,7 @@
#define _NOLOGIN_TXT "/etc/nologin.txt"
int nologin_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int nologin_main(int argc UNUSED_PARAM, char **argv)
+int nologin_main(int argc UNUSED_PARAM, char **argv UNUSED_PARAM)
{
int fd;
fd = open(_NOLOGIN_TXT, O_RDONLY);
diff --git a/main/busybox/top-buffer-overflow.patch b/main/busybox/top-buffer-overflow.patch
deleted file mode 100644
index 14b23c6488..0000000000
--- a/main/busybox/top-buffer-overflow.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- busybox-1.27.0.orig/procps/top.c
-+++ busybox-1.27.0/procps/top.c
-@@ -694,10 +694,14 @@
- CALC_STAT(pcpu, (s->pcpu*pcpu_scale + pcpu_half) >> pcpu_shift);
- #endif
-
-- if (s->vsz >= 100000)
-- sprintf(vsz_str_buf, "%6ldm", s->vsz/1024);
-+ if ((s->vsz / (1024 * 1024)) >= 100000)
-+ snprintf(vsz_str_buf, sizeof(vsz_str_buf), "%6ldt", s->vsz/(1024 * 1024 * 1024));
-+ else if ((s->vsz / 1024) >= 100000)
-+ snprintf(vsz_str_buf, sizeof(vsz_str_buf), "%6ldg", s->vsz/(1024 * 1024));
-+ else if (s->vsz >= 100000)
-+ snprintf(vsz_str_buf, sizeof(vsz_str_buf), "%6ldm", s->vsz/1024);
- else
-- sprintf(vsz_str_buf, "%7lu", s->vsz);
-+ snprintf(vsz_str_buf, sizeof(vsz_str_buf), "%7lu", s->vsz);
- /* PID PPID USER STAT VSZ %VSZ [%CPU] COMMAND */
- col = snprintf(line_buf, scr_width,
- "\n" "%5u%6u %-8.8s %s%s" FMT