fmtmsg.h(1) message display structures

SYNOPSIS

#include <fmtmsg.h>

DESCRIPTION

The <fmtmsg.h> header shall define the following macros, which expand to constant integer expressions:

MM_HARD
Source of the condition is hardware.
MM_SOFT
Source of the condition is software.
MM_FIRM
Source of the condition is firmware.
MM_APPL
Condition detected by application.
MM_UTIL
Condition detected by utility.
MM_OPSYS
Condition detected by operating system.
MM_RECOVER
Recoverable error.
MM_NRECOV
Non-recoverable error.
MM_HALT
Error causing application to halt.
MM_ERROR
Application has encountered a non-fatal fault.
MM_WARNING
Application has detected unusual non-error condition.
MM_INFO
Informative message.
MM_NOSEV
No severity level provided for the message.
MM_PRINT
Display message on standard error.
MM_CONSOLE
Display message on system console.

The table below indicates the null values and identifiers for fmtmsg() arguments. The <fmtmsg.h> header shall define the macros in the Identifier column, which expand to constant expressions that expand to expressions of the type indicated in the Type column:

ArgumentType    Null-ValueIdentifier
labelchar *    (char*)0MM_NULLLBL
severityint    0MM_NULLSEV
classlong    0LMM_NULLMC
textchar *    (char*)0MM_NULLTXT
actionchar *    (char*)0MM_NULLACT
tagchar *    (char*)0MM_NULLTAG

The <fmtmsg.h> header shall also define the following macros for use as return values for fmtmsg():

MM_OK
The function succeeded.
MM_NOTOK
The function failed completely.
MM_NOMSG
The function was unable to generate a message on standard error, but otherwise succeeded.
MM_NOCON
The function was unable to generate a console message, but otherwise succeeded.

The following shall be declared as a function and may also be defined as a macro. A function prototype shall be provided.


int fmtmsg(long, const char *, int,
    const char *, const char *, const char *);

The following sections are informative.

APPLICATION USAGE

None.

RATIONALE

None.

FUTURE DIRECTIONS

None.

COPYRIGHT

Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between this version and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at http://www.opengroup.org/unix/online.html .