Skip to content
Snippets Groups Projects
Commit f7e87f41 authored by Daniel Bryg's avatar Daniel Bryg Committed by Nick Mathewson
Browse files

When not fetching v2 dir info, don't require it for cleaning descriptors

Bugfix on 0.2.2.26-beta, which introduced the idea of caches not
cacheing v2 info.  Fixes bug 4838.
parent 81fe3e43
No related branches found
No related tags found
No related merge requests found
o Minor bufixes:
- Directory caches no longer refuse to clean out descriptors when
because of missing v2 networkstatus documents, unless they're
actually trying to retrieve v2 networkstatus documents. Bugfix
on 0.2.2.26-beta; fixes bug 4838. Patch by Daniel Bryg.
......@@ -3614,6 +3614,7 @@ routerlist_remove_old_routers(void)
const networkstatus_t *consensus = networkstatus_get_latest_consensus();
const smartlist_t *networkstatus_v2_list = networkstatus_get_v2_list();
int have_enough_v2;
const or_options_t *options = get_options();
trusted_dirs_remove_old_certs();
......@@ -3675,6 +3676,7 @@ routerlist_remove_old_routers(void)
* routers.) */
/* we set this to true iff we don't care about v2 info, or we have enough. */
have_enough_v2 = !caches ||
!(authdir_mode_any_main(options) || options->FetchV2Networkstatus) ||
(networkstatus_v2_list &&
smartlist_len(networkstatus_v2_list) > get_n_v2_authorities() / 2);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment