From ebe4ef12b9ae71cec50a5fced923057e5a3e5f54 Mon Sep 17 00:00:00 2001 From: Roger Dingledine Date: Mon, 3 Nov 2008 07:00:56 +0000 Subject: [PATCH] when building preemptive circuits, ignore streams that have a chosen exit node in mind already. otherwise we get tricked into trying to build a new circuit that will handle them. svn:r17184 --- src/or/circuitbuild.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c index f9e7981106..e7ab333e82 100644 --- a/src/or/circuitbuild.c +++ b/src/or/circuitbuild.c @@ -1168,7 +1168,8 @@ ap_stream_wants_exit_attention(connection_t *conn) conn->state == AP_CONN_STATE_CIRCUIT_WAIT && !conn->marked_for_close && !(TO_EDGE_CONN(conn)->want_onehop) && /* ignore one-hop streams */ - !(TO_EDGE_CONN(conn)->use_begindir) && /* ignore targetted dir fetches */ + !(TO_EDGE_CONN(conn)->use_begindir) && /* ignore targeted dir fetches */ + !(TO_EDGE_CONN(conn)->chosen_exit_name) && /* ignore defined streams */ !connection_edge_is_rendezvous_stream(TO_EDGE_CONN(conn)) && !circuit_stream_is_being_handled(TO_EDGE_CONN(conn), 0, MIN_CIRCUITS_HANDLING_STREAM))