Commit 3e97c12f authored by Roger Dingledine's avatar Roger Dingledine
Browse files

rearrange to prepare to solve the authdirserver initialization

precedence problem. doesn't actually solve it yet.


svn:r2079
parent 2d514037
Loading
Loading
Loading
Loading
+7 −7
Changes for src/or/main.c: 7 added lines, 7 removed lines.
Original line number Diff line number Diff line
@@ -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();
+2 −2
Changes for src/or/router.c: 2 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -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;
}

+1 −0
Changes for src/or/routerlist.c: 1 added line, 0 removed lines.
Original line number Diff line number Diff line
@@ -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);