blob: 1210cbc31893baa0fa607b70f6b6c4276accbf41 [file] [log] [blame]
Ben Cheng655a7c02013-10-16 16:09:24 -07001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _UAPI__ASM_GENERIC_SIGNAL_H
20#define _UAPI__ASM_GENERIC_SIGNAL_H
21#include <linux/types.h>
Elliott Hughes199346a2014-02-11 20:01:11 -080022#define _KERNEL__NSIG 64
Ben Cheng655a7c02013-10-16 16:09:24 -070023#define _NSIG_BPW __BITS_PER_LONG
Elliott Hughes199346a2014-02-11 20:01:11 -080024#define _NSIG_WORDS (_KERNEL__NSIG / _NSIG_BPW)
Ben Cheng655a7c02013-10-16 16:09:24 -070025#define SIGHUP 1
26#define SIGINT 2
Ben Cheng655a7c02013-10-16 16:09:24 -070027#define SIGQUIT 3
28#define SIGILL 4
29#define SIGTRAP 5
30#define SIGABRT 6
Ben Cheng655a7c02013-10-16 16:09:24 -070031#define SIGIOT 6
32#define SIGBUS 7
33#define SIGFPE 8
34#define SIGKILL 9
Ben Cheng655a7c02013-10-16 16:09:24 -070035#define SIGUSR1 10
36#define SIGSEGV 11
37#define SIGUSR2 12
38#define SIGPIPE 13
Ben Cheng655a7c02013-10-16 16:09:24 -070039#define SIGALRM 14
40#define SIGTERM 15
41#define SIGSTKFLT 16
42#define SIGCHLD 17
Ben Cheng655a7c02013-10-16 16:09:24 -070043#define SIGCONT 18
44#define SIGSTOP 19
45#define SIGTSTP 20
46#define SIGTTIN 21
Ben Cheng655a7c02013-10-16 16:09:24 -070047#define SIGTTOU 22
48#define SIGURG 23
49#define SIGXCPU 24
50#define SIGXFSZ 25
Ben Cheng655a7c02013-10-16 16:09:24 -070051#define SIGVTALRM 26
52#define SIGPROF 27
53#define SIGWINCH 28
54#define SIGIO 29
Ben Cheng655a7c02013-10-16 16:09:24 -070055#define SIGPOLL SIGIO
56#define SIGPWR 30
57#define SIGSYS 31
58#define SIGUNUSED 31
Elliott Hughes0990d4f2014-04-30 09:45:40 -070059#define __SIGRTMIN 32
Elliott Hughesfddbafd2014-05-01 10:17:27 -070060#ifndef __SIGRTMAX
Elliott Hughes0990d4f2014-04-30 09:45:40 -070061#define __SIGRTMAX _KERNEL__NSIG
Ben Cheng655a7c02013-10-16 16:09:24 -070062#endif
Ben Cheng655a7c02013-10-16 16:09:24 -070063#define SA_NOCLDSTOP 0x00000001
64#define SA_NOCLDWAIT 0x00000002
65#define SA_SIGINFO 0x00000004
66#define SA_ONSTACK 0x08000000
Ben Cheng655a7c02013-10-16 16:09:24 -070067#define SA_RESTART 0x10000000
68#define SA_NODEFER 0x40000000
69#define SA_RESETHAND 0x80000000
70#define SA_NOMASK SA_NODEFER
Ben Cheng655a7c02013-10-16 16:09:24 -070071#define SA_ONESHOT SA_RESETHAND
Christopher Ferris05d08e92016-02-04 13:16:38 -080072#if !defined(MINSIGSTKSZ) || !defined(SIGSTKSZ)
Ben Cheng655a7c02013-10-16 16:09:24 -070073#define MINSIGSTKSZ 2048
74#define SIGSTKSZ 8192
Christopher Ferris05d08e92016-02-04 13:16:38 -080075#endif
76#ifndef __ASSEMBLY__
Ben Cheng655a7c02013-10-16 16:09:24 -070077typedef struct {
Tao Baod7db5942015-01-28 10:07:51 -080078 unsigned long sig[_NSIG_WORDS];
Ben Cheng655a7c02013-10-16 16:09:24 -070079} sigset_t;
80typedef unsigned long old_sigset_t;
Ben Cheng655a7c02013-10-16 16:09:24 -070081#include <asm-generic/signal-defs.h>
82#ifdef SA_RESTORER
83#define __ARCH_HAS_SA_RESTORER
84#endif
Ben Cheng655a7c02013-10-16 16:09:24 -070085struct sigaction {
Tao Baod7db5942015-01-28 10:07:51 -080086 __sighandler_t sa_handler;
87 unsigned long sa_flags;
Ben Cheng655a7c02013-10-16 16:09:24 -070088#ifdef SA_RESTORER
Tao Baod7db5942015-01-28 10:07:51 -080089 __sigrestore_t sa_restorer;
Ben Cheng655a7c02013-10-16 16:09:24 -070090#endif
Tao Baod7db5942015-01-28 10:07:51 -080091 sigset_t sa_mask;
Ben Cheng655a7c02013-10-16 16:09:24 -070092};
Ben Cheng655a7c02013-10-16 16:09:24 -070093typedef struct sigaltstack {
Tao Baod7db5942015-01-28 10:07:51 -080094 void __user * ss_sp;
95 int ss_flags;
96 size_t ss_size;
Ben Cheng655a7c02013-10-16 16:09:24 -070097} stack_t;
98#endif
Ben Cheng655a7c02013-10-16 16:09:24 -070099#endif