PSIGNAL(3)

名前
psignal, psiginfo - シグナルメッセージを表示

書式
#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[];

glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):

psignal(): _SVID_SOURCE || _BSD_SOURCE
psiginfo(): _XOPEN_SOURCE >= 700 || _POSIX_C_SOURCE >= 200809L
sys_siglist: _BSD_SOURCE

説明
psignal() 関数は、文字列 s、コロン、スペース、 シグナル番号 sig を説明する文字列、終端の改行から 構成されるメッセージを stderr に表示する。 文字列 s が NULL か空の場合、コロンとスペースは省略される。 sig が不正ならば、表示される メッセージは未知のシグナルを示す。 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)). 配列 sys_siglist はシグナルを説明する文字列を保持しており、 配列へのアクセスにはシグナル番号を添え字として用いる事ができる。

返り値
関数 psignal() と psiginfo() は、値を返さない。

バージョン
psiginfo() 関数は glibc バージョン 2.10 で追加された。

準拠
POSIX.1-2008, 4.3BSD.

バグ
バージョン 2.12 までの glibc では psiginfo() には以下のバグがあった。

*   In some circumstances, a trailing newline is not printed.

*   Additional details are not displayed for real-time signals.

関連項目
sigaction(2), perror(3), strsignal(3), signal(7)

この文書について
この man ページは Linux man-pages プロジェクトのリリース 3.51 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。