diff options
-rw-r--r-- | changes/bug18704 | 5 | ||||
-rw-r--r-- | src/or/rendclient.c | 12 |
2 files changed, 11 insertions, 6 deletions
diff --git a/changes/bug18704 b/changes/bug18704 new file mode 100644 index 0000000000..966cc2a5f3 --- /dev/null +++ b/changes/bug18704 @@ -0,0 +1,5 @@ + o Major bugfixes (hidden service client) + - With FetchHidServDescriptors set to 0, there is no descriptor fetch + (which is intended) but also no descriptor cache lookup was done + making any Tor client not working with this option unset. Resolves + ticket #18704. Patch by "twim"; Bugfix on tor-0.2.0.20-rc. diff --git a/src/or/rendclient.c b/src/or/rendclient.c index 7e92dce6d4..64d367354b 100644 --- a/src/or/rendclient.c +++ b/src/or/rendclient.c @@ -895,12 +895,6 @@ rend_client_refetch_v2_renddesc(rend_data_t *rend_query) rend_cache_entry_t *e = NULL; tor_assert(rend_query); - /* Are we configured to fetch descriptors? */ - if (!get_options()->FetchHidServDescriptors) { - log_warn(LD_REND, "We received an onion address for a v2 rendezvous " - "service descriptor, but are not fetching service descriptors."); - return; - } /* Before fetching, check if we already have a usable descriptor here. */ if (rend_cache_lookup_entry(rend_query->onion_address, -1, &e) == 0 && rend_client_any_intro_points_usable(e)) { @@ -908,6 +902,12 @@ rend_client_refetch_v2_renddesc(rend_data_t *rend_query) "already have a usable descriptor here. Not fetching."); return; } + /* Are we configured to fetch descriptors? */ + if (!get_options()->FetchHidServDescriptors) { + log_warn(LD_REND, "We received an onion address for a v2 rendezvous " + "service descriptor, but are not fetching service descriptors."); + return; + } log_debug(LD_REND, "Fetching v2 rendezvous descriptor for service %s", safe_str_client(rend_query->onion_address)); |