httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rainer Jung <rainer.j...@kippdata.de>
Subject Re: [users@httpd] HTTPD 2.4.25 crash in mod_proxy (ajp)
Date Thu, 22 Dec 2016 22:38:01 GMT
OK, looking closer at the suggested patch I see it fixes 
trace2-Loggging. When I activate e.g. trace8, I do get the expected 
crash in ap_proxy_check_connection.

@Konstantin: do you have LogLevel trace2 or higher? If s, do you also 
see crashes with trace1 or lower?

@Yann: your patch is just to check whether that is the problem? I guess 
the final patch will distinguish between conn->connection being NULL 
(then using your suggested code) or non-NULL (then using the original 
code). Or would you always use your suggested code?

Thanks and regards,

Rainer

Am 22.12.2016 um 18:38 schrieb Yann Ylavic:
> On Thu, Dec 22, 2016 at 3:12 PM, Jim Jagielski <jim@jagunet.com> wrote:
>> Hmmmm...
>>
>> I wonder if it's due to:
>>
>>          /* Step Two: Make the Connection */
>> -        if (ap_proxy_connect_backend(scheme, backend, worker, r->server)) {
>> +        if (ap_proxy_check_connection(scheme, backend, r->server, 0,
>> +                                      PROXY_CHECK_CONN_EMPTY)
>> +                && ap_proxy_connect_backend(scheme, backend, worker,
>> +                                            r->server)) {
>>              ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r, APLOGNO(00896)
>
> Probably, I think it comes from :
>
> Index: modules/proxy/proxy_util.c
> ===================================================================
> --- modules/proxy/proxy_util.c    (revision 1775191)
> +++ modules/proxy/proxy_util.c    (working copy)
> @@ -2754,10 +2754,11 @@ PROXY_DECLARE(apr_status_t) ap_proxy_check_connect
>      }
>
>      if (rv == APR_SUCCESS) {
> +        apr_sockaddr_t *local_addr = NULL;
> +        apr_socket_addr_get(&local_addr, APR_LOCAL, conn->sock);
>          ap_log_error(APLOG_MARK, APLOG_TRACE2, 0, server,
>                       "%s: reusing backend connection %pI<>%pI",
> -                     scheme, conn->connection->local_addr,
> -                     conn->connection->client_addr);
> +                     scheme, local_addr, conn->addr);
>      }
>      else if (conn->sock) {
>          /* This clears conn->scpool (and associated data), so backup and
> _
>
> because AJP has no conn->connection (conn->sock only).
>
> Konstantin, can you apply a patch?
>
> Regards,
> Yann.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Mime
View raw message