CHANGES revision 0361488d59792d052a9f8024c0e5a1ef909252e6
9174efb969475801d0dc88eee35aae40c748d450nd******************************************
ec79b29695b183f794264bbb578c51e93d1f9b1emartin* PLEASE NOTE: Now that development for *
6aa2272cc4af77e605ba2c4a4781f8567408b7e3pquerna* mod_proxy has been folded back into *
ee508128c414648982d1cca7801f63b01a0a4f8aminfrin* the httpd-2.1 tree, this file has *
88d0e50f16b21d4d0af0a48da7ad28fb5991834crpluem* been deprecated. Proxy changes should *
88d0e50f16b21d4d0af0a48da7ad28fb5991834crpluem* be noted in httpd-2.x's CHANGES file. *
88d0e50f16b21d4d0af0a48da7ad28fb5991834crpluem* This file exists for historical *
88d0e50f16b21d4d0af0a48da7ad28fb5991834crpluem* purposes. *
15264721069299ec26493e21d56bf8ff7faf6f0drpluem******************************************
15264721069299ec26493e21d56bf8ff7faf6f0drpluemmod_proxy changes for httpd 2.0.29-dev
11e1b16b907afb7de0678e28fe4849d9029e2df8rpluem *) don't do keepalives for sub-requests. [Ian Holsman]
11e1b16b907afb7de0678e28fe4849d9029e2df8rpluem *) fix up proxypass handling [Ian Holsman]
d4d8fbf75076eccfed70c8f715f7ed4210ab5ccdbnicholes *) don't send If-Modified-Since, Cache-Control, or If-None-Match on
a085f5ab771cff650b27e7a761b7f19adf884686rpluem a subrequest [Ian Holsman]
a085f5ab771cff650b27e7a761b7f19adf884686rpluemmod_proxy changes for httpd 2.0.26-dev
25a81ea1bca1c89cda713c4d23660e487b1488a0rpluem *) Add New option 'HTTPProxyOverrideReturnedErrors'. By Turning the
25a81ea1bca1c89cda713c4d23660e487b1488a0rpluem Flag on, you will mask the error pages returned by the proxied
25a81ea1bca1c89cda713c4d23660e487b1488a0rpluem server, and will it will be handled as if your server generated
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd the error. This change was put in so that a 404 on a included
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd r-proxied component will act in the same manner as a 404 on a
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd included file. [Ian Holsman <ianh@cnet.com>]
48fa058fe468025347930610ac2473094fa0f4e4chrisdmod_proxy changes for httpd 2.0.25-dev
48fa058fe468025347930610ac2473094fa0f4e4chrisd *) Split proxy: space using <Proxy[Match] > directive blocks from
42ace93dfd997e0c9b4fbae8185288320e95eb72rpluem the <Directory[Match] > and <Files[Match] > blocks. Mod_proxy
3545f87968bf3ac4e691030f816c4360bdf83eacrpluem now bypasses the directory and files testing phase (and skips
42ace93dfd997e0c9b4fbae8185288320e95eb72rpluem the http TRACE default handler on it's own, as well). Note that
3ec4328f079d8867cc323155e59678ad9437914frooneg <Location > blocks continue to be processed for proxy: requests.
3ec4328f079d8867cc323155e59678ad9437914frooneg [William Rowe <wrowe@covalent.net>]
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd *) apr_uri type/function namespace changes in apr_uri functions
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd [Doug MacEachern <dougm@covalent.net>]
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisdmod_proxy changes for httpd 2.0.23-dev
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd *) break the proxy_http_handler into multiple smaller functions.
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd [John Barbee <barbee@veribox.net>]
60262a02cfeba50d60d990b56d0e0c1d1fafb672sctemme *) Fix the proxy when the origin server sends back a 100
60262a02cfeba50d60d990b56d0e0c1d1fafb672sctemme Continue response. [John Barbee <barbee@veribox.net>]
60262a02cfeba50d60d990b56d0e0c1d1fafb672sctemme *) Change 'readbytes' from apr_size_t to apr_off_t due to change
60262a02cfeba50d60d990b56d0e0c1d1fafb672sctemme in ap_get_brigade's parameters [John Barbee <barbee@veribox.net>]
60262a02cfeba50d60d990b56d0e0c1d1fafb672sctemmemod_proxy changes for httpd 2.0.20-dev
60262a02cfeba50d60d990b56d0e0c1d1fafb672sctemme *) Timeout added for backend connections.
60262a02cfeba50d60d990b56d0e0c1d1fafb672sctemme [Victor Orlikowski <v.j.orlikowski@gte.net>]
3ddec0f3e161d5a5afab12c522d92c44e4d7d8fcgregames *) Fix abort code path in proxy_http.c, similar to FTP fix.
3ddec0f3e161d5a5afab12c522d92c44e4d7d8fcgregames [Chuck Murcko <chuck@topsail.org>]
db78659055df54243bca678c35bd2ce7e31a9237rooneg *) Fix FTP ABOR command execution path.
edf6757df85878dc8ce11fb3840ee4cde6de5b2frooneg [Victor Orlikowski <v.j.orlikowski@gte.net>]
95817edd05387a5276f51fcd5db79fc21b89b55brooneg *) FTP return code variable cleanup; fixed problem in login
95817edd05387a5276f51fcd5db79fc21b89b55brooneg [Chuck Murcko <chuck@topsail.org>]
63689d77e084e36b8194fb6df5adfc0344965e01trawick *) Get PORT working again in the ftp proxy.
63689d77e084e36b8194fb6df5adfc0344965e01trawick [Victor Orlikowski <v.j.orlikowski@gte.net>]
63689d77e084e36b8194fb6df5adfc0344965e01trawick *) Return result code check for FTP QUIT, after fixing
5714cdd83e23557d801437daa5e3ab8ba78ae595jorton problems with passive connection handling.
5714cdd83e23557d801437daa5e3ab8ba78ae595jorton [Victor Orlikowski <v.j.orlikowski@gte.net>]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes *) Reorganize ap_proxy_string_read() internally to not process eos
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes [Chuck Murcko <chuck@topsail.org>]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes [Victor Orlikowski <v.j.orlikowski@gte.net>]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes *) Remove result code check for FTP QUIT command. Some servers send
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes nothing at all back in response to QUIT.
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes [Chuck Murcko <chuck@topsail.org>]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes [Victor Orlikowski <v.j.orlikowski@gte.net>]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholesmod_proxy changes for httpd 2.0.19
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes *) Reverse previous patch since the core reverted.
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes [Chuck Murcko <chuck@topsail.org>]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes *) Remove indirection on number of bytes to read for input filters.
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes [Chuck Murcko <chuck@topsail.org>]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes *) Fixed a problem with directory listing corruption in the
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes PROXY_DIR filter.
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes [Graham Leggett <minfrin@sharp.fm>]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes *) mod_proxy and the proxy submodules now build properly as DSOs.
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes [Graham Leggett <minfrin@sharp.fm>]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes *) Stopped the HTTP proxy from trying to read entity bodies when there
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes wasn't one (response was 1xx, 204, 205 or 304).
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes [Graham Leggett <minfrin@sharp.fm>]
1b0dce86d7fc8a5aa4c89b05255be26e508c615crpluem *) Made sure dates were canonicalised correctly when passed to the client
1b0dce86d7fc8a5aa4c89b05255be26e508c615crpluem browser through the HTTP proxy.
1b0dce86d7fc8a5aa4c89b05255be26e508c615crpluem [Graham Leggett <minfrin@sharp.fm>]
edc5389f50ce4153e6192740f3c7a188c8cf8d67niq *) Split each individual proxy protocol into separate modules.
edc5389f50ce4153e6192740f3c7a188c8cf8d67niq [Graham Leggett <minfrin@sharp.fm>]
6c05afd314b4ddd545d63b4ff5de822cc30eec79trawick *) Added Max-Forwards support for all request types so as to prevent
13cd67e9c1dacbd6b9f040bda337c725cedd98f3brianp [Graham Leggett <minfrin@sharp.fm>]
a623efbff95aab78da9e030524b0fa69b054f6d0brianp *) Fix warnings about byte count type on Darwin (connect handler).
a623efbff95aab78da9e030524b0fa69b054f6d0brianp [Chuck Murcko <chuck@topsail.org>]
a623efbff95aab78da9e030524b0fa69b054f6d0brianpmod_proxy changes for httpd 2.0.18
a623efbff95aab78da9e030524b0fa69b054f6d0brianp *) IPV6 EPSV support for IPV6 in FTP proxy.
0b4b04d8621478ba59f0a6ba2950ddc02ab92b58colm [Graham Leggett <minfrin@sharp.fm>]
0b4b04d8621478ba59f0a6ba2950ddc02ab92b58colm *) FTP directory filter works now.
2f1bb5376c5c4022383bb729679ca751dd75a2eabrianp [Graham Leggett <minfrin@sharp.fm>]
ad862ab5716726a2d72a292ba1dfb29566c86153brianp *) Fixed some thread-safety issues with the HTTP proxy in mod_proxy.
ad862ab5716726a2d72a292ba1dfb29566c86153brianp [Graham Leggett <minfrin@sharp.fm>]
17d53ea32c4968e47733f1c2c063ae07d280efd6jerenkrantz *) PASV FTP works now.
17d53ea32c4968e47733f1c2c063ae07d280efd6jerenkrantz [Graham Leggett <minfrin@sharp.fm>]
2d5532b13110a8d85653da92e97795b09cc25cc2trawick *) Reworked the line-at-a-time read from the control connection to
b38565306421ff53e9f7499bc728d6df5cec294dpquerna workaround a stray empty bucket returned by the HTTP_IN filter.
b38565306421ff53e9f7499bc728d6df5cec294dpquerna [Graham Leggett <minfrin@sharp.fm>]
b38565306421ff53e9f7499bc728d6df5cec294dpquerna *) Stopped the CORE filter from sending off an HTTP response when a
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem CONNECT tunnel was closed.
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem [Graham Leggett <minfrin@sharp.fm>]
a9e9e4d9b1e6bb081282f75bf450b7d7d5a1f581rpluem *) Fixed the poll() loop in proxy_connect.c -> it works now!!!
a9e9e4d9b1e6bb081282f75bf450b7d7d5a1f581rpluem [Graham Leggett <minfrin@sharp.fm>]
a9e9e4d9b1e6bb081282f75bf450b7d7d5a1f581rpluem *) Converted send_dir() to ap_proxy_send_dir_filter() in proxy_ftp.c.
a9e9e4d9b1e6bb081282f75bf450b7d7d5a1f581rpluem [Graham Leggett <minfrin@sharp.fm>]
a9e9e4d9b1e6bb081282f75bf450b7d7d5a1f581rpluemmod_proxy changes for httpd 2.0.17
a9e9e4d9b1e6bb081282f75bf450b7d7d5a1f581rpluem *) Major rework of ap_proxy_ftp_handler() to use filters (begone foul
a9e9e4d9b1e6bb081282f75bf450b7d7d5a1f581rpluem BUFF!!!). It compiles, but is untested, and the build environment needs
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem to be fixed to include proxy_ftp.c.
200fd0ce73d992a43b500ddfe94487a840bd56darpluem [Graham Leggett <minfrin@sharp.fm>]
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem *) Cleanup of dead functions within proxy_util.c.
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem [Graham Leggett <minfrin@sharp.fm>]
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem *) Reworked the storage of the client socket between keepalive connections
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem to fix some nasty problems with the socket lasting longer than the
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem memory pool it was allocated from.
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem [Graham Leggett <minfrin@sharp.fm>]
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem *) Fixed bug where a hostname without a "." in it (such as "localhost")
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem would not trigger an IP address check with ProxyBlock.
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem [Graham Leggett <minfrin@sharp.fm>]
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluemmod_proxy changes for httpd 2.0.16
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem *) Fixed ProxyBlock bugs with ap_proxy_http_handler() and
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem ap_proxy_connect_handler().
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem [Graham Leggett <minfrin@sharp.fm>]
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem *) Updated ap_proxy_connect_handler() to support APR, while
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem moving some common code between http_handler and connect_handler
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem [Graham Leggett <minfrin@sharp.fm>]
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem *) Updated mod_proxy.html docs to include v2.0 configuration.
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem [Graham Leggett <minfrin@sharp.fm>]
0c5a6a11ce72ad41b14c755f4a2254e0c7b70245rpluem *) Fixed problem where responses without entity bodies would cause
200fd0ce73d992a43b500ddfe94487a840bd56darpluem the directly following proxy keepalive request to fail.
200fd0ce73d992a43b500ddfe94487a840bd56darpluem [Graham Leggett <minfrin@sharp.fm>]
200fd0ce73d992a43b500ddfe94487a840bd56darpluemmod_proxy changes for httpd 2.0.15
200fd0ce73d992a43b500ddfe94487a840bd56darpluem *) Added support for downstream keepalives in mod_proxy.
200fd0ce73d992a43b500ddfe94487a840bd56darpluem [Graham Leggett <minfrin@sharp.fm>]
200fd0ce73d992a43b500ddfe94487a840bd56darpluem *) Changed mod_proxy ap_proxy_http_handler() to support APR properly.
200fd0ce73d992a43b500ddfe94487a840bd56darpluem [Graham Leggett <minfrin@sharp.fm>]
cbb903af5066589fe0e73f3ecf06abdc71e38effrpluem *) Fix problem where incoming response headers were not being returned
0919d062982a9c9d2f4a8933ef54ccba2dd2b8f8rpluem to the client in mod_proxy.
0919d062982a9c9d2f4a8933ef54ccba2dd2b8f8rpluem [Graham Leggett <minfrin@sharp.fm>]
0919d062982a9c9d2f4a8933ef54ccba2dd2b8f8rpluem *) Added X-Forwarded-For, X-Forwarded-Host and X-Forwarded-Server to
0919d062982a9c9d2f4a8933ef54ccba2dd2b8f8rpluem reverse proxied request headers in mod_proxy.
60262a02cfeba50d60d990b56d0e0c1d1fafb672sctemme [Graham Leggett <minfrin@sharp.fm>]
0919d062982a9c9d2f4a8933ef54ccba2dd2b8f8rpluem *) replace INADDR_NONE with APR_INADDR_NONE [Ian Holsman <IanH@cnet.com>]
0919d062982a9c9d2f4a8933ef54ccba2dd2b8f8rpluem *) Fix problem with proxy configuration where globally set
0919d062982a9c9d2f4a8933ef54ccba2dd2b8f8rpluem configuration options were overridden inside virtual hosts.
0919d062982a9c9d2f4a8933ef54ccba2dd2b8f8rpluem [Graham Leggett <minfrin@sharp.fm>]
c9ce3d3ead2ba4ea6f5bb176745172f3538aed60rpluem *) Fix ProxyReceiveBufferSize where default value was left
c9ce3d3ead2ba4ea6f5bb176745172f3538aed60rpluem uninitialised.
c9ce3d3ead2ba4ea6f5bb176745172f3538aed60rpluem [Graham Leggett <minfrin@sharp.fm>]
c9ce3d3ead2ba4ea6f5bb176745172f3538aed60rpluem *) Some small changes:
c9ce3d3ead2ba4ea6f5bb176745172f3538aed60rpluem - Ensured hop-by-hop headers were stripped as per
c9ce3d3ead2ba4ea6f5bb176745172f3538aed60rpluem RFC2616 13.5.1.
c9ce3d3ead2ba4ea6f5bb176745172f3538aed60rpluem - Upgraded version code to HTTP/1.1.
c9ce3d3ead2ba4ea6f5bb176745172f3538aed60rpluem - Added Connection: close until Keepalives come.
c9ce3d3ead2ba4ea6f5bb176745172f3538aed60rpluem - Some cosmetic fixes and commenting.
0deb1a75b17945f30e56e81b851a2a2ab08af50drpluem [Graham Leggett <minfrin@sharp.fm>]
0deb1a75b17945f30e56e81b851a2a2ab08af50drpluemmod_proxy changes for httpd 2.0.14
0deb1a75b17945f30e56e81b851a2a2ab08af50drpluem *) removed ProxyNoCache and ProxyCacheForceCompletion config directives,
0deb1a75b17945f30e56e81b851a2a2ab08af50drpluem since we no longer directly cache from this module
0deb1a75b17945f30e56e81b851a2a2ab08af50drpluem [Chuck Murcko <chuck@topsail.org>]
0deb1a75b17945f30e56e81b851a2a2ab08af50drpluem *) removed cache
0deb1a75b17945f30e56e81b851a2a2ab08af50drpluem [Chuck Murcko <chuck@topsail.org>]
0deb1a75b17945f30e56e81b851a2a2ab08af50drpluem *) initial rerebuild for 2.0
0deb1a75b17945f30e56e81b851a2a2ab08af50drpluem [Chuck Murcko <chuck@topsail.org>]