sigaction function has the same basic effect as
signal: to specify how a signal should be handled by the process.
sigaction offers more control, at the expense of more
complexity. In particular,
sigaction allows you to specify
additional flags to control when the signal is generated and how the
handler is invoked.
sigaction function is declared in `signal.h'.
struct sigactionare used in the
sigactionfunction to specify all the information about how to handle a particular signal. This structure contains at least the following members:
signalfunction. The value can be
SIG_IGN, or a function pointer. See section Basic Signal Handling.
sa_mask. If you want that signal not to be blocked within its handler, you must write code in the handler to unblock it.
signalfunction's return value--you can check to see what the old action in effect for the signal was, and restore it later if you want.)
Either action or old-action can be a null pointer. If old-action is a null pointer, this simply suppresses the return of information about the old action. If action is a null pointer, the action associated with the signal signum is unchanged; this allows you to inquire about how a signal is being handled without changing that handling.
The return value from
sigaction is zero if it succeeds, and
-1 on failure. The following
errno error conditions are
defined for this function:
Go to the first, previous, next, last section, table of contents.