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
@@ -499,13 +499,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) {
