1 2 3 4 5 6 7 8 9 10
#include <signal.h> int sighold(int sig) { sigset_t mask; sigemptyset(&mask); if (sigaddset(&mask, sig) < 0) return -1; return sigprocmask(SIG_BLOCK, &mask, 0); }