transport dynamic modules
[exim.git] / src / src / dmarc.h
index ee78450a686ae8ec1d1174b9fc3f05fade9948aa..fa366dd06b3818f81f3f0480d4647e978bbbf747 100644 (file)
@@ -3,30 +3,29 @@
 *************************************************/
 
 /* Experimental DMARC support.
+   Copyright (c) The Exim Maintainers 2021 - 2023
    Copyright (c) Todd Lyons <tlyons@exim.org> 2012 - 2014
    License: GPL */
+/* SPDX-License-Identifier: GPL-2.0-or-later */
 
 /* Portions Copyright (c) 2012, 2013, The Trusted Domain Project;
    All rights reserved, licensed for use per LICENSE.opendmarc. */
 
-#ifdef EXPERIMENTAL_DMARC
+#ifdef SUPPORT_DMARC
 
-#include "opendmarc/dmarc.h"
-#ifdef EXPERIMENTAL_SPF
-#include "spf2/spf.h"
-#endif /* EXPERIMENTAL_SPF */
+# include "opendmarc/dmarc.h"
+# ifdef SUPPORT_SPF
+#  include "spf2/spf.h"
+# endif /* SUPPORT_SPF */
 
 /* prototypes */
-int dmarc_init();
+gstring * dmarc_version_report(gstring *);
+int dmarc_init(void);
 int dmarc_store_data(header_line *);
-int dmarc_process();
+int dmarc_process(void);
 uschar *dmarc_exim_expand_query(int);
 uschar *dmarc_exim_expand_defaults(int);
-uschar *dmarc_auth_results_header(header_line *,uschar *);
-int dmarc_write_history_file();
-void dmarc_send_forensic_report(u_char **);
 
-#define DMARC_AR_HEADER        US"Authentication-Results:"
 #define DMARC_VERIFY_STATUS    1
 
 #define DMARC_HIST_OK          1
@@ -59,4 +58,8 @@ void dmarc_send_forensic_report(u_char **);
 #define ARES_RESULT_UNKNOWN 11
 #define ARES_RESULT_DISCARD 12
 
-#endif /* EXPERIMENTAL_DMARC */
+#define        DMARC_ARC_POLICY_RESULT_PASS    0
+#define        DMARC_ARC_POLICY_RESULT_UNUSED  1
+#define        DMARC_ARC_POLICY_RESULT_FAIL    2
+
+#endif /* SUPPORT_DMARC */