diff options
author | peter <peter@FreeBSD.org> | 2002-10-25 19:10:58 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2002-10-25 19:10:58 +0000 |
commit | f7fa86b743f4851065b80a704e7ee6c9922b5bda (patch) | |
tree | 96a1089f558875f808b1fd36f885179cd78f55de /sys/amd64/include/signal.h | |
parent | c689b5c88a817d10910bb530d1a68187b58db634 (diff) | |
download | FreeBSD-src-f7fa86b743f4851065b80a704e7ee6c9922b5bda.zip FreeBSD-src-f7fa86b743f4851065b80a704e7ee6c9922b5bda.tar.gz |
Split 4.x and 5.x signal handling so that we can keep 4.x signal
handling clean and functional as 5.x evolves. This allows some of the
nasty bandaids in the 5.x codepaths to be unwound.
Encapsulate 4.x signal handling under COMPAT_FREEBSD4 (there is an
anti-foot-shooting measure in place, 5.x folks need this for a while) and
finish encapsulating the older stuff under COMPAT_43. Since the ancient
stuff is required on alpha (longjmp(3) passes a 'struct osigcontext *'
to the current sigreturn(2), instead of the 'ucontext_t *' that sigreturn
is supposed to take), add a compile time check to prevent foot shooting
there too. Add uniform COMPAT_43 stubs for ia64/sparc64/powerpc.
Tested on: i386, alpha, ia64. Compiled on sparc64 (a few days ago).
Approved by: re
Diffstat (limited to 'sys/amd64/include/signal.h')
-rw-r--r-- | sys/amd64/include/signal.h | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/sys/amd64/include/signal.h b/sys/amd64/include/signal.h index 9fcca63..29a9776 100644 --- a/sys/amd64/include/signal.h +++ b/sys/amd64/include/signal.h @@ -60,7 +60,7 @@ typedef int sig_atomic_t; /* * Only the kernel should need these old type definitions. */ -#ifdef _KERNEL +#if defined(_KERNEL) && defined(COMPAT_43) /* * Information pushed on stack when a signal is delivered. * This is used by the kernel to restore state following @@ -68,8 +68,6 @@ typedef int sig_atomic_t; * to the handler to allow it to restore state properly if * a non-standard exit is performed. */ -typedef unsigned int osigset_t; - struct osigcontext { int sc_onstack; /* sigstack state to restore */ osigset_t sc_mask; /* signal mask to restore */ |