Guardian Procedure Calls Reference Manual (G06.25+)
Guardian Procedure Calls (S)
Guardian Procedure Calls Reference Manual—522629-013
14-136
SIGACTION_SUPPLANT_ Procedure
and on whether the signal handler for that signal is installed by a nonprivileged
caller or privileged caller of SIGACTION_SUPPLANT_ as follows:
•
Nested signals
Signals can be nested. If a different signal occurs during execution of a signal
handler—or any procedure called directly or indirectly from the signal handler—the
handler for that signal is invoked at the current tip of the stack.
•
Signal mask
SIGACTION_SUPPLANT_ sets the signal mask to block all signals from delivery.
All signals that can be deferred are kept pending. Any nondeferrable signal is
delivered to the handler.
Handler Considerations
•
handler must be one of the following:
•
The address of an untyped native procedure that accepts the following three
parameters. These parameters are passed to the handler by the system when
the handler is invoked to catch a signal:
•
SIGNUM
An INT(32) numerical value indicating the signal that caused the handler to
be invoked.
•
SIGINFO
A pointer whose value is currently NULL.
If a
nondeferrable
signal occurs
in...
And the signal handler for
that signal was installed by...
Then the specified handler is
activated at...
nonprivileged
code
a nonprivileged or privileged
caller of
SIGACTION_SUPPLANT_
the tip of the main stack (when
the signal was generated)
privileged code a nonprivileged caller of
SIGACTION_SUPPLANT_
the tip of the main stack (when
the process entered privileged
mode)
privileged code a privileged caller of
SIGACTION_SUPPLANT_
the tip of the privileged stack
Note. This action differs from the corresponding action on a TNS Guardian process; a trap
that occurs during execution of a trap handler is fatal to the process.
Note. This response to a nondeferrable signal is an extension to the POSIX.1 standard;
according to the POSIX.1 standard, the response to a nondeferrable signal is undefined.
This response also differs from the OSS implementation, which abnormally terminates the
process if a nondeferrable signal is blocked.