]> code.citadel.org Git - citadel.git/blobdiff - citadel/msgbase.h
* sysdep.c: added new event hook type EVT_TIMER. Timer event hooks are called
[citadel.git] / citadel / msgbase.h
index 8193b90d5285832381bd3eda690fa0a2d2dd734b..8f46a86030364642ec1bb54b654c06b35189e3ee 100644 (file)
  */
 #define SM_VERIFY_GOODNESS     1       /* Verify this is a real msg number */
 #define SM_DO_REPL_CHECK       2       /* Perform replication checks */
+#define SM_DONT_BUMP_REF       3       /* Don't bump reference count
+                                          (use with extreme care!!!!!!) */
+
+
+/*
+ * Possible return codes from CtdlOutputMsg()
+ */
+enum {
+       om_ok,
+       om_not_logged_in,
+       om_no_such_msg,
+       om_mime_error
+};
+       
 
 
 struct ma_info {
@@ -36,7 +50,6 @@ void help_subst (char *strbuf, char *source, char *dest);
 void do_help_subst (char *buffer);
 void memfmout (int width, char *mptr, char subst);
 void output_mime_parts(char *);
-void output_message (char *, int, int);
 void cmd_msg0 (char *cmdbuf);
 void cmd_msg2 (char *cmdbuf);
 void cmd_msg3 (char *cmdbuf);
@@ -44,7 +57,7 @@ void cmd_msg4 (char *cmdbuf);
 void cmd_opna (char *cmdbuf);
 long send_message (struct CtdlMessage *, int, FILE *);
 void loadtroom (void);
-void CtdlSaveMsg(struct CtdlMessage *, char *, char *, int, int);
+long CtdlSaveMsg(struct CtdlMessage *, char *, char *, int, int);
 void quickie_message (char *, char *, char *, char *);
 struct CtdlMessage *make_message (struct usersupp *, char *,
                   char *, int, int, int, char *);
@@ -70,4 +83,11 @@ void serialize_message(struct ser_ret *, struct CtdlMessage *);
 int is_valid_message(struct CtdlMessage *);
 int ReplicationChecks(struct CtdlMessage *);
 int CtdlSaveMsgPointerInRoom(char *roomname, long msgid, int flags);
-char *CtdlReadMessageBody(char *terminator, size_t maxlen);
+char *CtdlReadMessageBody(char *terminator, size_t maxlen, char *exist);
+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? */
+               int do_proto,           /* do Citadel protocol responses? */
+               int crlf);