]> code.citadel.org Git - citadel.git/blobdiff - citadel/serv_imap.h
* The size constant "256" which shows up everywhere as a buffer size has now
[citadel.git] / citadel / serv_imap.h
index 3a3b57e88d1352ca0923ec383d9cf4f98bad8816..c03ce5376e0c4d9c5aab23bbe7e6b65c38fb5804 100644 (file)
@@ -10,8 +10,33 @@ void imap_command_loop(void);
 
 
 struct citimap {
+       int authstate;
+       char authseq[SIZ];
        int selected;           /* set to 1 if in the SELECTED state */
        int readonly;           /* mailbox is open read only */
+       int num_msgs;           /* Number of messages being mapped */
+       long *msgids;
+       unsigned int *flags;
 };
 
+/*
+ * values of 'authstate'
+ */
+enum {
+       imap_as_normal,
+       imap_as_expecting_username,
+       imap_as_expecting_password
+};
+
+/* Flags for the above struct.  Note that some of these are for internal use,
+ * and are not to be reported to IMAP clients.
+ */
+#define IMAP_ANSWERED  1
+#define IMAP_FLAGGED   2
+#define IMAP_DELETED   4
+#define IMAP_DRAFT     8
+#define IMAP_SEEN      16
+#define IMAP_FETCHED   32      /* internal */
+
+
 #define IMAP ((struct citimap *)CtdlGetUserData(SYM_IMAP))