Guardian Procedure Calls Reference Manual (G06.25+)
Guardian Procedure Calls (S)
Guardian Procedure Calls Reference Manual—522629-013
14-132
SIGACTION_RESTORE_ Procedure
Use the ERRNO_GET_ procedure to obtain the value of errno in a
Guardian process.
signal-buffer input
INT .EXT:ref:(SIG_SAVE_TEMPLATE)
specifies the address of a buffer in which the previous signal-handling state is
saved.
Considerations
•
The SIGACTION_RESTORE_ procedure validates the buffer indicated by
signal-buffer and returns an error if the buffer is invalid. It is assumed that the
buffer has been initialized by the SIGACTION_SUPPLANT_ procedure and that it
has not been modified by the caller.
•
The signal-handling state previously saved in the buffer indicated by signal-
buffer is atomically restored.
•
Any pending signal that is unblocked by restoring the saved signal mask will be
delivered to the restored signal handler after exiting this procedure or returning to
user code.
•
A privileged caller is allowed to restore nonprivileged signal-handling
specifications. If the caller is nonprivileged, however, the restored signal handling
state is marked as nonprivileged.
Example
error := SIGACTION_RESTORE_ ( buffer );
IF error <> 0 THEN
errnoval := ERRNO_GET_;
Related Programming Manual
For programming information about the SIGACTION_RESTORE_ procedure, see the
Guardian Programmer’s Guide.