fmtmsg.h - message display structures
The <fmtmsg.h> header shall define the following macros, which expand
to constant integer expressions:
Source of the condition is hardware.
Source of the condition is software.
Source of the condition is firmware.
Condition detected by application.
Condition detected by utility.
Condition detected by operating system.
Error causing application to halt.
Application has encountered a non-fatal fault.
Application has detected unusual non-error condition.
No severity level provided for the message.
Display message on standard error.
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:
Argument Type Null-Value Identifier
label char * (char*)0 MM_NULLLBL
severity int 0 MM_NULLSEV
class long 0L MM_NULLMC
text char * (char*)0 MM_NULLTXT
action char * (char*)0 MM_NULLACT
tag char * (char*)0 MM_NULLTAG
The <fmtmsg.h> header shall also define the following macros for use as
return values for fmtmsg():
MM_OK The function succeeded.
The function failed completely.
The function was unable to generate a message on standard error,
but otherwise succeeded.
The function was unable to generate a console message, but
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.
The System Interfaces volume of IEEE Std 1003.1-2001, fmtmsg()
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 .