mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
Merge remote-tracking branch 'public/bug14219_025'
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
o Minor bugfixes (hidden services):
|
||||
|
||||
- When fetching a hidden service descriptor for a down service that we
|
||||
recently up, do not keep refetching until we try the same replica twice
|
||||
in a row. Fixes bug 14219; bugfix on 0.2.0.10-alpha.
|
||||
|
||||
+2
-9
@@ -1251,19 +1251,12 @@ rend_cache_store_v2_desc_as_client(const char *desc,
|
||||
/* Do we already have a newer descriptor? */
|
||||
tor_snprintf(key, sizeof(key), "2%s", service_id);
|
||||
e = (rend_cache_entry_t*) strmap_get_lc(rend_cache, key);
|
||||
if (e && e->parsed->timestamp > parsed->timestamp) {
|
||||
log_info(LD_REND, "We already have a newer service descriptor for "
|
||||
if (e && e->parsed->timestamp >= parsed->timestamp) {
|
||||
log_info(LD_REND, "We already have a new enough service descriptor for "
|
||||
"service ID %s with the same desc ID and version.",
|
||||
safe_str_client(service_id));
|
||||
goto okay;
|
||||
}
|
||||
/* Do we already have this descriptor? */
|
||||
if (e && !strcmp(desc, e->desc)) {
|
||||
log_info(LD_REND,"We already have this service descriptor %s.",
|
||||
safe_str_client(service_id));
|
||||
e->received = time(NULL);
|
||||
goto okay;
|
||||
}
|
||||
if (!e) {
|
||||
e = tor_malloc_zero(sizeof(rend_cache_entry_t));
|
||||
strmap_set_lc(rend_cache, key, e);
|
||||
|
||||
Reference in New Issue
Block a user