diff options
| author | jsing <> | 2018-11-06 01:40:57 +0000 |
|---|---|---|
| committer | jsing <> | 2018-11-06 01:40:57 +0000 |
| commit | 438513f64278dadec7e64ccd0ef2e414ce550541 (patch) | |
| tree | 3ae4119355686cfa081f173828a58e716aaa9a24 | |
| parent | 2b77bc57bf2b32edd50745f45bb26dd938cdc787 (diff) | |
| download | openbsd-438513f64278dadec7e64ccd0ef2e414ce550541.tar.gz openbsd-438513f64278dadec7e64ccd0ef2e414ce550541.tar.bz2 openbsd-438513f64278dadec7e64ccd0ef2e414ce550541.zip | |
Add TLSv1.3 to version regress tests.
Diffstat (limited to '')
| -rw-r--r-- | src/regress/lib/libssl/unit/ssl_versions.c | 84 |
1 files changed, 80 insertions, 4 deletions
diff --git a/src/regress/lib/libssl/unit/ssl_versions.c b/src/regress/lib/libssl/unit/ssl_versions.c index d84a7106d5..11519c3732 100644 --- a/src/regress/lib/libssl/unit/ssl_versions.c +++ b/src/regress/lib/libssl/unit/ssl_versions.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: ssl_versions.c,v 1.5 2018/03/15 12:27:01 jca Exp $ */ | 1 | /* $OpenBSD: ssl_versions.c,v 1.6 2018/11/06 01:40:57 jsing Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Copyright (c) 2016, 2017 Joel Sing <jsing@openbsd.org> | 3 | * Copyright (c) 2016, 2017 Joel Sing <jsing@openbsd.org> |
| 4 | * | 4 | * |
| @@ -31,6 +31,13 @@ static struct version_range_test version_range_tests[] = { | |||
| 31 | { | 31 | { |
| 32 | .options = 0, | 32 | .options = 0, |
| 33 | .minver = TLS1_VERSION, | 33 | .minver = TLS1_VERSION, |
| 34 | .maxver = TLS1_3_VERSION, | ||
| 35 | .want_minver = TLS1_VERSION, | ||
| 36 | .want_maxver = TLS1_3_VERSION, | ||
| 37 | }, | ||
| 38 | { | ||
| 39 | .options = 0, | ||
| 40 | .minver = TLS1_VERSION, | ||
| 34 | .maxver = TLS1_2_VERSION, | 41 | .maxver = TLS1_2_VERSION, |
| 35 | .want_minver = TLS1_VERSION, | 42 | .want_minver = TLS1_VERSION, |
| 36 | .want_maxver = TLS1_2_VERSION, | 43 | .want_maxver = TLS1_2_VERSION, |
| @@ -43,6 +50,13 @@ static struct version_range_test version_range_tests[] = { | |||
| 43 | .want_maxver = TLS1_2_VERSION, | 50 | .want_maxver = TLS1_2_VERSION, |
| 44 | }, | 51 | }, |
| 45 | { | 52 | { |
| 53 | .options = SSL_OP_NO_TLSv1_3, | ||
| 54 | .minver = TLS1_VERSION, | ||
| 55 | .maxver = TLS1_3_VERSION, | ||
| 56 | .want_minver = TLS1_VERSION, | ||
| 57 | .want_maxver = TLS1_2_VERSION, | ||
| 58 | }, | ||
| 59 | { | ||
| 46 | .options = SSL_OP_NO_TLSv1_2, | 60 | .options = SSL_OP_NO_TLSv1_2, |
| 47 | .minver = TLS1_VERSION, | 61 | .minver = TLS1_VERSION, |
| 48 | .maxver = TLS1_2_VERSION, | 62 | .maxver = TLS1_2_VERSION, |
| @@ -78,13 +92,30 @@ static struct version_range_test version_range_tests[] = { | |||
| 78 | .want_maxver = TLS1_1_VERSION, | 92 | .want_maxver = TLS1_1_VERSION, |
| 79 | }, | 93 | }, |
| 80 | { | 94 | { |
| 81 | .options = SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1 | SSL_OP_NO_TLSv1_2, | 95 | .options = SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1 | |
| 96 | SSL_OP_NO_TLSv1_2, | ||
| 82 | .minver = TLS1_VERSION, | 97 | .minver = TLS1_VERSION, |
| 83 | .maxver = TLS1_2_VERSION, | 98 | .maxver = TLS1_2_VERSION, |
| 84 | .want_minver = 0, | 99 | .want_minver = 0, |
| 85 | .want_maxver = 0, | 100 | .want_maxver = 0, |
| 86 | }, | 101 | }, |
| 87 | { | 102 | { |
| 103 | .options = SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1 | | ||
| 104 | SSL_OP_NO_TLSv1_2, | ||
| 105 | .minver = TLS1_VERSION, | ||
| 106 | .maxver = TLS1_3_VERSION, | ||
| 107 | .want_minver = TLS1_3_VERSION, | ||
| 108 | .want_maxver = TLS1_3_VERSION, | ||
| 109 | }, | ||
| 110 | { | ||
| 111 | .options = SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1 | | ||
| 112 | SSL_OP_NO_TLSv1_2 | SSL_OP_NO_TLSv1_3, | ||
| 113 | .minver = TLS1_VERSION, | ||
| 114 | .maxver = TLS1_3_VERSION, | ||
| 115 | .want_minver = 0, | ||
| 116 | .want_maxver = 0, | ||
| 117 | }, | ||
| 118 | { | ||
| 88 | .options = 0, | 119 | .options = 0, |
| 89 | .minver = TLS1_VERSION, | 120 | .minver = TLS1_VERSION, |
| 90 | .maxver = TLS1_2_VERSION, | 121 | .maxver = TLS1_2_VERSION, |
| @@ -108,6 +139,34 @@ static struct version_range_test version_range_tests[] = { | |||
| 108 | { | 139 | { |
| 109 | .options = 0, | 140 | .options = 0, |
| 110 | .minver = TLS1_VERSION, | 141 | .minver = TLS1_VERSION, |
| 142 | .maxver = TLS1_3_VERSION, | ||
| 143 | .want_minver = TLS1_VERSION, | ||
| 144 | .want_maxver = TLS1_3_VERSION, | ||
| 145 | }, | ||
| 146 | { | ||
| 147 | .options = 0, | ||
| 148 | .minver = TLS1_1_VERSION, | ||
| 149 | .maxver = TLS1_3_VERSION, | ||
| 150 | .want_minver = TLS1_1_VERSION, | ||
| 151 | .want_maxver = TLS1_3_VERSION, | ||
| 152 | }, | ||
| 153 | { | ||
| 154 | .options = 0, | ||
| 155 | .minver = TLS1_2_VERSION, | ||
| 156 | .maxver = TLS1_3_VERSION, | ||
| 157 | .want_minver = TLS1_2_VERSION, | ||
| 158 | .want_maxver = TLS1_3_VERSION, | ||
| 159 | }, | ||
| 160 | { | ||
| 161 | .options = 0, | ||
| 162 | .minver = TLS1_3_VERSION, | ||
| 163 | .maxver = TLS1_3_VERSION, | ||
| 164 | .want_minver = TLS1_3_VERSION, | ||
| 165 | .want_maxver = TLS1_3_VERSION, | ||
| 166 | }, | ||
| 167 | { | ||
| 168 | .options = 0, | ||
| 169 | .minver = TLS1_VERSION, | ||
| 111 | .maxver = TLS1_1_VERSION, | 170 | .maxver = TLS1_1_VERSION, |
| 112 | .want_minver = TLS1_VERSION, | 171 | .want_minver = TLS1_VERSION, |
| 113 | .want_maxver = TLS1_1_VERSION, | 172 | .want_maxver = TLS1_1_VERSION, |
| @@ -149,7 +208,7 @@ test_ssl_enabled_version_range(void) | |||
| 149 | vrt = &version_range_tests[i]; | 208 | vrt = &version_range_tests[i]; |
| 150 | 209 | ||
| 151 | SSL_clear_options(ssl, SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1 | | 210 | SSL_clear_options(ssl, SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1 | |
| 152 | SSL_OP_NO_TLSv1_2); | 211 | SSL_OP_NO_TLSv1_2 | SSL_OP_NO_TLSv1_3); |
| 153 | SSL_set_options(ssl, vrt->options); | 212 | SSL_set_options(ssl, vrt->options); |
| 154 | 213 | ||
| 155 | minver = maxver = 0xffff; | 214 | minver = maxver = 0xffff; |
| @@ -238,6 +297,14 @@ static struct shared_version_test shared_version_tests[] = { | |||
| 238 | .options = 0, | 297 | .options = 0, |
| 239 | .minver = TLS1_VERSION, | 298 | .minver = TLS1_VERSION, |
| 240 | .maxver = TLS1_2_VERSION, | 299 | .maxver = TLS1_2_VERSION, |
| 300 | .peerver = TLS1_3_VERSION, | ||
| 301 | .want_maxver = TLS1_2_VERSION, | ||
| 302 | }, | ||
| 303 | { | ||
| 304 | .ssl_method = TLS_method, | ||
| 305 | .options = 0, | ||
| 306 | .minver = TLS1_VERSION, | ||
| 307 | .maxver = TLS1_2_VERSION, | ||
| 241 | .peerver = 0x7f12, | 308 | .peerver = 0x7f12, |
| 242 | .want_maxver = TLS1_2_VERSION, | 309 | .want_maxver = TLS1_2_VERSION, |
| 243 | }, | 310 | }, |
| @@ -383,7 +450,7 @@ test_ssl_max_shared_version(void) | |||
| 383 | } | 450 | } |
| 384 | 451 | ||
| 385 | SSL_clear_options(ssl, SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1 | | 452 | SSL_clear_options(ssl, SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1 | |
| 386 | SSL_OP_NO_TLSv1_2); | 453 | SSL_OP_NO_TLSv1_2 | SSL_OP_NO_TLSv1_3); |
| 387 | SSL_set_options(ssl, svt->options); | 454 | SSL_set_options(ssl, svt->options); |
| 388 | 455 | ||
| 389 | maxver = 0; | 456 | maxver = 0; |
| @@ -444,6 +511,13 @@ static struct min_max_version_test min_max_version_tests[] = { | |||
| 444 | }, | 511 | }, |
| 445 | { | 512 | { |
| 446 | .ssl_method = TLS_method, | 513 | .ssl_method = TLS_method, |
| 514 | .minver = 0, | ||
| 515 | .maxver = TLS1_3_VERSION, | ||
| 516 | .want_minver = TLS1_VERSION, | ||
| 517 | .want_maxver = TLS1_2_VERSION, | ||
| 518 | }, | ||
| 519 | { | ||
| 520 | .ssl_method = TLS_method, | ||
| 447 | .minver = TLS1_VERSION, | 521 | .minver = TLS1_VERSION, |
| 448 | .maxver = TLS1_2_VERSION, | 522 | .maxver = TLS1_2_VERSION, |
| 449 | .want_minver = TLS1_VERSION, | 523 | .want_minver = TLS1_VERSION, |
| @@ -710,6 +784,8 @@ main(int argc, char **argv) | |||
| 710 | 784 | ||
| 711 | SSL_library_init(); | 785 | SSL_library_init(); |
| 712 | 786 | ||
| 787 | /* XXX - Test ssl_supported_version_range() */ | ||
| 788 | |||
| 713 | failed |= test_ssl_enabled_version_range(); | 789 | failed |= test_ssl_enabled_version_range(); |
| 714 | failed |= test_ssl_max_shared_version(); | 790 | failed |= test_ssl_max_shared_version(); |
| 715 | failed |= test_ssl_min_max_version(); | 791 | failed |= test_ssl_min_max_version(); |
