CHANGES revision 43ea154f46345c9722c2b25b2b9f5086ec79eaee
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amoremod_proxy changes for httpd 2.0.20-dev
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Timeout added for backend connections.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Victor Orlikowski <v.j.orlikowski@gte.net>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Fix abort code path in proxy_http.c, similar to FTP fix.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Chuck Murcko <chuck@topsail.org>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Fix FTP ABOR command execution path.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Victor Orlikowski <v.j.orlikowski@gte.net>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) FTP return code variable cleanup; fixed problem in login
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Chuck Murcko <chuck@topsail.org>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Get PORT working again in the ftp proxy.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Victor Orlikowski <v.j.orlikowski@gte.net>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Return result code check for FTP QUIT, after fixing
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore problems with passive connection handling.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Victor Orlikowski <v.j.orlikowski@gte.net>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Reorganize ap_proxy_string_read() internally to not process eos
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore buckets.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Chuck Murcko <chuck@topsail.org>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Victor Orlikowski <v.j.orlikowski@gte.net>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Remove result code check for FTP QUIT command. Some servers send
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore nothing at all back in response to QUIT.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Chuck Murcko <chuck@topsail.org>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Victor Orlikowski <v.j.orlikowski@gte.net>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amoremod_proxy changes for httpd 2.0.19
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Reverse previous patch since the core reverted.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Chuck Murcko <chuck@topsail.org>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Remove indirection on number of bytes to read for input filters.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Chuck Murcko <chuck@topsail.org>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Fixed a problem with directory listing corruption in the
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore PROXY_DIR filter.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) mod_proxy and the proxy submodules now build properly as DSOs.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Stopped the HTTP proxy from trying to read entity bodies when there
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore wasn't one (response was 1xx, 204, 205 or 304).
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Made sure dates were canonicalised correctly when passed to the client
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore browser through the HTTP proxy.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Split each individual proxy protocol into separate modules.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Added Max-Forwards support for all request types so as to prevent
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore loops.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Fix warnings about byte count type on Darwin (connect handler).
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Chuck Murcko <chuck@topsail.org>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amoremod_proxy changes for httpd 2.0.18
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) IPV6 EPSV support for IPV6 in FTP proxy.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) FTP directory filter works now.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Fixed some thread-safety issues with the HTTP proxy in mod_proxy.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) PASV FTP works now.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Reworked the line-at-a-time read from the control connection to
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore workaround a stray empty bucket returned by the HTTP_IN filter.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Stopped the CORE filter from sending off an HTTP response when a
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore CONNECT tunnel was closed.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Fixed the poll() loop in proxy_connect.c -> it works now!!!
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Converted send_dir() to ap_proxy_send_dir_filter() in proxy_ftp.c.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amoremod_proxy changes for httpd 2.0.17
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Major rework of ap_proxy_ftp_handler() to use filters (begone foul
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore BUFF!!!). It compiles, but is untested, and the build environment needs
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore to be fixed to include proxy_ftp.c.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Cleanup of dead functions within proxy_util.c.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Reworked the storage of the client socket between keepalive connections
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore to fix some nasty problems with the socket lasting longer than the
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore memory pool it was allocated from.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Fixed bug where a hostname without a "." in it (such as "localhost")
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore would not trigger an IP address check with ProxyBlock.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amoremod_proxy changes for httpd 2.0.16
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Fixed ProxyBlock bugs with ap_proxy_http_handler() and
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore ap_proxy_connect_handler().
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Updated ap_proxy_connect_handler() to support APR, while
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore moving some common code between http_handler and connect_handler
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore to proxy_util.c.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Updated mod_proxy.html docs to include v2.0 configuration.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Fixed problem where responses without entity bodies would cause
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore the directly following proxy keepalive request to fail.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amoremod_proxy changes for httpd 2.0.15
1356956d0b091aa705b3e6330c7224417baa3a89Richard Lowe
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Added support for downstream keepalives in mod_proxy.
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Changed mod_proxy ap_proxy_http_handler() to support APR properly.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Fix problem where incoming response headers were not being returned
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore to the client in mod_proxy.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Added X-Forwarded-For, X-Forwarded-Host and X-Forwarded-Server to
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore reverse proxied request headers in mod_proxy.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) replace INADDR_NONE with APR_INADDR_NONE [Ian Holsman <IanH@cnet.com>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore *) Fix problem with proxy configuration where globally set
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore configuration options were overridden inside virtual hosts.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Fix ProxyReceiveBufferSize where default value was left
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore uninitialised.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) Some small changes:
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore - Ensured hop-by-hop headers were stripped as per
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore RFC2616 13.5.1.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore - Upgraded version code to HTTP/1.1.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore - Added Connection: close until Keepalives come.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore - Some cosmetic fixes and commenting.
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Graham Leggett <minfrin@sharp.fm>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amoremod_proxy changes for httpd 2.0.14
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) removed ProxyNoCache and ProxyCacheForceCompletion config directives,
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore since we no longer directly cache from this module
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Chuck Murcko <chuck@topsail.org>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) removed cache
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Chuck Murcko <chuck@topsail.org>]
4297a3b0d0a35d80f86fff155e288e885a100e6dGarrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore *) initial rerebuild for 2.0
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore [Chuck Murcko <chuck@topsail.org>]
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore
9d04e500a2b8dcd13abf3d813c6796aecd7a9689Garrett D'Amore