Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.busybox.net/busybox.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2013-09-11 16:59:21 +0400
committerDenys Vlasenko <vda.linux@googlemail.com>2013-09-11 16:59:21 +0400
commitfbe250db76b409a99457b47486a09b57677d5108 (patch)
tree1b222f195c0947502c46d375e35f549eb4cbe9b0 /console-tools
parentb5352078a7eb16c33404a8b079aaa9c2b994546c (diff)
httpd: treat errors from stdin correctly.
Fron bug report: If a CGI or proxied connection is rudely aborted (SIG_{KILL,BUS,SEGV}) then httpd will spin madly the poll loop in: networking/httpd.c:1080 cgi_io_loop_and_exit() Upon investigation I found that pfd[0].revents == 0x0018 (POLLHUP|POLLERR), which leads to empty read, but the pfd[0].fd (STDIN_FILENO) is left open, and in the FD list given to poll() which immediately returns to once again inform the loop of (POLLHUP|POLLERR) condition of pfd[0].fd. This continues until pfd[FROM_CGI].revents != 0 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'console-tools')
0 files changed, 0 insertions, 0 deletions