dgaudet 97/07/28 04:02:32
Modified: src http_main.c Log: Log a failed listen... perhaps it will help with diagnosing the bizarre accept() error loops. Revision Changes Path 1.189 +10 -3 apache/src/http_main.c Index: http_main.c =================================================================== RCS file: /export/home/cvs/apache/src/http_main.c,v retrieving revision 1.188 retrieving revision 1.189 diff -u -r1.188 -r1.189 --- http_main.c 1997/07/28 09:59:21 1.188 +++ http_main.c 1997/07/28 11:02:31 1.189 @@ -1948,7 +1948,12 @@ sock_bind (s, server); #endif - listen(s, listenbacklog); + if (listen(s, listenbacklog) == -1) { + log_unixerr ("listen", NULL, "unable to listen for connections", + server_conf); + close (s); + return -1; + } return s; } @@ -2033,8 +2038,10 @@ if (fd < 0) { fd = make_sock (p, &lr->local_addr); } - FD_SET (fd, &listenfds); - if (fd > listenmaxfd) listenmaxfd = fd; + if (fd >= 0) { + FD_SET (fd, &listenfds); + if (fd > listenmaxfd) listenmaxfd = fd; + } lr->fd = fd; if (lr->next == NULL) break; lr = lr->next;