Back to index

glibc  2.9
sigstack.h
Go to the documentation of this file.
00001 /* sigstack, sigaltstack definitions.
00002    Copyright (C) 1998 Free Software Foundation, Inc.
00003    This file is part of the GNU C Library.
00004 
00005    The GNU C Library is free software; you can redistribute it and/or
00006    modify it under the terms of the GNU Lesser General Public
00007    License as published by the Free Software Foundation; either
00008    version 2.1 of the License, or (at your option) any later version.
00009 
00010    The GNU C Library is distributed in the hope that it will be useful,
00011    but WITHOUT ANY WARRANTY; without even the implied warranty of
00012    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013    Lesser General Public License for more details.
00014 
00015    You should have received a copy of the GNU Lesser General Public
00016    License along with the GNU C Library; if not, write to the Free
00017    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
00018    02111-1307 USA.  */
00019 
00020 #ifndef _SIGNAL_H
00021 # error "Never include this file directly.  Use <signal.h> instead"
00022 #endif
00023 
00024 
00025 /* Structure describing a signal stack (obsolete).  */
00026 struct sigstack
00027   {
00028     __ptr_t ss_sp;          /* Signal stack pointer.  */
00029     int ss_onstack;         /* Nonzero if executing on this stack.  */
00030   };
00031 
00032 
00033 /* Possible values for `ss_flags.'.  */
00034 enum
00035 {
00036   SS_ONSTACK = 1,
00037 #define SS_ONSTACK   SS_ONSTACK
00038   SS_DISABLE
00039 #define SS_DISABLE   SS_DISABLE
00040 };
00041 
00042 /* Minimum stack size for a signal handler.  */
00043 #define MINSIGSTKSZ  2048
00044 
00045 /* System default stack size.  */
00046 #define SIGSTKSZ     8192
00047 
00048 
00049 /* Alternate, preferred interface.  */
00050 typedef struct sigaltstack
00051   {
00052     __ptr_t ss_sp;
00053     int ss_flags;
00054     size_t ss_size;
00055   } stack_t;