TLS: variables $tls_(in,out)_tlsver
[exim.git] / test / confs / 2102
index 5332801dc6c0bc6d202d0f795c1419949e48775b..5e156d486a8e2c180e793a37cb132f5ba9e42de7 100644 (file)
@@ -1,13 +1,9 @@
 # Exim test configuration 2102
 
-exim_path = EXIM_PATH
-host_lookup_order = bydns
+.include DIR/aux-var/tls_conf_prefix
+
+timezone = UTC
 primary_hostname = myhost.test.ex
-rfc1413_query_timeout = 0s
-spool_directory = DIR/spool
-log_file_path = DIR/spool/log/%slog
-gecos_pattern = ""
-gecos_name = CALLER_NAME
 
 # ----- Main settings -----
 
@@ -20,13 +16,26 @@ queue_run_in_order
 
 tls_advertise_hosts = 127.0.0.1 : HOSTIPV4
 
-tls_certificate = DIR/aux-fixed/exim-ca/example.com/server1.example.com/server1.example.com.pem
-tls_privatekey = DIR/aux-fixed/exim-ca/example.com/server1.example.com/server1.example.com.unlocked.key
+.ifdef ORDER
+tls_require_ciphers = ORDER
+.endif
+
+CA = DIR/aux-fixed/exim-ca
+DRSA = CA/example.com
+DECDSA = CA/example_ec.com
+
+tls_certificate = DRSA/server1.example.com/server1.example.com.pem \
+               : DECDSA/server1.example_ec.com/server1.example_ec.com.pem
+tls_privatekey =  DRSA/server1.example.com/server1.example.com.unlocked.key \
+               : DECDSA/server1.example_ec.com/server1.example_ec.com.unlocked.key
 
 tls_verify_hosts = HOSTIPV4
-tls_verify_certificates = DIR/aux-fixed/exim-ca/example.com/server2.example.com/ca_chain.pem
+tls_verify_certificates = DRSA/server2.example.com/ca_chain.pem
 
 
+.ifdef _OPT_OPENSSL_NO_TLSV1_3_X
+openssl_options = +no_tlsv1_3
+.endif
 # ------ ACL ------
 
 begin acl
@@ -34,14 +43,10 @@ begin acl
 check_recipient:
   accept  hosts = :
   deny    hosts = HOSTIPV4
-         !encrypted = AES256-SHA : \
-                      AES256-GCM-SHA384 : \
-                      IDEA-CBC-MD5 : \
-                      DES-CBC3-SHA : \
-                     DHE-RSA-AES256-SHA : \
-                     DHE-RSA-AES256-GCM-SHA384 : \
-                      DHE_RSA_AES_256_CBC_SHA1 : \
-                      DHE_RSA_3DES_EDE_CBC_SHA
+         !encrypted = *
+         logwrite = cipher: $tls_in_cipher
+# This appears to lie. Despite what's on the wire, it returns the last cert loaded.
+# Fixed in OpenSSL 1.1.1 ?  Testcase golden logfile has the incorrect value.
   warn    logwrite =  ${if def:tls_in_ourcert \
                {Our cert SN: <${certextract{subject}{$tls_in_ourcert}}>} \
                {We did not present a cert}}
@@ -52,13 +57,24 @@ check_recipient:
          logwrite =  SR  <${certextract {serial_number}{$tls_in_peercert}}>
          logwrite =  SN  <${certextract {subject}      {$tls_in_peercert}}>
           logwrite =  IN  <${certextract {issuer}      {$tls_in_peercert}}>
-          logwrite =  NB  <${certextract {notbefore}   {$tls_in_peercert}}>
-          logwrite =  NA  <${certextract {notafter}    {$tls_in_peercert}}>
-          logwrite =  SA  <${certextract {signature_algorithm}{$tls_in_peercert}}>
+          logwrite =  IN/O <${certextract {issuer,O}   {$tls_in_peercert}}>
+          logwrite =  NB/r <${certextract {notbefore,raw}      {$tls_in_peercert}}>
+          logwrite =  NB   <${certextract {notbefore}  {$tls_in_peercert}}>
+          logwrite =  NB/i <${certextract {notbefore,int}{$tls_in_peercert}}>
+          logwrite =  NA/i <${certextract {notafter,int}       {$tls_in_peercert}}>
+          logwrite =  NA   <${certextract {notafter}   {$tls_in_peercert}}>
+          logwrite =  SA  <${certextract {sig_algorithm}{$tls_in_peercert}}>
           logwrite =  SG  <${certextract {signature}   {$tls_in_peercert}}>
-         logwrite =       ${certextract {subject_altname}{$tls_in_peercert} {SAN <$value>}{(no SAN)}}
+         logwrite =       ${certextract {subj_altname} {$tls_in_peercert} {SAN <$value>}{(no SAN)}}
          logwrite =       ${certextract {ocsp_uri}     {$tls_in_peercert} {OCU <$value>}{(no OCU)}}
          logwrite =       ${certextract {crl_uri}      {$tls_in_peercert} {CRU <$value>}{(no CRU)}}
+         logwrite =  md5    fingerprint ${md5:$tls_in_peercert}
+         logwrite =  sha1   fingerprint ${sha1:$tls_in_peercert}
+         logwrite =  sha256 fingerprint ${sha256:$tls_in_peercert}
+         logwrite =  der_b64 ${base64:$tls_in_peercert}
+         logwrite = cipher: $tls_in_cipher
+         logwrite = cipher_ $tls_in_cipher_std
+         logwrite = ver:    $tls_in_ver
 
 
 # ----- Routers -----