commit 083c58f126a4390b96b0e3f14d809502d8702f3d Author: teor teor2345@gmail.com Date: Sat Dec 20 21:42:28 2014 +1100
Fix TestingMinExitFlagThreshold 0
Stop requiring exits to have non-zero bandwithcapacity in a TestingTorNetwork. Instead, when TestingMinExitFlagThreshold is 0, ignore exit bandwidthcapacity.
This assists in bootstrapping a testing Tor network. Fixes bugs 13718 & 13839. Makes bug 13161's TestingDirAuthVoteExit non-essential. --- changes/bug13839-fix-TestingMinExitFlagThreshold | 7 +++++++ src/or/dirserv.c | 24 +++++++++++++++++----- 2 files changed, 26 insertions(+), 5 deletions(-)
diff --git a/changes/bug13839-fix-TestingMinExitFlagThreshold b/changes/bug13839-fix-TestingMinExitFlagThreshold new file mode 100644 index 0000000..947614f --- /dev/null +++ b/changes/bug13839-fix-TestingMinExitFlagThreshold @@ -0,0 +1,7 @@ + o Minor bugfixes: + - Stop requiring exits to have non-zero bandwithcapacity in a + TestingTorNetwork. Instead, when TestingMinExitFlagThreshold is 0, + ignore exit bandwidthcapacity. + This assists in bootstrapping a testing Tor network. + Fixes bugs 13718 & 13839. + Makes bug 13161's TestingDirAuthVoteExit non-essential. diff --git a/src/or/dirserv.c b/src/or/dirserv.c index d31bb72..a1d22b0 100644 --- a/src/or/dirserv.c +++ b/src/or/dirserv.c @@ -887,12 +887,26 @@ static int router_is_active(const routerinfo_t *ri, const node_t *node, time_t now) { time_t cutoff = now - ROUTER_MAX_AGE_TO_PUBLISH; - if (ri->cache_info.published_on < cutoff) + if (ri->cache_info.published_on < cutoff) { return 0; - if (!node->is_running || !node->is_valid || ri->is_hibernating) + } + if (!node->is_running || !node->is_valid || ri->is_hibernating) { return 0; - if (!ri->bandwidthcapacity) + } + /* Only require bandwith capacity in non-test networks, or + * if TestingTorNetwork, and TestingMinExitFlagThreshold is non-zero */ + if (!ri->bandwidthcapacity) { + if (get_options()->TestingTorNetwork) { + if (get_options()->TestingMinExitFlagThreshold > 0) { + /* If we're in a TestingTorNetwork, and TestingMinExitFlagThreshold is, + * then require bandwidthcapacity */ + return 0; + } + } else { + /* If we're not in a TestingTorNetwork, then require bandwidthcapacity */ return 0; + } + } return 1; }
@@ -1037,7 +1051,7 @@ directory_fetches_dir_info_later(const or_options_t *options) }
/** Return true iff we want to fetch and keep certificates for authorities - * that we don't acknowledge as aurthorities ourself. + * that we don't acknowledge as authorities ourself. */ int directory_caches_unknown_auth_certs(const or_options_t *options) @@ -1498,7 +1512,7 @@ dirserv_compute_performance_thresholds(routerlist_t *rl, (unsigned long)guard_tk, (unsigned long)guard_bandwidth_including_exits_kb, (unsigned long)guard_bandwidth_excluding_exits_kb, - enough_mtbf_info ? "" : " don't "); + enough_mtbf_info ? "" : " don't");
tor_free(uptimes); tor_free(mtbfs);
tor-commits@lists.torproject.org