=head1 NAME
POSIX::1003::SigAction - represent a struct sigaction
=head1 SYNOPSIS
$sigset = POSIX::SigSet->new(SIGINT, SIGQUIT);
$sigaction = POSIX::1003:SigAction
->new(\&handler, $sigset, SA_NOCLDSTOP);
$sigset = $sigaction->mask;
$sigaction->flags(SA_RESTART);
$sigaction->safe(1);
=head1 DESCRIPTION
The C<POSIX::1003::SigAction> object corresponds to the C
C<struct sigaction>, defined by C<signal.h>.
=head1 METHODS
=head2 Constructors
=over 4
=item POSIX::SigAction-E<gt>B<new>(HANDLER, [SIGSET, [FLAGS]])
The first parameter is the handler, a code reference. The second parameter
is a L<POSIX::SigSet|POSIX::SigSet> object, it defaults to the empty set. The third
parameter contains the C<sa_flags>, it defaults to 0.
This object will be destroyed automatically when it is no longer needed.
=back
=head2 Other
=over 4
=item $obj-E<gt>B<flags>()
Accessor functions to get/set the values of a SigAction object.
=item $obj-E<gt>B<handler>()
=item $obj-E<gt>B<mask>()
=item $obj-E<gt>B<safe>()
Accessor function for the "safe signals" flag of a SigAction object; see
L<perlipc> for general information on safe (a.k.a. "deferred") signals. If
you wish to handle a signal safely, use this accessor to set the "safe" flag
in the C<POSIX::1003::SigAction> object:
$sigaction->safe(1);
You may also examine the "safe" flag on the output action object which is
filled in when given as the third parameter to POSIX::1003 subroutine sigaction:
sigaction(SIGINT, $new_action, $old_action);
if ($old_action->safe) {
# previous SIGINT handler used safe signals
}
=back
=head1 SEE ALSO
This module is part of POSIX-1003 distribution version 0.02,
built on December 19, 2011. Website: F<http://perl.overmeer.net>. The code is based on L<POSIX>, which
is released with Perl itself.
=head1 COPYRIGHTS
Copyrights of the perl code and the related documentation by
2011 by Mark Overmeer. For other contributors see ChangeLog.
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
See F<http://www.perl.com/perl/misc/Artistic.html>