15dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes/*
25dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes * Check that strace output contains RT_1 RT_3 RT_31 RT_32 here:
35dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes *  rt_sigprocmask(SIG_BLOCK, [CHLD RT_1 RT_3 RT_31 RT_32], NULL, 8) = 0
45dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes * and here:
55dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes *  sigreturn() (mask [CHLD RT_1 RT_3 RT_31 RT_32]) = 0
65dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes *
75dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes * On x86, both 32-bit and 64-bit strace needs to be checked.
85dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes */
95dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes#include <stdlib.h>
105dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes#include <unistd.h>
115dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes#include <signal.h>
125dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes
135dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughesvoid null_handler(int sig)
145dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes{
155dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes}
165dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes
175dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughesint main(int argc, char *argv[])
185dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes{
195dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes	sigset_t set;
205dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes	sigemptyset(&set);
215dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes	sigaddset(&set, SIGCHLD);
225dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes	sigaddset(&set, 33);
235dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes	sigaddset(&set, 35);
245dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes	sigaddset(&set, 63);
255dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes	sigaddset(&set, 64);
265dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes	sigprocmask(SIG_BLOCK, &set, NULL);
275dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes	signal(SIGWINCH, null_handler);
285dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes	raise(SIGWINCH);
295dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes	return 0;
305dec78d0c2663930cd1bbcecbbcee47f68bc52f3Elliott Hughes}
31