diff options
author | Roger Dingledine <arma@torproject.org> | 2004-07-21 07:50:06 +0000 |
---|---|---|
committer | Roger Dingledine <arma@torproject.org> | 2004-07-21 07:50:06 +0000 |
commit | 3e97c12f24398db96d4f1926020656a1561082ca (patch) | |
tree | d634e5d3acfd97a5f8f753d6a622db5ee94fb9e3 /src | |
parent | 2d514037b7c9fa8a04eca4cf6e3864953b020d16 (diff) | |
download | tor-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.c | 14 | ||||
-rw-r--r-- | src/or/router.c | 4 | ||||
-rw-r--r-- | src/or/routerlist.c | 1 |
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); |