tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit 315f14c709d019c55731faedb19a97b771f9c42f
parent ab7bfdf40402449d6a2214e1dd5bc3fe5bc9a2e7
Author: teor <teor@torproject.org>
Date:   Fri, 20 Sep 2019 11:40:05 +1000

backtrace: avoid undefined behaviour on re-initialisation

cb_buf_mutex is statically initialised, so we can not destroy it when
we are shutting down the err subsystem. If we destroy it, and then
re-initialise tor, all our backtraces will fail.

Part of 31736, but committed in this branch to avoid merge conflicts.

Diffstat:
Msrc/lib/err/backtrace.c | 4++++
1 file changed, 4 insertions(+), 0 deletions(-)

diff --git a/src/lib/err/backtrace.c b/src/lib/err/backtrace.c @@ -251,6 +251,10 @@ remove_bt_handler(void) * It's not a fatal error, so we just ignore it. */ (void)sigaction(trap_signals[i], &sa, NULL); } + + /* cb_buf_mutex is statically initialised, so we can not destroy it. + * If we destroy it, and then re-initialise tor, all our backtraces will + * fail. */ } #endif /* defined(USE_BACKTRACE) */