constructing circuits using control port

Roger Dingledine arma at
Wed Aug 15 13:08:29 UTC 2007

On Wed, Aug 15, 2007 at 04:02:43AM -0400, Andrew wrote:
> > A) Put the setevents earlier, in case you're missing some answers
> > in between your EXTENDCIRCUIT and your SETEVENTS.
> I've done this, and also added the EXTENDED keyword to get more
> information, at Mike Perry's advice.  It's helped narrow the scope of
> the problem down to a few distinct classes of errors.  Recreating the
> above situation, I get a more useful message from the socket:
> C 20070815020009: EXTENDCIRCUIT 0 [fingerprintscrubbed],[fingerprintscrubbed]
> S 20070815020009: 250 EXTENDED 22
> S 20070815020009: 650 CIRC 22 LAUNCHED
> S 20070815020009: 650 CIRC 22 FAILED REASON=OR_CONN_CLOSED

The first hop you picked was not reachable (or was not up).

> > B) What do your Tor logs say?
> In the above example at INFO level, all I get is this:
> Aug 15 02:00:09.185 [info] handle_control_authenticate():
> Authenticated control connection (9)
> Aug 15 02:00:09.317 [info] circuit_n_conn_done(): or_conn failed. Closing circ.


> > C) Which nodes are you trying? Are they running, etc?
> I'm getting a list of nodes using
> GETINFO desc/all-recent
> And choosing random paths with acceptable exit policies from the
> output.  I was working from the assumption that this provides a list
> of routers that are all currently usable...maybe my problem is in this
> thinking?

Correct. You would want to getinfo ns/all too and cross-correlate.

But really, you just want to use Torflow as Mike says.


More information about the tor-dev mailing list