|
@@ -224,10 +224,11 @@ static cached_resolve_t *newest_cached_resolve = NULL;
|
|
|
static void
|
|
|
purge_expired_resolves(uint32_t now)
|
|
|
{
|
|
|
- cached_resolve_t *resolve;
|
|
|
+ cached_resolve_t *resolve, *removed;
|
|
|
pending_connection_t *pend;
|
|
|
edge_connection_t *pendconn;
|
|
|
|
|
|
+ assert_cache_ok();
|
|
|
|
|
|
* oldest_cached_resolve is ordered by when they came in.
|
|
|
*/
|
|
@@ -264,10 +265,12 @@ purge_expired_resolves(uint32_t now)
|
|
|
if (!oldest_cached_resolve)
|
|
|
newest_cached_resolve = NULL;
|
|
|
* that too */
|
|
|
- HT_REMOVE(cache_map, &cache_root, resolve);
|
|
|
+ removed = HT_REMOVE(cache_map, &cache_root, resolve);
|
|
|
+ tor_assert(removed == resolve);
|
|
|
resolve->magic = 0xF0BBF0BB;
|
|
|
tor_free(resolve);
|
|
|
}
|
|
|
+ assert_cache_ok();
|
|
|
}
|
|
|
|
|
|
|
|
@@ -595,7 +598,8 @@ dns_purge_resolve(cached_resolve_t *resolve)
|
|
|
}
|
|
|
|
|
|
|
|
|
- HT_REMOVE(cache_map, &cache_root, resolve);
|
|
|
+ tmp = HT_REMOVE(cache_map, &cache_root, resolve);
|
|
|
+ tor_assert(tmp == resolve);
|
|
|
resolve->magic = 0xAAAAAAAA;
|
|
|
tor_free(resolve);
|
|
|
}
|