Merge branch 'master' into 4.next
[exim.git] / src / src / mime.h
1 /*************************************************
2 * Exim - an Internet mail transport agent *
3 *************************************************/
4
5 /* Copyright (c) Tom Kistner <tom@duncanthrax.net> 2004, 2015 */
6 /* License: GPL */
7
8 #ifdef WITH_CONTENT_SCAN
9
10 #define MIME_MAX_HEADER_SIZE 8192
11 #define MIME_MAX_LINE_LENGTH 32768
12
13 #define MBC_ATTACHMENT 0
14 #define MBC_COVERLETTER_ONESHOT 1
15 #define MBC_COVERLETTER_ALL 2
16
17 struct mime_boundary_context
18 {
19 struct mime_boundary_context *parent;
20 unsigned char *boundary;
21 int context;
22 };
23
24 typedef struct mime_header {
25 uschar * name;
26 int namelen;
27 uschar ** value;
28 } mime_header;
29
30 static mime_header mime_header_list[] = {
31 { US"content-type:", 13, &mime_content_type },
32 { US"content-disposition:", 20, &mime_content_disposition },
33 { US"content-transfer-encoding:", 26, &mime_content_transfer_encoding },
34 { US"content-id:", 11, &mime_content_id },
35 { US"content-description:", 20, &mime_content_description }
36 };
37
38
39
40
41 typedef struct mime_parameter {
42 uschar * name;
43 int namelen;
44 uschar ** value;
45 } mime_parameter;
46
47 /* MIME Anomaly list */
48 #define MIME_ANOMALY_BROKEN_BASE64 1
49 #define MIME_ANOMALY_BROKEN_QP 0
50
51
52 #endif