diff options
Diffstat (limited to 'src/or/microdesc.c')
-rw-r--r-- | src/or/microdesc.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/or/microdesc.c b/src/or/microdesc.c index 627fad58e..510b2f40f 100644 --- a/src/or/microdesc.c +++ b/src/or/microdesc.c @@ -698,8 +698,9 @@ we_use_microdescriptors_for_circuits(const or_options_t *options) int ret = options->UseMicrodescriptors; if (ret == -1) { /* UseMicrodescriptors is "auto"; we need to decide: */ - /* So we decide that we'll use microdescriptors iff we are not a server */ - ret = ! server_mode(options); + /* So we decide that we'll use microdescriptors iff we are not a server, + * and we're not autofetching everything. */ + ret = !server_mode(options) && !options->FetchUselessDescriptors; } return ret; } @@ -710,6 +711,8 @@ we_fetch_microdescriptors(const or_options_t *options) { if (directory_caches_dir_info(options)) return 1; + if (options->FetchUselessDescriptors) + return 1; return we_use_microdescriptors_for_circuits(options); } @@ -719,6 +722,8 @@ we_fetch_router_descriptors(const or_options_t *options) { if (directory_caches_dir_info(options)) return 1; + if (options->FetchUselessDescriptors) + return 1; return ! we_use_microdescriptors_for_circuits(options); } |