mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 21:23:58 +01:00
Merge remote branch 'origin/maint-0.2.2'
There was a conflict from the node_t transition, but it was an easy fix. Conflicts: src/or/circuitbuild.c
This commit is contained in:
commit
9265164180
6
changes/bug2403
Normal file
6
changes/bug2403
Normal file
@ -0,0 +1,6 @@
|
||||
o Minor bugfixes:
|
||||
- In the special case where you configure a public exit relay as your
|
||||
bridge, Tor would be willing to use that exit relay as the last
|
||||
hop in your circuit as well. Now we fail that circuit instead.
|
||||
Bugfix on 0.2.0.12-alpha. Fixes bug 2403. Reported by "piebeer".
|
||||
|
@ -4081,7 +4081,6 @@ choose_random_entry(cpath_build_state_t *state)
|
||||
int preferred_min, consider_exit_family = 0;
|
||||
|
||||
if (chosen_exit) {
|
||||
smartlist_add(exit_family, (void*) chosen_exit);
|
||||
nodelist_add_node_family(exit_family, chosen_exit);
|
||||
consider_exit_family = 1;
|
||||
}
|
||||
@ -4103,6 +4102,8 @@ choose_random_entry(cpath_build_state_t *state)
|
||||
node = entry_is_live(entry, need_uptime, need_capacity, 0, &msg);
|
||||
if (!node)
|
||||
continue; /* down, no point */
|
||||
if (node == chosen_exit)
|
||||
continue; /* don't pick the same node for entry and exit */
|
||||
if (consider_exit_family && smartlist_isin(exit_family, node))
|
||||
continue; /* avoid relays that are family members of our exit */
|
||||
if (options->EntryNodes &&
|
||||
|
Loading…
Reference in New Issue
Block a user