[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-commits] [tor/master] backtrace: avoid undefined behaviour on re-initialisation



commit 315f14c709d019c55731faedb19a97b771f9c42f
Author: teor <teor@xxxxxxxxxxxxxx>
Date:   Fri Sep 20 11:40:05 2019 +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.
---
 src/lib/err/backtrace.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/lib/err/backtrace.c b/src/lib/err/backtrace.c
index bf833c162..2a956e611 100644
--- 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) */
 



_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits