tor/src
George Kadianakis cf8a2b1567 prop224: Set stricter expiration time of cached client descriptors.
In #23466 we discovered that cached descriptors can stay around on the
client-side for up to 72 hours. In reality we only want those descs to
get cached for the duration of the current time period, since after that
TP is gone the client needs to compute a new blinded key to use for the HS.

In this commit we start using the consensus time (if available) when
cleaning up cached client descriptor entries. That makes sense because
the client uses consensus time anyway for connecting to hidden
services (e.g. computing blinded keys and time periods).

If no recent consensus is available, we consider descriptors to be
expired since we will want to fetch new ones when we get a live
consensus to avoid the Roger bug. If we didn't do that, when Roger
desuspends his laptop there would be a race between Tor fetching a new
consensus, and Tor connecting to the HS which would still cause
reachability issues.

We also turned a rev counter check into a BUG, since we should never
receive a descriptor with a strictly smaller rev counter than the one we
already have, except if there is a bug or if the HSDir wants to mess
with us. In any case, let's turn this into a BUG so that we can detect
and debug such cases easily.
2017-09-13 14:54:49 -04:00
..
common Merge branch 'maint-0.3.1' 2017-09-11 13:49:20 -04:00
config Merge branch 'maint-0.3.0' into maint-0.3.1 2017-09-07 15:18:01 -04:00
ext Re-run trunnel. Cosmetic changes only. 2017-08-24 16:13:01 -04:00
or prop224: Set stricter expiration time of cached client descriptors. 2017-09-13 14:54:49 -04:00
rust 22839: Build tor with rust enabled on win 2017-08-21 15:08:24 -04:00
test Merge branch 'ticket21031' 2017-09-12 10:43:34 -04:00
tools 22839: Build tor with rust enabled on win 2017-08-21 15:08:24 -04:00
trace Add stub function for libor-trace. 2017-04-25 18:02:19 +02:00
trunnel Re-run trunnel. Cosmetic changes only. 2017-08-24 16:13:01 -04:00
win32 Bump to 0.3.1.6-rc-dev 2017-09-05 10:20:34 -04:00
include.am Add --enable-rust configure switch 2017-04-29 08:55:57 +02:00