1 /* sigstack, sigaltstack definitions.
2    Copyright (C) 1998, 1999 Free Software Foundation, Inc.
3    This file is part of the GNU C Library.
4 
5    The GNU C Library is free software; you can redistribute it and/or
6    modify it under the terms of the GNU Lesser General Public
7    License as published by the Free Software Foundation; either
8    version 2.1 of the License, or (at your option) any later version.
9 
10    The GNU C Library is distributed in the hope that it will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13    Lesser General Public License for more details.
14 
15    You should have received a copy of the GNU Lesser General Public
16    License along with the GNU C Library; if not, see
17    <http://www.gnu.org/licenses/>.  */
18 
19 #ifndef _SIGNAL_H
20 # error "Never include this file directly.  Use <signal.h> instead"
21 #endif
22 
23 
24 #if defined __UCLIBC_SUSV4_LEGACY__ || !defined __UCLIBC_STRICT_HEADERS__
25 /* Structure describing a signal stack (obsolete).  */
26 struct sigstack
27   {
28     void *ss_sp;		/* Signal stack pointer.  */
29     int ss_onstack;		/* Nonzero if executing on this stack.  */
30   };
31 #endif
32 
33 
34 /* Possible values for `ss_flags.'.  */
35 enum
36 {
37   SS_ONSTACK = 1,
38 #define SS_ONSTACK	SS_ONSTACK
39   SS_DISABLE
40 #define SS_DISABLE	SS_DISABLE
41 };
42 
43 /* Minimum stack size for a signal handler.  */
44 #define MINSIGSTKSZ	2048
45 
46 /* System default stack size.  */
47 #define SIGSTKSZ	8192
48 
49 
50 /* Alternate, preferred interface.  */
51 typedef struct sigaltstack
52   {
53     void *ss_sp;
54     int ss_flags;
55     size_t ss_size;
56   } stack_t;
57