diff options
author | Nick Mathewson <nickm@torproject.org> | 2008-12-17 13:14:47 +0000 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2008-12-17 13:14:47 +0000 |
commit | 76eed8cc18c55693fe47226572417fe4b8348fdc (patch) | |
tree | bdcd4c4a019f002ed9202e2474222a8561928436 /src/or | |
parent | 119fd23f1eb560867c90cec9c4d8d7fae2c8ac1a (diff) | |
download | tor-76eed8cc18c55693fe47226572417fe4b8348fdc.tar.gz tor-76eed8cc18c55693fe47226572417fe4b8348fdc.zip |
Backport r17184: 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:r17639
Diffstat (limited to 'src/or')
-rw-r--r-- | src/or/circuitbuild.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c index 65bd16afea..49ac74d65b 100644 --- a/src/or/circuitbuild.c +++ b/src/or/circuitbuild.c @@ -1163,7 +1163,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)) |