[exim-cvs] Testsuite: DMARC history-file

Góra strony
Delete this message
Reply to this message
Autor: Exim Git Commits Mailing List
Data:  
Dla: exim-cvs
Temat: [exim-cvs] Testsuite: DMARC history-file
Gitweb: https://git.exim.org/exim.git/commitdiff/7aecdeeba22cfe94a180d722dc3506cd6f2b83a2
Commit:     7aecdeeba22cfe94a180d722dc3506cd6f2b83a2
Parent:     b30b511eccc30d8fda614575194fcd2250f2350d
Author:     Jeremy Harris <jgh146exb@???>
AuthorDate: Sat Aug 19 22:37:25 2023 +0100
Committer:  Jeremy Harris <jgh146exb@???>
CommitDate: Sun Aug 20 14:22:31 2023 +0100


    Testsuite: DMARC history-file
---
 test/confs/4650              |  1 +
 test/dnszones-src/db.test.ex |  4 ++++
 test/log/4650                | 15 ++++++++-------
 test/runtest                 |  2 ++
 test/scripts/4650-DMARC/4650 | 10 ++++++++--
 test/stdout/4650             | 26 +++++++++++++++++++++++---
 6 files changed, 46 insertions(+), 12 deletions(-)


diff --git a/test/confs/4650 b/test/confs/4650
index 32e138313..5ad7adbc8 100644
--- a/test/confs/4650
+++ b/test/confs/4650
@@ -18,6 +18,7 @@ primary_hostname = myhost.test.ex
# ----- Main settings -----

dmarc_tld_file = DIR/aux-fixed/TESTNUM.tldfile
+dmarc_history_file = DIR/tmp/TESTNUM.hist.dmarc

acl_smtp_rcpt = accept
acl_smtp_data = check_data
diff --git a/test/dnszones-src/db.test.ex b/test/dnszones-src/db.test.ex
index 22749e4e2..d39e9cf1e 100644
--- a/test/dnszones-src/db.test.ex
+++ b/test/dnszones-src/db.test.ex
@@ -626,4 +626,8 @@ sed._domainkey TXT "v=DKIM1; k=ed25519; p=sPs07Vu29FpHT/80UXUcYHFOHifD4o2ZlP2+XU
sedw._domainkey TXT "v=DKIM1; k=ed25519; p=MCowBQYDK2VwAyEAsPs07Vu29FpHT/80UXUcYHFOHifD4o2ZlP2+XUh9g6E="


+; ------- DMARC ---------
+
+_dmarc TXT v=DMARC1; p=none
+
; End
diff --git a/test/log/4650 b/test/log/4650
index 5e1990064..900f36156 100644
--- a/test/log/4650
+++ b/test/log/4650
@@ -1,9 +1,10 @@

 ******** SERVER ********
-1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port PORT_D
-1999-03-02 09:44:33 10HmaX-0005vi-00 dmarc_status <norecord>
-1999-03-02 09:44:33 10HmaX-0005vi-00 dmarc_status_text <No DMARC record>
-1999-03-02 09:44:33 10HmaX-0005vi-00 dmarc_used_domain <example.com>
-1999-03-02 09:44:33 10HmaX-0005vi-00 dmarc_domain_policy <>
-1999-03-02 09:44:33 10HmaX-0005vi-00 Authentication-Results: myhost.test.ex;\n    spf=fail smtp.mailfrom=example.com;\n    dmarc=none header.from=example.com
-1999-03-02 09:44:33 10HmaX-0005vi-00 <= a@??? H=(testclient) [ip4.ip4.ip4.ip4] P=smtp S=sss
+1999-03-02 09:44:33 exim x.yz daemon started: pid=p1234, no queue runs, listening for SMTP on port PORT_D
+1999-03-02 09:44:33 10HmaX-000000005vi-0000 DMARC results: spf_domain=test.ex dmarc_domain=test.ex spf_align=no dkim_align=no enforcement='None, Accept'
+1999-03-02 09:44:33 10HmaX-000000005vi-0000 dmarc_status <none>
+1999-03-02 09:44:33 10HmaX-000000005vi-0000 dmarc_status_text <None, Accept>
+1999-03-02 09:44:33 10HmaX-000000005vi-0000 dmarc_used_domain <test.ex>
+1999-03-02 09:44:33 10HmaX-000000005vi-0000 dmarc_domain_policy <none>
+1999-03-02 09:44:33 10HmaX-000000005vi-0000 Authentication-Results: myhost.test.ex;\n    spf=none smtp.mailfrom=test.ex;\n    dmarc=none header.from=test.ex
+1999-03-02 09:44:33 10HmaX-000000005vi-0000 <= a@??? H=(testclient) [ip4.ip4.ip4.ip4] P=smtp S=sss
diff --git a/test/runtest b/test/runtest
index 23551861a..1ed0ad73a 100755
--- a/test/runtest
+++ b/test/runtest
@@ -1056,6 +1056,8 @@ RESET_AFTER_EXTRA_LINE_READ:


     # DMARC is not always supported by the build
     next if /^dmarc_tld_file =/;
+    # timestamp in dmarc history file
+    s/received \K\d{10}$/1692480217/;


     # ARC is not always supported by the build
     next if /^arc_sign =/;
diff --git a/test/scripts/4650-DMARC/4650 b/test/scripts/4650-DMARC/4650
index 5526a8bbe..40df619f3 100644
--- a/test/scripts/4650-DMARC/4650
+++ b/test/scripts/4650-DMARC/4650
@@ -6,20 +6,23 @@
 # Be careful with envelope-domains used for testcases, as real DNS lookups will be done
 # for names not provided for in fakedns.
 #
+mkdir DIR/tmp
+sudo chmod 777 DIR/tmp
+#
 exim -bd -DSERVER=server -oX PORT_D
 ****
 client HOSTIPV4 PORT_D
 ??? 220
 HELO testclient
 ??? 250
-MAIL FROM:<a@???>
+MAIL FROM:<a@???>
 ??? 250
 RCPT TO:<fred@???>
 ??? 250
 DATA
 ??? 3
 Subject: test
-From: z@???
+From: <z@???>


body line
.
@@ -28,4 +31,7 @@ QUIT
****
#
killdaemon
+cat DIR/tmp/TESTNUM.hist.dmarc
+#
+sudo rm -fr DIR/tmp
no_msglog_check
diff --git a/test/stdout/4650 b/test/stdout/4650
index acd347256..436f4bd41 100644
--- a/test/stdout/4650
+++ b/test/stdout/4650
@@ -4,7 +4,7 @@ Connecting to ip4.ip4.ip4.ip4 port 1225 ... connected
>>> HELO testclient

??? 250
<<< 250 myhost.test.ex Hello testclient [ip4.ip4.ip4.ip4]
->>> MAIL FROM:<a@???>
+>>> MAIL FROM:<a@???>
??? 250
<<< 250 OK
>>> RCPT TO:<fred@???>

@@ -14,11 +14,31 @@ Connecting to ip4.ip4.ip4.ip4 port 1225 ... connected
??? 3
<<< 354 Enter message, ending with "." on a line by itself
>>> Subject: test

->>> From: z@???
+>>> From: <z@???>
>>>
>>> body line
>>> .

??? 250
-<<< 250 OK id=10HmaX-0005vi-00
+<<< 250 OK id=10HmaX-000000005vi-0000
>>> QUIT

End of script
+job 10HmaX-000000005vi-0000
+reporter myhost.test.ex
+received 1692480217
+ipaddr ip4.ip4.ip4.ip4
+from test.ex
+mfrom test.ex
+spf 7
+pdomain test.ex
+policy 18
+rua -
+pct 100
+adkim 114
+aspf 114
+p 110
+sp 0
+align_dkim 5
+align_spf 5
+action 2
+arc -
+arc_policy -

--
## subscription configuration (requires account):
## https://lists.exim.org/mailman3/postorius/lists/exim-cvs.lists.exim.org/
## unsubscribe (doesn't require an account):
## exim-cvs-unsubscribe@???
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/