From aa4d426b4d3527d7e166df1a05058c9a4a0f6683 Mon Sep 17 00:00:00 2001 From: Wojtek Kosior Date: Fri, 30 Apr 2021 00:33:56 +0200 Subject: initial/final commit --- .../test/ssl-tests/06-sni-ticket.conf.in | 95 ++++++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 openssl-1.1.0h/test/ssl-tests/06-sni-ticket.conf.in (limited to 'openssl-1.1.0h/test/ssl-tests/06-sni-ticket.conf.in') diff --git a/openssl-1.1.0h/test/ssl-tests/06-sni-ticket.conf.in b/openssl-1.1.0h/test/ssl-tests/06-sni-ticket.conf.in new file mode 100644 index 0000000..ea92b62 --- /dev/null +++ b/openssl-1.1.0h/test/ssl-tests/06-sni-ticket.conf.in @@ -0,0 +1,95 @@ +# -*- mode: perl; -*- +# Copyright 2016-2016 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the OpenSSL license (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + + +## Test Session ticket + +use strict; +use warnings; + +package ssltests; + + +our @tests = (); + +sub generate_tests() { + foreach my $c ("SessionTicket", "-SessionTicket") { + foreach my $s1 ("SessionTicket", "-SessionTicket") { + foreach my $s2 ("SessionTicket", "-SessionTicket") { + foreach my $n ("server1", "server2") { + my $result = expected_result($c, $s1, $s2, $n); + push @tests, { + "name" => "sni-session-ticket", + "client" => { + "Options" => $c, + "extra" => { + "ServerName" => $n, + }, + }, + "server" => { + "Options" => $s1, + "extra" => { + # We don't test mismatch here. + "ServerNameCallback" => "IgnoreMismatch", + }, + }, + "server2" => { + "Options" => $s2, + }, + "test" => { + "ExpectedServerName" => $n, + "ExpectedResult" => "Success", + "SessionTicketExpected" => $result, + } + }; + } + } + } + } +} + +# If the client has session tickets disabled, then No support +# If the server initial_ctx has session tickets disabled, then No support +# If SNI is in use, then if the "switched-to" context has session tickets disabled, +# then No support +sub expected_result { + my ($c, $s1, $s2, $n) = @_; + + return "No" if $c eq "-SessionTicket"; + return "No" if $s1 eq "-SessionTicket"; + return "No" if ($s2 eq "-SessionTicket" && $n eq "server2"); + + return "Yes"; + +} + +# Add a "Broken" case. +push @tests, { + "name" => "sni-session-ticket", + "client" => { + "Options" => "SessionTicket", + "extra" => { + "ServerName" => "server1", + } + }, + "server" => { + "Options" => "SessionTicket", + "extra" => { + "BrokenSessionTicket" => "Yes", + }, + }, + "server2" => { + "Options" => "SessionTicket", + }, + "test" => { + "ExpectedResult" => "Success", + "SessionTicketExpected" => "No", + } +}; + +generate_tests(); -- cgit v1.2.3