Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Browse the repository at this point in the history
Fix loop in blocking read on transport timeout
The loop was cased by an incorrect errno if the transport read in mgs_transport_read() fails with an APR TIMEUP status, as happens when mod_reqtimeout limits are exceeded. Setting the transport errno to EGAIN meant that a blocking read would be retried endlessly, setting ETIMEDOUT instead makes the read fail as it should. The bug was introduced in commit 92cb0cc, first release to include it was 0.9.0. Many thanks to Félix Arreola Rodríguez for the detailed analysis [1] on the Debian bug tracker! [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=942737#25
- Loading branch information