DANE: current src version
[exim.git] / src / src / dmarc.h
CommitLineData
4840604e
TL
1/*************************************************
2* Exim - an Internet mail transport agent *
3*************************************************/
4
5/* Experimental DMARC support.
5a66c31b 6 Copyright (c) Todd Lyons <tlyons@exim.org> 2012 - 2014
4840604e
TL
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
c007c974
JH
14# include "opendmarc/dmarc.h"
15# ifdef EXPERIMENTAL_SPF
16# include "spf2/spf.h"
17# endif /* EXPERIMENTAL_SPF */
4840604e
TL
18
19/* prototypes */
20int dmarc_init();
21int dmarc_store_data(header_line *);
22int dmarc_process();
23uschar *dmarc_exim_expand_query(int);
24uschar *dmarc_exim_expand_defaults(int);
25uschar *dmarc_auth_results_header(header_line *,uschar *);
26int dmarc_write_history_file();
27void 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
620df281
TL
45/* From opendmarc-ar.h */
46/* ARES_RESULT_T -- type for specifying an authentication result */
47#define ARES_RESULT_UNDEFINED (-1)
48#define ARES_RESULT_PASS 0
49#define ARES_RESULT_UNUSED 1
50#define ARES_RESULT_SOFTFAIL 2
51#define ARES_RESULT_NEUTRAL 3
52#define ARES_RESULT_TEMPERROR 4
53#define ARES_RESULT_PERMERROR 5
54#define ARES_RESULT_NONE 6
55#define ARES_RESULT_FAIL 7
56#define ARES_RESULT_POLICY 8
57#define ARES_RESULT_NXDOMAIN 9
58#define ARES_RESULT_SIGNED 10
59#define ARES_RESULT_UNKNOWN 11
60#define ARES_RESULT_DISCARD 12
4840604e 61
4a8ce2d8 62#endif /* EXPERIMENTAL_DMARC */