int main(int argc, char **argv) { log_severity_list_t severity; if (argc < 2) { puts("I take an argument. It should be \"assert\" or \"crash\" or " "\"backtraces\" or \"none\""); return 1; } #if !(defined(HAVE_EXECINFO_H) && defined(HAVE_BACKTRACE) && \ defined(HAVE_BACKTRACE_SYMBOLS_FD) && defined(HAVE_SIGACTION)) puts("Backtrace reporting is not supported on this platform"); return 77; #endif if (!strcmp(argv[1], "assert")) { crashtype = 1; } else if (!strcmp(argv[1], "crash")) { crashtype = 0; } else if (!strcmp(argv[1], "none")) { crashtype = -1; } else if (!strcmp(argv[1], "backtraces")) { return 0; } else { puts("Argument should be \"assert\" or \"crash\" or \"none\""); return 1; } init_logging(1); set_log_severity_config(LOG_WARN, LOG_ERR, &severity); add_stream_log(&severity, "stdout", STDOUT_FILENO); tor_log_update_sigsafe_err_fds(); configure_backtrace_handler(NULL); signal(SIGABRT, abort_handler); printf("%d\n", we_weave(2)); clean_up_backtrace_handler(); logs_free_all(); return 0; }
int main(int argc, char **argv) { log_severity_list_t severity; if (argc < 2) { puts("I take an argument. It should be \"assert\" or \"crash\" or " "\"none\""); return 1; } if (!strcmp(argv[1], "assert")) { crashtype = 1; } else if (!strcmp(argv[1], "crash")) { crashtype = 0; } else if (!strcmp(argv[1], "none")) { crashtype = -1; } else { puts("Argument should be \"assert\" or \"crash\" or \"none\""); return 1; } init_logging(1); set_log_severity_config(LOG_WARN, LOG_ERR, &severity); add_stream_log(&severity, "stdout", STDOUT_FILENO); tor_log_update_sigsafe_err_fds(); configure_backtrace_handler(NULL); signal(SIGABRT, abort_handler); printf("%d\n", we_weave(2)); clean_up_backtrace_handler(); return 0; }