code/pconnect()
Proxy Connect
Proxy Connect is a LD preload library that can be used to tunnel arbitrary TCP connections via HTTP proxy cascades which support the `CONNECT' command.Currently, two tunnel setups are supported:
Point to Point to Multipoint
+--------+ +-------+ +----------+
| CLIENT +----+ PROXY +----+ INTERNET |
+--------+ +-------+ +----------+
This configuration makes sense if you are connected
to a LAN which provides a HTTP proxy that takes
`CONNECT' commands to arbitrary ports.
Point to Point to Point to Multipoint
+--------+ +---------+ +---------+ +----------+
| CLIENT +-+ PROXY A +-+ PROXY B +-+ INTERNET |
+--------+ +---------+ +---------+ +----------+
This setup can be used to tunnel through a
connected proxy A which supports `CONNECT' to
certain ports only (eg https, 443). Over this
connection another `CONNECT' can be sent to proxy B without this limitation that
isn't reachable otherwise.
Download proxy_connect-0.6 here.