ILE C/C++ Run-Time Library Functions


Signal Handling Action Definitions

The following table shows the initial state of the C signal values and their handling action definitions when SYSIFCOPT(*NOASYNCSIGNAL) is specified on the compilation command. SIG_DFL always percolates the condition tothe handler. Resume indicates the exception is handled, and the application continues.

Table 15. Handling Action Definitions for Signal Values

Signal Value Initial State SIG_DFL SIG_IGN Return from Handler
SIGABRT1 SIG_DFL Percolate Ignore Resume
SIGALL2 SIG_DFL Percolate Ignore Resume
SIGFPE SIG_DFL Percolate Ignore3 Resume4
SIGILL SIG_DFL Percolate Ignore3 Resume4
SIGINT SIG_DFL Percolate Ignore Resume
SIGIO SIG_IGN Percolate Ignore Resume
SIGOTHER SIG_DFL Percolate Ignore3 Resume4
SIGSEGV SIG_DFL Percolate Ignore3 Resume4
SIGTERM SIG_DFL Percolate Ignore Resume
SIGUSR1 SIG_DFL Percolate Ignore Resume
SIGUSR2 SIG_DFL Percolate Ignore Resume
Note:
  • 1 Can only be signaled by the raise() function or the abort() function
  • 2 SIGALL cannot be signaled by the raise() function.
  • 3 If the value of the signal is SIGFPE, SIGILL or SIGSEGV the behavior is undefined.
  • 4 If the signal is hardware-generated, then the behavior undefined.

The following table shows the initial state of the C signal values and their handling action definitions with SYSIFCOPT(*ASYNCSIGNAL) is specified on the compilation command.

Table 16. Default Actions for Signal Values

Value Default Action Meaning
SIGABRT 2 Abnormal termination.
SIGFPE 2 Arithmetic exceptions that are not masked, such as overflow, division by zero, and incorrect operation.
SIGILL 2 Detection of an incorrect function image.
SIGINT 2 Interactive attention.
SIGSEGV 2 Incorrect access to storage.
SIGTERM 2 Termination request sent to the program.
SIGUSR1 2 Intended for use by user applications.
SIGUSR2 2 Intended for use by user applications.
SIGALRM 2 A timeout signal that is sent by alarm().
SIGHUP 2 A controlling terminal is hung up, or the controlling process ended.
SIGKILL 1 A termination signal that cannot be caught or ignored.
SIGPIPE 3 A write to a pipe that is not being read.
SIGQUIT 2 A quit signal for a terminal.
SIGCHLD 3 An ended or stopped child process. SIGCLD is an alias name for this signal.
SIGCONT 5 If stopped, continue.
SIGSTOP 4 A stop signal that cannot be caught or ignored.
SIGTSTP 4 A stop signal for a terminal.
SIGTTIN 4 A background process attempted to read from a controlling terminal.
SIGTTOU 4 A background process attempted to write to a controlling terminal.
SIGIO 3 Completion of input or output.
SIGURG 3 High bandwidth data is available at a socket.
SIGPOLL 2 Pollable event.
SIGBUS 2 Specification exception.
SIGPRE 2 Programming exception.
SIGSYS 2 Bad system call.
SIGTRAP 2 Trace or breakpoint trap.
SIGPROF 2 Profiling timer expired.
SIGVTALRM 2 Virtual timer expired.
SIGXCPU 2 Processor time limit exceeded.
SIGXFSZ 2 File size limit exceeded.
SIGDANGER 2 System crash is imminent.
SIGPCANCEL 2 Thread termination signal that cannot be caught or ignored.

Default Actions:

1
End the process immediately

2
End the request.

3
Ignore the signal.

4
Stop the process.

5
Continue the process if it is currently stopped. Otherwise, ignore the signal.


[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]