summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2010-03-02 12:59:29 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2010-03-02 13:00:53 +0000
commit81982ab17985155fc72277a078cd76ba73545559 (patch)
tree37433cf437d0a6972ffa353ee2242882a28eef90
parent007611336d875e6dd5c7e38645893b13aa1e7d8a (diff)
downloadaports-81982ab17985155fc72277a078cd76ba73545559.tar.bz2
aports-81982ab17985155fc72277a078cd76ba73545559.tar.xz
main/busybox: fix for httpd
fixes #300 (cherry picked from commit a3000292c2ad297acb9247c17009c9f380cfdc4c)
-rw-r--r--main/busybox/0001-Revert-add-remove-safe_-it-seems-we-had-a-few-incorr.patch142
-rw-r--r--main/busybox/APKBUILD4
2 files changed, 145 insertions, 1 deletions
diff --git a/main/busybox/0001-Revert-add-remove-safe_-it-seems-we-had-a-few-incorr.patch b/main/busybox/0001-Revert-add-remove-safe_-it-seems-we-had-a-few-incorr.patch
new file mode 100644
index 00000000..0ebeac56
--- /dev/null
+++ b/main/busybox/0001-Revert-add-remove-safe_-it-seems-we-had-a-few-incorr.patch
@@ -0,0 +1,142 @@
+From 3aa62731bcc7589a7e77be8b86b954551f06f3af Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Tue, 2 Mar 2010 12:56:23 +0000
+Subject: [PATCH] Revert "*: add/remove safe_, it seems we had a few incorrect uses"
+
+This reverts commit cb23d93c6845df3f2733a32caa4194e60ef871a7.
+---
+ miscutils/microcom.c | 7 +++----
+ networking/httpd.c | 6 +++---
+ networking/telnet.c | 8 ++++----
+ networking/udhcp/arpping.c | 2 +-
+ util-linux/script.c | 4 ++--
+ 5 files changed, 13 insertions(+), 14 deletions(-)
+
+diff --git a/miscutils/microcom.c b/miscutils/microcom.c
+index 9a7a41d..fe6661f 100644
+--- a/miscutils/microcom.c
++++ b/miscutils/microcom.c
+@@ -117,9 +117,8 @@ int microcom_main(int argc UNUSED_PARAM, char **argv)
+
+ bb_got_signal = 0;
+ nfd = 2;
+- // Not safe_poll: we want to exit on signal
+- while (!bb_got_signal && poll(pfd, nfd, timeout) > 0) {
+- if (nfd > 1 && (pfd[1].revents & POLLIN)) {
++ while (!bb_got_signal && safe_poll(pfd, nfd, timeout) > 0) {
++ if (nfd > 1 && pfd[1].revents) {
+ char c;
+ // read from stdin -> write to device
+ if (safe_read(STDIN_FILENO, &c, 1) < 1) {
+@@ -143,7 +142,7 @@ int microcom_main(int argc UNUSED_PARAM, char **argv)
+ safe_poll(pfd, 1, delay);
+ skip_write: ;
+ }
+- if (pfd[0].revents & POLLIN) {
++ if (pfd[0].revents) {
+ #define iobuf bb_common_bufsiz1
+ ssize_t len;
+ // read from device -> write to stdout
+diff --git a/networking/httpd.c b/networking/httpd.c
+index 5bbc7ee..8834c1c 100644
+--- a/networking/httpd.c
++++ b/networking/httpd.c
+@@ -1167,7 +1167,7 @@ static NOINLINE void cgi_io_loop_and_exit(int fromCgi_rd, int toCgi_wr, int post
+ break;
+ }
+
+- if (pfd[TO_CGI].revents & POLLOUT) {
++ if (pfd[TO_CGI].revents) {
+ /* hdr_cnt > 0 here due to the way pfd[TO_CGI].events set */
+ /* Have data from peer and can write to CGI */
+ count = safe_write(toCgi_wr, hdr_ptr, hdr_cnt);
+@@ -1184,7 +1184,7 @@ static NOINLINE void cgi_io_loop_and_exit(int fromCgi_rd, int toCgi_wr, int post
+ }
+ }
+
+- if (pfd[0].revents & POLLIN) {
++ if (pfd[0].revents) {
+ /* post_len > 0 && hdr_cnt == 0 here */
+ /* We expect data, prev data portion is eaten by CGI
+ * and there *is* data to read from the peer
+@@ -1202,7 +1202,7 @@ static NOINLINE void cgi_io_loop_and_exit(int fromCgi_rd, int toCgi_wr, int post
+ }
+ }
+
+- if (pfd[FROM_CGI].revents & POLLIN) {
++ if (pfd[FROM_CGI].revents) {
+ /* There is something to read from CGI */
+ char *rbuf = iobuf;
+
+diff --git a/networking/telnet.c b/networking/telnet.c
+index 344bb0d..5bbad78 100644
+--- a/networking/telnet.c
++++ b/networking/telnet.c
+@@ -618,12 +618,12 @@ int telnet_main(int argc UNUSED_PARAM, char **argv)
+ default:
+
+ #ifdef USE_POLL
+- if (ufds[0].revents & POLLIN)
++ if (ufds[0].revents) /* well, should check POLLIN, but ... */
+ #else
+ if (FD_ISSET(STDIN_FILENO, &rfds))
+ #endif
+ {
+- len = safe_read(STDIN_FILENO, G.buf, DATABUFSIZE);
++ len = read(STDIN_FILENO, G.buf, DATABUFSIZE);
+ if (len <= 0)
+ doexit(EXIT_SUCCESS);
+ TRACE(0, ("Read con: %d\n", len));
+@@ -631,12 +631,12 @@ int telnet_main(int argc UNUSED_PARAM, char **argv)
+ }
+
+ #ifdef USE_POLL
+- if (ufds[1].revents & POLLIN)
++ if (ufds[1].revents) /* well, should check POLLIN, but ... */
+ #else
+ if (FD_ISSET(netfd, &rfds))
+ #endif
+ {
+- len = safe_read(netfd, G.buf, DATABUFSIZE);
++ len = read(netfd, G.buf, DATABUFSIZE);
+ if (len <= 0) {
+ write_str(1, "Connection closed by foreign host\r\n");
+ doexit(EXIT_FAILURE);
+diff --git a/networking/udhcp/arpping.c b/networking/udhcp/arpping.c
+index cf18153..c9b421e 100644
+--- a/networking/udhcp/arpping.c
++++ b/networking/udhcp/arpping.c
+@@ -96,7 +96,7 @@ int FAST_FUNC arpping(uint32_t test_nip,
+ if (r < 0)
+ break;
+ if (r) {
+- r = safe_read(s, &arp, sizeof(arp));
++ r = read(s, &arp, sizeof(arp));
+ if (r < 0)
+ break;
+
+diff --git a/util-linux/script.c b/util-linux/script.c
+index 37213ee..d9a62fb 100644
+--- a/util-linux/script.c
++++ b/util-linux/script.c
+@@ -119,7 +119,7 @@ int script_main(int argc UNUSED_PARAM, char **argv)
+ * for example, try "script -c true" */
+ break;
+ }
+- if (pfd[0].revents & POLLIN) {
++ if (pfd[0].revents) {
+ errno = 0;
+ count = safe_read(pty, buf, sizeof(buf));
+ if (count <= 0 && errno != EAGAIN) {
+@@ -143,7 +143,7 @@ int script_main(int argc UNUSED_PARAM, char **argv)
+ }
+ }
+ }
+- if (pfd[1].revents & POLLIN) {
++ if (pfd[1].revents) {
+ count = safe_read(STDIN_FILENO, buf, sizeof(buf));
+ if (count <= 0) {
+ /* err/eof from stdin: don't read stdin anymore */
+--
+1.6.6.1
+
diff --git a/main/busybox/APKBUILD b/main/busybox/APKBUILD
index 86bb6672..2f43d3e8 100644
--- a/main/busybox/APKBUILD
+++ b/main/busybox/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=busybox
pkgver=1.16.0
-pkgrel=2
+pkgrel=3
pkgdesc="Size optimized toolbox of many common UNIX utilities"
url=http://busybox.net
license="GPL-2"
@@ -19,6 +19,7 @@ source="http://busybox.net/downloads/$pkgname-$pkgver.tar.bz2
busybox-1.16.0-tftp.patch
busybox-1.16.0-usage.patch
busybox-1.16.0-wget.patch
+ 0001-Revert-add-remove-safe_-it-seems-we-had-a-few-incorr.patch
busyboxconfig"
_builddir="$srcdir"/$pkgname-$pkgver
@@ -70,4 +71,5 @@ f4758daa8023f000228e9509cceb02d1 busybox-1.16.0-md5_sha_compat.patch
e24dc9e56b5de4fff706cfbe5c75d9b2 busybox-1.16.0-tftp.patch
289c8ee19cc43fe175bbd7933c6b5cdf busybox-1.16.0-usage.patch
928ca5a26599cd1dbb80e08132140832 busybox-1.16.0-wget.patch
+092adeebfc30b1fad282546d8fdcaa77 0001-Revert-add-remove-safe_-it-seems-we-had-a-few-incorr.patch
9743e7ecd48f37b0d420f64bef7fb2a8 busyboxconfig"