mirror of
https://github.com/apache/httpd.git
synced 2025-08-15 23:27:39 +00:00
mod_proxy: Fix potential tunneling infinite loop and spurious timeout.
PRs 65521 and 65519. * modules/proxy/proxy_util.c(ap_proxy_tunnel_run): Avoid an infinite loop by shutting down the connection for write when poll() returns POLLHUP and read is already down. PR 65521. * modules/proxy/proxy_util.c(ap_proxy_tunnel_run): When write completion is finished don't check for ap_filter_input_pending() before proxy_tunnel_forward() to flush input data, this is a nonblocking read already which will do the same thing implicitely. ap_filter_input_pending() is broken in 2.4.x without the whole pending data mechanism (not backported yet), so let's align here. PR 65519. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1892740 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
4
changes-entries/ap_proxy_tunnel_run.txt
Normal file
4
changes-entries/ap_proxy_tunnel_run.txt
Normal file
@ -0,0 +1,4 @@
|
||||
*) mod_proxy: Fix a potential infinite loop when tunneling Upgrade(d)
|
||||
protocols from mod_proxy_http, and a timeout triggering falsely when
|
||||
using mod_proxy_wstunnel, mod_proxy_connect or mod_proxy_http with
|
||||
upgrade= setting. PRs 65521 and 65519. [Yann Ylavic]
|
Reference in New Issue
Block a user