/*
* Check that strace output contains RT_1 RT_3 RT_31 RT_32 here:
* rt_sigprocmask(SIG_BLOCK, [CHLD RT_1 RT_3 RT_31 RT_32], NULL, 8) = 0
* and here:
* sigreturn() (mask [CHLD RT_1 RT_3 RT_31 RT_32]) = 0
*
* On x86, both 32-bit and 64-bit strace needs to be checked.
*/
#include <stdlib.h>
#include <unistd.h>
#include <signal.h>
void null_handler(int sig)
{
}
int main(int argc, char *argv[])
{
sigset_t set;
sigemptyset(&set);
sigaddset(&set, SIGCHLD);
sigaddset(&set, 33);
sigaddset(&set, 35);
sigaddset(&set, 63);
sigaddset(&set, 64);
sigprocmask(SIG_BLOCK, &set, NULL);
signal(SIGWINCH, null_handler);
raise(SIGWINCH);
return 0;
}