CHANGES revision 0b4b04d8621478ba59f0a6ba2950ddc02ab92b58
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj******************************************
c695093c99519a8509ac85642e35c216e9d9186fgstein* PLEASE NOTE: Now that development for *
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj* mod_proxy has been folded back into *
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj* the httpd-2.1 tree, this file has *
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj* been depreciated. Proxy changes should *
09bd86d0db1114ee23eda0a6eb76ca055877a1cftrawick* be noted in httpd-2.1's CHANGES file. *
09bd86d0db1114ee23eda0a6eb76ca055877a1cftrawick* This file exists for historical *
2deb319e6b3de239f45c16a3e9e836d44f1f7108rbb* purposes. *
bd929c73ef04789b7183b840d8db6e01d03a4d86rbb******************************************
2a6c49cfaef5979a5a06098f3ce987cd76769409manojmod_proxy changes for httpd 2.0.29-dev
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj *) don't do keepalives for sub-requests. [Ian Holsman]
91a71946d0fb28c0866139edef3dd59f36ba5b9cstoddard *) fix up proxypass handling [Ian Holsman]
91a71946d0fb28c0866139edef3dd59f36ba5b9cstoddard *) don't send If-Modified-Since, Cache-Control, or If-None-Match on
91a71946d0fb28c0866139edef3dd59f36ba5b9cstoddard a subrequest [Ian Holsman]
369edcdd0a9c5516c61e736ec2a6fc8fb0d92fe2manojmod_proxy changes for httpd 2.0.26-dev
369edcdd0a9c5516c61e736ec2a6fc8fb0d92fe2manoj *) Add New option 'HTTPProxyOverrideReturnedErrors'. By Turning the
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj Flag on, you will mask the error pages returned by the proxied
85cbdc16ac57fa68ce1358a308269abcd417f4d9stoddard server, and will it will be handled as if your server generated
85cbdc16ac57fa68ce1358a308269abcd417f4d9stoddard the error. This change was put in so that a 404 on a included
85cbdc16ac57fa68ce1358a308269abcd417f4d9stoddard r-proxied component will act in the same manner as a 404 on a
d208bda4a893cc81ed5d3ed1cdd7d706e012bd42stoddard included file. [Ian Holsman <ianh@cnet.com>]
d208bda4a893cc81ed5d3ed1cdd7d706e012bd42stoddardmod_proxy changes for httpd 2.0.25-dev
10b386767f6c87b45937244371cb751f0b454d16wrowe *) Split proxy: space using <Proxy[Match] > directive blocks from
10b386767f6c87b45937244371cb751f0b454d16wrowe the <Directory[Match] > and <Files[Match] > blocks. Mod_proxy
75960f20f88dad6bc67892c711c429946063d133stoddard now bypasses the directory and files testing phase (and skips
75960f20f88dad6bc67892c711c429946063d133stoddard the http TRACE default handler on it's own, as well). Note that
75960f20f88dad6bc67892c711c429946063d133stoddard <Location > blocks continue to be processed for proxy: requests.
75960f20f88dad6bc67892c711c429946063d133stoddard [William Rowe <wrowe@covalent.net>]
75960f20f88dad6bc67892c711c429946063d133stoddard *) apr_uri type/function namespace changes in apr_uri functions
75960f20f88dad6bc67892c711c429946063d133stoddard [Doug MacEachern <dougm@covalent.net>]
10b386767f6c87b45937244371cb751f0b454d16wrowemod_proxy changes for httpd 2.0.23-dev
10b386767f6c87b45937244371cb751f0b454d16wrowe *) break the proxy_http_handler into multiple smaller functions.
10b386767f6c87b45937244371cb751f0b454d16wrowe [John Barbee <barbee@veribox.net>]
10b386767f6c87b45937244371cb751f0b454d16wrowe *) Fix the proxy when the origin server sends back a 100
10b386767f6c87b45937244371cb751f0b454d16wrowe Continue response. [John Barbee <barbee@veribox.net>]
10b386767f6c87b45937244371cb751f0b454d16wrowe *) Change 'readbytes' from apr_size_t to apr_off_t due to change
10b386767f6c87b45937244371cb751f0b454d16wrowe in ap_get_brigade's parameters [John Barbee <barbee@veribox.net>]
f6a6245816cd866361da8c576b1f47c7a54b6610fanfmod_proxy changes for httpd 2.0.20-dev
f6a6245816cd866361da8c576b1f47c7a54b6610fanf *) Timeout added for backend connections.
97b758d0b174d7b7c5a1de1a583f5840ec3fc910trawick [Victor Orlikowski <v.j.orlikowski@gte.net>]
641cb23141f2238ed09e3b9fa79189225f8a2bcbrbb *) Fix abort code path in proxy_http.c, similar to FTP fix.
641cb23141f2238ed09e3b9fa79189225f8a2bcbrbb [Chuck Murcko <chuck@topsail.org>]
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj *) Fix FTP ABOR command execution path.
8bed76428f56e5c643174a2d6807c3f18016af5cbjh [Victor Orlikowski <v.j.orlikowski@gte.net>]
8bed76428f56e5c643174a2d6807c3f18016af5cbjh *) FTP return code variable cleanup; fixed problem in login
8bed76428f56e5c643174a2d6807c3f18016af5cbjh [Chuck Murcko <chuck@topsail.org>]
cfc020d6d6fc9b31d8945915e65a8787a796eb73stoddard *) Get PORT working again in the ftp proxy.
cfc020d6d6fc9b31d8945915e65a8787a796eb73stoddard [Victor Orlikowski <v.j.orlikowski@gte.net>]
f824925ac58ff729289c017235eeb3bdd21ec3a2stoddard *) Return result code check for FTP QUIT, after fixing
f824925ac58ff729289c017235eeb3bdd21ec3a2stoddard problems with passive connection handling.
f824925ac58ff729289c017235eeb3bdd21ec3a2stoddard [Victor Orlikowski <v.j.orlikowski@gte.net>]
2aae6faee508221efbeaba5547ca79b7a20ef047stoddard *) Reorganize ap_proxy_string_read() internally to not process eos
10b386767f6c87b45937244371cb751f0b454d16wrowe [Chuck Murcko <chuck@topsail.org>]
10b386767f6c87b45937244371cb751f0b454d16wrowe [Victor Orlikowski <v.j.orlikowski@gte.net>]
10b386767f6c87b45937244371cb751f0b454d16wrowe *) Remove result code check for FTP QUIT command. Some servers send
10b386767f6c87b45937244371cb751f0b454d16wrowe nothing at all back in response to QUIT.
10b386767f6c87b45937244371cb751f0b454d16wrowe [Chuck Murcko <chuck@topsail.org>]
10b386767f6c87b45937244371cb751f0b454d16wrowe [Victor Orlikowski <v.j.orlikowski@gte.net>]
75960f20f88dad6bc67892c711c429946063d133stoddardmod_proxy changes for httpd 2.0.19
a5ed555df952c85bc1b179f5981e8a6c54ba16e6stoddard *) Reverse previous patch since the core reverted.
a5ed555df952c85bc1b179f5981e8a6c54ba16e6stoddard [Chuck Murcko <chuck@topsail.org>]
a5ed555df952c85bc1b179f5981e8a6c54ba16e6stoddard *) Remove indirection on number of bytes to read for input filters.
56ca30c968906053ae61acb218420667bb58d996rbb [Chuck Murcko <chuck@topsail.org>]
56ca30c968906053ae61acb218420667bb58d996rbb *) Fixed a problem with directory listing corruption in the
56ca30c968906053ae61acb218420667bb58d996rbb PROXY_DIR filter.
70f6f32765cfaadd6da8de6f0fea97ddd72d8fadmanoj [Graham Leggett <minfrin@sharp.fm>]
70f6f32765cfaadd6da8de6f0fea97ddd72d8fadmanoj *) mod_proxy and the proxy submodules now build properly as DSOs.
56ca30c968906053ae61acb218420667bb58d996rbb [Graham Leggett <minfrin@sharp.fm>]
0bff2f28ef945280c17099c142126178a78e1e54manoj *) Stopped the HTTP proxy from trying to read entity bodies when there
0bff2f28ef945280c17099c142126178a78e1e54manoj wasn't one (response was 1xx, 204, 205 or 304).
1e585ba09ea32272e63c4c39c35491e975d21d98stoddard [Graham Leggett <minfrin@sharp.fm>]
1e585ba09ea32272e63c4c39c35491e975d21d98stoddard *) Made sure dates were canonicalised correctly when passed to the client
1e585ba09ea32272e63c4c39c35491e975d21d98stoddard browser through the HTTP proxy.
1e585ba09ea32272e63c4c39c35491e975d21d98stoddard [Graham Leggett <minfrin@sharp.fm>]
1e585ba09ea32272e63c4c39c35491e975d21d98stoddard *) Split each individual proxy protocol into separate modules.
9c09943bad734ebd5c7cc10bd6d63b75c4c6e056stoddard [Graham Leggett <minfrin@sharp.fm>]
9c09943bad734ebd5c7cc10bd6d63b75c4c6e056stoddard *) Added Max-Forwards support for all request types so as to prevent
0bff2f28ef945280c17099c142126178a78e1e54manoj [Graham Leggett <minfrin@sharp.fm>]
9c09943bad734ebd5c7cc10bd6d63b75c4c6e056stoddard *) Fix warnings about byte count type on Darwin (connect handler).
75960f20f88dad6bc67892c711c429946063d133stoddard [Chuck Murcko <chuck@topsail.org>]
f03d292915be9977eaf74e9be7b0404aec226f84manojmod_proxy changes for httpd 2.0.18
bd929c73ef04789b7183b840d8db6e01d03a4d86rbb *) IPV6 EPSV support for IPV6 in FTP proxy.
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj [Graham Leggett <minfrin@sharp.fm>]
302dc1f7b3feee23a91ad8f3cf3cb2edd95a557bmanoj *) FTP directory filter works now.
302dc1f7b3feee23a91ad8f3cf3cb2edd95a557bmanoj [Graham Leggett <minfrin@sharp.fm>]
ff849e4163ed879288f0df15f78b6c9d278ec804fanf *) Fixed some thread-safety issues with the HTTP proxy in mod_proxy.
ff849e4163ed879288f0df15f78b6c9d278ec804fanf [Graham Leggett <minfrin@sharp.fm>]
9805ac88e1befa6dea11d8513023f150d8f8e807fanf *) PASV FTP works now.
9805ac88e1befa6dea11d8513023f150d8f8e807fanf [Graham Leggett <minfrin@sharp.fm>]
df4a7c143b27b489dd2d865bb3f6668c8420b3a9fanf *) Reworked the line-at-a-time read from the control connection to
c03566fa0156d3a1500a42e4fe539e3e0fc8a11dgstein workaround a stray empty bucket returned by the HTTP_IN filter.
c03566fa0156d3a1500a42e4fe539e3e0fc8a11dgstein [Graham Leggett <minfrin@sharp.fm>]
c03566fa0156d3a1500a42e4fe539e3e0fc8a11dgstein *) Stopped the CORE filter from sending off an HTTP response when a
c03566fa0156d3a1500a42e4fe539e3e0fc8a11dgstein CONNECT tunnel was closed.
c03566fa0156d3a1500a42e4fe539e3e0fc8a11dgstein [Graham Leggett <minfrin@sharp.fm>]
db3ccce11afac4fc1d4f51a65424412f7480c46cgstein *) Fixed the poll() loop in proxy_connect.c -> it works now!!!
1e088f9182ba67f39713fcb850e11934be5f6d17gstein [Graham Leggett <minfrin@sharp.fm>]
0eb7ca6cf812d98c534661ac474e873a32bf6325gstein *) Converted send_dir() to ap_proxy_send_dir_filter() in proxy_ftp.c.
0eb7ca6cf812d98c534661ac474e873a32bf6325gstein [Graham Leggett <minfrin@sharp.fm>]
0eb7ca6cf812d98c534661ac474e873a32bf6325gsteinmod_proxy changes for httpd 2.0.17
db3ccce11afac4fc1d4f51a65424412f7480c46cgstein *) Major rework of ap_proxy_ftp_handler() to use filters (begone foul
93c5cba06b623ebe8e4372e886eece12d9a80c3egstein BUFF!!!). It compiles, but is untested, and the build environment needs
93c5cba06b623ebe8e4372e886eece12d9a80c3egstein to be fixed to include proxy_ftp.c.
93c5cba06b623ebe8e4372e886eece12d9a80c3egstein [Graham Leggett <minfrin@sharp.fm>]
93c5cba06b623ebe8e4372e886eece12d9a80c3egstein *) Cleanup of dead functions within proxy_util.c.
93c5cba06b623ebe8e4372e886eece12d9a80c3egstein [Graham Leggett <minfrin@sharp.fm>]
93c5cba06b623ebe8e4372e886eece12d9a80c3egstein *) Reworked the storage of the client socket between keepalive connections
be386cf0beed1c3331e47f0736d92b9744a21f3agstein to fix some nasty problems with the socket lasting longer than the
be386cf0beed1c3331e47f0736d92b9744a21f3agstein memory pool it was allocated from.
be386cf0beed1c3331e47f0736d92b9744a21f3agstein [Graham Leggett <minfrin@sharp.fm>]
14cccaddba3a9263cf0d0ddc311e18f3e3dc9b0fgstein *) Fixed bug where a hostname without a "." in it (such as "localhost")
14cccaddba3a9263cf0d0ddc311e18f3e3dc9b0fgstein would not trigger an IP address check with ProxyBlock.
14cccaddba3a9263cf0d0ddc311e18f3e3dc9b0fgstein [Graham Leggett <minfrin@sharp.fm>]
14cccaddba3a9263cf0d0ddc311e18f3e3dc9b0fgsteinmod_proxy changes for httpd 2.0.16
eb3def494ba5580320dfe1dd47b4d8b05519cb74gstein *) Fixed ProxyBlock bugs with ap_proxy_http_handler() and
eb3def494ba5580320dfe1dd47b4d8b05519cb74gstein ap_proxy_connect_handler().
eb3def494ba5580320dfe1dd47b4d8b05519cb74gstein [Graham Leggett <minfrin@sharp.fm>]
1e088f9182ba67f39713fcb850e11934be5f6d17gstein *) Updated ap_proxy_connect_handler() to support APR, while
1e088f9182ba67f39713fcb850e11934be5f6d17gstein moving some common code between http_handler and connect_handler
c695093c99519a8509ac85642e35c216e9d9186fgstein [Graham Leggett <minfrin@sharp.fm>]
cc834bbccfad9340ee1ff96ef19770b691ebc5fcrbb *) Updated mod_proxy.html docs to include v2.0 configuration.
35d13495678fd9f0b29d9b9b6f87a49fb13b8d8agstein [Graham Leggett <minfrin@sharp.fm>]
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj *) Fixed problem where responses without entity bodies would cause
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj the directly following proxy keepalive request to fail.
d5defd5a0c5cdbaf74b85939484dc2b6c8317d19manoj [Graham Leggett <minfrin@sharp.fm>]
2a6c49cfaef5979a5a06098f3ce987cd76769409manojmod_proxy changes for httpd 2.0.15
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj *) Added support for downstream keepalives in mod_proxy.
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj [Graham Leggett <minfrin@sharp.fm>]
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj *) Changed mod_proxy ap_proxy_http_handler() to support APR properly.
0bff2f28ef945280c17099c142126178a78e1e54manoj [Graham Leggett <minfrin@sharp.fm>]
0bff2f28ef945280c17099c142126178a78e1e54manoj *) Fix problem where incoming response headers were not being returned
d6b3cb141f0667101c1bca883ad15b383402c93bfielding to the client in mod_proxy.
09bd86d0db1114ee23eda0a6eb76ca055877a1cftrawick [Graham Leggett <minfrin@sharp.fm>]
09bd86d0db1114ee23eda0a6eb76ca055877a1cftrawick *) Added X-Forwarded-For, X-Forwarded-Host and X-Forwarded-Server to
09bd86d0db1114ee23eda0a6eb76ca055877a1cftrawick reverse proxied request headers in mod_proxy.
09bd86d0db1114ee23eda0a6eb76ca055877a1cftrawick [Graham Leggett <minfrin@sharp.fm>]
fb777d35fc4730c312e161b3d803ae32700f6ca7sascha *) replace INADDR_NONE with APR_INADDR_NONE [Ian Holsman <IanH@cnet.com>]
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj *) Fix problem with proxy configuration where globally set
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj configuration options were overridden inside virtual hosts.
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj [Graham Leggett <minfrin@sharp.fm>]
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj *) Fix ProxyReceiveBufferSize where default value was left
dbf0c7bef06259486cd2748a2d0e82f27e099d6efielding uninitialised.
dbf0c7bef06259486cd2748a2d0e82f27e099d6efielding [Graham Leggett <minfrin@sharp.fm>]
bd929c73ef04789b7183b840d8db6e01d03a4d86rbb *) Some small changes:
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj - Ensured hop-by-hop headers were stripped as per
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj RFC2616 13.5.1.
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj - Upgraded version code to HTTP/1.1.
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj - Added Connection: close until Keepalives come.
f6a6245816cd866361da8c576b1f47c7a54b6610fanf - Some cosmetic fixes and commenting.
f6a6245816cd866361da8c576b1f47c7a54b6610fanf [Graham Leggett <minfrin@sharp.fm>]
f6a6245816cd866361da8c576b1f47c7a54b6610fanfmod_proxy changes for httpd 2.0.14
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj *) removed ProxyNoCache and ProxyCacheForceCompletion config directives,
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj since we no longer directly cache from this module
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj [Chuck Murcko <chuck@topsail.org>]
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj *) removed cache
d6b3cb141f0667101c1bca883ad15b383402c93bfielding [Chuck Murcko <chuck@topsail.org>]
d6b3cb141f0667101c1bca883ad15b383402c93bfielding *) initial rerebuild for 2.0
d6b3cb141f0667101c1bca883ad15b383402c93bfielding [Chuck Murcko <chuck@topsail.org>]