commit ae33deb91d204da0689f182a0899f9f11a5bb77a Author: Alexander Færøy ahf@torproject.org Date: Mon May 15 12:09:07 2017 +0200
Check for best consensus when no consensusdiff was found.
This patch ensures that we use the current consensus in the case where no consensus diff was found or a consensus diff wasn't requested.
See: https://bugs.torproject.org/21667 --- src/or/directory.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/or/directory.c b/src/or/directory.c index 4fa4b3c..8ed1305 100644 --- a/src/or/directory.c +++ b/src/or/directory.c @@ -3815,11 +3815,14 @@ handle_get_current_consensus(dir_connection_t *conn, &compression_used); SMARTLIST_FOREACH(diff_from_digests, uint8_t *, d, tor_free(d)); smartlist_free(diff_from_digests); - } else { + } + + if (! cached_consensus) { cached_consensus = find_best_consensus(flav, args->compression_supported, &compression_used); } + time_t fresh_until, valid_until; int have_fresh_until = 0, have_valid_until = 0; if (cached_consensus) {