[or-cvs] [tor/master 6/6] Make authorities download consensuses if appropriate

nickm at torproject.org nickm at torproject.org
Mon Sep 13 01:39:12 UTC 2010


Author: Nick Mathewson <nickm at torproject.org>
Date: Sun, 12 Sep 2010 21:28:49 -0400
Subject: Make authorities download consensuses if appropriate
Commit: cc0efa808409ddce6dda1d7670da83bf7c0a5b05

An authority should never download a consensus if it has a live one,
but when it doesn't, it should admit that it's not going to get one,
and see if anybody else can give it one.

Fixes 1300, fix on 0.2.0.9-alpha
---
 src/or/networkstatus.c |    5 +----
 1 files changed, 1 insertions(+), 4 deletions(-)

diff --git a/src/or/networkstatus.c b/src/or/networkstatus.c
index c0a3a28..e985679 100644
--- a/src/or/networkstatus.c
+++ b/src/or/networkstatus.c
@@ -1168,14 +1168,11 @@ update_v2_networkstatus_cache_downloads(time_t now)
 static void
 update_consensus_networkstatus_downloads(time_t now)
 {
-  or_options_t *options = get_options();
   int i;
   if (!networkstatus_get_live_consensus(now))
     time_to_download_next_consensus = now; /* No live consensus? Get one now!*/
   if (time_to_download_next_consensus > now)
     return; /* Wait until the current consensus is older. */
-  if (authdir_mode_v3(options))
-    return; /* Authorities never fetch a consensus */
   /* XXXXNM Microdescs: may need to download more types. */
   if (!download_status_is_ready(&consensus_dl_status[FLAV_NS], now,
                                 CONSENSUS_NETWORKSTATUS_MAX_DL_TRIES))
@@ -1246,7 +1243,7 @@ update_consensus_networkstatus_fetch_time(time_t now)
        * is no longer fresh... */
       start = c->fresh_until + min_sec_before_caching;
       /* Some clients may need the consensus sooner than others. */
-      if (options->FetchDirInfoExtraEarly) {
+      if (options->FetchDirInfoExtraEarly || authdir_mode_v3(options)) {
         dl_interval = 60;
         if (min_sec_before_caching + dl_interval > interval)
           dl_interval = interval/2;
-- 
1.7.1



More information about the tor-commits mailing list