summaryrefslogtreecommitdiffstats
path: root/test/generate_ssl_tests.pl
diff options
context:
space:
mode:
authorEmilia Kasper <emilia@openssl.org>2016-07-21 14:04:00 +0200
committerEmilia Kasper <emilia@openssl.org>2016-07-21 15:44:36 +0200
commit11279b13f586441a8fcc5109ee1907f33eb0cc24 (patch)
tree9dbd063fa7147e9854aeba640f9d7dff859b11bb /test/generate_ssl_tests.pl
parent2980ae2e78169b3b4d0b140c0c5796c441c5902c (diff)
Test client-side resumption
Add tests for resuming with a different client version. This happens in reality when clients persist sessions on disk through upgrades. Reviewed-by: Rich Salz <rsalz@openssl.org>
Diffstat (limited to 'test/generate_ssl_tests.pl')
-rw-r--r--test/generate_ssl_tests.pl10
1 files changed, 10 insertions, 0 deletions
diff --git a/test/generate_ssl_tests.pl b/test/generate_ssl_tests.pl
index a2f4714587..951421bb2c 100644
--- a/test/generate_ssl_tests.pl
+++ b/test/generate_ssl_tests.pl
@@ -63,6 +63,16 @@ sub print_templates {
$test->{"resume_server"} = { };
}
$test->{"client"} = { (%ssltests::base_client, %{$test->{"client"}}) };
+ if (defined $test->{"resume_client"}) {
+ $test->{"resume_client"} = { (%ssltests::base_client, %{$test->{"resume_client"}}) };
+ } elsif (defined $test->{"test"}->{"HandshakeMode"} &&
+ $test->{"test"}->{"HandshakeMode"} eq "Resume") {
+ # Default is the same as client.
+ $test->{"resume_client"} = { (%ssltests::base_client, %{$test->{"client"}}) };
+ } else {
+ # Do not emit an empty "resume-client" section.
+ $test->{"resume_client"} = { };
+ }
}
# ssl_test expects to find a