summaryrefslogtreecommitdiff
path: root/sys/amd64/include/sigframe.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/amd64/include/sigframe.h')
-rw-r--r--sys/amd64/include/sigframe.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/sys/amd64/include/sigframe.h b/sys/amd64/include/sigframe.h
index 947743d2c0c0..98be731d8f10 100644
--- a/sys/amd64/include/sigframe.h
+++ b/sys/amd64/include/sigframe.h
@@ -35,6 +35,7 @@
* Signal frames, arguments passed to application signal handlers.
*/
#ifdef _KERNEL
+#ifdef COMPAT_43
struct osigframe {
/*
* The first four members may be used by applications.
@@ -70,6 +71,23 @@ struct osigframe {
osiginfo_t sf_siginfo;
};
#endif
+#ifdef COMPAT_FREEBSD4
+/* FreeBSD 4.x */
+struct sigframe4 {
+ register_t sf_signum;
+ register_t sf_siginfo; /* code or pointer to sf_si */
+ register_t sf_ucontext; /* points to sf_uc */
+ register_t sf_addr; /* undocumented 4th arg */
+
+ union {
+ __siginfohandler_t *sf_action;
+ __sighandler_t *sf_handler;
+ } sf_ahu;
+ struct ucontext4 sf_uc; /* = *sf_ucontext */
+ siginfo_t sf_si; /* = *sf_siginfo (SA_SIGINFO case) */
+};
+#endif
+#endif
struct sigframe {
/*