X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/360c049264151071203aee2f957472321ff0dc41..9bf74b9c298f6968417fe88a68ccdf2179db1403:/test/scripts/5840-DANE-OpenSSL/5840 diff --git a/test/scripts/5840-DANE-OpenSSL/5840 b/test/scripts/5840-DANE-OpenSSL/5840 index 814b4b0e8..c827cc190 100644 --- a/test/scripts/5840-DANE-OpenSSL/5840 +++ b/test/scripts/5840-DANE-OpenSSL/5840 @@ -2,29 +2,145 @@ # exim -DSERVER=server -DDETAILS=ee -bd -oX PORT_D **** -# TLSA (3 1 1) -exim CALLER@dane256ee.test.ex +### TLSA (3 1 1) (DANE-EE SPKI SHA2-256) +exim -odq t1@dane256ee.test.ex Testing **** -# TLSA (3 1 2) -exim CALLER@mxdane512ee.test.ex +### TLSA (3 1 2) ( SHA2-512) +exim -odq t2@mxdane512ee.test.ex Testing **** exim -qf **** -killdaemon -exim -DSERVER=server -DDETAILS=ee -DNOTDAEMON -qf +# +# +### Recipient callout +exim -DOPT=callout -bhc 127.0.0.1 +HELO test +MAIL FROM: +RCPT TO: **** +killdaemon # # exim -DSERVER=server -DDETAILS=ta -bd -oX PORT_D **** -# TLSA (2 0 1) -exim CALLER@mxdane256ta.test.ex +### TLSA (2 0 1) (DANE-TA CERT SHA2-256) +exim -odf t4@mxdane256ta.test.ex +Testing +**** +killdaemon +# +# OpenSSL-specific regression testcase: certificate having Authority Key ID extension +exim -DSERVER=server -DCERT=DIR/aux-fixed/exim-ca/example.com/server2.example.com/fullchain.pem -DALLOW=DIR/aux-fixed/exim-ca/example.com/server2.example.com/server2.example.com.unlocked.key -bd -oX PORT_D +**** +### TLSA (2 1 1) +exim -odf t5@mxdane256tak.test.ex +Testing +**** +killdaemon +# +### A server with a nonverifying cert and no TLSA +# Check we get a non-CV but TLS connection, with try_dane but no require_dane +exim -DSERVER=server -DDETAILS=no -bd -oX PORT_D +**** +exim -odf t6@thishost.test.ex +Testing +**** +killdaemon +# +### A server with a verifying cert and no TLSA +# Check we get a CV and TLS connection, with try_dane but no require_dane +exim -DSERVER=server -DDETAILS=ca -bd -oX PORT_D +**** +exim -odf -DDETAILS=ca t7@thishost.test.ex +Testing +**** +exim -DOPT=no_certname -qf +**** +killdaemon +# +# +exim -DSERVER=server -DDETAILS=ee -bd -oX PORT_D +**** +### A server with two MXs for which both TLSA lookups return defer (delivery should defer) +exim -odq t8@mxdanelazy.test.ex +Testing +**** +### A server lacking a TLSA, dane required (should fail) +exim -odq t9@dane.no.1.test.ex +Testing +**** +### A server lacking a TLSA, dane requested only (should deliver, non-DANE, as the NXDOMAIN is not DNSSEC) +exim -odq t10@dane.no.2.test.ex +Testing +**** +### A server where the A is dnssec and the TLSA lookup _fails_ (delivery should defer) +exim -odq t11@danebroken1.test.ex +Testing +**** +### A server securely saying "no TLSA records here", dane required (delivery should fail) +exim -odq t12@dane.no.3.test.ex +Testing +**** +### A server securely saying "no TLSA records here", dane requested only (should deliver) +exim -odq t13@dane.no.4.test.ex Testing **** exim -qf **** +exim -Mrm $msg1 $msg2 +**** +# +### A server securely serving a wrong TLSA record, dane requested only (delivery should fail) +#XXX it defers. +exim -odf t14@danebroken2.test.ex +Testing +**** +### A server insecurely serving a good TLSA record, dane requested only (should deliver, non-DANE) +exim -odf t15@danebroken3.test.ex +Testing +**** +### A server insecurely serving a good TLSA record, dane required (delivery should fail) +exim -odf t16@danebroken4.test.ex +Testing +**** +### A server insecurely serving a good A record, dane requested only (should deliver, non-DANE) +exim -odf t17@danebroken5.test.ex +Testing +**** +### A server insecurely serving a good A record, dane required (delivery should fail) +exim -odf t18@danebroken6.test.ex +Testing +**** +# +killdaemon +# +# +# +### A server with a name not matching the cert. TA-mode; should fail +exim -DSERVER=server -DDETAILS=cert.net -bd -oX PORT_D +**** +exim -odf t19@danebroken7.example.com +Testing +**** +# +### A server with a name not matching the cert. EE-mode; should deliver and claim DANE mode +exim -odf t20@danebroken8.example.com +Testing +**** killdaemon -exim -DSERVER=server -DDETAILS=ta -DNOTDAEMON -qf +# +# +sudo rm DIR/spool/db/retry* +exim -DSERVER=server -DDETAILS=ca -bd -oX PORT_D +**** +### A server securely serving a wrong TLSA record, dane not requested (delivery should work non-dane) +exim -odf -DCONTROL=: t21@danebroken2.test.ex **** +# sleep needed to see the t14 brokenness +sleep 1 +killdaemon +sleep 1 +# +no_msglog_check