Guardian Programming Reference Summary for C

Functions Summary (R-Z)
Guardian Programming Reference Summary for C522630-001
8-25
SIGJMP_MASKSET_
Saves a signal mask in a jump buffer that has already been initialized by the
SIGSETJMP_ procedure. Thus, you can avoid the overhead of saving the signal mask
when you call SIGSETJMP_ and instead apply the mask at a later time before
performing a nonlocal goto with the SIGLONGJMP_ procedure. This technique saves
setting the signal mask in applications that have many calls to SIGSETJMP_ and few
calls to SIGLONGJMP_.
returned value:
SIGLONGJMP_
Performs a nonlocal goto. It restores the state of the calling process using context saved
in a jump buffer by the SIGSETJMP_ procedure. Control returns to the location of the
corresponding SIGSETJMP_ procedure call. The signal mask is also restored if it was
saved; all other signal-handling specifications remain unchanged.
Note. This procedure can be called only from TNS/R native processes.
#include <tdmsig.h>
long sigjmp_maskset ( jmp_buf *env /* i,o */
,sigset_t *signal-mask );/* i */
0D = Indicates a successful outcome.
-1D = Indicates an error. The reason for the error is given in the errno variable:
FE_EINVAL The jump buffer has not been initialized.
Use the ERRNO_GET_ procedure to obtain the value of errno in a
Guardian process.
Note. This procedure can be called only from TNS/R native processes.
#include <setjmp.h>
void siglongjmp ( sigjmp_buf env /* i */
,int value ); /* i */