1    	/* sigstack, sigaltstack definitions.
2    	   Copyright (C) 1998-2015 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   	/* 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   	
31   	
32   	/* Possible values for `ss_flags.'.  */
33   	enum
34   	{
35   	  SS_ONSTACK = 1,
36   	#define SS_ONSTACK	SS_ONSTACK
37   	  SS_DISABLE
38   	#define SS_DISABLE	SS_DISABLE
39   	};
40   	
41   	/* Minimum stack size for a signal handler.  */
42   	#define MINSIGSTKSZ	2048
43   	
44   	/* System default stack size.  */
45   	#define SIGSTKSZ	8192
46   	
47   	
48   	/* Alternate, preferred interface.  */
49   	typedef struct sigaltstack
50   	  {
51   	    void *ss_sp;
52   	    int ss_flags;
53   	    size_t ss_size;
54   	  } stack_t;
55