commit a95cfb8a58cc17c217750b1c39cb5b1237e38aea Author: Nick Mathewson nickm@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) */ -