]> code.citadel.org Git - citadel.git/blobdiff - citadel/msgbase.h
Eventhandling: fix shutdownhandlers
[citadel.git] / citadel / msgbase.h
index 20c6ee76eacf4f4ad0cfd5428eec00b42340f05f..f74c64b734590c51bea2d4c9ce2733c6b20ada2b 100644 (file)
@@ -28,7 +28,8 @@ enum {
        om_ok,
        om_not_logged_in,
        om_no_such_msg,
-       om_mime_error
+       om_mime_error,
+       om_access_denied
 };
 
 /*
@@ -71,9 +72,11 @@ struct recptypes {
        char *recp_internet;
        char *recp_ignet;
        char *recp_room;
+       char *recp_orgroom;
        char *display_recp;
        char *bounce_to;
        char *envelope_from;
+       char *sending_room;
 };
 
 #define RECPTYPES_MAGIC 0xfeeb
@@ -139,6 +142,7 @@ void CtdlWriteObject(char *req_room,                        /* Room to stuff it in */
 );
 struct CtdlMessage *CtdlFetchMessage(long msgnum, int with_body);
 void CtdlFreeMessage(struct CtdlMessage *msg);
+void CtdlFreeMessageContents(struct CtdlMessage *msg);
 void serialize_message(struct ser_ret *, struct CtdlMessage *);
 void dump_message(struct CtdlMessage *msg, long Siz);
 int is_valid_message(struct CtdlMessage *);
@@ -256,6 +260,20 @@ ReadAsyncMsg *NewAsyncMsg(const char *terminator,  /* token signalling EOT */
 eReadState CtdlReadMessageBodyAsync(AsyncIO *IO);
 void DeleteAsyncMsg(ReadAsyncMsg **Msg);
 
+extern int MessageDebugEnabled;
+
+#define MSGDBGLOG(LEVEL) if ((LEVEL != LOG_DEBUG) || (MessageDebugEnabled != 0))
+#define CCCID CCC->cs_pid
+#define MSG_syslog(LEVEL, FORMAT, ...)                 \
+       MSGDBGLOG(LEVEL) syslog(LEVEL,                  \
+                               "CC[%d]" FORMAT,        \
+                               CCCID, __VA_ARGS__)
+
+#define MSGM_syslog(LEVEL, FORMAT)                     \
+       MSGDBGLOG(LEVEL) syslog(LEVEL,                  \
+                               "CC[%d]" FORMAT,        \
+                               CCCID)
+
 
 
 #endif /* MSGBASE_H */