1
0
mirror of https://github.com/apache/httpd.git synced 2026-01-06 09:01:14 +03:00
Commit Graph

184 Commits

Author SHA1 Message Date
Joe Orton
a636051074 * modules/proxy/proxy_http.c (ap_proxy_http_process_response):
Consistently check whether r->status is "successful" or not; fix
screwy handling of 2xx-but-not-200 responses when ProxyErrorOverride
is used.

PR: 20183
Submitted by: Marcus Janson <marcus.janson@tre.se>, Joe Orton


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102935 13f79535-47bb-0310-9956-ffa450edef68
2004-03-11 17:21:47 +00:00
André Malo
a688f06b19 fix name of The Apache Software Foundation
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102618 13f79535-47bb-0310-9956-ffa450edef68
2004-02-09 20:31:03 +00:00
André Malo
3d75c8c079 fix copyright dates according to the first check in
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102572 13f79535-47bb-0310-9956-ffa450edef68
2004-02-08 12:27:14 +00:00
André Malo
4f02cb1e18 apply Apache License, Version 2.0
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102525 13f79535-47bb-0310-9956-ffa450edef68
2004-02-06 22:58:42 +00:00
Martin Kraemer
f0ca54f433 If the proxy was enabled, and UseCanonicalHostname was off,
then the Via: header would report not the proxy
hosts's ServerName (or any of its configured VHosts's names) as it
should, but the *origin hosts*'s name.
Now it reports its ServerName.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102320 13f79535-47bb-0310-9956-ffa450edef68
2004-01-13 16:11:55 +00:00
Joe Orton
7f52c2bfe4 * modules/proxy/proxy_http.c (ap_proxy_http_process_response): Handle
all 1xx interim responses the same, one of the two 2616 compliance
issues in PR 19442.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102283 13f79535-47bb-0310-9956-ffa450edef68
2004-01-12 14:08:08 +00:00
Martin Kraemer
3b97e32bf7 Cosmetic change (I dislike 'known-constant-minus-one' literal numbers):
The ap_is_HTTP_INFO() macro checks for values in the 100...199 range,
and is a better readable replacement for the value 199.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102282 13f79535-47bb-0310-9956-ffa450edef68
2004-01-12 13:06:39 +00:00
Bill Stoddard
79fb63443c mod_proxy hangs when both KeepAlive and ProxyErrorOverride are enabled,
and a non-200 response without a body is generated by the backend
server.

Submitted by: Graham Wiseman, Richard Reiner
Reviewed by: Richard Reiner, Bill Stoddard


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102239 13f79535-47bb-0310-9956-ffa450edef68
2004-01-09 03:04:41 +00:00
André Malo
fb07607180 update license to 2004.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102135 13f79535-47bb-0310-9956-ffa450edef68
2004-01-01 13:26:26 +00:00
Ian Holsman
5209db57ee mod_proxy with ProxyErrorOverride On in a reverse-proxy configuration attaches
a body to the 302 response and a wrong Content-Length header.


PR: 22951
Submitted by:	Ermanno Scaglione <scaglione ..at.. starnetone.de>
Reviewed by:	Blaise Tarr <blaise.tarr .. at .. cnet.com>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102069 13f79535-47bb-0310-9956-ffa450edef68
2003-12-15 23:04:40 +00:00
Joe Orton
4de16bd525 Fix format string warnings from gcc on amd64:
* modules/ssl/ssl_scache_dbm.c (ssl_scache_dbm_store):
Print apr_size_t using APR_SIZE_T_FMT.

* modules/ssl/ssl_engine_io.c (ssl_filter_write): Print difference
between sizes using APR_SSIZE_T_FMT, apr_size_t using APR_SIZE_T_FMT.

* modules/proxy/proxy_http.c (ap_proxy_http_request): Print
apr_uint64_t using APR_UINT64_T_HEX_FMT.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102037 13f79535-47bb-0310-9956-ffa450edef68
2003-12-12 12:36:50 +00:00
Jeff Trawick
e3c11d6cd1 Fix memory leak in handling of request bodies during reverse
proxy operations.

PR:      24991
Submitted by: Larry Toppi <larry.toppi citrix.com>
Reviewed by:  Jeff Trawick


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102017 13f79535-47bb-0310-9956-ffa450edef68
2003-12-10 19:26:15 +00:00
Joe Orton
41d4a3c58a * proxy_http.c (ap_proxy_http_process_response): Send a valid
status-line even if the parsed status-line had no trailing spaces.
Remove the warning for this case as triggers for valid status-lines
too.

PR: 23998


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101516 13f79535-47bb-0310-9956-ffa450edef68
2003-10-22 16:09:58 +00:00
Jeff Trawick
aa21671e13 switch to APR 1.0 API (which is still in flux)
because of the changes to the argument lists of apr_mmap_dup and apr_socket_create,
2.1-dev won't build with apr and apr-util's 0.9 branch anymore


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101154 13f79535-47bb-0310-9956-ffa450edef68
2003-09-03 19:27:12 +00:00
Victor J. Orlikowski
72b6ff11a2 Silence a compiler warning.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99385 13f79535-47bb-0310-9956-ffa450edef68
2003-04-16 06:30:15 +00:00
Graham Leggett
35d0dc3b8e Clarify an error message
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99369 13f79535-47bb-0310-9956-ffa450edef68
2003-04-15 16:39:12 +00:00
Graham Leggett
3685b4d181 Correct some indenting
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99367 13f79535-47bb-0310-9956-ffa450edef68
2003-04-15 16:33:56 +00:00
André Malo
742af25096 finished that boring job:
update license to 2003.

Happy New Year! ;-))


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98573 13f79535-47bb-0310-9956-ffa450edef68
2003-02-03 17:53:28 +00:00
Justin Erenkrantz
392fee3abc Rewrite how proxy sends its request to allow input bodies to morph the request
bodies.  Previously, if an input filter changed the request body, the
original C-L would be sent which would be incorrect.

Due to HTTP compliance, we must either send the body T-E: chunked or include
a C-L for the request body.  Connection: Close is not an option.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97812 13f79535-47bb-0310-9956-ffa450edef68
2002-12-09 05:37:26 +00:00
Brian Pane
45741376ff mod_proxy: Don't remove the Content-Length from responses
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97777 13f79535-47bb-0310-9956-ffa450edef68
2002-12-05 03:49:45 +00:00
Brian Pane
05290b1d84 When doing a GET of a proxied URL as a subrequest within
a POSTed request, don't send the original POST's Content-Length
as part of the header for the GET.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97455 13f79535-47bb-0310-9956-ffa450edef68
2002-11-08 09:24:00 +00:00
Bill Stoddard
20ea80fcd9 Fix a segfault when the client closes the connection prematurely.
Reported by: Fabio Wakim Trentini
Reviewed by: Bill Stoddard


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97305 13f79535-47bb-0310-9956-ffa450edef68
2002-10-25 20:58:55 +00:00
Jeff Trawick
b31bec2fe9 add some parens to quiet a gcc warning:
proxy_http.c:866: warning: suggest parentheses around assignment used as truth value


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96983 13f79535-47bb-0310-9956-ffa450edef68
2002-09-26 11:35:47 +00:00
Graham Leggett
75c84ac30d Make sure the contents of the WWW-Authenticate header is
passed on a 4xx error by proxy. Previously all headers
were dropped, resulting in the browser being unable to
authenticate.
PR:
Obtained from:
Submitted by:	Dr Richard Reiner <rreiner@fscinternet.com>, Richard Danielli <rdanielli@fscinternet.com>, Graham Wiseman <gwiseman@fscinternet.com>, David Henderson <dhenderson@fscinternet.com>
Reviewed by:	Graham Leggett


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96982 13f79535-47bb-0310-9956-ffa450edef68
2002-09-26 08:55:28 +00:00
Ian Holsman
6efc028098 Add A warning when servers don't set their status line
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96484 13f79535-47bb-0310-9956-ffa450edef68
2002-08-22 15:02:49 +00:00
Ian Holsman
5676d38cc2 fix the case when a server doesn't send a response string
Submitted by:	Brett Hutley <brett@hutley.net> J.D. Silvester <jsilves@uwo.ca>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96469 13f79535-47bb-0310-9956-ffa450edef68
2002-08-21 16:01:15 +00:00
Graham Leggett
7f74fe4231 Fix proxy so that it is possible to access ftp: URLs via a proxy
chain.
PR:
Obtained from:
Submitted by:	Peter Van Biesen <peter.vanbiesen@vlafo.be>
Reviewed by:	Graham Leggett <minfrin@apache.org>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96320 13f79535-47bb-0310-9956-ffa450edef68
2002-08-08 17:59:18 +00:00
William A. Rowe Jr
6b69fe06c0 Timeout/time fixes
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96055 13f79535-47bb-0310-9956-ffa450edef68
2002-07-15 07:46:19 +00:00
Ian Holsman
6deba78a9a Renames Pending:
This clears the list of renames pending in apr-util.
 Parts of this list was alreadu done, but the pending list hadn't been updated.

 apr_hook_debug_current     from apr_current_hooking_module
 apr_hook_debug_show        from apr_show_hook

 apr_hook_global_pool       from apr_global_hook_pool
 apr_hook_sort_all          from apr_sort_hooks

 apr_uri_port_of_scheme     from apr_uri_default_port_for_scheme
 apr_uri_unparse            from apr_uri_unparse_components
 apr_uri_parse              from apr_uri_parse_components
 apr_uri_parse_hostinfo     from apr_uri_parse_hostinfo_components

 apr_uri_t                  from apr_uri_components

 All APR_URI_*              from all APU_URI_* symbols
 All APR_UNP_*              from all UNP_* symbols

PR:
Obtained from:
Submitted by:	 Thom May
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95966 13f79535-47bb-0310-9956-ffa450edef68
2002-07-06 20:04:38 +00:00
Justin Erenkrantz
001b387bcd Change conn_rec->keepalive to an enumerated value of
AP_CONN_UNKNOWN
AP_CONN_CLOSE
AP_CONN_KEEPALIVE

This also fixes a problem where ap_discard_request_body would not discard
the body when keepalive was 0.  This actually meant the keepalive status
was unknown *not* closed, but no one ever remembered that.

This problem was seen with mod_dav sending error responses (as reported by
Karl Fogel).

Suggested by:	Greg "this isn't the '80s" Stein
Reviewed by:	Greg Ames


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95891 13f79535-47bb-0310-9956-ffa450edef68
2002-06-26 19:45:07 +00:00
William A. Rowe Jr
f8511d81d8 No crutches, people!
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95854 13f79535-47bb-0310-9956-ffa450edef68
2002-06-23 06:06:25 +00:00
William A. Rowe Jr
3f6aa521eb Cleanup proxy timeouts a bit to remove emits and make consistent to
vhost timeout.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95674 13f79535-47bb-0310-9956-ffa450edef68
2002-06-14 17:14:57 +00:00
Ian Holsman
aff9b8aef6 add 2 new enviornment variables to deal with misbehaving backends
"proxy-nokeepalive" which removes the Connection: line completely
"force-proxy-request-1.0" which forces the request to be HTTP/1.0
this allows apache to reverse proxy misbehaving appservers


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95456 13f79535-47bb-0310-9956-ffa450edef68
2002-05-31 21:21:10 +00:00
Justin Erenkrantz
ba424185f0 Switch mod_proxy to using the brigade/filter calls directly rather than
the *_client_block calls.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95394 13f79535-47bb-0310-9956-ffa450edef68
2002-05-30 07:33:59 +00:00
Justin Erenkrantz
5607afff2b Add a PROXYREQ_RESPONSE value for request_rec->proxyreq because it is
possible that there can be different behavior at the protocol level if
request_rec isn't really a request but a response.

This stems from the fact that request bodies must be indicated by
Content-Length or Transfer-Encoding, but response bodies do not.  The
recent change to ap_http_filter to return EOS if there isn't a body broke
proxy.  Therefore, there must be some way for the proxy to indicate that
this is a response.  Accordingly, ap_http_filter can allow the BODY_NONE
iff this is a response.

Since r->proxyreq is set to PROXYREQ_PROXY even for the original request
from the client, that value isn't sufficient.  Hence, the introduction of
PROXYREQ_RESPONSE.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95390 13f79535-47bb-0310-9956-ffa450edef68
2002-05-30 07:04:45 +00:00
Jeff Trawick
50bac91072 stop using APLOG_NOERRNO in calls to ap_log_[pr]error()
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95150 13f79535-47bb-0310-9956-ffa450edef68
2002-05-17 11:24:17 +00:00
Jeff Trawick
9a1842b70c get basic HTTP proxy working on EBCDIC machines
(I would bet that there is more work to do throughout proxy, but at least
it can serve some pages now)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94811 13f79535-47bb-0310-9956-ffa450edef68
2002-04-26 12:29:38 +00:00
Graham Leggett
ab32e62ac3 Proxy was bombing out every second keepalive request, caused by a
stray CRLF before the second response's status line. Proxy now
tries to read one more line if it encounters a CRLF where it
expected a status.
PR: 10010
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94574 13f79535-47bb-0310-9956-ffa450edef68
2002-04-09 09:39:04 +00:00
Doug MacEachern
9fb5b384d7 PR:
Obtained from:
Submitted by:	Daniel Lopez <daniel@covalent.net>
Reviewed by:	dougm, rbb
add optional fixup hook to proxy


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94544 13f79535-47bb-0310-9956-ffa450edef68
2002-04-08 18:38:56 +00:00
Doug MacEachern
1138615486 fix ProxyPass when frontend is https and backend is http
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94515 13f79535-47bb-0310-9956-ffa450edef68
2002-04-07 03:37:35 +00:00
Doug MacEachern
e695ae9601 PR:
Obtained from:
Submitted by:
Reviewed by:    Ryan Bloom
remove flush bucket from ap_proxy_http_process_response.
this allows for the response content-length header to be properly
calculated/inserted.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94459 13f79535-47bb-0310-9956-ffa450edef68
2002-04-05 18:08:07 +00:00
Doug MacEachern
cf7be3d0b6 PR:
Obtained from:
Submitted by:
Reviewed by:	Ryan Bloom
remove call to ap_proxy_reset_output_filters() and the function itself.
this call breaks ssl proxy when the client is using keepalives.
this function is also no longer needed with recent-ish filter changes.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94383 13f79535-47bb-0310-9956-ffa450edef68
2002-04-02 04:30:49 +00:00
Doug MacEachern
51ee9a749e ap_proxy_http_request needs to check the return status of ap_pass_brigade
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94333 13f79535-47bb-0310-9956-ffa450edef68
2002-03-30 06:19:14 +00:00
Doug MacEachern
f4d0e50e00 check the return value of ap_proxy_ssl_enable
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94313 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 17:48:28 +00:00
Cliff Woolley
3e2ce19baf BUCKET FREELISTS
Add an allocator-passing mechanism throughout the bucket brigades API.

From Apache's standpoint, the apr_bucket_alloc_t* used throughout a given
connection is stored in the conn_rec by the create_connection hook.  That
means it's the MPM's job to optimize recycling of apr_bucket_alloc_t's --
the MPM must ensure that no two threads can ever use the same one at the
same time, for instance.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94304 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 08:17:26 +00:00
Doug MacEachern
c3e2155dca hook into mod_ssl for https support
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94300 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 07:29:11 +00:00
Graham Leggett
19c0213612 Change the header merging behaviour in proxy, as some headers
(like Set-Cookie) cannot be unmerged due to stray commas in
dates.
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94083 13f79535-47bb-0310-9956-ffa450edef68
2002-03-21 12:05:45 +00:00
Bill Stoddard
d5c24720dc Commit 1 of 2 to:
1. rename ap_rset_content_type to ap_set_content_type
2. reverse the arguments on the call to aligh with ap_set_content_length


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94056 13f79535-47bb-0310-9956-ffa450edef68
2002-03-20 17:41:55 +00:00
Bill Stoddard
470edb9dd8 First commit to introduce accessor function to set r->content_type..
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94027 13f79535-47bb-0310-9956-ffa450edef68
2002-03-20 01:58:47 +00:00
Roy T. Fielding
845cbfd508 Update our copyright for this year.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93918 13f79535-47bb-0310-9956-ffa450edef68
2002-03-13 20:48:07 +00:00