Directory authorities should only automatically download Extra Info

documents if they're v1, v2, or v3 authorities.


svn:r12898
This commit is contained in:
Roger Dingledine 2007-12-21 06:33:02 +00:00
parent e2dc45a2e1
commit 7b60d6c526
4 changed files with 8 additions and 3 deletions

View File

@ -95,6 +95,8 @@ Changes in version 0.2.0.13-alpha - 2007-12-21
- Only Tors that want to mirror the v2 directory info should
create the "cached-status" directory in their datadir. All Tors
used to create it. Bugfix on 0.1.2.x.
- Directory authorities should only automatically download Extra Info
documents if they're v1, v2, or v3 authorities.
o Minor features:
- On USR1, when dmalloc is in use, log the top 10 memory

View File

@ -2785,7 +2785,7 @@ options_validate(or_options_t *old_options, or_options_t *options,
"UseEntryGuards. Disabling.");
options->UseEntryGuards = 0;
}
if (!options->DownloadExtraInfo) {
if (!options->DownloadExtraInfo && authdir_mode_any_main(options)) {
log_info(LD_CONFIG, "Authoritative directories always try to download "
"extra-info documents. Setting DownloadExtraInfo.");
options->DownloadExtraInfo = 1;

View File

@ -3732,11 +3732,13 @@ int authdir_mode(or_options_t *options);
int authdir_mode_v1(or_options_t *options);
int authdir_mode_v2(or_options_t *options);
int authdir_mode_v3(or_options_t *options);
int authdir_mode_any_main(or_options_t *options);
int authdir_mode_any_nonhidserv(or_options_t *options);
int authdir_mode_handles_descs(or_options_t *options, int purpose);
int authdir_mode_publishes_statuses(or_options_t *options);
int authdir_mode_tests_reachability(or_options_t *options);
int authdir_mode_bridge(or_options_t *options);
int authdir_mode_any_nonhidserv(or_options_t *options);
int clique_mode(or_options_t *options);
int server_mode(or_options_t *options);
int advertised_server_mode(void);

View File

@ -823,7 +823,8 @@ authdir_mode_v3(or_options_t *options)
{
return authdir_mode(options) && options->V3AuthoritativeDir != 0;
}
static int
/** Return true iff we are a v1, v2, or v3 directory authority. */
int
authdir_mode_any_main(or_options_t *options)
{
return options->V1AuthoritativeDir ||