Entry Nodes: Mark outdated dirservers in reasonably live consensuses

Fixes bug 28569; bugfix on Tor 0.3.2.5-alpha.
This commit is contained in:
teor 2018-11-21 19:51:34 +10:00
parent d1ac5613fc
commit 657618ba9b
No known key found for this signature in database
GPG Key ID: 10FEAA0E7075672A
2 changed files with 9 additions and 4 deletions

3
changes/bug28569 Normal file
View File

@ -0,0 +1,3 @@
o Minor bugfixes (unit tests, directory clients):
- Mark outdated dirservers when Tor only has a reasonably live consensus.
Fixes bug 28569; bugfix on 0.3.2.5-alpha.

View File

@ -108,10 +108,12 @@ microdesc_note_outdated_dirserver(const char *relay_digest)
{
char relay_hexdigest[HEX_DIGEST_LEN+1];
/* Don't register outdated dirservers if we don't have a live consensus,
* since we might be trying to fetch microdescriptors that are not even
* currently active. */
if (!networkstatus_get_live_consensus(approx_time())) {
/* If we have a reasonably live consensus, then most of our dirservers should
* still be caching all the microdescriptors in it. Reasonably live
* consensuses are up to a day old. But microdescriptors expire 7 days after
* the last consensus that referenced them. */
if (!networkstatus_get_reasonably_live_consensus(approx_time(),
FLAV_MICRODESC)) {
return;
}