proxy_connect.c

Checkout Tools
  • last updated 45 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Rename proxy modules.

* modules\proxy\mod_proxy_ajp.c

* modules\proxy\mod_proxy_balancer.c

* modules\proxy\mod_proxy_connect.c

* modules\proxy\mod_proxy_ftp.c

* modules\proxy\mod_proxy_http.c

Renamed from proxy_{ajp,balancer,connect,ftp,http}.c

* modules\proxy\mod_proxy_ajp.dsp

* modules\proxy\mod_proxy_balancer.dsp

* modules\proxy\mod_proxy_connect.dsp

* modules\proxy\mod_proxy_ftp.dsp

* modules\proxy\mod_proxy_http.dsp

Update references to renamed files.

* modules\proxy\NWGNUproxyajp

* modules\proxy\NWGNUproxybalancer

* modules\proxy\NWGNUproxycon

* modules\proxy\NWGNUproxyftp

* modules\proxy\NWGNUproxyhtp

Update references to renamed files.

  1. … 19 more files in changeset.

Fix a signedness issue that revealed a serious bug, the 'i' was

reused for character indexing within this loop.

general property cleanup

  1. … 712 more files in changeset.
* modules/proxy/proxy_connect.c (proxy_connect_handler,

proxy_connect_canon): Drop ap_ prefix, make static, remove

forward-declarations.

Reformat code to no tab and no CR-LF

  1. … 5 more files in changeset.
fix an infinite loop in proxy CONNECT

(problem was only in 2.1-dev)

Submitted by: jean-frederic clere <jfrederic.clere fujitsu-siemens.com>

Reviewed by: Jeff Trawick

Fix the parameter list for the scheme_handler ap_proxy_connect_handler() so that it matches the prototype declared for the scheme_handler hook.

fix name of The Apache Software Foundation

  1. … 361 more files in changeset.
fix copyright dates according to the first check in

  1. … 25 more files in changeset.
apply Apache License, Version 2.0

  1. … 262 more files in changeset.
update license to 2004.

  1. … 281 more files in changeset.
switch to new pollset api

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

  1. … 42 more files in changeset.
finished that boring job:

update license to 2003.

Happy New Year! ;-))

  1. … 271 more files in changeset.
Bring Apache in line with APR's new poll implementation. This isn't

optimal, because it still uses the compatibility functions to make it

work, but it does work. The next step will be to take the memory for

the pollsets under Apache's control.

  1. … 9 more files in changeset.
stop using APLOG_NOERRNO in calls to ap_log_[pr]error()

  1. … 23 more files in changeset.
get proxy CONNECT to work on EBCDIC machines

Get proxy CONNECT basically working (IE seems to be happy with secure

connections).

The to-do of fixing client I/O so it goes through the filters still

remains. But it will be nice if it will work until somebody gets

around to doing that.

  1. … 1 more file in changeset.
Update our copyright for this year.

  1. … 260 more files in changeset.
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)

  1. … 4 more files in changeset.
add a ProxyTimeout directive

  1. … 6 more files in changeset.
In the debug log, say 'decline' instead of 'reject' when DECLINEing

  1. … 1 more file in changeset.
for proxy CONNECT handling:

don't hard-code the address family of the target; respect

what the resolver told us

get a new socket each time we try to connect to one of the

target addresses as reported by the resolver; you can't

portably attempt to connect more than once on the same

socket

this is the same fix committed to proxy http support yesterday

  1. … 1 more file in changeset.
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.

  1. … 3 more files in changeset.
adjust to apr_uri_ rename

Submitted by: dougm@apache.org

Reviewed by: ianh@apache.org

  1. … 4 more files in changeset.
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.

  1. … 2 more files in changeset.
Remove APR_NO_INHERIT as it is now private.

sigh... the cost of being bleeding edge

PR:

Obtained from:

Submitted by:

Reviewed by:

  1. … 2 more files in changeset.
Change the APR_INHERIT flag to APR_NO_INHERIT,which is the default (as recommended by rbb)

PR:

Obtained from:

Submitted by:

Reviewed by:

  1. … 2 more files in changeset.
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:

  1. … 2 more files in changeset.
YAPJBUJ.

(Yet Another Proxy Janitor Botched-Up Job).

Need to be looking for APR_SUCCESS here, not HTTP_OK.

Obtained from: Justin Erenkrantz

  1. … 1 more file in changeset.