fa0365e5506fe199ac7d1b0f43d9e2268dac07d8
[exim.git] / src / src / dmarc.h
1 /*************************************************
2 *     Exim - an Internet mail transport agent    *
3 *************************************************/
4
5 /* Experimental DMARC support.
6    Copyright (c) Todd Lyons <tlyons@exim.org> 2012, 2013
7    License: GPL */
8
9 /* Portions Copyright (c) 2012, 2013, The Trusted Domain Project;
10    All rights reserved, licensed for use per LICENSE.opendmarc. */
11
12 #ifdef EXPERIMENTAL_DMARC
13
14 #include "opendmarc/dmarc.h"
15 #ifdef EXPERIMENTAL_SPF
16 #include "spf2/spf.h"
17 #endif /* EXPERIMENTAL_SPF */
18
19 /* prototypes */
20 int dmarc_init();
21 int dmarc_store_data(header_line *);
22 int dmarc_process();
23 uschar *dmarc_exim_expand_query(int);
24 uschar *dmarc_exim_expand_defaults(int);
25 uschar *dmarc_auth_results_header(header_line *,uschar *);
26 int dmarc_write_history_file();
27 void dmarc_send_forensic_report(u_char **);
28
29 #define DMARC_AR_HEADER        US"Authentication-Results:"
30 #define DMARC_VERIFY_STATUS    1
31
32 #define DMARC_HIST_OK          1
33 #define DMARC_HIST_DISABLED    2
34 #define DMARC_HIST_EMPTY       3
35 #define DMARC_HIST_FILE_ERR    4
36 #define DMARC_HIST_WRITE_ERR   5
37
38 /* From opendmarc.c */
39 #define DMARC_RESULT_REJECT     0
40 #define DMARC_RESULT_DISCARD    1
41 #define DMARC_RESULT_ACCEPT     2
42 #define DMARC_RESULT_TEMPFAIL   3
43 #define DMARC_RESULT_QUARANTINE 4
44
45
46 #endif
47
48 // vim:sw=2 expandtab