aboutsummaryrefslogtreecommitdiffstats
path: root/main/busybox
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2012-05-23 09:22:51 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2012-05-23 09:22:51 +0000
commit92877b05d2d48265112d26bfd747d523dab2a9ae (patch)
tree55207f7df2715ffb1545e9dc780d57b8dec9726a /main/busybox
parent6721d09700d85e17dcaf03d9bb5b4cc9b4bd2020 (diff)
downloadaports-92877b05d2d48265112d26bfd747d523dab2a9ae.tar.bz2
aports-92877b05d2d48265112d26bfd747d523dab2a9ae.tar.xz
main/busybox: upgrade to 1.20.0
Diffstat (limited to 'main/busybox')
-rw-r--r--main/busybox/0001-acpid-do-not-install-handlers-for-fatal-signals.patch42
-rw-r--r--main/busybox/0001-grep-support-for-x-match-whole-line.patch68
-rw-r--r--main/busybox/0001-ifupdown-support-metric-for-static-default-gw.patch64
-rw-r--r--main/busybox/0001-unzip-ignore-chmod-errors-so-unzipping-on-FAT-works.patch20
-rw-r--r--main/busybox/APKBUILD39
-rw-r--r--main/busybox/acpid.patch143
-rw-r--r--main/busybox/busybox-mkdir-permissions-64bit.patch42
-rw-r--r--main/busybox/busyboxconfig35
-rw-r--r--main/busybox/loginutils-sha512.patch (renamed from main/busybox/0001-loginutils-use-sha512.patch)46
9 files changed, 63 insertions, 436 deletions
diff --git a/main/busybox/0001-acpid-do-not-install-handlers-for-fatal-signals.patch b/main/busybox/0001-acpid-do-not-install-handlers-for-fatal-signals.patch
deleted file mode 100644
index b62ab4aade..0000000000
--- a/main/busybox/0001-acpid-do-not-install-handlers-for-fatal-signals.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From bbf1e3c144c1ee93409a0e0546cb56b34eccfcfd Mon Sep 17 00:00:00 2001
-From: Denys Vlasenko <vda.linux@googlemail.com>
-Date: Sun, 5 Feb 2012 15:08:08 +0100
-Subject: [PATCH 1/4] acpid: do not install handlers for fatal signals
-
-For acpid, it's ok to die at once.
-
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- util-linux/acpid.c | 8 ++++++--
- 1 files changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/util-linux/acpid.c b/util-linux/acpid.c
-index 361a2b2..1b22f3a 100644
---- a/util-linux/acpid.c
-+++ b/util-linux/acpid.c
-@@ -268,8 +268,12 @@ int acpid_main(int argc UNUSED_PARAM, char **argv)
-
- xchdir(opt_dir);
-
-+ /* We spawn children but don't wait for them. Prevent zombies: */
- bb_signals((1 << SIGCHLD), SIG_IGN);
-- bb_signals(BB_FATAL_SIGS, record_signo);
-+ // If you enable this, (1) explain why, (2)
-+ // make sure while(poll) loop below is still interruptible
-+ // by SIGTERM et al:
-+ //bb_signals(BB_FATAL_SIGS, record_signo);
-
- pfd = NULL;
- nfd = 0;
-@@ -337,7 +341,7 @@ int acpid_main(int argc UNUSED_PARAM, char **argv)
- }
- if (!event)
- continue;
-- // spawn event handler
-+ /* spawn event handler */
- process_event(event);
- }
- }
---
-1.7.9.1
-
diff --git a/main/busybox/0001-grep-support-for-x-match-whole-line.patch b/main/busybox/0001-grep-support-for-x-match-whole-line.patch
deleted file mode 100644
index db8c4f2d9b..0000000000
--- a/main/busybox/0001-grep-support-for-x-match-whole-line.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From 7a526de36684e0c794c125d552931f59a91e445c Mon Sep 17 00:00:00 2001
-From: Natanael Copa <ncopa@alpinelinux.org>
-Date: Thu, 23 Feb 2012 14:08:45 +0000
-Subject: [PATCH] grep: support for -x, match whole line
-
-Specified in POSIX.
-http://pubs.opengroup.org/onlinepubs/009604499/utilities/grep.html
-
-Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
----
- findutils/grep.c | 12 +++++++++---
- 1 file changed, 9 insertions(+), 3 deletions(-)
-
-diff --git a/findutils/grep.c b/findutils/grep.c
-index 5f42242..6125aca 100644
---- a/findutils/grep.c
-+++ b/findutils/grep.c
-@@ -85,6 +85,7 @@
- //usage: "\n -r Recurse"
- //usage: "\n -i Ignore case"
- //usage: "\n -w Match whole words only"
-+//usage: "\n -x Match whole lines only"
- //usage: "\n -F PATTERN is a literal (not regexp)"
- //usage: IF_FEATURE_GREP_EGREP_ALIAS(
- //usage: "\n -E PATTERN is an extended regexp"
-@@ -113,7 +114,7 @@
- //usage:#define fgrep_full_usage ""
-
- #define OPTSTR_GREP \
-- "lnqvscFiHhe:f:Lorm:w" \
-+ "lnqvscFiHhe:f:Lorm:wx" \
- IF_FEATURE_GREP_CONTEXT("A:B:C:") \
- IF_FEATURE_GREP_EGREP_ALIAS("E") \
- IF_EXTRA_COMPAT("z") \
-@@ -138,6 +139,7 @@ enum {
- OPTBIT_r, /* recurse dirs */
- OPTBIT_m, /* -m MAX_MATCHES */
- OPTBIT_w, /* -w whole word match */
-+ OPTBIT_x, /* -x whole line match */
- IF_FEATURE_GREP_CONTEXT( OPTBIT_A ,) /* -A NUM: after-match context */
- IF_FEATURE_GREP_CONTEXT( OPTBIT_B ,) /* -B NUM: before-match context */
- IF_FEATURE_GREP_CONTEXT( OPTBIT_C ,) /* -C NUM: -A and -B combined */
-@@ -160,6 +162,7 @@ enum {
- OPT_r = 1 << OPTBIT_r,
- OPT_m = 1 << OPTBIT_m,
- OPT_w = 1 << OPTBIT_w,
-+ OPT_x = 1 << OPTBIT_x,
- OPT_A = IF_FEATURE_GREP_CONTEXT( (1 << OPTBIT_A)) + 0,
- OPT_B = IF_FEATURE_GREP_CONTEXT( (1 << OPTBIT_B)) + 0,
- OPT_C = IF_FEATURE_GREP_CONTEXT( (1 << OPTBIT_C)) + 0,
-@@ -370,9 +373,12 @@ static int grep_file(FILE *file)
- &gl->matched_range) >= 0
- #endif
- ) {
-- if (!(option_mask32 & OPT_w))
-+ if (option_mask32 & OPT_x) {
-+ found = (gl->matched_range.rm_so == 0
-+ && line[gl->matched_range.rm_eo] == 0);
-+ } else if (!(option_mask32 & OPT_w)) {
- found = 1;
-- else {
-+ } else {
- char c = ' ';
- if (gl->matched_range.rm_so)
- c = line[gl->matched_range.rm_so - 1];
---
-1.7.9.2
-
diff --git a/main/busybox/0001-ifupdown-support-metric-for-static-default-gw.patch b/main/busybox/0001-ifupdown-support-metric-for-static-default-gw.patch
deleted file mode 100644
index 75e6ba7ce5..0000000000
--- a/main/busybox/0001-ifupdown-support-metric-for-static-default-gw.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From cfcb1dac83c9e18a06a07f0b212f6701bb87c2ad Mon Sep 17 00:00:00 2001
-From: Natanael Copa <natanael.copa@gmail.com>
-Date: Fri, 17 Feb 2012 19:36:26 +0000
-Subject: [PATCH] ifupdown: support metric for static default gw
-
-This is useful when you have multiple ISPs with failover. It allows
-setting the priority of the static gateway and makes it possible
-to specify multiple static gateways.
-
-The ubuntu ifupdown supports it.
-
-function old new delta
-.rodata 116725 116797 +72
-------------------------------------------------------------------------------
-(add/remove: 0/0 grow/shrink: 1/0 up/down: 72/0) Total: 72 bytes
- text data bss dec hex filename
- 953343 7313 8984 969640 ecba8 busybox_old
- 953415 7313 8984 969712 ecbf0 busybox_unstripped
-
-Signed-off-by: Natanael Copa <natanael.copa@gmail.com>
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- networking/ifupdown.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/networking/ifupdown.c b/networking/ifupdown.c
-index 73da260..dfda206 100644
---- a/networking/ifupdown.c
-+++ b/networking/ifupdown.c
-@@ -403,11 +403,11 @@ static int FAST_FUNC static_up6(struct interface_defn_t *ifd, execfn *exec)
- result = execute("ip addr add %address%/%netmask% dev %iface%[[ label %label%]]", ifd, exec);
- result += execute("ip link set[[ mtu %mtu%]][[ addr %hwaddress%]] %iface% up", ifd, exec);
- /* Was: "[[ ip ....%gateway% ]]". Removed extra spaces w/o checking */
-- result += execute("[[ip route add ::/0 via %gateway%]]", ifd, exec);
-+ result += execute("[[ip route add ::/0 via %gateway%]][[ prio %metric%]]", ifd, exec);
- # else
- result = execute("ifconfig %iface%[[ media %media%]][[ hw %hwaddress%]][[ mtu %mtu%]] up", ifd, exec);
- result += execute("ifconfig %iface% add %address%/%netmask%", ifd, exec);
-- result += execute("[[route -A inet6 add ::/0 gw %gateway%]]", ifd, exec);
-+ result += execute("[[route -A inet6 add ::/0 gw %gateway%[[ metric %metric%]]]]", ifd, exec);
- # endif
- return ((result == 3) ? 3 : 0);
- }
-@@ -490,7 +490,7 @@ static int FAST_FUNC static_up(struct interface_defn_t *ifd, execfn *exec)
- result = execute("ip addr add %address%/%bnmask%[[ broadcast %broadcast%]] "
- "dev %iface%[[ peer %pointopoint%]][[ label %label%]]", ifd, exec);
- result += execute("ip link set[[ mtu %mtu%]][[ addr %hwaddress%]] %iface% up", ifd, exec);
-- result += execute("[[ip route add default via %gateway% dev %iface%]]", ifd, exec);
-+ result += execute("[[ip route add default via %gateway% dev %iface%[[ prio %metric%]]]]", ifd, exec);
- return ((result == 3) ? 3 : 0);
- # else
- /* ifconfig said to set iface up before it processes hw %hwaddress%,
-@@ -500,7 +500,7 @@ static int FAST_FUNC static_up(struct interface_defn_t *ifd, execfn *exec)
- result += execute("ifconfig %iface% %address% netmask %netmask%"
- "[[ broadcast %broadcast%]][[ pointopoint %pointopoint%]] ",
- ifd, exec);
-- result += execute("[[route add default gw %gateway% %iface%]]", ifd, exec);
-+ result += execute("[[route add default gw %gateway%[[ metric %metric%]] %iface%]]", ifd, exec);
- return ((result == 3) ? 3 : 0);
- # endif
- }
---
-1.7.10.1
-
diff --git a/main/busybox/0001-unzip-ignore-chmod-errors-so-unzipping-on-FAT-works.patch b/main/busybox/0001-unzip-ignore-chmod-errors-so-unzipping-on-FAT-works.patch
index 72518fd514..aa2846a083 100644
--- a/main/busybox/0001-unzip-ignore-chmod-errors-so-unzipping-on-FAT-works.patch
+++ b/main/busybox/0001-unzip-ignore-chmod-errors-so-unzipping-on-FAT-works.patch
@@ -1,34 +1,32 @@
-From 414005993f9b015b5feb28fa8f823112331f89a3 Mon Sep 17 00:00:00 2001
+From 76997894e631affe0742f380eda7de3898e0556c Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Tue, 1 May 2012 15:09:28 +0200
Subject: [PATCH] unzip: ignore chmod errors so unzipping on FAT works
---
- archival/unzip.c | 4 ++--
+ archival/unzip.c | 2 +-
include/libbb.h | 1 +
libbb/make_directory.c | 7 ++++++-
- 3 files changed, 9 insertions(+), 3 deletions(-)
+ 3 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/archival/unzip.c b/archival/unzip.c
-index 4fa7293..e60bc82 100644
+index 3c76cda..c1b945a 100644
--- a/archival/unzip.c
+++ b/archival/unzip.c
-@@ -594,8 +594,8 @@ int unzip_main(int argc, char **argv)
+@@ -596,7 +596,7 @@ int unzip_main(int argc, char **argv)
printf(" creating: %s\n", dst_fn);
}
unzip_create_leading_dirs(dst_fn);
- if (bb_make_directory(dst_fn, dir_mode, 0)) {
-- bb_error_msg_and_die("exiting");
+ if (bb_make_directory(dst_fn, dir_mode, FILEUTILS_IGNORE_CHMOD_ERR)) {
-+ xfunc_die();
+ xfunc_die();
}
} else {
- if (!S_ISDIR(stat_buf.st_mode)) {
diff --git a/include/libbb.h b/include/libbb.h
-index 63d0419..83a1a4d 100644
+index f12800f..5e5c8c7 100644
--- a/include/libbb.h
+++ b/include/libbb.h
-@@ -331,6 +331,7 @@ enum { /* DO NOT CHANGE THESE VALUES! cp.c, mv.c, install.c depend on them. */
+@@ -333,6 +333,7 @@ enum { /* DO NOT CHANGE THESE VALUES! cp.c, mv.c, install.c depend on them. */
FILEUTILS_PRESERVE_SECURITY_CONTEXT = 1 << 9, /* -c */
FILEUTILS_SET_SECURITY_CONTEXT = 1 << 10,
#endif
@@ -63,5 +61,5 @@ index 72303e7..7826b90 100644
ret0:
flags = 0;
--
-1.7.10
+1.7.10.2
diff --git a/main/busybox/APKBUILD b/main/busybox/APKBUILD
index 92f5d71e0e..a92aa1866b 100644
--- a/main/busybox/APKBUILD
+++ b/main/busybox/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=busybox
-pkgver=1.19.4
+pkgver=1.20.0
pkgrel=4
pkgdesc="Size optimized toolbox of many common UNIX utilities"
url=http://busybox.net
@@ -17,17 +17,20 @@ source="http://busybox.net/downloads/$pkgname-$pkgver.tar.bz2
$pkgname-1.11.1-bb.patch
busybox-uname-is-not-gnu.patch
bb-app-location.patch
- 0001-loginutils-use-sha512.patch
- acpid.patch
- busybox-mkdir-permissions-64bit.patch
- 0001-acpid-do-not-install-handlers-for-fatal-signals.patch
- 0001-grep-support-for-x-match-whole-line.patch
0001-tar-Implement-no-recursion.patch
0001-unzip-ignore-chmod-errors-so-unzipping-on-FAT-works.patch
- 0001-ifupdown-support-metric-for-static-default-gw.patch
+ loginutils-sha512.patch
- busyboxconfig"
+ http://busybox.net/downloads/fixes-1.20.0/busybox-1.20.0-buildsys.patch
+ http://busybox.net/downloads/fixes-1.20.0/busybox-1.20.0-ext4.patch
+ http://busybox.net/downloads/fixes-1.20.0/busybox-1.20.0-find.patch
+ http://busybox.net/downloads/fixes-1.20.0/busybox-1.20.0-getty.patch
+ http://busybox.net/downloads/fixes-1.20.0/busybox-1.20.0-lineedit.patch
+ http://busybox.net/downloads/fixes-1.20.0/busybox-1.20.0-mdev.patch
+ http://busybox.net/downloads/fixes-1.20.0/busybox-1.20.0-sed.patch
+ busyboxconfig"
+
_sdir="$srcdir"/$pkgname-$pkgver
_staticdir="$srcdir"/build-static
_dyndir="$srcdir"/build-dynamic
@@ -86,18 +89,20 @@ static() {
"$subpkgdir"/bin/busybox.static
}
-md5sums="9c0cae5a0379228e7b55e5b29528df8e busybox-1.19.4.tar.bz2
+md5sums="4334b34fa1cdae54e9d2dc174f35c9ae busybox-1.20.0.tar.bz2
b7b06c7d5cff6935e4ff68a245cc64b5 bbsuid.c
d64b58a30892c558bdbab7f0d0997577 nologin.c
4c0f3b486eaa0674961b7ddcd0c60a9b busybox-1.11.1-bb.patch
b5375210f13fd6e1ca61a565e8fabd35 busybox-uname-is-not-gnu.patch
754916e52fa11d3fe7c29c93248b6707 bb-app-location.patch
-784383013b8f015fb0d214618c46b4b8 0001-loginutils-use-sha512.patch
-361a26d690e6f1585c6710b3afeb10a6 acpid.patch
-78bb1e70897124a0e09d50c425210e83 busybox-mkdir-permissions-64bit.patch
-cfafb917f777437f428ea97da0a63915 0001-acpid-do-not-install-handlers-for-fatal-signals.patch
-699701047d05468a13e5c37b5ebc3824 0001-grep-support-for-x-match-whole-line.patch
b0977368029587bab23067f0267ae309 0001-tar-Implement-no-recursion.patch
-d13491d62d8987f79c385f6fdd94836a 0001-unzip-ignore-chmod-errors-so-unzipping-on-FAT-works.patch
-ce7fcd5eee5b0e9bf67108b241c09ea2 0001-ifupdown-support-metric-for-static-default-gw.patch
-42e2f49483e650193c0e142ade7de142 busyboxconfig"
+8bf65d5bc87112946675f540b46d406d 0001-unzip-ignore-chmod-errors-so-unzipping-on-FAT-works.patch
+8c42c9ef0f0419c314c86bcaf7796106 loginutils-sha512.patch
+56a22fda2f6aae71a38d6897b1d18ba8 busybox-1.20.0-buildsys.patch
+ff2d91a8260157e3eee50156cb20ad52 busybox-1.20.0-ext4.patch
+35bfb15eb5ad77d392edb4addebcf2c9 busybox-1.20.0-find.patch
+72959a6267138e0692f6a823f2afde7b busybox-1.20.0-getty.patch
+baa5aba9e52bc8ca8f1f7f120e82f80b busybox-1.20.0-lineedit.patch
+276d3d140b35d8d02e05f725e40c4628 busybox-1.20.0-mdev.patch
+bf3b5cc9f831a2a89b280979aa19e40b busybox-1.20.0-sed.patch
+2f0ee9409d33bf48c64144bd1871081e busyboxconfig"
diff --git a/main/busybox/acpid.patch b/main/busybox/acpid.patch
deleted file mode 100644
index 494bf45757..0000000000
--- a/main/busybox/acpid.patch
+++ /dev/null
@@ -1,143 +0,0 @@
-From 982fdaf4b2f335506e570a06d5eab09068da3f61 Mon Sep 17 00:00:00 2001
-From: Denys Vlasenko <vda.linux@googlemail.com>
-Date: Mon, 09 Jan 2012 04:01:25 +0000
-Subject: acpid: close fds which are reported as dead (POLLERR/POLLHUP/POLLNVAL) by poll.
-
-function old new delta
-acpid_main 1159 1229 +70
-packed_usage 28977 28980 +3
-
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
-(limited to 'util-linux/acpid.c')
-
-diff --git a/util-linux/acpid.c b/util-linux/acpid.c
-index 6e7321b..361a2b2 100644
---- a/util-linux/acpid.c
-+++ b/util-linux/acpid.c
-@@ -8,13 +8,13 @@
- */
-
- //usage:#define acpid_trivial_usage
--//usage: "[-d] [-c CONFDIR] [-l LOGFILE] [-a ACTIONFILE] [-M MAPFILE] [-e PROC_EVENT_FILE] [-p PIDFILE]"
-+//usage: "[-df] [-c CONFDIR] [-l LOGFILE] [-a ACTIONFILE] [-M MAPFILE] [-e PROC_EVENT_FILE] [-p PIDFILE]"
- //usage:#define acpid_full_usage "\n\n"
- //usage: "Listen to ACPI events and spawn specific helpers on event arrival\n"
-+//usage: "\n -d Log to stderr, not log file (implies -f)"
-+//usage: "\n -f Run in foreground"
- //usage: "\n -c DIR Config directory [/etc/acpi]"
--//usage: "\n -d Don't daemonize, (implies -f)"
- //usage: "\n -e FILE /proc event file [/proc/acpi/event]"
--//usage: "\n -f Run in foreground"
- //usage: "\n -l FILE Log file [/var/log/acpid.log]"
- //usage: "\n -p FILE Pid file [/var/run/acpid.pid]"
- //usage: "\n -a FILE Action file [/etc/acpid.conf]"
-@@ -225,7 +225,6 @@ static void parse_map_file(const char *filename)
- int acpid_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
- int acpid_main(int argc UNUSED_PARAM, char **argv)
- {
-- struct input_event ev;
- int nfd;
- int opts;
- struct pollfd *pfd;
-@@ -248,15 +247,21 @@ int acpid_main(int argc UNUSED_PARAM, char **argv)
- );
-
- if (!(opts & OPT_f)) {
-+ /* No -f "Foreground", we go to background */
- bb_daemonize_or_rexec(DAEMON_CLOSE_EXTRA_FDS, argv);
- }
-
- if (!(opts & OPT_d)) {
-+ /* No -d "Debug", we log to log file.
-+ * This includes any output from children.
-+ */
-+ xmove_fd(xopen(opt_logfile, O_WRONLY | O_CREAT | O_TRUNC), STDOUT_FILENO);
-+ xdup2(STDOUT_FILENO, STDERR_FILENO);
-+ /* Also, acpid's messages (but not children) will go to syslog too */
- openlog(applet_name, LOG_PID, LOG_DAEMON);
- logmode = LOGMODE_SYSLOG | LOGMODE_STDIO;
-- } else {
-- xmove_fd(xopen(opt_logfile, O_WRONLY | O_CREAT | O_TRUNC), STDOUT_FILENO);
- }
-+ /* else: -d "Debug", log is not redirected */
-
- parse_conf_file(opt_action);
- parse_map_file(opt_map);
-@@ -272,13 +277,14 @@ int acpid_main(int argc UNUSED_PARAM, char **argv)
- int fd;
- char *dev_event;
-
-- dev_event = xasprintf((option_mask32 & OPT_e) ? "%s" : "%s%u", opt_input, nfd);
-+ dev_event = xasprintf((opts & OPT_e) ? "%s" : "%s%u", opt_input, nfd);
- fd = open(dev_event, O_RDONLY | O_NONBLOCK);
- if (fd < 0) {
- if (nfd == 0)
- bb_simple_perror_msg_and_die(dev_event);
- break;
- }
-+ free(dev_event);
- pfd = xrealloc_vector(pfd, 1, nfd);
- pfd[nfd].fd = fd;
- pfd[nfd].events = POLLIN;
-@@ -287,16 +293,26 @@ int acpid_main(int argc UNUSED_PARAM, char **argv)
-
- write_pidfile(opt_pidfile);
-
-- while (poll(pfd, nfd, -1) > 0) {
-+ while (safe_poll(pfd, nfd, -1) > 0) {
- int i;
- for (i = 0; i < nfd; i++) {
-- const char *event = NULL;
--
-- memset(&ev, 0, sizeof(ev));
--
-- if (!(pfd[i].revents & POLLIN))
-- continue;
-+ const char *event;
-+
-+ if (!(pfd[i].revents & POLLIN)) {
-+ if (pfd[i].revents == 0)
-+ continue; /* this fd has nothing */
-+
-+ /* Likely POLLERR, POLLHUP, POLLNVAL.
-+ * Do not listen on this fd anymore.
-+ */
-+ close(pfd[i].fd);
-+ nfd--;
-+ for (; i < nfd; i++)
-+ pfd[i].fd = pfd[i + 1].fd;
-+ break; /* do poll() again */
-+ }
-
-+ event = NULL;
- if (option_mask32 & OPT_e) {
- char *buf;
- int len;
-@@ -307,7 +323,10 @@ int acpid_main(int argc UNUSED_PARAM, char **argv)
- if (len >= 0)
- buf[len] = '\0';
- event = find_action(NULL, buf);
-+ free(buf);
- } else {
-+ struct input_event ev;
-+
- if (sizeof(ev) != full_read(pfd[i].fd, &ev, sizeof(ev)))
- continue;
-
-@@ -324,11 +343,8 @@ int acpid_main(int argc UNUSED_PARAM, char **argv)
- }
-
- if (ENABLE_FEATURE_CLEAN_UP) {
-- while (nfd--) {
-- if (pfd[nfd].fd) {
-- close(pfd[nfd].fd);
-- }
-- }
-+ while (nfd--)
-+ close(pfd[nfd].fd);
- free(pfd);
- }
- remove_pidfile(opt_pidfile);
---
-cgit v0.9.0.1-2-gef13
diff --git a/main/busybox/busybox-mkdir-permissions-64bit.patch b/main/busybox/busybox-mkdir-permissions-64bit.patch
deleted file mode 100644
index 54c109171c..0000000000
--- a/main/busybox/busybox-mkdir-permissions-64bit.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 46db33a38d815a2f0bfcc8ad5094b23efcb4e9bd Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
-Date: Fri, 10 Feb 2012 09:34:57 +0200
-Subject: [PATCH] mkdir: fix permissions on 64-bit platforms
-
-sizeof(long) != sizeof(mode_t), this causes the compare in
-bb_make_directory of (long)-1 != (mode_t)-1 to fail and mess up
-the permissions of final directory by doing chmod((mode_t) -1).
----
- coreutils/mkdir.c | 7 ++++---
- 1 files changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/coreutils/mkdir.c b/coreutils/mkdir.c
-index a4429b1..b33b6bb 100644
---- a/coreutils/mkdir.c
-+++ b/coreutils/mkdir.c
-@@ -54,7 +54,7 @@ static const char mkdir_longopts[] ALIGN1 =
- int mkdir_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
- int mkdir_main(int argc UNUSED_PARAM, char **argv)
- {
-- mode_t mode = (mode_t)(-1);
-+ long mode = -1;
- int status = EXIT_SUCCESS;
- int flags = 0;
- unsigned opt;
-@@ -68,10 +68,11 @@ int mkdir_main(int argc UNUSED_PARAM, char **argv)
- #endif
- opt = getopt32(argv, "m:p" IF_SELINUX("Z:"), &smode IF_SELINUX(,&scontext));
- if (opt & 1) {
-- mode = 0777;
-- if (!bb_parse_mode(smode, &mode)) {
-+ mode_t mmode = 0777;
-+ if (!bb_parse_mode(smode, &mmode)) {
- bb_error_msg_and_die("invalid mode '%s'", smode);
- }
-+ mode = mmode;
- }
- if (opt & 2)
- flags |= FILEUTILS_RECUR;
---
-1.7.9
-
diff --git a/main/busybox/busyboxconfig b/main/busybox/busyboxconfig
index 025ca20654..734315cb95 100644
--- a/main/busybox/busyboxconfig
+++ b/main/busybox/busyboxconfig
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
-# Busybox version: 1.19.0
-# Fri Aug 26 13:38:01 2011
+# Busybox version: 1.20.0
+# Mon May 21 13:21:57 2012
#
CONFIG_HAVE_DOT_CONFIG=y
@@ -62,7 +62,10 @@ CONFIG_PIE=y
# 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=""
#
# Debugging Options
@@ -92,7 +95,7 @@ CONFIG_PREFIX="/home/ncopa/aports/main/busybox/pkg/busybox"
# CONFIG_FEATURE_SYSTEMD is not set
CONFIG_FEATURE_RTMINMAX=y
CONFIG_PASSWORD_MINLEN=6
-CONFIG_MD5_SIZE_VS_SPEED=0
+CONFIG_MD5_SMALL=0
CONFIG_FEATURE_FAST_TOP=y
# CONFIG_FEATURE_ETC_NETWORKS is not set
CONFIG_FEATURE_USE_TERMIOS=y
@@ -101,6 +104,7 @@ CONFIG_FEATURE_EDITING_MAX_LEN=1024
CONFIG_FEATURE_EDITING_VI=y
CONFIG_FEATURE_EDITING_HISTORY=255
CONFIG_FEATURE_EDITING_SAVEHISTORY=y
+# CONFIG_FEATURE_EDITING_SAVE_ON_EXIT is not set
CONFIG_FEATURE_REVERSE_SEARCH=y
CONFIG_FEATURE_TAB_COMPLETION=y
CONFIG_FEATURE_USERNAME_COMPLETION=y
@@ -140,6 +144,7 @@ CONFIG_FEATURE_CPIO_P=y
CONFIG_GUNZIP=y
CONFIG_GZIP=y
# CONFIG_FEATURE_GZIP_LONG_OPTIONS is not set
+CONFIG_GZIP_FAST=2
CONFIG_LZOP=y
# CONFIG_LZOP_COMPR_HIGH is not set
# CONFIG_RPM2CPIO is not set
@@ -173,11 +178,13 @@ CONFIG_DATE=y
CONFIG_FEATURE_DATE_ISOFMT=y
# CONFIG_FEATURE_DATE_NANO is not set
CONFIG_FEATURE_DATE_COMPAT=y
+CONFIG_HOSTID=y
CONFIG_ID=y
CONFIG_GROUPS=y
CONFIG_TEST=y
CONFIG_FEATURE_TEST_64=y
CONFIG_TOUCH=y
+CONFIG_FEATURE_TOUCH_SUSV3=y
CONFIG_TR=y
CONFIG_FEATURE_TR_CLASSES=y
CONFIG_FEATURE_TR_EQUIV=y
@@ -220,7 +227,6 @@ CONFIG_FOLD=y
CONFIG_FSYNC=y
CONFIG_HEAD=y
CONFIG_FEATURE_FANCY_HEAD=y
-CONFIG_HOSTID=y
CONFIG_INSTALL=y
# CONFIG_FEATURE_INSTALL_LONG_OPTIONS is not set
CONFIG_LN=y
@@ -458,6 +464,7 @@ CONFIG_DELGROUP=y
CONFIG_FEATURE_DEL_USER_FROM_GROUP=y
CONFIG_GETTY=y
CONFIG_LOGIN=y
+CONFIG_LOGIN_SESSION_AS_CHILD=y
# CONFIG_PAM is not set
CONFIG_LOGIN_SCRIPTS=y
CONFIG_FEATURE_NOLOGIN=y
@@ -466,6 +473,7 @@ CONFIG_PASSWD=y
CONFIG_FEATURE_PASSWD_WEAK_CHECK=y
CONFIG_CRYPTPW=y
CONFIG_CHPASSWD=y
+CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="sha512"
CONFIG_SU=y
CONFIG_FEATURE_SU_SYSLOG=y
CONFIG_FEATURE_SU_CHECKS_SHELLS=y
@@ -515,6 +523,12 @@ CONFIG_DEFAULT_DEPMOD_FILE="modules.dep"
# Linux System Utilities
#
CONFIG_BLOCKDEV=y
+CONFIG_MDEV=y
+CONFIG_FEATURE_MDEV_CONF=y
+CONFIG_FEATURE_MDEV_RENAME=y
+CONFIG_FEATURE_MDEV_RENAME_REGEXP=y
+CONFIG_FEATURE_MDEV_EXEC=y
+CONFIG_FEATURE_MDEV_LOAD_FIRMWARE=y
CONFIG_REV=y
CONFIG_ACPID=y
CONFIG_FEATURE_ACPID_COMPAT=y
@@ -558,12 +572,6 @@ CONFIG_IPCS=y
CONFIG_LOSETUP=y
CONFIG_LSPCI=y
CONFIG_LSUSB=y
-CONFIG_MDEV=y
-CONFIG_FEATURE_MDEV_CONF=y
-CONFIG_FEATURE_MDEV_RENAME=y
-CONFIG_FEATURE_MDEV_RENAME_REGEXP=y
-CONFIG_FEATURE_MDEV_EXEC=y
-CONFIG_FEATURE_MDEV_LOAD_FIRMWARE=y
CONFIG_MKSWAP=y
CONFIG_FEATURE_MKSWAP_UUID=y
CONFIG_MORE=y
@@ -832,6 +840,7 @@ CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE=y
CONFIG_FEATURE_TRACEROUTE_USE_ICMP=y
CONFIG_TUNCTL=y
CONFIG_FEATURE_TUNCTL_UG=y
+CONFIG_UDHCPC6=y
# CONFIG_UDHCPD is not set
# CONFIG_DHCPRELAY is not set
# CONFIG_DUMPLEASES is not set
@@ -878,6 +887,7 @@ CONFIG_SENDMAIL=y
# Process Utilities
#
CONFIG_IOSTAT=y
+CONFIG_LSOF=y
CONFIG_MPSTAT=y
CONFIG_NMETER=y
CONFIG_PMAP=y
@@ -898,7 +908,8 @@ CONFIG_FEATURE_PIDOF_SINGLE=y
CONFIG_FEATURE_PIDOF_OMIT=y
CONFIG_PKILL=y
CONFIG_PS=y
-CONFIG_FEATURE_PS_WIDE=y
+# CONFIG_FEATURE_PS_WIDE is not set
+# CONFIG_FEATURE_PS_LONG is not set
CONFIG_FEATURE_PS_TIME=y
CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS=y
# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set
@@ -999,7 +1010,7 @@ CONFIG_SYSLOGD=y
CONFIG_FEATURE_ROTATE_LOGFILE=y
CONFIG_FEATURE_REMOTE_LOG=y
CONFIG_FEATURE_SYSLOGD_DUP=y
-CONFIG_FEATURE_SYSLOGD_CFG=n
+# CONFIG_FEATURE_SYSLOGD_CFG is not set
CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256
CONFIG_FEATURE_IPC_SYSLOG=y
CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=16
diff --git a/main/busybox/0001-loginutils-use-sha512.patch b/main/busybox/loginutils-sha512.patch
index c4c1cf34be..f8f4e788e8 100644
--- a/main/busybox/0001-loginutils-use-sha512.patch
+++ b/main/busybox/loginutils-sha512.patch
@@ -1,16 +1,5 @@
-From 253a5e60f5917b29da687b802f56a8503ff9b29a Mon Sep 17 00:00:00 2001
-From: Natanael Copa <natanael.copa@gmail.com>
-Date: Fri, 21 Oct 2011 14:04:01 +0000
-Subject: [PATCH] loginutils: use sha512
-
----
- libbb/pw_encrypt.c | 2 +-
- loginutils/chpasswd.c | 23 +++++++++++++++--------
- loginutils/passwd.c | 2 +-
- 3 files changed, 17 insertions(+), 10 deletions(-)
-
diff --git a/libbb/pw_encrypt.c b/libbb/pw_encrypt.c
-index 39ffa08..dcf6ca5 100644
+index 39ffa08..432551c 100644
--- a/libbb/pw_encrypt.c
+++ b/libbb/pw_encrypt.c
@@ -59,7 +59,7 @@ char* FAST_FUNC crypt_make_pw_salt(char salt[MAX_PW_SALT_LEN], const char *algo)
@@ -18,15 +7,15 @@ index 39ffa08..dcf6ca5 100644
#if !ENABLE_USE_BB_CRYPT || ENABLE_USE_BB_CRYPT_SHA
if (algo[0] == 's') { /* sha */
- salt[1] = '5' + (strcmp(algo, "sha512") == 0);
-+ salt[1] = '6' + (strcmp(algo, "sha512") == 0);
++ salt[1] = '6' - (strcmp(algo, "sha256") == 0);
len = 16/2;
}
#endif
diff --git a/loginutils/chpasswd.c b/loginutils/chpasswd.c
-index b7df57e..029ddfa 100644
+index 54ed737..59ea602 100644
--- a/loginutils/chpasswd.c
+++ b/loginutils/chpasswd.c
-@@ -13,22 +13,26 @@
+@@ -13,11 +13,13 @@
//usage: "Read user:password from stdin and update /etc/passwd\n"
//usage: IF_LONG_OPTS(
//usage: "\n -e,--encrypted Supplied passwords are in encrypted form"
@@ -41,7 +30,8 @@ index b7df57e..029ddfa 100644
+//usage: "\n -d Use DES encryption instead of SHA512"
//usage: )
- #if ENABLE_LONG_OPTS
+ //TODO: implement -c ALGO
+@@ -26,11 +28,13 @@
static const char chpasswd_longopts[] ALIGN1 =
"encrypted\0" No_argument "e"
"md5\0" No_argument "m"
@@ -55,7 +45,7 @@ index b7df57e..029ddfa 100644
int chpasswd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
int chpasswd_main(int argc UNUSED_PARAM, char **argv)
-@@ -39,9 +43,9 @@ int chpasswd_main(int argc UNUSED_PARAM, char **argv)
+@@ -41,9 +45,9 @@ int chpasswd_main(int argc UNUSED_PARAM, char **argv)
if (getuid() != 0)
bb_error_msg_and_die(bb_msg_perm_denied_are_you_root);
@@ -67,15 +57,15 @@ index b7df57e..029ddfa 100644
while ((name = xmalloc_fgetline(stdin)) != NULL) {
char *free_me;
-@@ -59,13 +63,16 @@ int chpasswd_main(int argc UNUSED_PARAM, char **argv)
+@@ -61,12 +65,14 @@ int chpasswd_main(int argc UNUSED_PARAM, char **argv)
if (!(opt & OPT_ENC)) {
char salt[sizeof("$N$XXXXXXXX")];
- crypt_make_salt(salt, 1);
-+ crypt_make_salt(salt + 3, 4);
+ salt[0] = '$';
+ salt[1] = '6';
+ salt[2] = '$';
++ crypt_make_salt(salt + 3, 4);
if (opt & OPT_MD5) {
- salt[0] = '$';
salt[1] = '1';
@@ -84,23 +74,5 @@ index b7df57e..029ddfa 100644
+ } else if (opt & OPT_DES) {
+ crypt_make_salt(salt, 1);
}
-+
free_me = pass = pw_encrypt(pass, salt, 0);
}
-
-diff --git a/loginutils/passwd.c b/loginutils/passwd.c
-index 1cfafae..f29d66c 100644
---- a/loginutils/passwd.c
-+++ b/loginutils/passwd.c
-@@ -94,7 +94,7 @@ int passwd_main(int argc UNUSED_PARAM, char **argv)
- };
- unsigned opt;
- int rc;
-- const char *opt_a = "d"; /* des */
-+ const char *opt_a = "s"; /* sha512 */
- const char *filename;
- char *myname;
- char *name;
---
-1.7.7
-