Send all error-level log messages to controllers
Right now, if:
- an assertion fails inside Tor,
- Tor has disabled sending log messages to its controllers, and
- Tor is not logging directly to syslog or any file descriptors, Tor will crash silently, with no record anywhere of why it crashed. This is especially bad for users of the Tor Browser Bundles and Vidalia Bundles, which are preconfigured to not log to disk.
Tor should:
- only log error-level messages when a crash is imminent (e.g. in
tor_assert
), - send log messages to all non-callback log sinks before sending them to callbacks, and
- send error-level log messages to controllers regardless of whether logging to controllers is otherwise disabled (with the
disable_control_logging
function or a wrapper around it).