diff options
author | Roger Dingledine <arma@torproject.org> | 2011-05-30 23:50:37 -0400 |
---|---|---|
committer | Sebastian Hahn <sebastian@torproject.org> | 2011-10-26 22:09:44 +0200 |
commit | cecc5b7aa1030eddcf1a613d103b81f5cb98e959 (patch) | |
tree | 8cfa14c81c803bd0b07116af7e9c3230f3632d32 /src | |
parent | 55d9e4b8bad18a99d51b0b6347cef46e730dceda (diff) | |
download | tor-cecc5b7aa1030eddcf1a613d103b81f5cb98e959.tar tor-cecc5b7aa1030eddcf1a613d103b81f5cb98e959.tar.gz |
stop asserting at boot
The patch for 3228 made us try to run init_keys() before we had loaded
our state file, resulting in an assert inside init_keys. We had moved
it too early in the function.
Now it's later in the function, but still above the accounting calls.
Diffstat (limited to 'src')
-rw-r--r-- | src/or/config.c | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/src/or/config.c b/src/or/config.c index ea389ffda..16b5e9cfa 100644 --- a/src/or/config.c +++ b/src/or/config.c @@ -1277,18 +1277,6 @@ options_act(or_options_t *old_options) return -1; } - /* We want to reinit keys as needed before we do much of anything else: - keys are important, and other things can depend on them. */ - if (running_tor && - (transition_affects_workers || - (options->V3AuthoritativeDir && (!old_options || - !old_options->V3AuthoritativeDir)))) { - if (init_keys() < 0) { - log_warn(LD_BUG,"Error initializing keys; exiting"); - return -1; - } - } - if (consider_adding_dir_authorities(options, old_options) < 0) return -1; @@ -1333,6 +1321,17 @@ options_act(or_options_t *old_options) finish_daemon(options->DataDirectory); } + /* We want to reinit keys as needed before we do much of anything else: + keys are important, and other things can depend on them. */ + if (transition_affects_workers || + (options->V3AuthoritativeDir && (!old_options || + !old_options->V3AuthoritativeDir))) { + if (init_keys() < 0) { + log_warn(LD_BUG,"Error initializing keys; exiting"); + return -1; + } + } + /* Write our PID to the PID file. If we do not have write permissions we * will log a warning */ if (running_tor && options->PidFile) |