We mentioned above that the shell prints a message describing the signal
that terminated a child process.  The clean way to print a message
describing a signal is to use the functions strsignal and
psignal.  These functions use a signal number to specify which
kind of signal to describe.  The signal number may come from the
termination status of a child process (see section Process Completion) or it
may come from a signal handler in the same process.
This function is a GNU extension, declared in the header file `string.h'.
stderr; see section Standard Streams.
If you call psignal with a message that is either a null
pointer or an empty string, psignal just prints the message
corresponding to signum, adding a trailing newline.
If you supply a non-null message argument, then psignal
prefixes its output with this string.  It adds a colon and a space
character to separate the message from the string corresponding
to signum.
This function is a BSD feature, declared in the header file `signal.h'.
There is also an array sys_siglist which contains the messages
for the various signal codes.  This array exists on BSD systems, unlike
strsignal.
Go to the first, previous, next, last section, table of contents.