diff options
author | Nick Mathewson <nickm@torproject.org> | 2015-06-18 11:33:24 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2015-06-18 11:33:24 -0400 |
commit | 583a387c1ea855c0b063f14c382b2cedcdc3dc08 (patch) | |
tree | 484d0035e7cf5f7e8e1796fab53228a4cadb2962 /src/or/rendcommon.c | |
parent | c2c23d1443ba69d356a11303071e4ea5723ba1b6 (diff) | |
parent | f18ee7fc7287e9d5f55c7c6c2007a8a1c2466a3e (diff) | |
download | tor-583a387c1ea855c0b063f14c382b2cedcdc3dc08.tar.gz tor-583a387c1ea855c0b063f14c382b2cedcdc3dc08.zip |
Merge remote-tracking branch 'origin/maint-0.2.6'
Diffstat (limited to 'src/or/rendcommon.c')
-rw-r--r-- | src/or/rendcommon.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/or/rendcommon.c b/src/or/rendcommon.c index 0acca58713..13d21802b5 100644 --- a/src/or/rendcommon.c +++ b/src/or/rendcommon.c @@ -1289,12 +1289,18 @@ 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 new enough service descriptor for " + if (e && e->parsed->timestamp > parsed->timestamp) { + log_info(LD_REND, "We already have a newer 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)); + goto okay; + } if (!e) { e = tor_malloc_zero(sizeof(rend_cache_entry_t)); strmap_set_lc(rend_cache, key, e); |