psignal man page

psignal, psiginfo — print signal message


#include <signal.h>

void psignal(int sig, const char *s);
void psiginfo(const siginfo_t *pinfo, const char *s);

extern const char *const sys_siglist[];

Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

Since glibc 2.19:
Glibc 2.19 and earlier:
psiginfo(): _POSIX_C_SOURCE >= 200809L
Since glibc 2.19:
Glibc 2.19 and earlier:


The psignal() function displays a message on stderr consisting of the string s, a colon, a space, a string describing the signal number sig, and a trailing newline. If the string s is NULL or empty, the colon and space are omitted. If sig is invalid, the message displayed will indicate an unknown signal.

The psiginfo() function is like psignal(), except that it displays information about the signal described by pinfo, which should point to a valid siginfo_t structure. As well as the signal description, psiginfo() displays information about the origin of the signal, and other information relevant to the signal (e.g., the relevant memory address for hardware-generated signals, the child process ID for SIGCHLD, and the user ID and process ID of the sender, for signals set using kill(2) or sigqueue(3)).

The array sys_siglist holds the signal description strings indexed by signal number.

Return Value

The psignal() and psiginfo() functions return no value.


The psiginfo() function was added to glibc in version 2.10.


For an explanation of the terms used in this section, see attributes(7).

psignal(), psiginfo()Thread safetyMT-Safe locale

Conforming to

POSIX.1-2008, 4.3BSD.


In glibc versions up to 2.12, psiginfo() had the following bugs:

In some circumstances, a trailing newline is not printed.
Additional details are not displayed for real-time signals.

See Also

sigaction(2), perror(3), strsignal(3), signal(7)

Referenced By


Explore man page connections for psignal(3).

psiginfo(3) is an alias of psignal(3).