A little more with the API coding style.
[citadel.git] / citadel / msgbase.h
index 60993254c7683277f3c078b41e0a3157fa6caae9..67470b23b5bf7d94d925f85426b131453f76f07f 100644 (file)
@@ -3,7 +3,6 @@
 #ifndef MSGBASE_H
 #define MSGBASE_H
 
-#define aide_message(text, subject)      quickie_message("Citadel",NULL,NULL,AIDEROOM,text,0,subject)
 
 enum {
        MSGS_ALL,
@@ -16,6 +15,12 @@ enum {
        MSGS_SEARCH
 };
 
+enum {
+       MSG_HDRS_BRIEF = 0,
+       MSG_HDRS_ALL = 1,
+       MSG_HDRS_EUID = 4
+};
+
 /*
  * Possible return codes from CtdlOutputMsg()
  */
@@ -113,12 +118,13 @@ void TDAP_AdjRefCount(long, int);
 int TDAP_ProcessAdjRefCountQueue(void);
 void simple_listing(long, void *);
 int CtdlMsgCmp(struct CtdlMessage *msg, struct CtdlMessage *template);
+typedef void (*ForEachMsgCallback)(long MsgNumber, void *UserData);
 int CtdlForEachMessage(int mode,
                        long ref,
                        char *searchstring,
                        char *content_type,
                        struct CtdlMessage *compare,
-                        void (*CallBack) (long, void *),
+                        ForEachMsgCallback CallBack,
                        void *userdata);
 int CtdlDeleteMessages(char *, long *, int, char *);
 void CtdlWriteObject(char *req_room,                   /* Room to stuff it in */
@@ -140,8 +146,6 @@ int CtdlSaveMsgPointersInRoom(char *roomname, long newmsgidlist[], int num_newms
                                int do_repl_check, struct CtdlMessage *supplied_msg);
 int CtdlSaveMsgPointerInRoom(char *roomname, long msgid, int do_repl_check, struct CtdlMessage *msg);
 char *CtdlReadMessageBody(char *terminator, size_t maxlen, char *exist, int crlf, int sock);
-char *CtdlGetSysConfig(char *sysconfname);
-void CtdlPutSysConfig(char *sysconfname, char *sysconfdata);
 int CtdlOutputMsg(long msg_num,                /* message number (local) to fetch */
                  int mode,             /* how would you like that message? */
                  int headers_only,     /* eschew the message body? */
@@ -151,19 +155,21 @@ int CtdlOutputMsg(long msg_num,           /* message number (local) to fetch */
                  int flags             /* should the bessage be exported clean? */
 );
 
-#define QP_EADDR (1<<0)
-#define CRLF (1<<1)
-#define ESC_DOT (1<<2)
+/* Flags which may be passed to CtdlOutputMsg() and CtdlOutputPreLoadedMsg() */
+#define QP_EADDR       (1<<0)          /* quoted-printable encode email addresses */
+#define CRLF           (1<<1)
+#define ESC_DOT                (1<<2)          /* output a line containing only "." as ".." instead */
+#define SUPPRESS_ENV_TO        (1<<3)          /* suppress Envelope-to: header (warning: destructive!) */
 
 int CtdlOutputPreLoadedMsg(struct CtdlMessage *,
                           int mode,            /* how would you like that message? */
                           int headers_only,    /* eschew the message body? */
-                          int do_proto,                /* do Citadel protocol responses? */
+                          int do_proto,        /* do Citadel protocol responses? */
                           int crlf,            /* 0=LF, 1=CRLF */
                           int flags            /* should the bessage be exported clean? */
 );
-int CtdlCopyMsgsToRoom(long *msgnum, int num_msgs, char *dest);
 int CtdlDoIHavePermissionToDeleteMessagesFromThisRoom(void);
+int CtdlDoIHavePermissionToReadMessagesInThisRoom(void);
 
 enum {
        POST_LOGGED_IN,
@@ -210,4 +216,13 @@ struct CtdlMessage *CtdlMakeMessage(
 int CtdlCheckInternetMailPermission(struct ctdluser *who);
 int CtdlIsMe(char *addr, int addr_buf_len);
 
+/*
+ * Use of aide_message is deprecated.
+ * It has been replaced with CtdlAideMessage.
+ * All parameters remain the same.
+*/
+void aide_message(char *text, char *subject) __attribute__ ((deprecated));
+
+
+
 #endif /* MSGBASE_H */