From: Nick Mathewson Date: Fri, 11 Feb 2005 07:56:10 +0000 (+0000) Subject: Do not try to double-aquire lock when rotating keys. May fix deadlock bug found... X-Git-Tag: tor-0.1.0.1-rc~256 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=58540dde50566651dc884f58cef4262eb7ac0bd8;p=thirdparty%2Ftor.git Do not try to double-aquire lock when rotating keys. May fix deadlock bug found by weasel. svn:r3616 --- diff --git a/src/or/router.c b/src/or/router.c index 4d63b914d2..0cb45def30 100644 --- a/src/or/router.c +++ b/src/or/router.c @@ -129,13 +129,15 @@ void rotate_onion_key(void) log(LOG_ERR, "Couldn't write generated key to %s.", fname); goto error; } + log_fn(LOG_INFO, "Rotating onion key"); tor_mutex_acquire(key_lock); if (lastonionkey) crypto_free_pk_env(lastonionkey); - log_fn(LOG_INFO, "Rotating onion key"); lastonionkey = onionkey; - set_onion_key(prkey); + onionkey = prkey; + onionkey_set_at = time(NULL); tor_mutex_release(key_lock); + mark_my_descriptor_dirty(); return; error: log_fn(LOG_WARN, "Couldn't rotate onion key.");