about summary refs log tree commit diff
path: root/arch/i386/bits/signal.h
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2011-02-15 00:33:23 -0500
committerRich Felker <dalias@aerifal.cx>2011-02-15 00:33:23 -0500
commit1355fdca7cb923c93f9011d8e9dcf49e1a67e537 (patch)
treebdff256e69dbeb5b5fcab7a2afc549d496d956f0 /arch/i386/bits/signal.h
parent8f4865c8d25e508154a1cb89291f79489a4b3b4c (diff)
downloadmusl-1355fdca7cb923c93f9011d8e9dcf49e1a67e537.tar.gz
musl-1355fdca7cb923c93f9011d8e9dcf49e1a67e537.tar.xz
musl-1355fdca7cb923c93f9011d8e9dcf49e1a67e537.zip
preparing build system to handle ports - step 1
Diffstat (limited to 'arch/i386/bits/signal.h')
-rw-r--r--arch/i386/bits/signal.h107
1 files changed, 107 insertions, 0 deletions
diff --git a/arch/i386/bits/signal.h b/arch/i386/bits/signal.h
new file mode 100644
index 00000000..8827efda
--- /dev/null
+++ b/arch/i386/bits/signal.h
@@ -0,0 +1,107 @@
+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
+
+struct __siginfo
+{
+	int si_signo;
+	int si_errno;
+	int si_code;
+	union
+	{
+		char __pad[128 - 3*sizeof(int)];
+		struct {
+			pid_t si_pid;
+			uid_t si_uid;
+			union sigval si_sigval;
+		} __rt;
+		struct {
+			unsigned int si_timer1;
+			unsigned int si_timer2;
+		} __timer;
+		struct {
+			pid_t si_pid;
+			uid_t si_uid;
+			int si_status;
+			clock_t si_utime;
+			clock_t si_stime;
+		} __sigchld;
+		struct {
+			void *si_addr;
+		} __sigfault;
+		struct {
+			long int si_band;
+			int si_fd;
+		} __sigpoll;
+	} __si_fields;
+};
+
+#define si_pid     __si_fields.__sigchld.si_pid
+#define si_uid     __si_fields.__sigchld.si_uid
+#define si_status  __si_fields.__sigchld.si_status
+#define si_utime   __si_fields.__sigchld.si_utime
+#define si_stime   __si_fields.__sigchld.si_stime
+#define si_value   __si_fields.__rt.si_sigval
+#define si_addr    __si_fields.__sigfault.si_addr
+#define si_band    __si_fields.__sigpoll.si_band
+
+#define SA_NOCLDSTOP  1
+#define SA_NOCLDWAIT  2
+#define SA_SIGINFO    4
+#define SA_ONSTACK    0x08000000
+#define SA_RESTART    0x10000000
+#define SA_NODEFER    0x40000000
+#define SA_RESETHAND  0x80000000
+#define SA_RESTORER   0x04000000
+
+#define SS_ONSTACK    1
+#define SS_DISABLE    2
+
+#define SIG_BLOCK     0
+#define SIG_UNBLOCK   1
+#define SIG_SETMASK   2
+
+#define SIG_HOLD ((void (*)(int)) 2)
+
+#endif
+
+#ifdef _GNU_SOURCE
+#define NSIG      64
+#endif
+
+#define SIG_ERR  ((void (*)(int))-1)
+#define SIG_DFL  ((void (*)(int)) 0)
+#define SIG_IGN  ((void (*)(int)) 1)
+
+#define SIGHUP    1
+#define SIGINT    2
+#define SIGQUIT   3
+#define SIGILL    4
+#define SIGTRAP   5
+#define SIGABRT   6
+#define SIGBUS    7
+#define SIGFPE    8
+#define SIGKILL   9
+#define SIGUSR1   10
+#define SIGSEGV   11
+#define SIGUSR2   12
+#define SIGPIPE   13
+#define SIGALRM   14
+#define SIGTERM   15
+#define SIGSTKFLT 16
+#define SIGCHLD   17
+#define SIGCONT   18
+#define SIGSTOP   19
+#define SIGTSTP   20
+#define SIGTTIN   21
+#define SIGTTOU   22
+#define SIGURG    23
+#define SIGXCPU   24
+#define SIGXFSZ   25
+#define SIGVTALRM 26
+#define SIGPROF   27
+#define SIGWINCH  28
+#define SIGIO     29
+#define SIGPOLL   29
+#define SIGPWR    30
+#define SIGSYS    31
+#define SIGUNUSED SIGSYS