scripts: Fix fortify checks if compiler does not support _FORTIFY_SOURCE=3
[glibc.git] / signal / tst-sigset.c
bloba2b764de5ad66ee960c94ec18df75a07fce4b9a6
1 /* Test sig*set functions. */
3 #include <signal.h>
5 #include <support/check.h>
7 static int
8 do_test (void)
10 sigset_t set;
11 TEST_VERIFY (sigemptyset (&set) == 0);
13 #define VERIFY(set, sig) \
14 TEST_VERIFY (sigismember (&set, sig) == 0); \
15 TEST_VERIFY (sigaddset (&set, sig) == 0); \
16 TEST_VERIFY (sigismember (&set, sig) != 0); \
17 TEST_VERIFY (sigdelset (&set, sig) == 0); \
18 TEST_VERIFY (sigismember (&set, sig) == 0)
20 /* ISO C99 signals. */
21 VERIFY (set, SIGINT);
22 VERIFY (set, SIGILL);
23 VERIFY (set, SIGABRT);
24 VERIFY (set, SIGFPE);
25 VERIFY (set, SIGSEGV);
26 VERIFY (set, SIGTERM);
28 /* Historical signals specified by POSIX. */
29 VERIFY (set, SIGHUP);
30 VERIFY (set, SIGQUIT);
31 VERIFY (set, SIGTRAP);
32 VERIFY (set, SIGKILL);
33 VERIFY (set, SIGBUS);
34 VERIFY (set, SIGSYS);
35 VERIFY (set, SIGPIPE);
36 VERIFY (set, SIGALRM);
38 /* New(er) POSIX signals (1003.1-2008, 1003.1-2013). */
39 VERIFY (set, SIGURG);
40 VERIFY (set, SIGSTOP);
41 VERIFY (set, SIGTSTP);
42 VERIFY (set, SIGCONT);
43 VERIFY (set, SIGCHLD);
44 VERIFY (set, SIGTTIN);
45 VERIFY (set, SIGTTOU);
46 VERIFY (set, SIGPOLL);
47 VERIFY (set, SIGXCPU);
48 VERIFY (set, SIGXFSZ);
49 VERIFY (set, SIGVTALRM);
50 VERIFY (set, SIGPROF);
51 VERIFY (set, SIGUSR1);
52 VERIFY (set, SIGUSR2);
54 /* Nonstandard signals found in all modern POSIX systems
55 (including both BSD and Linux). */
56 VERIFY (set, SIGWINCH);
58 /* Arch-specific signals. */
59 #ifdef SIGEMT
60 VERIFY (set, SIGEMT);
61 #endif
62 #ifdef SIGLOST
63 VERIFY (set, SIGLOST);
64 #endif
65 #ifdef SIGINFO
66 VERIFY (set, SIGINFO);
67 #endif
68 #ifdef SIGSTKFLT
69 VERIFY (set, SIGSTKFLT);
70 #endif
71 #ifdef SIGPWR
72 VERIFY (set, SIGPWR);
73 #endif
75 /* Read-time signals (POSIX.1b real-time extensions). If they are
76 supported SIGRTMAX value is greater than SIGRTMIN. */
77 for (int rtsig = SIGRTMIN; rtsig <= SIGRTMAX; rtsig++)
79 VERIFY (set, rtsig);
82 return 0;
85 #include <support/test-driver.c>