Let testing networks override ABSOLUTE_MIN_VALUE_FOR_FAST_FLAG

This adds a new option to fix bug 8508 which broke chutney
networks. The bug was introduced by 317d16de.
This commit is contained in:
Nick Mathewson 2013-03-20 13:34:57 -04:00
parent 90d2162f32
commit a660fe6fd5
5 changed files with 16 additions and 0 deletions

4
changes/bug8408 Normal file
View File

@ -0,0 +1,4 @@
o Minor bugfixes:
- Allow TestingTorNetworks to override the 4096-byte minimum for the Fast
threshold. Otherwise they can't bootstrap until they've observed more
traffic. Fixes bug 8508; bugfix on 0.2.4.10-alpha.

View File

@ -2019,6 +2019,11 @@ The following options are used for running a testing Tor network.
time. Changing this requires that **TestingTorNetwork** is set. (Default:
10 minutes)
**TestingMinFastFlagThreshold** __N__ **bytes**|**KBytes**|**MBytes**|**GBytes**::
Minimum value for the Fast flag. Overrides the ordinary minimum taken
from the consensus when TestingTorNetwork is set. (Default: 0.)
SIGNALS
-------

View File

@ -341,6 +341,7 @@ static config_var_t option_vars_[] = {
V(PerConnBWRate, MEMUNIT, "0"),
V(PidFile, STRING, NULL),
V(TestingTorNetwork, BOOL, "0"),
V(TestingMinFastFlagThreshold, MEMUNIT, "0"),
V(OptimisticData, AUTOBOOL, "auto"),
V(PortForwarding, BOOL, "0"),
V(PortForwardingHelper, FILENAME, "tor-fw-helper"),

View File

@ -2005,6 +2005,9 @@ dirserv_compute_performance_thresholds(routerlist_t *rl,
ABSOLUTE_MIN_VALUE_FOR_FAST_FLAG,
ABSOLUTE_MIN_VALUE_FOR_FAST_FLAG,
INT32_MAX);
if (options->TestingTorNetwork) {
min_fast = (int32_t)options->TestingMinFastFlagThreshold;
}
max_fast = networkstatus_get_param(NULL, "FastFlagMaxThreshold",
INT32_MAX, min_fast, INT32_MAX);
if (fast_bandwidth < (uint32_t)min_fast)

View File

@ -3910,6 +3910,9 @@ typedef struct {
* of certain configuration options. */
int TestingTorNetwork;
/** Minimum value for the Fast flag threshold on testing networks. */
uint64_t TestingMinFastFlagThreshold;
/** If true, and we have GeoIP data, and we're a bridge, keep a per-country
* count of how many client addresses have contacted us so that we can help
* the bridge authority guess which countries have blocked access to us. */