Add a boolean to flag-thresholds for "we have enough measured bandwidth"

Implements #8711.
This commit is contained in:
Nick Mathewson 2013-04-18 22:43:52 -04:00
parent e35ca13528
commit b933360ee8
2 changed files with 13 additions and 2 deletions

6
changes/bug8711 Normal file
View File

@ -0,0 +1,6 @@
o Minor features (authority):
- Add a "ignoring-advertised-bws" boolean to our flag-thresholds
lines to describe whether we have enough measured bandwidths to
ignore advertised bandwidth claims. Closes ticket 8711.

View File

@ -2273,12 +2273,16 @@ char *
dirserv_get_flag_thresholds_line(void)
{
char *result=NULL;
const int measured_threshold =
get_options()->MinMeasuredBWsForAuthToIgnoreAdvertised;
const int enough_measured_bw = routers_with_measured_bw > measured_threshold;
tor_asprintf(&result,
"stable-uptime=%lu stable-mtbf=%lu "
"fast-speed=%lu "
"guard-wfu=%.03f%% guard-tk=%lu "
"guard-bw-inc-exits=%lu guard-bw-exc-exits=%lu "
"enough-mtbf=%d",
"enough-mtbf=%d ignoring-advertised-bws=%d",
(unsigned long)stable_uptime,
(unsigned long)stable_mtbf,
(unsigned long)fast_bandwidth_kb*1000,
@ -2286,7 +2290,8 @@ dirserv_get_flag_thresholds_line(void)
(unsigned long)guard_tk,
(unsigned long)guard_bandwidth_including_exits_kb*1000,
(unsigned long)guard_bandwidth_excluding_exits_kb*1000,
enough_mtbf_info ? 1 : 0);
enough_mtbf_info ? 1 : 0,
enough_measured_bw ? 1 : 0);
return result;
}