Manual Page Result
0
Command: siginfo | Section: 5 | Source: Digital UNIX | File: siginfo.5.gz
siginfo(5) File Formats Manual siginfo(5)
NAME
siginfo - Details of signal generation
SYNOPSIS
#include <siginfo.h>
DESCRIPTION
The siginfo structure provides processes with information on why a sig-
nal was generated, or a process that is monitoring child processes may
receive information that specifies why a child process changed state.
See the sigaction(2) and waitid(2) reference pages for more informa-
tion.
The type siginfo_t contains the following members: Contains the system
generated signal number. Note that for the waitid function, this field
is always SIGCHLD. Contains, if non-zero, the errno that is associated
with the signal. Specifies a code that determines whether the signal
was generated by a user process, a specific signal, or by the kernel.
When the value of si_code is less than or equal to zero (0), the signal
was generated by a user process and the siginfo structure contains the
following additional members:
pid_t si_pid /*sending process ID*/ uid_t si_uid /*sending
user ID*/
See the kill(2) and sigsend(2) reference pages for more informa-
tion on these fields.
The following table describes the meaning of the code generated
by a signal. The table lists signals in alphabetical order.
l l lw(3i). _ Signal Code Definition _ SIG-
BUS BUS_ADRALN invalid address alignment BUS_ADR-
ERR non-existent physical address BUS_OBJERR object
specific hardware error SIGCHLD CLD_EXITED child has ex-
ited CLD_KILLED child was killed
CLD_DUMPED child terminated abnormally
CLD_TRAPPED traced child has trapped
CLD_STOPPED child has stopped CLD_CONTIN-
UED stopped child has continued CLD_SIGEXITING T{ child is
about to exit because it received a fatal signal T} SIG-
ILL ILL_ILLOPC illegal opcode ILL_ILLOPN illegal
operand ILL_ILLADR illegal addressing mode
ILL_ILLTRP illegal trap ILL_PRVOPC privileged
opcode ILL_PRVREG privileged register ILL_CO-
PROC coprocessor error ILL_BADSTK internal stack
error SIGFPE FPE_INTDIV integer divide by zero
FPE_INTOVF integer overflow FPE_FLTDIV float-
ing point divide by zero FPE_FLTOVF floating point
overflow FPE_FLTUND floating point underflow
FPE_FLTRES floating point inexact result FPE_FLT-
INV T{ invalid floating point operation T} FPE_FLT-
SUB subscript out of range SIGPOLL POLL_IN data input
available POLL_OUT output buffers available
POLL_MSG input message available POLL_ERR I/O error
POLL_PRI high priority input available POLL_HUP de-
vice disconnected SIGSEGV SEGV_MAPERR address not mapped to
object SEGV_ACCERR T{ invalid permissions for mapped ob-
ject T} SIGTRAP TRAP_BRKPT process breakpoint
TRAP_TRACE process trace trap _
When a signal is generated by the system, the meaning of the
code is as follows:
l l l. _ Signal Field Description _ SIGILL caddr_t
si_addr address of faulting instruction SIGFPE
SIGSEGV caddr_t si_addr address of faulting memory SIG-
BUS reference SIGCHLD pid_t si_pid child process ID
int si_status exit value or signal SIGPOLL long
si_band band event for POLL_IN, POLL_OUT, or
POLL_MSG _
Note, if the signal is SIGCHLD, and the si_code is equivalent to
CLD_EXITED, si_status is equivalent to the exit value of the
process. If si_code is not equivalent to CLD_EXITED, the
si_status field is equivalent to the signal that caused the
process to change state. In some instances, si_addr may not be
defined, but si_addr will appear on the same page as the fault-
ing instruction or memory reference.
SEE ALSO
Functions: kill(2), sigaction(2), sigsend(2), waitid(2)
Files: signal(4)
siginfo(5)