Copy wininet to branch
[reactos.git] / posix / include / fmtmsg.h
1 /* $Id: fmtmsg.h,v 1.4 2002/10/29 04:45:08 rex Exp $
2 */
3 /*
4 * fmtmsg.h
5 *
6 * message display structures. Conforming to the Single UNIX(r)
7 * Specification Version 2, System Interface & Headers Issue 5
8 *
9 * This file is part of the ReactOS Operating System.
10 *
11 * Contributors:
12 * Created by KJK::Hyperion <noog@libero.it>
13 *
14 * THIS SOFTWARE IS NOT COPYRIGHTED
15 *
16 * This source code is offered for use in the public domain. You may
17 * use, modify or distribute it freely.
18 *
19 * This code is distributed in the hope that it will be useful but
20 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
21 * DISCLAMED. This includes but is not limited to warranties of
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
23 *
24 */
25 #ifndef __FMTMSG_H_INCLUDED__
26 #define __FMTMSG_H_INCLUDED__
27
28 /* INCLUDES */
29
30 /* OBJECTS */
31
32 /* TYPES */
33
34 /* CONSTANTS */
35 /* Major Classifications */
36 /* NOTE: these are unique values, not flags. Their bits can overlap, but
37 cannot overlap with those of other categories */
38 #define MM_HARD (0x00000001) /* Source of the condition is hardware. */
39 #define MM_SOFT (0x00000002) /* Source of the condition is software. */
40 #define MM_FIRM (0x00000003) /* Source of the condition is firmware. */
41
42 /* Message Source Subclassifications */
43 /* NOTE: these are unique values, not flags. Their bits can overlap, but
44 cannot overlap with those of other categories */
45 #define MM_APPL (0x00000010) /* Condition detected by application. */
46 #define MM_UTIL (0x00000020) /* Condition detected by utility. */
47 #define MM_OPSYS (0x00000030) /* Condition detected by operating system. */
48
49 /* Status Subclassifications */
50 /* NOTE: these are unique values, not flags. Their bits can overlap, but
51 cannot overlap with those of other categories */
52 #define MM_RECOVER (0x00000100) /* Recoverable error. */
53 #define MM_NRECOV (0x00000200) /* Non-recoverable error. */
54
55 /* Display Subclassifications */
56 /* NOTE: these, unlike other classification constants, are flags. Their
57 bits must be distinct */
58 #define MM_PRINT (0x00001000) /* Display message on standard error. */
59 #define MM_CONSOLE (0x00002000) /* Display message on system console. */
60
61 /* Identifiers for the levels of severity */
62 #define MM_NOSEV (0) /* No severity level provided for the message. */
63 #define MM_INFO (1) /* Informative message. */
64 #define MM_WARNING (2) /* Application has detected unusual non-error \
65 condition. */
66 #define MM_ERROR (3) /* Application has encountered a non-fatal fault. */
67 #define MM_HALT (4) /* Error causing application to halt. */
68
69 /* Null values and identifiers */
70 #define MM_NULLLBL ((char *)0) /* Null label */
71 #define MM_NULLSEV (0) /* Null severity */
72 #define MM_NULLMC (0L) /* Null class */
73 #define MM_NULLTXT ((char *)0) /* Null text */
74 #define MM_NULLACT ((char *)0) /* Null action */
75 #define MM_NULLTAG ((char *)0) /* Null tag */
76
77 /* Return values */
78 #define MM_OK ( 0) /* The function succeeded. */
79 #define MM_NOTOK (-1) /* The function failed completely. */
80 #define MM_NOMSG (-2) /* The function was unable to generate a message on \
81 standard error, but otherwise succeeded. */
82 #define MM_NOCON (-3) /* The function was unable to generate a console \
83 message, but otherwise succeeded. */
84
85 /* PROTOTYPES */
86 int fmtmsg(long, const char*, int, const char*, const char*, const char*);
87
88 /* MACROS */
89
90 #endif /* __FMTMSG_H_INCLUDED__ */
91
92 /* EOF */
93