1
0
mirror of https://github.com/apache/httpd.git synced 2025-11-06 16:49:32 +03:00
Commit Graph

146 Commits

Author SHA1 Message Date
Jeff Trawick
9b36512d5c zap a warning on AIX... given that time_t isn't an APR construct
I don't know of a better fix


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93100 13f79535-47bb-0310-9956-ffa450edef68
2002-01-30 11:54:15 +00:00
Martin Kraemer
b763128578 Oops: wrong variable
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93099 13f79535-47bb-0310-9956-ffa450edef68
2002-01-30 09:55:33 +00:00
Martin Kraemer
807fa07a94 Simplify the complexity by using a common proxy_ftp_command() routine.
Strip the ";type=X" suffix from the header generated in dir listings.
Set type to ASCII for directory listings. Use common get_PWD() routine.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93098 13f79535-47bb-0310-9956-ffa450edef68
2002-01-30 09:47:22 +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
Martin Kraemer
6452dfac8e If the ftp proxy could not guess the output format of the ftp server's
directory listing, it makes another attempt: it tries a format similar to
the output of "ls -s1" (optional whitespace followed by size, followed by
whitespace, followed by filename, where filename may contain no more whitespace).
This format works at least with one FTP server for which previously only
the (non-clickable) output was displayed.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93081 13f79535-47bb-0310-9956-ffa450edef68
2002-01-29 17:56:42 +00:00
Martin Kraemer
fef1548777 Fix handling of \r\n at the end of FTP directory listings (\r characters
were left in the output and would create additional line breaks in most
browsers)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93078 13f79535-47bb-0310-9956-ffa450edef68
2002-01-29 17:07:26 +00:00
Martin Kraemer
cdf7a56914 For NoProxy connections (when no backend->connection is needed), a NULL
pointer would be dereferenced. Check it more thoroughly.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93077 13f79535-47bb-0310-9956-ffa450edef68
2002-01-29 16:55:07 +00:00
Martin Kraemer
9e5f5087f1 * Prefer compatibility with both HTML-4 and XHTML (rather than XHTML only)
* Properly escape URIs and HTML in the FTP filename list
* Avoid a pointer underrun


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93075 13f79535-47bb-0310-9956-ffa450edef68
2002-01-29 15:31:28 +00:00
Martin Kraemer
7ec0ceeda8 First step: send proxy_ftp.c thru
indent | pr -e8 -t
(no other changes)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93059 13f79535-47bb-0310-9956-ffa450edef68
2002-01-28 16:54:05 +00:00
Bill Stoddard
327e4989d5 Remove the create_connection hook and put the client_socket back into the
conn_rec. The create_connection_hook has a design flaw that prevents it
from making decisions based on vhost information.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93050 13f79535-47bb-0310-9956-ffa450edef68
2002-01-27 12:52:08 +00:00
Justin Erenkrantz
94d01b65aa Change ap_get_brigade prototype to remove *readbytes in favor of readbytes.
If you need the length, you should be using apr_brigade_length.  This is
much more consistent.  Of all the places that call ap_get_brigade, only
one (ap_http_filter) needs the length.  This makes it now possible to
pass constants down without assigning them to a temporary variable first.

Also:
- Change proxy_ftp to use EXHAUSTIVE mode (didn't catch its -1 before)
- Fix buglet in mod_ssl that would cause it to return too much data in
  some circumstances


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93014 13f79535-47bb-0310-9956-ffa450edef68
2002-01-25 01:11:47 +00:00
Justin Erenkrantz
7d32242a14 Input filtering prototype change: Socket blocking type should be
separate from the input filter mode type.

We also no longer look at readbytes to determine the method of
filter operation.  This makes the use of filters more obvious and
allows a wider range of options for input filters modes.

To start with, the new input filter modes are:

AP_MODE_READBYTES (no more than *readbytes returned)
AP_MODE_GETLINE (old *readbytes == 0 case)
AP_MODE_EATCRLF (old AP_MODE_PEEK)
AP_MODE_SPECULATIVE (will be used in a future ap_getline rewrite)
AP_MODE_EXHAUSTIVE (old *readbytes == -1 case)
AP_MODE_INIT (special case for NNTP over SSL)

The block parameter is an apr_read_type_e: APR_BLOCK_READ, APR_NONBLOCK_READ

This also allows cleanup of mod_ssl's handling in the getline case.

Reviewed by:	Ryan Bloom (concept), Greg Stein (concept)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92928 13f79535-47bb-0310-9956-ffa450edef68
2002-01-19 07:45:18 +00:00
Jeff Trawick
c85d4a7c86 get proxy in sync with the update to ap_run_create_connection
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92520 13f79535-47bb-0310-9956-ffa450edef68
2001-12-18 20:29:27 +00:00
Bradley Nicholes
72a5a2a026 Got rid of an annoying uninitialized variable compiler warning
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92266 13f79535-47bb-0310-9956-ffa450edef68
2001-11-30 19:17:47 +00:00
Ryan Bloom
8a697835fe Get the proxy module compiling again. This is a hack to get past the
current compiler errors.  Basically, the core now puts the socket
in the conn_rec->conn_config vector.  The proxy grabs that socket and
uses it where it used to use the client_socket field from the conn_rec.
Long-term, all of the direct socket communication needs to be removed,
and this should go through a filter stack.  Short-term, this gets the
proxy working again.

I have tested http and connect, but I haven't looked at the FTP proxy,
although it does compile now.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91952 13f79535-47bb-0310-9956-ffa450edef68
2001-11-14 21:18:47 +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
William A. Rowe Jr
c241623544 Should be no change to the execution - simply clean up two compiler
warnings, signed/unsigned mismatch in != and mismatched type for port.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91214 13f79535-47bb-0310-9956-ffa450edef68
2001-10-01 15:45:11 +00:00
Ian Holsman
af3b2ee457 adjust to apr_uri_ rename
Submitted by:	dougm@apache.org
Reviewed by:	ianh@apache.org


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90402 13f79535-47bb-0310-9956-ffa450edef68
2001-08-20 16:49:29 +00:00
Ian Holsman
81be3f5ebe change readbytes from a apr_size_t to a apr_off_t to match the parameter
required in ap_get_brigade
Submitted by:	 barbee@veribox.net
Reviewed by:	 ianh@apache.org


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90012 13f79535-47bb-0310-9956-ffa450edef68
2001-08-07 21:46:47 +00:00
Victor J. Orlikowski
82290d054d Add a timeout when making connections from within the proxy.
Now, if someone wants to add a special scoreboard state for proxy
attempting to make connection, be my guest.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89908 13f79535-47bb-0310-9956-ffa450edef68
2001-08-03 18:00:38 +00:00
Victor J. Orlikowski
b64a6e878e Both the ftp and http proxies were erroneously sending a flush bucket after
an eos bucket. This had been put in place to repair a bug, but was covering
the symptoms, rather than providing the cure. Bug repaired, and kludge
removed.

Submitted by: barbee@veribox.net


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89907 13f79535-47bb-0310-9956-ffa450edef68
2001-08-03 16:25:10 +00:00
Ian Holsman
4318882a79 Remove APR_NO_INHERIT as it is now private.
sigh... the cost of being bleeding edge
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89607 13f79535-47bb-0310-9956-ffa450edef68
2001-07-18 20:35:13 +00:00
Ian Holsman
175af69f8e Change the APR_INHERIT flag to APR_NO_INHERIT,which is the default (as recommended by rbb)
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89569 13f79535-47bb-0310-9956-ffa450edef68
2001-07-17 21:43:35 +00:00
Ian Holsman
eef8a5ccff applies change in APR function apr_socket_create, which added a new parameter.
I defaulted these to APR_INHERIT.
Also..
the connection-close was being merged, insted of 'set'
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89559 13f79535-47bb-0310-9956-ffa450edef68
2001-07-16 17:54:38 +00:00
Victor J. Orlikowski
3bb89937f4 Remove a couple of extraneous calls to apr_brigade_cleanup()
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89489 13f79535-47bb-0310-9956-ffa450edef68
2001-07-02 03:37:37 +00:00
Chuck Murcko
6383dfad3b Fix abort code path for HTTP proxy. Similar to Victor's patch for FTP
proxy. No, Julia, it really *is* a double negative.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89486 13f79535-47bb-0310-9956-ffa450edef68
2001-06-30 04:50:31 +00:00
Victor J. Orlikowski
99801a5d6d Fix the code, to properly handle the case of the user aborting the connection
or the connection being broken.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89485 13f79535-47bb-0310-9956-ffa450edef68
2001-06-29 22:22:19 +00:00
Chuck Murcko
a64f4f382a FTP return code variable cleanup; fixed login bug (same var used for
return code and loop index)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89483 13f79535-47bb-0310-9956-ffa450edef68
2001-06-29 00:12:08 +00:00
Victor J. Orlikowski
b4eaa1e5e3 Close the sockets, the right way this time.
Use the ones that the connections are using, rather
than those used to initialize the connection.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89481 13f79535-47bb-0310-9956-ffa450edef68
2001-06-28 21:29:19 +00:00
Victor J. Orlikowski
fe91c29215 Use the variable we've been using for return codes.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89480 13f79535-47bb-0310-9956-ffa450edef68
2001-06-28 20:40:51 +00:00
Victor J. Orlikowski
ed7d24c13b Get the messages returned from the FTP Server in order.
Otherwise we break RFC959.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89479 13f79535-47bb-0310-9956-ffa450edef68
2001-06-28 20:29:45 +00:00
Victor J. Orlikowski
0337297fce PORT works again. Syntax was what had killed it.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89477 13f79535-47bb-0310-9956-ffa450edef68
2001-06-28 18:59:07 +00:00
Victor J. Orlikowski
88aa1ce4cf Maybe this will get PORT working again....
break inside a switch statement inside a for loop
breaks out of the switch statement, not the for loop.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89476 13f79535-47bb-0310-9956-ffa450edef68
2001-06-28 18:34:59 +00:00
Victor J. Orlikowski
f88c2190b4 Last check-in went awry.
Here is the intended message.

Put the QUIT command back.
Basically, when a LIST occurs, origin is not available for reading until the data connection
is closed in passive mode.
This takes care of that.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89475 13f79535-47bb-0310-9956-ffa450edef68
2001-06-28 18:01:21 +00:00
Victor J. Orlikowski
8194f25a1e proxy_ftp.c
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89474 13f79535-47bb-0310-9956-ffa450edef68
2001-06-28 17:49:54 +00:00
Chuck Murcko
be727972fa Some servers send no response to FTP QUIT command and just close the
connection. Remove result code check for QUIT. We gave them fair
warning.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89472 13f79535-47bb-0310-9956-ffa450edef68
2001-06-28 10:00:07 +00:00
Victor J. Orlikowski
d59cbf8a61 ftp_getrc_msg is blocking for no good reason after the receive loop.
Disable it till we figure out what's going on. ;(
At least it works now.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89470 13f79535-47bb-0310-9956-ffa450edef68
2001-06-28 07:04:18 +00:00
Victor J. Orlikowski
69ad06ffee Change strtok() calls to use apr_strtok().
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89221 13f79535-47bb-0310-9956-ffa450edef68
2001-05-23 15:13:02 +00:00
Victor J. Orlikowski
a040b3c7bf Bletch. The Proxy Janitor botches the job again.
Thanks to Ian Holsman for the catch.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89210 13f79535-47bb-0310-9956-ffa450edef68
2001-05-23 03:39:44 +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
Chuck Murcko
109f7ebf1d Crikey.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89044 13f79535-47bb-0310-9956-ffa450edef68
2001-05-07 02:47:51 +00:00
Chuck Murcko
ea5093e17f Track Greg's change to byte count for input filters
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89037 13f79535-47bb-0310-9956-ffa450edef68
2001-05-06 10:59:22 +00:00
Graham Leggett
410db6c7ce Fixed a problem with directory listing corruption in the
PROXY_DIR filter.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88971 13f79535-47bb-0310-9956-ffa450edef68
2001-05-01 21:30:07 +00:00
Graham Leggett
8366898180 Made the variable naming the same as everywhere else in Apache for the
ap_get_brigade() fix.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88927 13f79535-47bb-0310-9956-ffa450edef68
2001-04-24 04:38:53 +00:00
Victor J. Orlikowski
f51e69676f Sometimes, boys and girls, pointers and integers *aren't interchangeable.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88923 13f79535-47bb-0310-9956-ffa450edef68
2001-04-23 21:49:15 +00:00
Graham Leggett
83e42d2157 Apply changes to ap_get_brigade() to the proxy code.
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88922 13f79535-47bb-0310-9956-ffa450edef68
2001-04-23 21:03:39 +00:00
Graham Leggett
73d8d4ab4d Add the Retry-After support that was commented out in proxy_ftp.c
PR:
Obtained from:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88868 13f79535-47bb-0310-9956-ffa450edef68
2001-04-15 20:26:10 +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