1 2 3 4 5 6 7 8 9 10 11 12 13
#include <linux/types.h> #include <linux/signal.h> #include <signal.h> #include <stdlib.h> void abort() { sigset_t t; if (!sigemptyset(&t) && !sigaddset(&t, SIGABRT)) sigprocmask(SIG_UNBLOCK, &t, 0); while (1) if (raise(SIGABRT)) exit(127); }