openwrt-owl/package/busybox/patches/420-httpd_sendcgi_fix.patch

18 lines
745 B
Diff
Raw Normal View History

diff -ur busybox.old/networking/httpd.c busybox.dev/networking/httpd.c
--- busybox.old/networking/httpd.c 2007-02-10 16:36:50.950661000 +0100
+++ busybox.dev/networking/httpd.c 2007-02-11 21:24:52.026742384 +0100
@@ -1211,9 +1211,10 @@
#if PIPESIZE >= MAX_MEMORY_BUFF
# error "PIPESIZE >= MAX_MEMORY_BUFF"
#endif
- /* NB: was safe_read. If it *has to be* safe_read, */
- /* please explain why in this comment... */
- count = full_read(inFd, rbuf, PIPESIZE);
+ /* reverted back to safe_read, otherwise httpd may block if the */
+ /* cgi-script outputs page date before it has fully received all */
+ /* (eg POST) data */
+ count = safe_read(inFd, rbuf, PIPESIZE);
if (count == 0)
break; /* closed */
if (count < 0)