aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Wemm <peter@FreeBSD.org>2004-04-14 23:20:14 +0000
committerPeter Wemm <peter@FreeBSD.org>2004-04-14 23:20:14 +0000
commit5027176b20ed6e74f01858d5c7da59203d60323b (patch)
tree13d9ec14f6fe25d7d1f2b3334199fccb9441cc08
parent5b3283b084ebf424d065c8f3116e231510857e7b (diff)
downloadsrc-5027176b20ed6e74f01858d5c7da59203d60323b.tar.gz
src-5027176b20ed6e74f01858d5c7da59203d60323b.zip
Check in structure definitions for the FreeBSD-3.x signal syscall stuff.
Nothing uses these yet, but I dont want to lose them.
Notes
Notes: svn path=/head/; revision=128262
-rw-r--r--sys/compat/ia32/ia32_signal.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/sys/compat/ia32/ia32_signal.h b/sys/compat/ia32/ia32_signal.h
index 9752a63c22c4..b618b172603c 100644
--- a/sys/compat/ia32/ia32_signal.h
+++ b/sys/compat/ia32/ia32_signal.h
@@ -113,6 +113,32 @@ struct ia32_ucontext4 {
};
#endif
+#ifdef COMPAT_FREEBSD3
+struct ia32_sigcontext3 {
+ int sc_onstack;
+ u_int32_t sc_mask;
+ int sc_esp;
+ int sc_ebp;
+ int sc_isp;
+ int sc_eip;
+ int sc_eflags;
+ int sc_es;
+ int sc_ds;
+ int sc_cs;
+ int sc_ss;
+ int sc_edi;
+ int sc_esi;
+ int sc_ebx;
+ int sc_edx;
+ int sc_ecx;
+ int sc_eax;
+ int sc_gs;
+ int sc_fs;
+ int sc_trapno;
+ int sc_err;
+};
+#endif
+
/*
* Signal frames, arguments passed to application signal handlers.
*/
@@ -156,6 +182,23 @@ struct ia32_sigframe {
struct ia32_siginfo sf_si; /* = *sf_siginfo (SA_SIGINFO case) */
};
+#ifdef COMPAT_FREEBSD3
+struct ia32_siginfo3 {
+ struct ia32_sigcontext3 si_sc;
+ int si_signo;
+ int si_code;
+ union ia32_sigval si_value;
+};
+struct ia32_sigframe3 {
+ int sf_signum;
+ u_int32_t sf_arg2; /* int or siginfo_t */
+ u_int32_t sf_scp;
+ u_int32_t sf_addr;
+ u_int32_t sf_ah; /* action/handler pointer */
+ struct ia32_siginfo3 sf_siginfo;
+};
+#endif
+
extern char ia32_sigcode[];
extern char freebsd4_ia32_sigcode[];
extern int sz_ia32_sigcode;