mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
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
This commit is contained in:
+2
-2
@@ -14,8 +14,8 @@ Backport for 0.2.0 once better tested:
|
||||
r17171 instead, to be even more resistant to poisoning.]
|
||||
o r17091: distinguish "no routers support pending circuits" from
|
||||
"no circuits are pending."
|
||||
- See also r17181...
|
||||
- ... and r17184.
|
||||
o See also r17181...
|
||||
o ... and r17184.
|
||||
- r17137: send END cell in response to connect to nonexistent hidserv port.
|
||||
- r17138: reject *:* servers should never do DNS lookups.
|
||||
- r17139: Fix another case of overriding .exit choices.
|
||||
|
||||
@@ -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))
|
||||
|
||||
Reference in New Issue
Block a user