Home | History | Annotate | Download | only in test
      1 /*
      2  * Check that strace output contains RT_1 RT_3 RT_31 RT_32 here:
      3  *  rt_sigprocmask(SIG_BLOCK, [CHLD RT_1 RT_3 RT_31 RT_32], NULL, 8) = 0
      4  * and here:
      5  *  sigreturn() (mask [CHLD RT_1 RT_3 RT_31 RT_32]) = 0
      6  *
      7  * On x86, both 32-bit and 64-bit strace needs to be checked.
      8  */
      9 #include <stdlib.h>
     10 #include <unistd.h>
     11 #include <signal.h>
     12 
     13 void null_handler(int sig)
     14 {
     15 }
     16 
     17 int main(int argc, char *argv[])
     18 {
     19 	sigset_t set;
     20 	sigemptyset(&set);
     21 	sigaddset(&set, SIGCHLD);
     22 	sigaddset(&set, 33);
     23 	sigaddset(&set, 35);
     24 	sigaddset(&set, 63);
     25 	sigaddset(&set, 64);
     26 	sigprocmask(SIG_BLOCK, &set, NULL);
     27 	signal(SIGWINCH, null_handler);
     28 	raise(SIGWINCH);
     29 	return 0;
     30 }
     31