1# -*- mode: perl; -*-
2# Copyright 2016-2020 The OpenSSL Project Authors. All Rights Reserved.
3#
4# Licensed under the Apache License 2.0 (the "License").  You may not use
5# this file except in compliance with the License.  You can obtain a copy
6# in the file LICENSE in the source distribution or at
7# https://www.openssl.org/source/license.html
8
9
10## SSL test configurations
11
12package ssltests;
13
14use OpenSSL::Test::Utils;
15
16our @tests = ();
17
18my @tests_tls1_2 = (
19    {
20        name => "disable-extended-master-secret-server-sha",
21        server => {
22          "Options" => "-ExtendedMasterSecret",
23        },
24        client => {
25          "CipherString" => "AES128-SHA",
26          "MaxProtocol" => "TLSv1.2"
27        },
28        test   => {
29          "ExpectedResult" => "Success",
30        },
31    },
32    {
33        name => "disable-extended-master-secret-client-sha",
34        server => {
35        },
36        client => {
37          "CipherString" => "AES128-SHA",
38          "Options" => "-ExtendedMasterSecret",
39          "MaxProtocol" => "TLSv1.2"
40        },
41        test   => {
42          "ExpectedResult" => "Success",
43        },
44    },
45    {
46        name => "disable-extended-master-secret-both-sha",
47        server => {
48          "Options" => "-ExtendedMasterSecret",
49        },
50        client => {
51          "CipherString" => "AES128-SHA",
52          "Options" => "-ExtendedMasterSecret",
53          "MaxProtocol" => "TLSv1.2"
54        },
55        test   => {
56          "ExpectedResult" => "Success",
57        },
58    },
59    {
60        name => "disable-extended-master-secret-both-resume",
61        server => {
62          "Options" => "-ExtendedMasterSecret",
63        },
64        resume_server => {
65        },
66        client => {
67          "CipherString" => "AES128-SHA",
68          "Options" => "-ExtendedMasterSecret",
69          "MaxProtocol" => "TLSv1.2"
70        },
71        resume_client => {
72          "CipherString" => "AES128-SHA",
73          "MaxProtocol" => "TLSv1.2"
74        },
75        test   => {
76	  "HandshakeMode" => "Resume",
77          "ExpectedResult" => "Success",
78        },
79    },
80    {
81        name => "disable-extended-master-secret-server-sha2",
82        server => {
83          "Options" => "-ExtendedMasterSecret",
84        },
85        client => {
86          "CipherString" => "AES128-SHA256",
87          "MaxProtocol" => "TLSv1.2"
88        },
89        test   => {
90          "ExpectedResult" => "Success",
91        },
92    },
93    {
94        name => "disable-extended-master-secret-client-sha2",
95        server => {
96        },
97        client => {
98          "CipherString" => "AES128-SHA256",
99          "Options" => "-ExtendedMasterSecret",
100          "MaxProtocol" => "TLSv1.2"
101        },
102        test   => {
103          "ExpectedResult" => "Success",
104        },
105    },
106    {
107        name => "disable-extended-master-secret-both-sha2",
108        server => {
109          "Options" => "-ExtendedMasterSecret",
110        },
111        client => {
112          "CipherString" => "AES128-SHA256",
113          "Options" => "-ExtendedMasterSecret",
114          "MaxProtocol" => "TLSv1.2"
115        },
116        test   => {
117          "ExpectedResult" => "Success",
118        },
119    },
120);
121
122push @tests, @tests_tls1_2 unless disabled("tls1_2");
123