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-2024, 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.