blob: daf9764b1e1485d64f72445a88b35b43650ea1c2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
/*
* Copyright (C) 2002 Manuel Novoa III
* Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
*
* Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
*/
#define _GNU_SOURCE
#include <features.h>
#include <stdio.h>
#include <string.h>
libc_hidden_proto(fprintf)
libc_hidden_proto(strsignal)
/* TODO: make this threadsafe with a reentrant version of strsignal? */
void psignal(int signum, register const char *message)
{
/* If the program is calling psignal, it's a safe bet that printf and
* friends are used as well. It is also possible that the calling
* program could buffer stderr, or reassign it. */
register const char *sep;
sep = ": ";
if (!(message && *message)) { /* Caller did not supply a prefix message */
message = (sep += 2); /* or passed an empty string. */
}
fprintf(stderr, "%s%s%s\n", message, sep, strsignal(signum));
}
|