Commit 7ae7e857 authored by Yann Ylavic's avatar Yann Ylavic
Browse files

Fix timeout logging in ap_process_request().

We can't use 'r' after ap_process_request_after_handler(), the core output
filter might have cleaned up its deferred bucket brigade on error, including
the EOR bucket.

Reported by: steffenal
Fixes SpiderLabs/ModSecurity#1542



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1826543 13f79535-47bb-0310-9956-ffa450edef68
parent 2e608dbd
Loading
Loading
Loading
Loading
+2 −6
Original line number Diff line number Diff line
@@ -480,13 +480,9 @@ AP_DECLARE(void) ap_process_request(request_rec *r)
             * Notice a timeout as an error message. This might be
             * valuable for detecting clients with broken network
             * connections or possible DoS attacks.
             *
             * It is still safe to use r / r->pool here as the eor bucket
             * could not have been destroyed in the event of a timeout.
             */
            ap_log_rerror(APLOG_MARK, APLOG_INFO, rv, r, APLOGNO(01581)
                          "Timeout while writing data for URI %s to the"
                          " client", r->unparsed_uri);
            ap_log_cerror(APLOG_MARK, APLOG_INFO, rv, c, APLOGNO(01581)
                          "flushing data to the client");
        }
    }
    if (ap_extended_status) {