vote AuthDirMaxServersPerAddr in consensus params

Directory authorities now include their AuthDirMaxServersPerAddr
config option in the consensus parameter section of their vote. Now
external tools can better predict how they will behave.

In particular, the value should make its way to the
https://consensus-health.torproject.org/#consensusparams page.

Once enough dir auths vote this param, they should also compute a
consensus value for it in the consensus document. Nothing uses this
consensus value yet, but we could imagine having dir auths consult it
in the future.

Implements ticket 40753.
This commit is contained in:
Roger Dingledine 2023-02-12 15:50:55 -05:00
parent 21b3397f9b
commit 36612b9bf8
2 changed files with 13 additions and 0 deletions

5
changes/ticket40753 Normal file
View file

@ -0,0 +1,5 @@
o Minor features (directory authorities):
- Directory authorities now include their AuthDirMaxServersPerAddr
config option in the consensus parameter section of their vote. Now
external tools can better predict how they will behave. Implements
ticket 40753.

View file

@ -4878,6 +4878,14 @@ dirserv_generate_networkstatus_vote_obj(crypto_pk_t *private_key,
smartlist_split_string(v3_out->net_params,
paramline->value, NULL, 0, 0);
}
/* for transparency and visibility, include our current value of
* AuthDirMaxServersPerAddr in our consensus params. Once enough dir
* auths do this, external tools should be able to use that value to
* help understand which relays are allowed into the consensus. */
smartlist_add_asprintf(v3_out->net_params, "AuthDirMaxServersPerAddr=%d",
d_options->AuthDirMaxServersPerAddr);
smartlist_sort_strings(v3_out->net_params);
}
v3_out->bw_file_headers = bw_file_headers;