Only include 'sys/user.h' for Linux. Fixes a compilation error on
[wine] / include / mapi.h
1 #ifndef MAPI_H
2 #define MAPI_H
3
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7
8 /* Some types */
9
10 typedef unsigned char*          LPBYTE;
11 #ifndef __LHANDLE
12 #define __LHANDLE
13 typedef unsigned long           LHANDLE, *LPLHANDLE;
14 #endif
15 #define lhSessionNull           ((LHANDLE)0)
16
17 typedef unsigned long           FLAGS;
18
19 typedef struct
20 {
21     ULONG ulReserved;
22     ULONG flFlags;
23     ULONG nPosition;
24     LPSTR lpszPathName;
25     LPSTR lpszFileName;
26     LPVOID lpFileType;
27 } MapiFileDesc, *lpMapiFileDesc;
28
29 typedef struct
30 {
31     ULONG ulReserved;
32     ULONG ulRecipClass;
33     LPSTR lpszName;
34     LPSTR lpszAddress;
35     ULONG ulEIDSize;
36     LPVOID lpEntryID;
37 } MapiRecipDesc, *lpMapiRecipDesc;
38
39 typedef struct
40 {
41     ULONG ulReserved;
42     LPSTR lpszSubject;
43     LPSTR lpszNoteText;
44     LPSTR lpszMessageType;
45     LPSTR lpszDateReceived;
46     LPSTR lpszConversationID;
47     FLAGS flFlags;
48     lpMapiRecipDesc lpOriginator;
49     ULONG nRecipCount;
50     lpMapiRecipDesc lpRecips;
51     ULONG nFileCount;
52     lpMapiFileDesc lpFiles;
53 } MapiMessage, *lpMapiMessage;
54
55
56 /* Error codes */
57
58 #define SUCCESS_SUCCESS                 0
59 #define MAPI_USER_ABORT                 1
60 #define MAPI_E_USER_ABORT               MAPI_USER_ABORT
61 #define MAPI_E_FAILURE                  2
62 #define MAPI_E_LOGON_FAILURE            3
63 #define MAPI_E_LOGIN_FAILURE            MAPI_E_LOGON_FAILURE
64 #define MAPI_E_DISK_FULL                4
65 #define MAPI_E_INSUFFICIENT_MEMORY      5
66 #define MAPI_E_ACCESS_DENIED            6
67 #define MAPI_E_TOO_MANY_SESSIONS        8
68 #define MAPI_E_TOO_MANY_FILES           9
69 #define MAPI_E_TOO_MANY_RECIPIENTS      10
70 #define MAPI_E_ATTACHMENT_NOT_FOUND     11
71 #define MAPI_E_ATTACHMENT_OPEN_FAILURE  12
72 #define MAPI_E_ATTACHMENT_WRITE_FAILURE 13
73 #define MAPI_E_UNKNOWN_RECIPIENT        14
74 #define MAPI_E_BAD_RECIPTYPE            15
75 #define MAPI_E_NO_MESSAGES              16
76 #define MAPI_E_INVALID_MESSAGE          17
77 #define MAPI_E_TEXT_TOO_LARGE           18
78 #define MAPI_E_INVALID_SESSION          19
79 #define MAPI_E_TYPE_NOT_SUPPORTED       20
80 #define MAPI_E_AMBIGUOUS_RECIPIENT      21
81 #define MAPI_E_AMBIG_RECIP              MAPI_E_AMBIGUOUS_RECIPIENT
82 #define MAPI_E_MESSAGE_IN_USE           22
83 #define MAPI_E_NETWORK_FAILURE          23
84 #define MAPI_E_INVALID_EDITFIELDS       24
85 #define MAPI_E_INVALID_RECIPS           25
86 #define MAPI_E_NOT_SUPPORTED            26
87
88
89 /* MAPILogon */
90
91 #define MAPI_LOGON_UI           0x00000001
92 #define MAPI_PASSWORD_UI        0x00020000
93 #define MAPI_NEW_SESSION        0x00000002
94 #define MAPI_FORCE_DOWNLOAD     0x00001000
95 #define MAPI_EXTENDED           0x00000020
96
97
98 /* MAPISendMail */
99
100 #define MAPI_DIALOG             0x00000008
101
102
103 #ifdef __cplusplus
104 }
105 #endif
106
107 #endif /* MAPI_H */