Sun Oct 17 01:50:44 CEST 1999 Modified Files in squid/src helper.c ipc.c Make sure all filedescriptors/sockets are closed when launching helper processes. ----------------------------------------------------------------- Index: squid/src/helper.c diff -u squid/src/helper.c:1.1.1.6.2.2 squid/src/helper.c:1.1.1.6.2.6 --- squid/src/helper.c:1.1.1.6.2.2 Mon Aug 2 22:27:14 1999 +++ squid/src/helper.c Sun Oct 17 02:06:41 1999 @@ -183,7 +183,8 @@ continue; } srv->flags.closing = 1; - comm_close(srv->rfd); + comm_close(srv->wfd); + srv->wfd = -1; } } @@ -227,7 +228,7 @@ helperRequestFree(r); srv->request = NULL; } - if (srv->wfd != srv->rfd) + if (srv->wfd != srv->rfd && srv->wfd != -1) comm_close(srv->wfd); dlinkDelete(&srv->link, &hlp->servers); hlp->n_running--; @@ -287,9 +288,10 @@ intAverage(hlp->stats.avg_svc_time, tvSubMsec(srv->dispatch_time, current_time), hlp->stats.replies, REDIRECT_AV_FACTOR); - if (srv->flags.shutdown) + if (srv->flags.shutdown) { comm_close(srv->wfd); - else + srv->wfd = -1; + } else helperKickQueue(hlp); } else { commSetSelect(srv->rfd, COMM_SELECT_READ, helperHandleRead, srv, 0); Index: squid/src/ipc.c diff -u squid/src/ipc.c:1.1.1.7.24.2 squid/src/ipc.c:1.1.1.7.24.3 --- squid/src/ipc.c:1.1.1.7.24.2 Sun Jul 18 22:05:19 1999 +++ squid/src/ipc.c Sun Oct 17 01:50:44 1999 @@ -284,10 +284,14 @@ close(t1); close(t2); close(t3); + /* Make sure all other filedescriptors are closed */ + for(x=3;x