MFC r206549:

Align the declaration for sa_sigaction with POSIX.

MFC r206649:
Still reference struct __sigaction with clarification when this form
of argument declaration is needed.

MFC r206802:
Revert r206649. Simplify the presented declaration of struct sigaction.
This commit is contained in:
Konstantin Belousov 2010-04-21 11:09:13 +00:00
parent 124981e16f
commit c36c99a99d

View File

@ -28,7 +28,7 @@
.\" From: @(#)sigaction.2 8.2 (Berkeley) 4/3/94
.\" $FreeBSD$
.\"
.Dd June 7, 2004
.Dd April 18, 2010
.Dt SIGACTION 2
.Os
.Sh NAME
@ -40,16 +40,11 @@
.In signal.h
.Bd -literal
struct sigaction {
union {
void (*__sa_handler)(int);
void (*__sa_sigaction)(int, struct __siginfo *, void *);
} __sigaction_u; /* signal handler */
void (*sa_handler)(int);
void (*sa_sigaction)(int, siginfo_t *, void *);
int sa_flags; /* see signal options below */
sigset_t sa_mask; /* signal mask to apply */
};
#define sa_handler __sigaction_u.__sa_handler
#define sa_sigaction __sigaction_u.__sa_sigaction
.Ed
.Ft int
.Fo sigaction
@ -148,6 +143,16 @@ If
is non-zero, the previous handling information for the signal
is returned to the user.
.Pp
The above declaration of
.Vt "struct sigaction"
is not literal.
It is provided only to list the accessible members.
See
.In sys/signal.h
for the actual definition.
In particular, the storage occupied by sa_handler and sa_sigaction overlaps,
and an application can not use both simultaneously.
.Pp
Once a signal handler is installed, it normally remains installed
until another
.Fn sigaction