20 #define raw_assert(expr) STMT_BEGIN \
22 tor_raw_assertion_failed_msg_(__FILE__, __LINE__, #expr, NULL); \
26 #define raw_assert_unreached(expr) raw_assert(0)
27 #define raw_assert_unreached_msg(msg) STMT_BEGIN \
28 tor_raw_assertion_failed_msg_(__FILE__, __LINE__, "0", (msg)); \
37 #define TOR_SIGSAFE_LOG_MAX_FDS 8
Utility macros to handle different features and behavior in different compilers.
void tor_log_flush_sigsafe_err_fds(void)
int format_dec_number_sigsafe(unsigned long x, char *buf, int max_len)
void tor_raw_abort_(void) ATTR_NORETURN
void tor_log_sigsafe_err_set_granularity(int ms)
void tor_log_reset_sigsafe_err_fds(void)
void tor_log_set_sigsafe_err_fds(const int *fds, int n)
void tor_raw_assertion_failed_msg_(const char *file, int line, const char *expr, const char *msg)
void tor_log_err_sigsafe(const char *m,...)
int format_hex_number_sigsafe(unsigned long x, char *buf, int max_len)
int tor_log_get_sigsafe_err_fds(const int **out)