diff options
author | peter <peter@FreeBSD.org> | 2004-04-14 23:20:14 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2004-04-14 23:20:14 +0000 |
commit | 185be4df7ac473452a43a3b4c8d2ab01c7f626b4 (patch) | |
tree | 13d9ec14f6fe25d7d1f2b3334199fccb9441cc08 /sys/compat/ia32 | |
parent | 462ac7570697f79a45cbaa2771f8fcf2e7349fc1 (diff) | |
download | FreeBSD-src-185be4df7ac473452a43a3b4c8d2ab01c7f626b4.zip FreeBSD-src-185be4df7ac473452a43a3b4c8d2ab01c7f626b4.tar.gz |
Check in structure definitions for the FreeBSD-3.x signal syscall stuff.
Nothing uses these yet, but I dont want to lose them.
Diffstat (limited to 'sys/compat/ia32')
-rw-r--r-- | sys/compat/ia32/ia32_signal.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/sys/compat/ia32/ia32_signal.h b/sys/compat/ia32/ia32_signal.h index 9752a63..b618b17 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; |