tor/src/common
Nick Mathewson 9d11827780 Fix a rare infinite-recursion bug when shutting down.
Once we had called log_free_all(), anything that tried to log a
message (like a failed tor_assert()) would fail like this:

   1. The logging call eventually invokes the _log() function.
   2. _log() calls tor_mutex_lock(log_mutex).
   3. tor_mutex_lock(m) calls tor_assert(m).
   4. Since we freed the log_mutex, tor_assert() fails, and tries to
      log its failure.
   5. GOTO 1.

Now we allocate the mutex statically, and never destroy it on
shutdown.

Bugfix on 0.2.0.16-alpha, which introduced the log mutex.

This bug was found by Matt Edman.
2009-08-20 11:55:33 -04:00
..
address.c Spell-check Tor. 2009-05-27 17:55:51 -04:00
address.h Update copyright to 2009. 2009-05-04 11:28:27 -04:00
aes.c Spell-check Tor. 2009-05-27 17:55:51 -04:00
aes.h Update copyright to 2009. 2009-05-04 11:28:27 -04:00
ciphers.inc fix a few typos, and give the bootstrap phase stuff a changelog entry. 2008-06-13 04:26:05 +00:00
compat.c Don't attempt to log messages to a controller from a worker thread. 2009-05-30 18:16:24 -04:00
compat.h Don't attempt to log messages to a controller from a worker thread. 2009-05-30 18:16:24 -04:00
container.c Spell-check Tor. 2009-05-27 17:55:51 -04:00
container.h Spell-check Tor. 2009-05-27 17:55:51 -04:00
crypto.c Fixes to spelling fixes. Thanks, Roger! 2009-05-28 12:22:48 -04:00
crypto.h Update copyright to 2009. 2009-05-04 11:28:27 -04:00
ht.h Spell-check Tor. 2009-05-27 17:55:51 -04:00
log.c Fix a rare infinite-recursion bug when shutting down. 2009-08-20 11:55:33 -04:00
log.h Spell-check Tor. 2009-05-27 17:55:51 -04:00
Makefile.am r17358@pc-10-8-1-079: nickm | 2008-07-25 16:41:03 +0200 2008-07-25 14:43:24 +00:00
memarea.c Fix an assertion-failure in memarea_alloc() on 64-bit platforms. 2009-05-17 00:02:59 -04:00
memarea.h Update copyright to 2009. 2009-05-04 11:28:27 -04:00
mempool.c Spelling fixes in comments and strings 2009-05-27 16:36:13 -04:00
mempool.h Update copyright to 2009. 2009-05-04 11:28:27 -04:00
OpenBSD_malloc_Linux.c Fix the rest of the GCC warnings on OpenBSD_malloc_linux.c 2008-07-06 18:33:35 +00:00
strlcat.c r8860@totoro: nickm | 2006-10-03 14:48:33 -0400 2006-10-03 19:00:07 +00:00
strlcpy.c Remove svn $Id$s from our source, and remove tor --version --version. 2009-01-04 00:35:51 +00:00
test.h Update copyright to 2009. 2009-05-04 11:28:27 -04:00
torgzip.c Spelling fixes in comments and strings 2009-05-27 16:36:13 -04:00
torgzip.h Update copyright to 2009. 2009-05-04 11:28:27 -04:00
torint.h Update copyright to 2009. 2009-05-04 11:28:27 -04:00
tortls.c Spelling fixes in comments and strings 2009-05-27 16:36:13 -04:00
tortls.h Update copyright to 2009. 2009-05-04 11:28:27 -04:00
util.c Don't attempt to log messages to a controller from a worker thread. 2009-05-30 18:16:24 -04:00
util.h Spell-check Tor. 2009-05-27 17:55:51 -04:00