There is another possibility to introduce severity classes besides using
the environment variable
SEV_LEVEL. This simplifies the task of
introducing new classes in a running program. One could use the
putenv function to set the environment variable,
but this is toilsome.
This function allows the introduction of new severity classes which can be addressed by the severity parameter of the
fmtmsgfunction. The severity parameter of
addseveritymust match the value for the parameter with the same name of
fmtmsg, and string is the string printed in the actual messages instead of the numeric value.
If string is
NULLthe severity class with the numeric value according to severity is removed.
It is not possible to overwrite or remove one of the default severity classes. All calls to
addseveritywith severity set to one of the values for the default classes will fail.
The return value is
MM_OKif the task was successfully performed. If the return value is
MM_NOTOKsomething went wrong. This could mean that no more memory is available or a class is not available when it has to be removed.
This function is not specified in the X/Open Portability Guide although the
fmtsmgfunction is. It is available on System V systems.