DOKK / manpages / debian 11 / atfs-dev / stQuitAction.3.en
stsignal(3) ShapeTools Toolkit Library stsignal(3)

stCatchSigs, stInterruptAction, stQuitAction, stTermAction, stCleanup, stExit - signal handling

#include <config.h>
#include <sttk.h>

void stCatchSigs (void);

Sfunc_t (*stInterruptAction)();

Sfunc_t (*stQuitAction)();

Sfunc_t (*stTermAction)();

void stCleanup (void);

void stExit (int exitCode);

stCatchSigs activates a number of interrupt handlers, defined internally in the ShapeTools toolkit library. Interrupt handlers are defined for the signals SIGINT, SIGQUIT, SIGFPE, SIGBUS, SIGSEGV, and SIGTERM. All interrupt handlers, except the one for SIGINT, cause program termination after having done some cleanup work. The cleanup consists of removing all temporary files by calling stRmRegisteredFiles(3).

Some of the signal handlers are capable to execute functions defined by the application, while handling the interrupt. This mechanism is activated by assigning a functions address to the appropriate variable. The following is a complete List.

Variable
stInterruptAction
stQuitAction
stTermAction

stCleanup calls stRmRegisteredFiles(3) to remove all temporary files and the AtFS function af_cleanup(3) that orders AtFS's affairs.

stExit does the same as stCleanup and additionally end the program execution returning exitCode.

signal (3), stRmRegisteredFiles(3), af_cleanup(3).

Thu Jun 24 17:43:32 1993 sttk-1.7