The <fmtmsg.h> header shall define the following symbolic
constants:
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
symbolic constants in the Identifier
column, which shall have 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 symbolic
constants 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.