Download Latest Version retransconnect-1.1.0.tar.gz (9.2 kB)
Email in envelope

Get an email when there's a new version of re:transconnect

Home
Name Modified Size InfoDownloads / Week
README 2011-06-25 2.1 kB
retransconnect-1.1.0.tar.gz 2011-06-25 9.2 kB
retransconnect-1.0.2.tar.gz 2011-06-21 6.2 kB
Totals: 3 Items   17.4 kB 0
re:transconnect was written after semi-successful attempts to use
Transconnect (http://transconnect.sourceforge.net/) in personal projects --
it worked but lacked fine-grained configuration via environment variables.
For me re:transconnect is also a bit cleaner, but your mileage may vary.


The library is compileable under Linux using GCC or clang.  Will probably
compile under *BSD and MacOS X (haven't tried though), won't compile under
Windows.  Build reports and patches are welcomed.

To compile, just type `make`.  Once compiled, type `make install` to install
the library (rtconn.so) to your $HOME/.rtconn directory, or just put the
library to wherever you need.


Configuration file should be composed of (key, value) pairs separated by
white-spaces, one pair per line.  Values should not be enclosed in quotes.
Lines beginning with '#' or ';' are treated as comments and skipped.  Inline
comments are not supported.  Lines have to be less than 1024 characters long.
Check out rtconn.conf.example for details.  Configuration file is optional,
the library is still functional without it controlled by environment
variables only.


re:transconnect accepts following environment variables:
* RTCONN_CONF -- sets alternative configuration file name;
* RTCONN_HOST, RTCONN_PORT, RTCONN_TYPE, RTCONN_USER, RTCONN_PASS --
  override 'host', 'port', 'type', 'user' and 'pass' options respectively;
* RTCONN_TIMEOUT, RTCONN_VERBOSE, RTCONN_USER_AGENT -- override 'verbose',
  'timeout' and 'user_agent' options respectively;


Usage example:
$ RTCONN_CONF="./rtconn.conf" \
  RTCONN_HOST="proxy.example.com" RTCONN_PORT="8080" \
  RTCONN_USER="foo" RTCONN_PASS="bar" \
  LD_PRELOAD="./rtconn.so" \
  curl http://www.example.com/


Known limitations:
* only TCP traffic is proxiable, other protocols will be connected directly;
* only SOCKS4, SOCKS5, and HTTP proxies able to handle 'CONNECT' method are
  supported;
* no support for SOCKS4a proxies (yet);
* no support for IPv6 yet.


Feel free to use however you see fit.  Have fun.

Sergey Kolchin <ksa242@gmail.com>
Source: README, updated 2011-06-25