Don't include <time.h> for timespec, add forward declaration.
[kopensolaris-gnu/glibc.git] / signal / tst-signal.c
1 #include <signal.h>
2 #include <stdio.h>
3 #include <stdlib.h>
4 #include <string.h>
5
6 int win = 0;
7
8 void
9 handler (int sig)
10 {
11   printf ("Received signal %d (%s).\n", sig, strsignal(sig));
12   win = 1;
13 }
14
15 int
16 main (void)
17 {
18   if (signal (SIGTERM, handler) == SIG_ERR)
19     {
20       perror ("signal: SIGTERM");
21       exit (EXIT_FAILURE);
22     }
23
24   puts ("Set handler.");
25
26   printf ("Sending myself signal %d.\n", SIGTERM);
27   fflush (stdout);
28
29   if (raise (SIGTERM) < 0)
30     {
31       perror ("raise: SIGTERM");
32       exit (EXIT_FAILURE);
33     }
34
35   if (!win)
36     {
37       puts ("Didn't get any signal.  Test FAILED!");
38       exit (EXIT_FAILURE);
39     }
40
41   puts ("Got a signal.  Test succeeded.");
42   exit (EXIT_SUCCESS);
43 }