commit 85cf6dcba3693bbd1264e5fae05346ddf1909b85 Author: Nick Mathewson nickm@torproject.org Date: Mon Mar 6 15:37:01 2017 -0500
Stop declining to download microdescs with future published times.
This change is the only one necessary to allow future versions of the microdescriptor consensus to replace every 'published' date with e.g. 2038-01-01 00:00:00; this will save 50-75% in compressed microdescriptor diff size, which is quite significant.
This commit is a minimal change for 0.2.9; future series will reduce the use of the 'published' date even more.
Implements part of ticket 21642; implements part of proposal 275. --- changes/prop275-minimal | 9 +++++++++ src/or/networkstatus.c | 5 ----- 2 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/changes/prop275-minimal b/changes/prop275-minimal new file mode 100644 index 0000000..83d42f8 --- /dev/null +++ b/changes/prop275-minimal @@ -0,0 +1,9 @@ + o Minor features (future-proofing): + + - Tor no longer refuses to download microdescriptors or descriptors if + they are listed as "published in the future". This change will + eventually allow us to stop listing meaningful "published" dates + in microdescriptor consensuses, and thereby allow us to reduce the + resources required to download consensus diffs by over 50%. + Implements part of ticket 21642; implements part of proposal 275. + diff --git a/src/or/networkstatus.c b/src/or/networkstatus.c index 2d39c90..991cf80 100644 --- a/src/or/networkstatus.c +++ b/src/or/networkstatus.c @@ -2360,11 +2360,6 @@ client_would_use_router(const routerstatus_t *rs, time_t now, * But, if we want to have a complete list, fetch it anyway. */ return 0; } - if (rs->published_on + options->TestingEstimatedDescriptorPropagationTime - > now) { - /* Most caches probably don't have this descriptor yet. */ - return 0; - } if (rs->published_on + OLD_ROUTER_DESC_MAX_AGE < now) { /* We'd drop it immediately for being too old. */ return 0;