Patch to enable socks4/5 support for OR connections

Christopher Davis loafier at
Wed Jan 21 18:52:11 UTC 2009

On Wed, Jan 21, 2009 at 01:14:08AM -0500, Nick Mathewson wrote:
> On Fri, Jan 16, 2009 at 01:10:27PM -0800, Christopher Davis wrote:
> > Hello,
> > 
> > I mentioned this work breifly in a post to or-talk just recently.
> > Hopefully, this can be useful to others.
> > 
> > Directory connections could be made to use SOCKS proxies, as well,
> > using the same framework. Although, as Roger explained in his reply 
> > to my post to or-talk, supporting OR connections seems to be enough
> > to get things working.
> > 
> > The SOCKS 5 client supports rfc 1929 user/pass auth if the 
> > configuration directives are set. The SOCKS 4 user id is always 
> > left empty.
> > 
> > Functions to connect through the proxy server are in connection.c.
> > I moved in the functions for HTTP CONNECT proxy support from
> > connection_or.c, so that there is a consistent framework. Hopefully
> > the comments are enough to explain how it works, but if not, I 
> > can expand them a bit. 
> Hi, Christopher!  This looks like good code to me; it is one of the
> best-written feature patches I've seen in a long time.
> Right now, though, the Tor development branch is in feature-freeze to
> get ready for a stable 0.2.1.x release.  Could I ask you to remind me
> to look at this patch again once 0.2.1.x is on a stable branch and
> 0.2.2.x development is underway?

Sure, no problem.

> (If people who want to use Tor from behind their SOCKS proxies would
> try this patch out and let me know whether it works for them too, that
> would be great.)

One way to test this quickly is to use ssh dynamic port forwarding,
eg: ssh -D 1080 localhost. This works for socks4 and 5, although
user/pass auth requires a more complete socks server.

> thanks again,
> -- 
> Nick

Christopher Davis

More information about the tor-dev mailing list