2 extern HashList
*MsgHeaderHandler
;
3 extern HashList
*MimeRenderHandler
;
5 typedef struct wc_mime_attachment wc_mime_attachment
;
6 typedef void (*RenderMimeFunc
)(wc_mime_attachment
*Mime
, StrBuf
*RawData
, StrBuf
*FoundCharset
);
7 typedef struct _RenderMimeFuncStruct
{
9 } RenderMimeFuncStruct
;
11 struct wc_mime_attachment
{
20 size_t length
; /* length of the mimeatachment */
22 long lvalue
; /* if we put a long... */
23 long msgnum
; /**< the message number on the citadel server derived from message_summary */
24 const RenderMimeFuncStruct
*Renderer
;
26 void DestroyMime(void *vMime
);
30 * \brief message summary structure. ???
32 typedef struct _message_summary
{
33 time_t date
; /**< its creation date */
34 long msgnum
; /**< the message number on the citadel server */
37 StrBuf
*from
; /**< the author */
38 StrBuf
*to
; /**< the recipient */
39 StrBuf
*subj
; /**< the title / subject */
40 StrBuf
*reply_inreplyto
;
41 StrBuf
*reply_references
;
49 const StrBuf
*PartNum
;
51 HashList
*Attachments
; /**< list of Accachments */
52 HashList
*Submessages
;
53 HashList
*AttachLinks
;
57 int is_new
; /**< is it yet read? */
58 int hasattachments
; /* does it have atachments? */
61 /** The mime part of the message */
62 wc_mime_attachment
*MsgBody
;
64 void DestroyMessageSummary(void *vMsg
);
65 inline message_summary
* GetMessagePtrAt(int n
, HashList
*Summ
);
67 typedef void (*ExamineMsgHeaderFunc
)(message_summary
*Msg
, StrBuf
*HdrLine
, StrBuf
*FoundCharset
);
69 void evaluate_mime_part(message_summary
*Msg
, wc_mime_attachment
*Mime
);
79 typedef void (*readloop_servcmd
)(char *buf
, long bufsize
);
81 typedef struct _readloopstruct
{
87 void readloop(long oper
);
88 int read_message(StrBuf
*Target
, const char *tmpl
, long tmpllen
, long msgnum
, int printable_view
, const StrBuf
*section
);
91 int load_msg_ptrs(char *servcmd
, int with_headers
);