]> pd.if.org Git - pdclib/blob - functions/signal/raise.c
Put printf() / scanf() test macros in seperate header.
[pdclib] / functions / signal / raise.c
1 /* $Id$ */
2
3 /* raise( int )
4
5    This file is part of the Public Domain C Library (PDCLib).
6    Permission is granted to use, modify, and / or redistribute at will.
7 */
8
9 #include <signal.h>
10
11 #ifndef REGTEST
12
13 extern void (*_PDCLIB_sigabrt)( int );
14 extern void (*_PDCLIB_sigfpe)( int );
15 extern void (*_PDCLIB_sigill)( int );
16 extern void (*_PDCLIB_sigint)( int );
17 extern void (*_PDCLIB_sigsegv)( int );
18 extern void (*_PDCLIB_sigterm)( int );
19
20 int raise( int sig )
21 {
22     switch ( sig )
23     {
24         case SIGABRT:
25             _PDCLIB_sigabrt( sig );
26             break;
27         case SIGFPE:
28             _PDCLIB_sigfpe( sig );
29             break;
30         case SIGILL:
31             _PDCLIB_sigill( sig );
32             break;
33         case SIGINT:
34             _PDCLIB_sigint( sig );
35             break;
36         case SIGSEGV:
37             _PDCLIB_sigsegv( sig );
38             break;
39         case SIGTERM:
40             _PDCLIB_sigterm( sig );
41             break;
42         default:
43             /* TODO: Implement. */
44             break;
45     }
46     /* TODO: Implement. */
47     return 0;
48 }
49
50 #endif
51
52 #ifdef TEST
53 #include <_PDCLIB_test.h>
54
55 int main( void )
56 {
57     TESTCASE( NO_TESTDRIVER );
58     return TEST_RESULTS;
59 }
60 #endif