aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2004-07-21 07:50:06 +0000
committerRoger Dingledine <arma@torproject.org>2004-07-21 07:50:06 +0000
commit3e97c12f24398db96d4f1926020656a1561082ca (patch)
treed634e5d3acfd97a5f8f753d6a622db5ee94fb9e3 /src
parent2d514037b7c9fa8a04eca4cf6e3864953b020d16 (diff)
downloadtor-3e97c12f24398db96d4f1926020656a1561082ca.tar
tor-3e97c12f24398db96d4f1926020656a1561082ca.tar.gz
rearrange to prepare to solve the authdirserver initialization
precedence problem. doesn't actually solve it yet. svn:r2079
Diffstat (limited to 'src')
-rw-r--r--src/or/main.c14
-rw-r--r--src/or/router.c4
-rw-r--r--src/or/routerlist.c1
3 files changed, 10 insertions, 9 deletions
diff --git a/src/or/main.c b/src/or/main.c
index 759487c0a..b3898fff3 100644
--- a/src/or/main.c
+++ b/src/or/main.c
@@ -763,13 +763,6 @@ static int do_main_loop(void) {
/* Intialize the service cache. */
rend_cache_init();
- /* load the private keys, if we're supposed to have them, and set up the
- * TLS context. */
- if (init_keys() < 0 || rend_service_load_keys() < 0) {
- log_fn(LOG_ERR,"Error initializing keys; exiting");
- return -1;
- }
-
/* load the routers file */
if(options.RouterFile) {
routerlist_clear_trusted_directories();
@@ -779,6 +772,13 @@ static int do_main_loop(void) {
}
}
+ /* load the private keys, if we're supposed to have them, and set up the
+ * TLS context. */
+ if (init_keys() < 0 || rend_service_load_keys() < 0) {
+ log_fn(LOG_ERR,"Error initializing keys; exiting");
+ return -1;
+ }
+
if(authdir_mode()) {
/* the directory is already here, run startup things */
directory_has_arrived();
diff --git a/src/or/router.c b/src/or/router.c
index 578370893..c0f3cbce6 100644
--- a/src/or/router.c
+++ b/src/or/router.c
@@ -509,6 +509,8 @@ int router_rebuild_descriptor(void) {
ri->bandwidthburst = options.BandwidthBurst;
ri->exit_policy = NULL; /* zero it out first */
router_add_exit_policy_from_config(ri);
+ ri->is_trusted_dir = (ri->dir_port &&
+ router_digest_is_trusted_dir(ri->identity_digest));
if (desc_routerinfo)
routerinfo_free(desc_routerinfo);
desc_routerinfo = ri;
@@ -516,8 +518,6 @@ int router_rebuild_descriptor(void) {
log_fn(LOG_WARN, "Couldn't dump router to string.");
return -1;
}
- ri->is_trusted_dir = (ri->dir_port &&
- router_digest_is_trusted_dir(ri->identity_digest));
return 0;
}
diff --git a/src/or/routerlist.c b/src/or/routerlist.c
index 250e7d2a8..2ba74d7ea 100644
--- a/src/or/routerlist.c
+++ b/src/or/routerlist.c
@@ -571,6 +571,7 @@ int router_load_routerlist_from_string(const char *s, int trusted)
routerinfo_t *r = smartlist_get(new_list->routers, i);
if (r->dir_port) {
char *b;
+ log_fn(LOG_DEBUG,"Trusting router %s.", r->nickname);
r->is_trusted_dir = 1;
b = tor_malloc(DIGEST_LEN);
memcpy(b, r->identity_digest, DIGEST_LEN);