]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
e6d930b4 IM |
2 | #ifndef _LINUX_SIGNAL_TYPES_H |
3 | #define _LINUX_SIGNAL_TYPES_H | |
4 | ||
76960dbf IM |
5 | /* |
6 | * Basic signal handling related data type definitions: | |
7 | */ | |
8 | ||
e6d930b4 IM |
9 | #include <linux/list.h> |
10 | #include <uapi/linux/signal.h> | |
11 | ||
76960dbf IM |
12 | /* |
13 | * Real Time signals may be queued. | |
14 | */ | |
15 | ||
16 | struct sigqueue { | |
17 | struct list_head list; | |
18 | int flags; | |
19 | siginfo_t info; | |
20 | struct user_struct *user; | |
21 | }; | |
22 | ||
23 | /* flags values. */ | |
24 | #define SIGQUEUE_PREALLOC 1 | |
25 | ||
26 | struct sigpending { | |
27 | struct list_head list; | |
28 | sigset_t signal; | |
29 | }; | |
30 | ||
31 | struct sigaction { | |
32 | #ifndef __ARCH_HAS_IRIX_SIGACTION | |
33 | __sighandler_t sa_handler; | |
34 | unsigned long sa_flags; | |
35 | #else | |
36 | unsigned int sa_flags; | |
37 | __sighandler_t sa_handler; | |
38 | #endif | |
39 | #ifdef __ARCH_HAS_SA_RESTORER | |
40 | __sigrestore_t sa_restorer; | |
41 | #endif | |
42 | sigset_t sa_mask; /* mask last for extensibility */ | |
43 | }; | |
44 | ||
45 | struct k_sigaction { | |
46 | struct sigaction sa; | |
47 | #ifdef __ARCH_HAS_KA_RESTORER | |
48 | __sigrestore_t ka_restorer; | |
49 | #endif | |
50 | }; | |
51 | ||
52 | #ifdef CONFIG_OLD_SIGACTION | |
53 | struct old_sigaction { | |
54 | __sighandler_t sa_handler; | |
55 | old_sigset_t sa_mask; | |
56 | unsigned long sa_flags; | |
57 | __sigrestore_t sa_restorer; | |
58 | }; | |
59 | #endif | |
60 | ||
61 | struct ksignal { | |
62 | struct k_sigaction ka; | |
63 | siginfo_t info; | |
64 | int sig; | |
65 | }; | |
66 | ||
e6d930b4 | 67 | #endif /* _LINUX_SIGNAL_TYPES_H */ |