[tor-commits] [tor/maint-0.3.4] Clear all control.c flags on control_free_all()

nickm at torproject.org nickm at torproject.org
Mon Jul 9 13:22:20 UTC 2018


commit a95cfb8a58cc17c217750b1c39cb5b1237e38aea
Author: Nick Mathewson <nickm at torproject.org>
Date:   Fri Mar 23 11:31:56 2018 -0400

    Clear all control.c flags on control_free_all()
    
    Fixes bug 25512.
    
    (Cherry-picked from 3519d0c8086ede
---
 changes/bug25512 | 5 +++++
 src/or/control.c | 9 ++++++++-
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/changes/bug25512 b/changes/bug25512
new file mode 100644
index 000000000..4b6491867
--- /dev/null
+++ b/changes/bug25512
@@ -0,0 +1,5 @@
+  o Minor bugfixes (restart-in-process):
+    - When shutting down, Tor now clears all the flags in the control.c
+      module. This should prevent a bug where authentication cookies
+      are not generated on restart. Fixes bug 25512; bugfix on 0.3.3.1-alpha.
+
diff --git a/src/or/control.c b/src/or/control.c
index 06360586e..189872502 100644
--- a/src/or/control.c
+++ b/src/or/control.c
@@ -7610,6 +7610,14 @@ control_free_all(void)
     tor_event_free(flush_queued_events_event);
     flush_queued_events_event = NULL;
   }
+  bootstrap_percent = BOOTSTRAP_STATUS_UNDEF;
+  notice_bootstrap_percent = 0;
+  bootstrap_problems = 0;
+  authentication_cookie_is_set = 0;
+  global_event_mask = 0;
+  disable_log_messages = 0;
+  memset(last_sent_bootstrap_message, 0, sizeof(last_sent_bootstrap_message));
+  flush_queued_event_pending = 0;
 }
 
 #ifdef TOR_UNIT_TESTS
@@ -7620,4 +7628,3 @@ control_testing_set_global_event_mask(uint64_t mask)
   global_event_mask = mask;
 }
 #endif /* defined(TOR_UNIT_TESTS) */
-





More information about the tor-commits mailing list