NAME
psiginfo psignal
— write signal information to standard
error
SYNOPSIS
void psiginfo(const siginfo_t *pinfo, const char *message); void psignal(int signum, const char *message);
DESCRIPTION
The psiginfo () and
psignal () functions shall write a
language-dependent message associated with a signal number to the standard
error stream as follows:
- First, if message is not a null pointer and is not the empty string, the string pointed to by the message argument shall be written, followed by a <colon> and a <space>.
- Then the signal description string associated with signum or with the signal indicated by pinfo shall be written, followed by a <newline>.
For psiginfo (), the application shall
ensure that the argument pinfo references a valid
siginfo_t structure. For psignal
(), if signum is not a valid signal number, the behavior
is implementation-defined.
The psiginfo () and
psignal () functions shall not change the
orientation of the standard error stream.
The psiginfo () and
psignal () functions shall mark for update the last
data modification and last file status change timestamps of the file
associated with the standard error stream at some time between their
successful completion and exit(3),
abort(3), or the completion of fflush(3)
or fclose(3) on stderr.
The psiginfo () and
psignal () functions shall not change the setting of
errno if successful.
On error, the psiginfo () and
psignal () functions shall set the error indicator
for the stream to which stderr points, and shall set
errno to indicate the error.
Since no value is returned, an application wishing to check for
error situations should set errno to 0, then call
psiginfo () or psignal (),
then check errno.
RETURN VALUE
These functions shall not return a value.
ERRORS
Refer to fputc(3).
EXAMPLES
None.
APPLICATION USAGE
As an alternative to setting errno to zero
before the call and checking if it is non-zero afterwards, applications can
use ferror(3) to detect whether
psiginfo () or psignal ()
encountered an error.
An application wishing to use this method to check
for error situations should call
clearerr (
stderr) before calling psiginfo ()
or psignal (), then if
ferror
( stderr) returns non-zero, the value of
errno indicates which error occurred.
RATIONALE
System V historically has psignal () and
psiginfo () in
<siginfo.h>. However, the
<siginfo.h> header is not specified in the
Base Definitions volume of POSIX.1-2008, and the type
siginfo_t is defined in
<signal.h>.
FUTURE DIRECTIONS
None.
SEE ALSO
fputc(3), perror(3), strsignal(3)
XBD <signal.h>
CHANGE HISTORY
First released in Issue 7.
POSIX.1-2008, Technical Corrigendum 1, XSH/TC1-2008/0447 [399,428], XSH/TC1-2008/0448 [399], and XSH/TC1-2008/0449 [399,401] are applied.
POSIX.1-2008, Technical Corrigendum 2, XSH/TC2-2008/0260 [629] is applied.