summaryrefslogtreecommitdiff
path: root/src/or/dirserv.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2004-11-15 16:17:59 +0000
committerNick Mathewson <nickm@torproject.org>2004-11-15 16:17:59 +0000
commit7a8ac5dfef401fa26e37dcfd2b2a8ccb4285613b (patch)
tree03bd4754f9dfc882aeaf49fa3608ec6d7b1d9292 /src/or/dirserv.c
parent39f39b0c17cd1d7677d762529476b82f12b6c6a3 (diff)
downloadtor-7a8ac5dfef401fa26e37dcfd2b2a8ccb4285613b.tar.gz
tor-7a8ac5dfef401fa26e37dcfd2b2a8ccb4285613b.zip
Tweak on patch to make authoritative directory servers cache
directories on disk. Make authdirservers cache *their own* directories instead of the ones they download. This gives better liveness, and marginally better resistance to broken authdirservers. Authdirservers don't cache running-routers at all: r-r isn't stored to disk, so there's no point right now. svn:r2893
Diffstat (limited to 'src/or/dirserv.c')
-rw-r--r--src/or/dirserv.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/or/dirserv.c b/src/or/dirserv.c
index f2946f9082..e96adc0a71 100644
--- a/src/or/dirserv.c
+++ b/src/or/dirserv.c
@@ -807,6 +807,10 @@ static int dirserv_regenerate_directory(void)
tor_free(new_directory);
the_directory_is_dirty = 0;
+ /* Save the directory to disk so we re-load it quickly on startup.
+ */
+ dirserv_set_cached_directory(the_directory, time(NULL), 0);
+
return 0;
}
@@ -891,6 +895,11 @@ static int generate_runningrouters(crypto_pk_env_t *private_key)
return -1;
}
runningrouters_is_dirty = 0;
+
+ /* We don't cache runnning-routers to disk, so there's no point in
+ * authdirservers caching it. */
+ /* dirserv_set_cached_directory(the_runningrouters, time(NULL), 1); */
+
return 0;
err:
tor_free(s);