server: intialize aux_header buffer to null if the data is missing.
[tridge/openchange.git] / branches / plugfest / mapiproxy / libmapistore / mapistore_defs.h
1 /*
2    OpenChange Storage Abstraction Layer library
3
4    OpenChange Project
5
6    Copyright (C) Julien Kerihuel 2009-2011
7    Copyright (C) Brad Hards <bradh@openchange.org> 2010-2011
8
9    This program is free software; you can redistribute it and/or modify
10    it under the terms of the GNU General Public License as published by
11    the Free Software Foundation; either version 3 of the License, or
12    (at your option) any later version.
13    
14    This program is distributed in the hope that it will be useful,
15    but WITHOUT ANY WARRANTY; without even the implied warranty of
16    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17    GNU General Public License for more details.
18    
19    You should have received a copy of the GNU General Public License
20    along with this program.  If not, see <http://www.gnu.org/licenses/>.
21  */
22
23 /**
24    \file mapistore_defs.h
25
26    \brief MAPISTORE common definitions
27    
28    This header contains the shared definitions for data structures,
29    enumerations and defines that are used across the MAPISTORE API.
30  */
31
32 #ifndef __MAPISTORE_DEFS_H
33 #define __MAPISTORE_DEFS_H
34
35 /**
36   \brief Special Folder identifiers
37   
38   This list identifies each of the folder identifiers.
39  */
40 enum MAPISTORE_DFLT_FOLDERS {
41         MDB_ROOT_FOLDER         = 1,
42         MDB_DEFERRED_ACTIONS    = 2,
43         MDB_SPOOLER_QUEUE       = 3,
44         MDB_TODO_SEARCH         = 4,
45         MDB_IPM_SUBTREE         = 5,
46         MDB_INBOX               = 6,
47         MDB_OUTBOX              = 7,
48         MDB_SENT_ITEMS          = 8,
49         MDB_DELETED_ITEMS       = 9,
50         MDB_COMMON_VIEWS        = 10,
51         MDB_SCHEDULE            = 11,
52         MDB_SEARCH              = 12,
53         MDB_VIEWS               = 13,
54         MDB_SHORTCUTS           = 14,
55         MDB_REMINDERS           = 15,
56         MDB_CALENDAR            = 16,
57         MDB_CONTACTS            = 17,
58         MDB_JOURNAL             = 18,
59         MDB_NOTES               = 19,
60         MDB_TASKS               = 20,
61         MDB_DRAFTS              = 21,
62         MDB_TRACKED_MAIL        = 22,
63         MDB_SYNC_ISSUES         = 23,
64         MDB_CONFLICTS           = 24,
65         MDB_LOCAL_FAILURES      = 25,
66         MDB_SERVER_FAILURES     = 26,
67         MDB_JUNK_EMAIL          = 27,
68         MDB_RSS_FEEDS           = 28,
69         MDB_CONVERSATION_ACT    = 29, /**< Conversation Actions folder */
70         MDB_LAST_SPECIALFOLDER  = MDB_CONVERSATION_ACT, /**< the last identifier, used for iteration */
71         MDB_CUSTOM              = 999 /**< This is a custom (or generic) folder with no special meaning */
72 };
73
74 struct mapistore_message {
75         struct SRowSet                  *recipients;
76         struct SRow                     *properties;
77 };
78
79 #define MAPISTORE_FOLDER_TABLE          1
80 #define MAPISTORE_MESSAGE_TABLE         2
81
82 #define MAPISTORE_FOLDER                1
83 #define MAPISTORE_MESSAGE               2
84
85 #define MAPISTORE_SOFT_DELETE           1
86 #define MAPISTORE_PERMANENT_DELETE      2
87
88 /* TODO: perhaps this should be in another header */
89 const char              *mapistore_get_mapping_path(void);
90
91 #endif /* __MAPISTORE_DEFS_H */