Quozl's TCP/IP Relay

| quozl@us.netrek.org | up |

13th March 2010

tcpxd - for Cygwin

Richard Kagerer wrote in with Cygwin build instructions for those who need to use this program on Microsoft Windows.

13th September 2005

tcpxd - Another TCP/IP Relay

tcpxd is a general purpose TCP/IP relay program designed to be simple to get going, requiring only three parameters; the port to listen on, the host to forward to, and the port on that host to connect to.

Having reviewed netcat and other TCP/IP networking code, and having had a need for a simple and fast relaying proxy, I wrote my own. It isn't fully finished, but it does work and has elements that meet my requirements.

The features of this particular relay program are:

The code compiles and runs cleanly on Cygwin (1999), though the connect() call implementation there appears to not support asynchronous connections. Despite setting the socket non-blocking using an fcntl() call the connect() still stalls for the duration of the connection.

The wishlist for future development is within the single source file. Contributions and patches are welcome.

Version 1.4 includes changes:

Resources

Note: the program tcpbug in the Debian GNU/Linux package tcputils is functionally similar to tcpxd. Other programs in the same package are also quite handy.

Using Darcs

Darcs is a distributed revision control system by David Roundy designed to replace centralised CVS. The source is provided via darcs to encourage contributions.

install darcs : apt-get install darcs
checkout initial copy : darcs get http://quozl.linux.org.au/darcs/tcpxd
(this creates a directory tcpxd in your current directory)
propose a change : darcs record
darcs send

(this sends a mail to me with your changes)
update : darcs pull
(this updates your directory with changes made by me and others)

FAQ

Can tcpxd be used with inetd? How do we do bandwidth limiting?
| quozl@us.netrek.org | up |