Commit b5e52281 authored by Jim Jagielski's avatar Jim Jagielski
Browse files

Merge r1775775 from trunk:

mod_proxy_{ajp,fcgi}: Fix a possible crash when reusing an established
backend connection, happening with LogLevel trace2 or higher configured,
or at any log level with compilers not detected as C99 compliant (e.g.
MSVC on Windows).


Submitted by: ylavic
Reviewed by: ylavic, jim, covener


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1777975 13f79535-47bb-0310-9956-ffa450edef68
parent 45ff5255
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -16,6 +16,11 @@ Changes with Apache 2.4.26
  *) mod_http2: cleanup beamer registry on server reload, Fixes PR60510.
     [Pavel Mateja <pavel@verotel.cz>, Stefan Eissing]
     
  *) mod_proxy_{ajp,fcgi}: Fix a possible crash when reusing an established
     backend connection, happening with LogLevel trace2 or higher configured,
     or at any log level with compilers not detected as C99 compliant (e.g.
     MSVC on Windows).  [Yann Ylavic]

  *) mod_ext_filter: Don't interfere with "error buckets" issued by other
     modules. PR60375.  [Eric Covener, Lubos Uhliarik]

+0 −7
Original line number Diff line number Diff line
@@ -119,13 +119,6 @@ RELEASE SHOWSTOPPERS:
PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
  [ start all new proposals below, under PATCHES PROPOSED. ]

  *) mod_proxy_{ajp,fcgi}: Fix a possible crash when reusing an established
     backend connection, happening with LogLevel trace2 or higher configured,
     or at any log level with compilers not detected as C99 compliant (e.g.
     MSVC on Windows).
     trunk patch: http://svn.apache.org/r1775775
     2.4 patch: trunk works (modulo CHANGES)
     +1: ylavic, jim, covener


PATCHES PROPOSED TO BACKPORT FROM TRUNK:
+7 −4
Original line number Diff line number Diff line
@@ -2693,10 +2693,13 @@ PROXY_DECLARE(apr_status_t) ap_proxy_check_connection(const char *scheme,
    }

    if (rv == APR_SUCCESS) {
        if (APLOGtrace2(server)) {
            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