commit d8604b8729b24f964d78d188b89493098d3eb92b
parent e00f12ec6c6fda091bbf09d0bfeab057947d3808
Author: Nick Mathewson <nickm@torproject.org>
Date: Sun, 15 Oct 2017 20:36:23 -0400
Merge branch 'teor_bug23813_squashed'
Diffstat:
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/src/or/routerlist.c b/src/or/routerlist.c
@@ -5358,8 +5358,10 @@ update_extrainfo_downloads(time_t now)
smartlist_free(wanted);
}
-/** Reset the descriptor download failure count on all routers, so that we
- * can retry any long-failed routers immediately.
+/** Reset the consensus and extra-info download failure count on all routers.
+ * When we get a new consensus,
+ * routers_update_status_from_consensus_networkstatus() will reset the
+ * download statuses on the descriptors in that consensus.
*/
void
router_reset_descriptor_download_failures(void)
@@ -5371,6 +5373,8 @@ router_reset_descriptor_download_failures(void)
last_descriptor_download_attempted = 0;
if (!routerlist)
return;
+ /* We want to download *all* extra-info descriptors, not just those in
+ * the consensus we currently have (or are about to have) */
SMARTLIST_FOREACH(routerlist->routers, routerinfo_t *, ri,
{
download_status_reset(&ri->cache_info.ei_dl_status);