1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
#include <signal.h> int sigwait(const sigset_t *restrict mask, int *restrict sig) { siginfo_t si; if (sigtimedwait(mask, &si, 0) < 0) return -1; *sig = si.si_signo; return 0; } #ifdef TEST int main(void) { return 0; } #endif