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