Began making changes to do better handling of character sets.
[citadel.git] / webcit / mime_parser.h
1 /*
2  * $Id$
3  *
4  */
5
6 /*
7  * Here's a bunch of stupid magic to make the MIME parser portable between
8  * Citadel and WebCit.
9  */
10 #ifndef SIZ
11 #define SIZ     4096
12 #endif
13
14
15 /* 
16  * Declarations for functions in the parser
17  */
18
19 void extract_key(char *target, char *source, char *key);
20
21 void mime_parser(char *content_start, char *content_end,
22                 void (*CallBack)
23                         (char *cbname,
24                         char *cbfilename,
25                         char *cbpartnum,
26                         char *cbdisp,
27                         void *cbcontent,
28                         char *cbtype,
29                         char *cbcharset,
30                         size_t cblength,
31                         char *cbencoding,
32                         void *cbuserdata),
33                 void (*PreMultiPartCallBack)
34                         (char *cbname,
35                         char *cbfilename,
36                         char *cbpartnum,
37                         char *cbdisp,
38                         void *cbcontent,
39                         char *cbtype,
40                         char *cbcharset,
41                         size_t cblength,
42                         char *cbencoding,
43                         void *cbuserdata),
44                 void (*PostMultiPartCallBack)
45                         (char *cbname,
46                         char *cbfilename,
47                         char *cbpartnum,
48                         char *cbdisp,
49                         void *cbcontent,
50                         char *cbtype,
51                         char *cbcharset,
52                         size_t cblength,
53                         char *cbencoding,
54                         void *cbuserdata),
55                 void *userdata,
56                 int dont_decode
57                 );