DragonFly On-Line Manual Pages
PSIGNAL(3) DragonFly Library Functions Manual PSIGNAL(3)
NAME
psignal, psiginfo, strsignal, sys_siglist, sys_signame, sys_nsig - system
signal messages
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <signal.h>
void
psignal(int sig, const char *s);
void
psiginfo(const siginfo_t *si, const char *s);
extern const char * const sys_siglist[];
extern const char * const sys_signame[];
extern const int sys_nsig;
#include <string.h>
char *
strsignal(int sig);
DESCRIPTION
The psignal() and strsignal() functions locate the descriptive message
string for a signal number.
The strsignal() function accepts a signal number argument sig and returns
a pointer to the corresponding message string.
The psignal() function accepts a signal number argument sig and writes it
to the standard error. If the argument s is non-NULL and does not point
to the null character, s is written to the standard error file descriptor
prior to the message string, immediately followed by a colon and a space.
If the signal number is not recognized (sigaction(2)), the string
"Unknown signal" is produced.
The psiginfo() function is similar to psignal(), except that the signal
number information is taken from the si argument which is a siginfo_t
structure.
The message strings can be accessed directly through the external array
sys_siglist, indexed by recognized signal numbers. The external array
sys_signame is used similarly and contains short, lower-case
abbreviations for signals which are useful for recognizing signal names
in user input. The external variable sys_nsig contains a count of the
strings in sys_siglist and sys_signame. Note that the defined variable
NSIG will typically be the same as sys_nsig, but might be different due
to newer or older kernels and newer or older libc libraries. For maximum
portability you must use sys_nsig to limit-check the above arrays.
Additionally, you should check for NULL array entries and generate a
generic signal name in those cases.
SEE ALSO
sigaction(2), perror(3), strerror(3)
HISTORY
The psignal() function appeared in 4.2BSD. The psiginfo() function
appeared in DragonFly 4.1.
DragonFly 5.7-DEVELOPMENT September 12, 2019 DragonFly 5.7-DEVELOPMENT