Adjust maximum skew and age for rendezvous descriptors: adjust code to make skew add to age.

svn:r3995
This commit is contained in:
Nick Mathewson
2005-04-03 05:36:23 +00:00
parent 658463a751
commit 11d20d78a0
+4 -4
View File
@@ -156,8 +156,8 @@ int rend_get_service_id(crypto_pk_env_t *pk, char *out)
/* ==== Rendezvous service descriptor cache. */
#define REND_CACHE_MAX_AGE (24*60*60)
#define REND_CACHE_MAX_SKEW (90*60)
#define REND_CACHE_MAX_AGE (48*60*60)
#define REND_CACHE_MAX_SKEW (24*60*60)
/** Map from service id (as generated by rend_get_service_id) to
* rend_cache_entry_t. */
@@ -195,7 +195,7 @@ void rend_cache_clean(void)
void *val;
rend_cache_entry_t *ent;
time_t cutoff;
cutoff = time(NULL) - REND_CACHE_MAX_AGE;
cutoff = time(NULL) - REND_CACHE_MAX_AGE - REND_CACHE_MAX_SKEW;
for (iter = strmap_iter_init(rend_cache); !strmap_iter_done(iter); ) {
strmap_iter_get(iter, &key, &val);
ent = (rend_cache_entry_t*)val;
@@ -279,7 +279,7 @@ int rend_cache_store(const char *desc, size_t desc_len)
return -1;
}
now = time(NULL);
if (parsed->timestamp < now-REND_CACHE_MAX_AGE) {
if (parsed->timestamp < now-REND_CACHE_MAX_AGE-REND_CACHE_MAX_SKEW) {
log_fn(LOG_WARN,"Service descriptor %s is too old", query);
rend_service_descriptor_free(parsed);
return -1;