aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2017-03-27 15:44:31 +0200
committerNick Mathewson <nickm@torproject.org>2017-03-27 15:44:31 +0200
commit4d5b46aad91daeafd9c3f9d703f3b0b7b47ad472 (patch)
tree2e4ac21e563b50b32cc63778a24b95f94f97aa0a
parente79f90c7f031b8a7825574f865c77d7034b93a16 (diff)
parentef4c10fb42e796a7a1662b5f1db27d10347e89af (diff)
downloadtor-4d5b46aad91daeafd9c3f9d703f3b0b7b47ad472.tar.gz
tor-4d5b46aad91daeafd9c3f9d703f3b0b7b47ad472.zip
Merge remote-tracking branch 'origin/maint-0.3.0'
-rw-r--r--changes/bug217715
-rw-r--r--src/or/entrynodes.c6
2 files changed, 9 insertions, 2 deletions
diff --git a/changes/bug21771 b/changes/bug21771
new file mode 100644
index 0000000000..f814c75c0b
--- /dev/null
+++ b/changes/bug21771
@@ -0,0 +1,5 @@
+ o Minor bugfixes (guard selection):
+ - Fix a guard selection bug where Tor would refuse to bootstrap in some
+ cases if the user swapped a bridge for another bridge in their
+ configuration file.
+ Fixes bug 21771; bugfix on 0.3.0.1-alpha. Reported by "torvlnt33r".
diff --git a/src/or/entrynodes.c b/src/or/entrynodes.c
index e5cc4b561a..7a27cd0f44 100644
--- a/src/or/entrynodes.c
+++ b/src/or/entrynodes.c
@@ -989,9 +989,11 @@ get_max_sample_size(guard_selection_t *gs,
const int using_bridges = (gs->type == GS_TYPE_BRIDGE);
const int min_sample = get_min_filtered_sample_size();
- /* With bridges, max_sample is "all of them" */
+ /* If we are in bridge mode, expand our sample set as needed without worrying
+ * about max size. We should respect the user's wishes to use many bridges if
+ * that's what they have specified in their configuration file. */
if (using_bridges)
- return n_guards;
+ return INT_MAX;
const int max_sample_by_pct = (int)(n_guards * get_max_sample_threshold());
const int max_sample_absolute = get_max_sample_size_absolute();