From 9f9ee13dc019c9e6b9d97f71f8a025ff370830b8 Mon Sep 17 00:00:00 2001 From: Roger Dingledine Date: Fri, 15 Jun 2007 03:14:02 +0000 Subject: [PATCH] point out a bug in our If-Modified-Since handling in 0.2.0.2-alpha. svn:r10605 --- src/or/dirserv.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/or/dirserv.c b/src/or/dirserv.c index 223067edf1..69f73b99f7 100644 --- a/src/or/dirserv.c +++ b/src/or/dirserv.c @@ -2552,6 +2552,12 @@ dirserv_statuses_are_old(smartlist_t *fps, time_t cutoff) d = digestmap_get(cached_v2_networkstatus, digest); if (d && d->published > cutoff) return 0; + /* XXX020 The above is causing my dir cache to send "304 Not modified" + * to clients that never specified an If-Modified-Since header. That's + * because d isn't defined for the networkstatus the client is asking + * for, so we end up returning 1. Perhaps the right fix above is + * "if (!d || d->published >= cutoff)"? -RD + */ }); return 1;