From: Aaron Bannert Date: Wed, 12 Dec 2001 23:56:46 +0000 (+0000) Subject: Fix a bug in how we select the IP for the POD to connect to for dummy X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d5fee4480590c791b7f04e09e9b8c20e060cebbd;p=apache Fix a bug in how we select the IP for the POD to connect to for dummy connects (dislodging a doomed child from the accept mutex). No longer do we assume that the child is listening to 127.0.0.1, but instead we just pick the first hostname/port from the listen rec. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92437 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/CHANGES b/CHANGES index 157b065fe5..e36f07bf35 100644 --- a/CHANGES +++ b/CHANGES @@ -1,5 +1,13 @@ Changes with Apache 2.0.30-dev + *) The POD no longer assumes the child is listening on 127.0.0.1 + and now pulls the first hostname in the list of listeners to + perform the dummy connect on. This fixes a bug when the user + had configured the Listen directive for an IP other than + 127.0.0.1. This would result in undead children and error + messages such as "Connection refused: connect to listener". + [Aaron Bannert] + *) The worker MPM now respects the LockFile setting, needed to avoid locking problems with NFS. [Jeff Trawick] diff --git a/server/mpm_common.c b/server/mpm_common.c index 5180ea8bb5..57c3c037ac 100644 --- a/server/mpm_common.c +++ b/server/mpm_common.c @@ -372,7 +372,8 @@ AP_DECLARE(apr_status_t) ap_mpm_pod_open(apr_pool_t *p, ap_pod_t **pod) apr_file_pipe_timeout_set((*pod)->pod_in, 0); (*pod)->p = p; - apr_sockaddr_info_get(&(*pod)->sa, "127.0.0.1", APR_UNSPEC, ap_listeners->bind_addr->port, 0, p); + apr_sockaddr_info_get(&(*pod)->sa, ap_listeners->bind_addr->hostname, + APR_UNSPEC, ap_listeners->bind_addr->port, 0, p); return APR_SUCCESS; }