1
0
mirror of https://github.com/apache/httpd.git synced 2025-08-08 15:02:10 +03:00

428 Commits

Author SHA1 Message Date
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
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
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
Graham Leggett
01b5958cf7 New directive ProxyIOBufferSize. Sets the size of the buffer used
when reading from a remote HTTP server in proxy.

Modify receive/send loop in proxy_http and proxy_ftp so that
should it be necessary, the remote server socket is closed before
transmitting the last buffer (set by ProxyIOBufferSize) to the
client. This prevents the backend server from being forced to hang
around while the last few bytes are transmitted to a slow client.
Fix the case where no error checking was performed on the final
brigade in the loop.
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93811 13f79535-47bb-0310-9956-ffa450edef68
2002-03-09 07:15:33 +00:00
Jeff Trawick
1151bac94b implement a common function for getting a socket and trying to connect
to the target host; use that common function for proxy HTTP and proxy
CONNECT

In that new function, fix this problem:

     Proxy HTTP and CONNECT: Keep trying other addresses from the DNS
     when we can't get a socket in the specified address family.  We may
     have gotten back an IPv6 address first and yet our system is not
     configured to allow IPv6 sockets.

An example host is www.ipv6.org.  The first address I get back is
an IPv6 address, but my machine may not be configured to allow an
AF_INET6 socket.

Before the fix: The apr_socket() failure was fatal.
After the fix:  When apr_socket() fails, we go to the next address from
                the resolver, successfully create a socket in the
                specified family (AF_INET), and all is well.

(an unrelated fix in this commit was to pass a server_rec in a broken
ap_log_error() call)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93787 13f79535-47bb-0310-9956-ffa450edef68
2002-03-08 02:03:47 +00:00
Jim Jagielski
a1de05995b Add the ProxyRemoteMatch directive to the mod_proxy
code. Doccos to be done soon


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93597 13f79535-47bb-0310-9956-ffa450edef68
2002-02-27 15:49:01 +00:00
Jeff Trawick
e8b6f67b6a fix the linkage of and add a prototype for ap_proxy_table_unmerge()
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93529 13f79535-47bb-0310-9956-ffa450edef68
2002-02-21 11:42:03 +00:00
Ian Holsman
8cf569593b add a ProxyTimeout directive
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93117 13f79535-47bb-0310-9956-ffa450edef68
2002-01-30 18:46:56 +00:00
Martin Kraemer
0a372f9393 Minor tipos
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93111 13f79535-47bb-0310-9956-ffa450edef68
2002-01-30 15:30:09 +00:00
Bill Stoddard
4bc1733b38 Cleanup some fallout from the recent install_transport_filters commit.
Deprecate ap_proxy_pre_http_connection.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93093 13f79535-47bb-0310-9956-ffa450edef68
2002-01-30 04:34:11 +00:00
Ian Holsman
c23a0b8732 new directive 'ProxyPreserveHost' which allows the incoming host line to
be sent to the proxied server.

Submitted by:	g.russell@ieee.org (1.3 version)
Reviewed by:	Ian Holsman/Graham Legget/Chuck Murcko


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93089 13f79535-47bb-0310-9956-ffa450edef68
2002-01-29 21:08:37 +00:00
Jeff Trawick
64a3040e8a get the declarations for strncasecmp() on AIX
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92724 13f79535-47bb-0310-9956-ffa450edef68
2002-01-03 20:42:08 +00:00
Ryan Bloom
6eb1adeb1d The proxy does not actually need this header.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91549 13f79535-47bb-0310-9956-ffa450edef68
2001-10-18 19:51:49 +00:00
Ryan Bloom
e31a688ce5 Cleanup the proxy code that creates a request to the origin
server.  This change adds an optional hook, which allows modules
to gain control while the request is created if the proxy module
is loaded.  The purpose of this hook is to allow modules to add
input and/or output filters to the request to the origin.  While
I was at it, I made the core use this hook, so that proxy request
creation uses some of the code from the core.  This can still be
greatly improved, but this is a good start.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91486 13f79535-47bb-0310-9956-ffa450edef68
2001-10-16 05:18:39 +00:00
Ian Holsman
4bd8279a92 initial port of new Request-mode HTTP_IN filter to proxy.
Status: It serves a reverse-proxy page.. but SLOWLY.
VERY SLOWLY.
still looking at why, but now it serves pages instead of dumping core.
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91363 13f79535-47bb-0310-9956-ffa450edef68
2001-10-08 19:25:35 +00:00
Graham Leggett
3ce4f34fd4 Fix the "merge" behaviour of the ProxyErrorOverride directive.
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91172 13f79535-47bb-0310-9956-ffa450edef68
2001-09-28 10:33:39 +00:00
Graham Leggett
0617f1c78f Some style cleanups related to the ProxyErrorOverride function.
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91171 13f79535-47bb-0310-9956-ffa450edef68
2001-09-28 10:23:32 +00:00
Ian Holsman
65d5d7b65c Added New Option 'HTTPProxyOverrideReturnedErrors' which lets the server override
the error pages returned from the proxied server and replace them with the standard
server error handling on the main server.

Reviewed by:	Graham, Chuck


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91092 13f79535-47bb-0310-9956-ffa450edef68
2001-09-20 05:34:50 +00:00
William A. Rowe Jr
5832dc83ba Fix a broken declaration (supress type conversion warning on win32).
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90819 13f79535-47bb-0310-9956-ffa450edef68
2001-08-30 19:43:03 +00:00
William A. Rowe Jr
e544eec75b Split proxy: space using <Proxy[Match] > directive blocks from
the <Directory[Match] > and <Files[Match] > blocks.  Mod_proxy
  now bypasses the directory and files testing phase (and skips
  the http TRACE default handler on it's own, as well).  Note that
  <Location > blocks continue to be processed for proxy: requests.

  Remaining questions include canonicalization and case folding
  of proxied uri space, prior to the proxy_walk testing and the
  second <Location > walk.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90678 13f79535-47bb-0310-9956-ffa450edef68
2001-08-26 04:39:35 +00:00
Victor J. Orlikowski
0ff7b17954 Remove a no-longer-needed header.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89854 13f79535-47bb-0310-9956-ffa450edef68
2001-08-01 05:48:33 +00:00
Victor J. Orlikowski
7ca521dfdf After checking what this does with Bill Rowe, and discovering it to be dead
wood, I am tossing it.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89838 13f79535-47bb-0310-9956-ffa450edef68
2001-07-31 19:19:34 +00:00
Victor J. Orlikowski
5b38785f4b Being slightly picky: properly namespace protect make_fake_req()
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89837 13f79535-47bb-0310-9956-ffa450edef68
2001-07-31 19:12:56 +00:00
Victor J. Orlikowski
37fa07f776 Oops. Include the right headers...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89836 13f79535-47bb-0310-9956-ffa450edef68
2001-07-31 17:30:12 +00:00
Victor J. Orlikowski
de5ebc3740 Nobody screamed. ;)
This gets rid of ap_proxy_host2addr, and a few other useless functions,
and allows us to be threadsafe when doing DNS resolution.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89829 13f79535-47bb-0310-9956-ffa450edef68
2001-07-31 16:25:18 +00:00
Chuck Murcko
bd71fdf9ac Use apr-util's date functions now
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89280 13f79535-47bb-0310-9956-ffa450edef68
2001-06-06 21:51:58 +00:00
Victor J. Orlikowski
2a5472f674 Fixes to proxy, after util-uri move, plus fixes to the .mak file.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89204 13f79535-47bb-0310-9956-ffa450edef68
2001-05-22 19:37:13 +00:00
Ian Holsman
3032fea185 Allows Mod_proxy to be dynamically loaded on win32 systems
PR:
Obtained from:
Submitted by:	ianh
Reviewed by:	Chuck Murcko, Graham


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89085 13f79535-47bb-0310-9956-ffa450edef68
2001-05-11 17:32:41 +00:00
Graham Leggett
22ebd698df Split each individual proxy protocol into separate modules.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88866 13f79535-47bb-0310-9956-ffa450edef68
2001-04-15 17:15:29 +00:00
Graham Leggett
f8425f7b81 Make hooks work for the *_canon() functions. Work continues.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88854 13f79535-47bb-0310-9956-ffa450edef68
2001-04-14 07:03:00 +00:00
Graham Leggett
0a9f4ce887 Initial support for proxy protocol handler sub-modules. Work continues.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88853 13f79535-47bb-0310-9956-ffa450edef68
2001-04-13 23:56:04 +00:00
Graham Leggett
81ef5d35b2 Added Max-Forwards support for all request types so as to prevent
loops.
PR: 1085
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88848 13f79535-47bb-0310-9956-ffa450edef68
2001-04-13 15:51:33 +00:00
Graham Leggett
07e7e196f4 FTP directory filter works now.
Many FIXME notes added.
Much overhauling of proxy_ftp.c
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88817 13f79535-47bb-0310-9956-ffa450edef68
2001-04-12 01:57:48 +00:00
Graham Leggett
c439858c4c Fixed some thread-safety issues with the HTTP proxy in mod_proxy.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88814 13f79535-47bb-0310-9956-ffa450edef68
2001-04-11 23:07:21 +00:00
Graham Leggett
ce168dd27f Make sure the filter stack in a reused downstream connection is reset
so we don't get lots of DECHUNK filters when we don't want them.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88797 13f79535-47bb-0310-9956-ffa450edef68
2001-04-10 20:44:16 +00:00
Graham Leggett
056f85fe07 We now keep the entire conn_rec across downstream keepalives, not
just the socket.
Made the "keepalive mismatch" message more accurate.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88793 13f79535-47bb-0310-9956-ffa450edef68
2001-04-10 19:52:40 +00:00
Graham Leggett
eb1d17ebe7 More fixes...
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88780 13f79535-47bb-0310-9956-ffa450edef68
2001-04-10 12:06:49 +00:00
Graham Leggett
10c533558e Compiler warnings - yuck!
Moved ap_proxy_string_read() to proxy_util.c so it can be used by
proxy_http.c
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88777 13f79535-47bb-0310-9956-ffa450edef68
2001-04-10 00:13:56 +00:00
Graham Leggett
e8626b9c49 *) PASV FTP works now.
*) Reworked the line-at-a-time read from the control connection to
workaround a stray empty bucket returned by the HTTP_IN filter.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88775 13f79535-47bb-0310-9956-ffa450edef68
2001-04-09 21:49:17 +00:00
Graham Leggett
f3269d3639 Goodbye more dead code.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88771 13f79535-47bb-0310-9956-ffa450edef68
2001-04-08 22:26:45 +00:00
Graham Leggett
e95ee6ea59 Stopped the CORE filter from sending off an HTTP response when a
CONNECT tunnel was closed. Fixed some filter definition madness that
proves that I need some sleep.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88770 13f79535-47bb-0310-9956-ffa450edef68
2001-04-08 22:18:31 +00:00
Graham Leggett
a3f6f6dd0a HTTP_VERSION() is the correct way to do this...
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88769 13f79535-47bb-0310-9956-ffa450edef68
2001-04-08 16:29:30 +00:00
Graham Leggett
7f6c1eb35c Add #defines for protocol version checks...
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88765 13f79535-47bb-0310-9956-ffa450edef68
2001-04-08 09:49:49 +00:00
Graham Leggett
7a742e7fd1 Bugfixes to proxy_ftp.c -> in some places uri_addr was used instead
of connect_addr - all hail cut and paste!
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88740 13f79535-47bb-0310-9956-ffa450edef68
2001-04-06 14:25:54 +00:00
Graham Leggett
5dd4149bc0 Converted send_dir() to ap_proxy_send_dir_filter() in proxy_ftp.c.
Fixed up the header files
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88739 13f79535-47bb-0310-9956-ffa450edef68
2001-04-06 10:44:08 +00:00
Graham Leggett
a43bb9db2e Cleanup of dead functions within proxy_util.c.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88732 13f79535-47bb-0310-9956-ffa450edef68
2001-04-05 18:53:04 +00:00
Graham Leggett
afce43baa9 Reworked the storage of the client socket between keepalive connections
to fix some nasty problems with the socket lasting longer than the
memory pool it was allocated from.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88730 13f79535-47bb-0310-9956-ffa450edef68
2001-04-05 18:25:04 +00:00
Graham Leggett
5f3bc1ebc9 Some code rewriting in ap_proxy_connect_handler():
*) Fixed bug where a hostname without a "." in it (such as "localhost")
would not trigger an IP address check with ProxyBlock.
*) Fixed ProxyBlock bugs with ap_proxy_http_handler() and
ap_proxy_connect_handler().
*) Updated ap_proxy_connect_handler() to support APR, while
moving some common code between http_handler and connect_handler
to proxy_util.c.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88721 13f79535-47bb-0310-9956-ffa450edef68
2001-04-04 18:47:42 +00:00
Graham Leggett
d72c7d938e *) Added support for downstream keepalives in mod_proxy.
*) Changed mod_proxy ap_proxy_http_handler() to support APR properly.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88648 13f79535-47bb-0310-9956-ffa450edef68
2001-04-02 17:04:19 +00:00
Chuck Murcko
4fe4de4e33 reorganize STATUS; update copyright
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88534 13f79535-47bb-0310-9956-ffa450edef68
2001-03-19 08:54:41 +00:00