# HG changeset patch # User Maxim Dounin # Date 1679590193 -10800 # Node ID 2e541778e5d82065d902051089cadaa0d2b6ba3c # Parent f6d1f82f314bf842a342c06124607ee6df881593 Tests: LibreSSL and BoringSSL session reuse with TLSv1.3 in mail. LibreSSL does not support session reuse with TLSv1.3 at all. BoringSSL with TLSv1.3 only supports session tickets, but not server-side session cache. diff --git a/mail_ssl_session_reuse.t b/mail_ssl_session_reuse.t --- a/mail_ssl_session_reuse.t +++ b/mail_ssl_session_reuse.t @@ -139,16 +139,34 @@ my $ctx = Net::SSLeay::CTX_new() or die( # - only cache none # - only cache off +TODO: { +local $TODO = 'no TLSv1.3 sessions in LibreSSL' + if $t->has_module('LibreSSL') && test_tls13(); + is(test_reuse(8993), 1, 'tickets reused'); is(test_reuse(8994), 1, 'tickets and cache reused'); + +TODO: { +local $TODO = 'no TLSv1.3 session cache in BoringSSL' + if $t->has_module('BoringSSL') && test_tls13(); + is(test_reuse(8995), 1, 'cache shared reused'); is(test_reuse(8996), 1, 'cache builtin reused'); is(test_reuse(8997), 1, 'cache builtin size reused'); + +} +} + is(test_reuse(8998), 0, 'cache none not reused'); is(test_reuse(8999), 0, 'cache off not reused'); ############################################################################### +sub test_tls13 { + my ($s, $ssl) = get_ssl_socket(8993); + return (Net::SSLeay::version($ssl) > 0x303); +} + sub test_reuse { my ($port) = @_; my ($s, $ssl) = get_ssl_socket($port);