]> git.proxmox.com Git - mirror_qemu.git/blame - linux-user/generic/signal.h
Merge tag 'pull-qapi-2023-07-10' of https://repo.or.cz/qemu/armbru into staging
[mirror_qemu.git] / linux-user / generic / signal.h
CommitLineData
e5171a9e
LV
1/*
2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of the GNU General Public License version 2 as
4 * published by the Free Software Foundation, or (at your option) any
5 * later version. See the COPYING file in the top-level directory.
6 */
7
8#ifndef GENERIC_SIGNAL_H
9#define GENERIC_SIGNAL_H
10
11#define TARGET_SA_NOCLDSTOP 0x00000001
12#define TARGET_SA_NOCLDWAIT 0x00000002 /* not supported yet */
13#define TARGET_SA_SIGINFO 0x00000004
14#define TARGET_SA_ONSTACK 0x08000000
15#define TARGET_SA_RESTART 0x10000000
16#define TARGET_SA_NODEFER 0x40000000
17#define TARGET_SA_RESETHAND 0x80000000
18#define TARGET_SA_RESTORER 0x04000000
19
20#define TARGET_SIGHUP 1
21#define TARGET_SIGINT 2
22#define TARGET_SIGQUIT 3
23#define TARGET_SIGILL 4
24#define TARGET_SIGTRAP 5
25#define TARGET_SIGABRT 6
26#define TARGET_SIGIOT 6
27#define TARGET_SIGBUS 7
28#define TARGET_SIGFPE 8
29#define TARGET_SIGKILL 9
30#define TARGET_SIGUSR1 10
31#define TARGET_SIGSEGV 11
32#define TARGET_SIGUSR2 12
33#define TARGET_SIGPIPE 13
34#define TARGET_SIGALRM 14
35#define TARGET_SIGTERM 15
36#define TARGET_SIGSTKFLT 16
37#define TARGET_SIGCHLD 17
38#define TARGET_SIGCONT 18
39#define TARGET_SIGSTOP 19
40#define TARGET_SIGTSTP 20
41#define TARGET_SIGTTIN 21
42#define TARGET_SIGTTOU 22
43#define TARGET_SIGURG 23
44#define TARGET_SIGXCPU 24
45#define TARGET_SIGXFSZ 25
46#define TARGET_SIGVTALRM 26
47#define TARGET_SIGPROF 27
48#define TARGET_SIGWINCH 28
49#define TARGET_SIGIO 29
50#define TARGET_SIGPWR 30
51#define TARGET_SIGSYS 31
52#define TARGET_SIGRTMIN 32
53
54#define TARGET_SIG_BLOCK 0 /* for blocking signals */
55#define TARGET_SIG_UNBLOCK 1 /* for unblocking signals */
56#define TARGET_SIG_SETMASK 2 /* for setting the signal mask */
fba08745 57
e068b57d
SG
58/* this struct defines a stack used during syscall handling */
59typedef struct target_sigaltstack {
60 abi_ulong ss_sp;
61 abi_int ss_flags;
62 abi_ulong ss_size;
63} target_stack_t;
64
65/*
66 * sigaltstack controls
67 */
68#define TARGET_SS_ONSTACK 1
69#define TARGET_SS_DISABLE 2
70
71#define TARGET_MINSIGSTKSZ 2048
e068b57d 72
fba08745
CG
73/* bit-flags */
74#define TARGET_SS_AUTODISARM (1U << 31) /* disable sas during sighandling */
75/* mask for all SS_xxx flags */
76#define TARGET_SS_FLAG_BITS TARGET_SS_AUTODISARM
77
e5171a9e 78#endif