siginfo(FP)
siginfo --
signal generation information
Description
The <siginfo.h> header file defines the structure
siginfo_t , which includes the following members:
int si_signo;
int si_errno;
int si_code;
The si_signo
field contains a signal number generated by
the system. If the value of si_errno
is nonzero, it
contains the error number associated with the signal stored in
si_signo
. The error numbers are defined in the header file
<errno.h> .
si_code
contains a code that identifies the cause of the
signal. A value of less than or equal to zero indicates that the
signal was generated by a user process. In such cases, the
siginfo_t structure also contains the following members:
pid_t si_pid;
uid_t si_uid;
These two fields contain the sending process ID and the
sending user ID respectively.
Where the si_code
field contains a value greater than
zero, a reason is given for the generation of a signal, as follows:
[If this table is unreadable, a preformatted table follows]
Signal
Code
Reason
SIGILL
ILL_ILLOPC
illegal opcode
ILL_ILLOPN
illegal operand
ILL_ADR
illegal addressing mode
ILL_ILLTRP
illegal trap
ILL_PRVOPC
privileged opcode
ILL_PRVREG
privileged register
ILL_COPROC
coprocessor error
ILL_BADSTK
internal stack error
SIGFPE
FPE_INTDIV
integer division by zero
FPE_INTOVF
integer overflow
FPE_FLTDIV
floating point division by zero
FPE_FLTOVF
floating point overflow
FPE_FLTUND
floating point underflow
FPE_FLTRES
floating point inexact result
FPE_FLTINV
invalid floating point operation
FPE_FLTSUB
subscript out of range
SIGSEGV
SEGV_MAPERR
address not mapped to object
SEGV_ACCERR
invalid permissions for mapped object
SIGBUS
BUS_ADRALN
invalid address alignment
BUS_ADRERR
non-existent physical address
BUS_OBJERR
object specific hardware error
SIGTRAP
TRAP_BRKPT
process breakpoint
TRAP_TRACE
process trace trap
SIGCHLD
CLD_EXITED
child has exited
CLD_KILLED
child was killed
CLD_DUMPED
child has terminated abnormally
CLD_TRAPPED
traced child has trapped
CLD_STOPPED
child has stopped
CLD_CONTINUED
stopped child has continued
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
device disconnected
+--------+---------------+---------------------------------------+
|Signal | Code | Reason |
+--------+---------------+---------------------------------------+
|SIGILL | ILL_ILLOPC | illegal opcode |
+--------+---------------+---------------------------------------+
| | ILL_ILLOPN | illegal operand |
+--------+---------------+---------------------------------------+
| | ILL_ADR | illegal addressing mode |
+--------+---------------+---------------------------------------+
| | ILL_ILLTRP | illegal trap |
+--------+---------------+---------------------------------------+
| | ILL_PRVOPC | privileged opcode |
+--------+---------------+---------------------------------------+
| | ILL_PRVREG | privileged register |
+--------+---------------+---------------------------------------+
| | ILL_COPROC | coprocessor error |
+--------+---------------+---------------------------------------+
| | ILL_BADSTK | internal stack error |
+--------+---------------+---------------------------------------+
|SIGFPE | FPE_INTDIV | integer division by zero |
+--------+---------------+---------------------------------------+
| | FPE_INTOVF | integer overflow |
+--------+---------------+---------------------------------------+
| | FPE_FLTDIV | floating point division by zero |
+--------+---------------+---------------------------------------+
| | FPE_FLTOVF | floating point overflow |
+--------+---------------+---------------------------------------+
| | FPE_FLTUND | floating point underflow |
+--------+---------------+---------------------------------------+
| | FPE_FLTRES | floating point inexact result |
+--------+---------------+---------------------------------------+
| | FPE_FLTINV | invalid floating point operation |
+--------+---------------+---------------------------------------+
| | FPE_FLTSUB | subscript out of range |
+--------+---------------+---------------------------------------+
|SIGSEGV | SEGV_MAPERR | address not mapped to object |
+--------+---------------+---------------------------------------+
| | SEGV_ACCERR | invalid permissions for mapped object |
+--------+---------------+---------------------------------------+
|SIGBUS | BUS_ADRALN | invalid address alignment |
+--------+---------------+---------------------------------------+
| | BUS_ADRERR | non-existent physical address |
+--------+---------------+---------------------------------------+
| | BUS_OBJERR | object specific hardware error |
+--------+---------------+---------------------------------------+
|SIGTRAP | TRAP_BRKPT | process breakpoint |
+--------+---------------+---------------------------------------+
| | TRAP_TRACE | process trace trap |
+--------+---------------+---------------------------------------+
|SIGCHLD | CLD_EXITED | child has exited |
+--------+---------------+---------------------------------------+
| | CLD_KILLED | child was killed |
+--------+---------------+---------------------------------------+
| | CLD_DUMPED | child has terminated abnormally |
+--------+---------------+---------------------------------------+
| | CLD_TRAPPED | traced child has trapped |
+--------+---------------+---------------------------------------+
| | CLD_STOPPED | child has stopped |
+--------+---------------+---------------------------------------+
| | CLD_CONTINUED | stopped child has continued |
+--------+---------------+---------------------------------------+
|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 | device disconnected |
+--------+---------------+---------------------------------------+
The following information is also supplied:
[If this table is unreadable, a preformatted table follows]
Signal
Field
Value
SIGILL
caddr_t si_addr
address of faulting instruction
SIGFPE
SIGSEGV
caddr_t si_addr
address of faulty memory reference
SIGBUS
SIGCHLD
pid_t si_pid
child process ID
si_status
exit value or signal
SIGPOLL
long si_band
band event for POLL_IN, POLL_OUT, or
POLL_MSG
+--------+-----------------+--------------------------------------+
|Signal | Field | Value |
+--------+-----------------+--------------------------------------+
|SIGILL | caddr_t si_addr | address of faulting instruction |
+--------+-----------------+--------------------------------------+
|SIGFPE | | |
+--------+-----------------+--------------------------------------+
|SIGSEGV | caddr_t si_addr | address of faulty memory reference |
+--------+-----------------+--------------------------------------+
|SIGBUS | | |
+--------+-----------------+--------------------------------------+
|SIGCHLD | pid_t si_pid | child process ID |
+--------+-----------------+--------------------------------------+
| | si_status | exit value or signal |
+--------+-----------------+--------------------------------------+
|SIGPOLL | long si_band | band event for POLL_IN, POLL_OUT, or |
| | | POLL_MSG |
+--------+-----------------+--------------------------------------+
See also
kill (S) ,
sigaction (S) ,
signal (M)
Standards conformance
<siginfo.h> is conformant with:
AT&T SVID Issue 3.
© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003