[EMAIL PROTECTED] writes: > rbb 02/02/04 22:16:04 > > Modified: . STATUS > server listen.c > Log: > This change keeps the server from allowing multiple instances to bind to > the same port. Previously, this was necessary, because the Windows MPM > was binding to the socket in both the parent and child. Today's code > passes the attached socket to the child from the parent, so we don't need > to re-attach in the child.
what the *&%#... you broke everybody else (and perhaps Windows in some scenarios) -1 This change also prevents a single instance (i.e., normal scenario) to bind to the desired port when an old connection is in TIME_WAIT or some other TCP state. I can't see any SO_REUSEADDR being done on Unix now and meanwhile I have a continual stream of regression test failures saying: (98)Address already in use: make_sock: could not bind to address 0.0.0.0:8099 no listening sockets available, shutting down > 1.70 +0 -9 httpd-2.0/server/listen.c > > Index: listen.c > =================================================================== > RCS file: /home/cvs/httpd-2.0/server/listen.c,v > retrieving revision 1.69 > retrieving revision 1.70 > diff -u -r1.69 -r1.70 > --- listen.c 4 Feb 2002 16:58:54 -0000 1.69 > +++ listen.c 5 Feb 2002 06:16:04 -0000 1.70 > @@ -89,15 +89,6 @@ > int one = 1; > apr_status_t stat; > > - stat = apr_setsocketopt(s, APR_SO_REUSEADDR, one); > - if (stat != APR_SUCCESS && stat != APR_ENOTIMPL) { > - ap_log_perror(APLOG_MARK, APLOG_CRIT, stat, p, > - "make_sock: for address %pI, setsockopt: (SO_REUSEADDR)", > - server->bind_addr); > - apr_socket_close(s); > - return stat; > - } > - > stat = apr_setsocketopt(s, APR_SO_KEEPALIVE, one); > if (stat != APR_SUCCESS && stat != APR_ENOTIMPL) { > ap_log_perror(APLOG_MARK, APLOG_CRIT, stat, p, -- Jeff Trawick | [EMAIL PROTECTED] | PGP public key at web site: http://www.geocities.com/SiliconValley/Park/9289/ Born in Roswell... married an alien...