r14885@Kushana: nickm | 2007-10-11 10:36:16 -0400

Document minimal values for voting times.  Use a macro instead of a magic number.  Remove an "enforce this" xxxx020 that was already enforced.


svn:r11868
This commit is contained in:
Nick Mathewson 2007-10-11 16:06:42 +00:00
parent 0a1dd92d3e
commit 6670122619
3 changed files with 15 additions and 4 deletions

View File

@ -309,17 +309,28 @@ $Id$
VA-DistSeconds-VoteSeconds: The authorities exchange votes.
VA-DistSeconds-VoteSeconds/2: The authorities try to download any
votes they don't have.
VA-DistSeconds: The authorities calculate the consensus and exchange
signatures.
VA-DistSeconds/2: The authorities try to download any signatures
they don't have.
VA: All authorities have a multiply signed consensus.
VA ... FU: Caches download the consensus.
FU: The consensus is no long the freshest consensus.
FU ... VU: Clients download the consensus.
VU: The consensus is no longer valid.
VoteSeconds and DistSeconds MUST each be at least 20 seconds; FU-VA and
VU-FU MUST each be at least 5 minutes.
2. Router operation and formats
ORs SHOULD generate a new router descriptor and a new extra-info

View File

@ -3025,7 +3025,7 @@ options_validate(or_options_t *old_options, or_options_t *options,
if (options->V3AuthNIntervalsValid < 2)
REJECT("V3AuthNIntervalsValid must be at least 2.");
if (options->V3AuthVotingInterval < 300) {
if (options->V3AuthVotingInterval < MIN_VOTE_INTERVAL) {
REJECT("V3AuthVotingInterval is insanely low.");
} else if (options->V3AuthVotingInterval > 24*60*60) {
REJECT("V3AuthVotingInterval is insanely high.");

View File

@ -2886,11 +2886,11 @@ format_networkstatus_vote(crypto_pk_env_t *private_key,
/********************************* dirvote.c ************************/
/* XXXX020 enforce */
/* XXXX020 document in dir-spec.txt */
/*DOCDOC*/
/** Lowest allowable value for VoteSeconds. /*
#define MIN_VOTE_SECONDS 20
/** Lowest allowable value for DistSeconds. */
#define MIN_DIST_SECONDS 20
/** Smallest allowable voting interval. */
#define MIN_VOTE_INTERVAL 300
void dirvote_free_all(void);