Clear all control.c flags on control_free_all()

Fixes bug 25512.

(Cherry-picked from 3519d0c808
This commit is contained in:
Nick Mathewson 2018-03-23 11:31:56 -04:00
parent f721a08220
commit a95cfb8a58
2 changed files with 13 additions and 1 deletions

5
changes/bug25512 Normal file
View File

@ -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.

View File

@ -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) */