The patch proposed here fixes this: http://mail-archives.apache.org/mod_mbox/httpd-dev/201401.mbox/%3CCAKQ1sVOZ4M9626H-1eAuOPwgQYURntd7k2Oks%2B5HTchg9Y%2BEow%40mail.gmail.com%3E
Regards, Yann. On Fri, Jan 24, 2014 at 8:50 AM, Ruediger Pluem <[email protected]> wrote: > > > [email protected] wrote: > > Author: jim > > Date: Thu Jan 23 14:09:40 2014 > > New Revision: 1560689 > > > > URL: http://svn.apache.org/r1560689 > > Log: > > Tuck away UDS path in request-rec, since worker isn't > > thread-safe. Protect from NULL refs. > > > > Modified: > > httpd/httpd/trunk/modules/proxy/proxy_util.c > > > > Modified: httpd/httpd/trunk/modules/proxy/proxy_util.c > > URL: > http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/proxy/proxy_util.c?rev=1560689&r1=1560688&r2=1560689&view=diff > > > ============================================================================== > > --- httpd/httpd/trunk/modules/proxy/proxy_util.c (original) > > +++ httpd/httpd/trunk/modules/proxy/proxy_util.c Thu Jan 23 14:09:40 2014 > > > @@ -2275,7 +2271,17 @@ ap_proxy_determine_connection(apr_pool_t > > conn->pool); > > } > > } > > - if (!(*worker->s->uds_path) && worker->s->is_address_reusable && > !worker->s->disablereuse) { > > + else { > > + /* > > + * In UDS cases, some structs are NULL. Protect from de-refs > > + * and provide info for logging at the same time. > > + */ > > + apr_sockaddr_t *sa; > > + apr_sockaddr_info_get(&sa, NULL, APR_UNSPEC, 0, 0, conn->pool); > > + conn->hostname = "httpd-UDS"; > > + conn->addr = sa; > > + } > > You cannot be sure in this else branch that you are in the UDS case. It > could that there is an existing hostname or that > the address is reusable. You should do the stuff above at the end of the > if block starting in 2204 (if (uds_path) { > ) > > > + if (!(uds_path) && worker->s->is_address_reusable && > !worker->s->disablereuse) { > > /* > > * Looking up the backend address for the worker only makes > sense if > > * we can reuse the address. > > > > Regards > > RĂ¼diger >
