aboutsummaryrefslogtreecommitdiffstats
path: root/test/ssl-tests
Commit message (Collapse)AuthorAgeFilesLines
* Change all files with OpenSSL License to ASL 2.0 LicenseTomas Mraz2026-10-051-2/+2
| | | | | | | | | Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Dmitry Belyavskiy <[email protected]> Reviewed-by: Simo Sorce <[email protected]> Reviewed-by: Paul Dale <[email protected]> Merge-date: Mon Oct 5 09:34:48 2026 Merged-from: https://github.com/openssl/openssl/pull/33070
* More accurate ssl_new curve testsViktor Dukhovni2026-09-232-890/+945
| | | | | | | | | | | | | | - Prefer negotiated group value over tmp pkey type heuristic - Drop no longer needed brainpool NID workaround. - Test 14-curves.cnf unless both "ec" and "dh" are disabled. - Expect specific FFDHE group with TLS 1.3 - Specify "DHE" ciphers when testing FFDHE groups with TLS 1.2 - Test ML-KEM-512 hybrids in FIPS mode after version bump to 4.2 Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Neil Horman <[email protected]> MergeDate: Mon Sep 21 11:52:07 2026 (Merged from https://github.com/openssl/openssl/pull/32670)
* ML-KEM-512 hybrid TLS KEMsViktor Dukhovni2026-09-232-910/+1086
| | | | | | | | | | Per the new codepoints assigned by IANA for draft-rosomakho-tls-ecdhe-mlkem512-00. Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Neil Horman <[email protected]> MergeDate: Mon Sep 21 11:52:03 2026 (Merged from https://github.com/openssl/openssl/pull/32670)
* Copyright year updatesopenssl-machine2026-09-093-3/+3
| | | | | | | Reviewed-by: Daniel Kubec <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> Merge-date: Wed Sep 9 13:12:46 2026 Release: yes
* DTLS 1.3 CI nightly NO DTLS 1.2 Failures FixRyan Hooper2026-08-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | dtlsv1listentest uses DTLSv1_listen(), a DTLS 1.2-only API that crashes when DTLS 1.2 is disabled. Guard the test in build.info under !$disabled{dtls1_2} and add a matching recipe skip so the test is neither compiled nor run when DTLS 1.2 is unavailable. The dtls_ccs_reorder test file is specific to DTLS 1.0/1.2 CCS reordering, which does not apply to DTLS 1.3. The recipe only skipped when all DTLS was disabled, so when both DTLS 1.0 and 1.2 were disabled while DTLS 1.3 remained, the test still ran. Add a recipe skip for when both DTLS 1.0 and DTLS 1.2 are disabled, matching the build.info condition. ssl_ctx_test had two test table entries that set DTLS1_2_VERSION as a max protocol version and expected success. When DTLS 1.2 is disabled that version is not valid for any protocol, so SSL_CTX_set_max_proto_version() returns 0. Guard both entries with #ifndef OPENSSL_NO_DTLS1_2. dtlstest contained a dead #ifdef OPENSSL_NO_DTLS1_2 block inside test_listen(), which is itself wrapped in #ifndef OPENSSL_NO_DTLS1_2. The inner ifdef could never be true; remove it. Assisted-by: Claude:claude-sonnet-4-6 Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Matt Caswell <[email protected]> Merge-date: Thu Aug 20 09:55:38 2026 Merged-from: https://github.com/openssl/openssl/pull/32340
* DTLS 1.3 Enable Resumption TestsRyan Hooper2026-08-252-16/+1465
| | | | | | | | | | | | Enable teh DTLS resumption tests for DTLS1.3. Fixes: openssl/project#1794 Reviewed-by: Frederik Wedel-Heinen <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Matt Caswell <[email protected]> MergeDate: Mon Mar 16 11:07:16 2026 (Merged from https://github.com/openssl/openssl/pull/30258)
* Update SCTP support fot DTLS1.3Ryan Hooper2026-08-253-14/+24
| | | | | | | | | | | | | | There is a draft RFC for DTLS1.3 over SCTP. This PR does not address that draft RFC. Instead what it does is force DTLS connections over SCTP to downgrade to DTLS1.2. Fixes: openssl/project#1793 Reviewed-by: Frederik Wedel-Heinen <[email protected]> Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Tue Mar 3 14:16:12 2026 (Merged from https://github.com/openssl/openssl/pull/30167)
* Place start of ClientHello correctly when calculating binder for DTLS 1.3Frederik Wedel-Heinen2026-08-251-0/+2
| | | | | | Reviewed-by: Matt Caswell <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/24426)
* Adds DTLSv1.3 to protocol_version.pm for additional protocol version tests.Frederik Wedel-Heinen2026-08-254-65/+180
| | | | | | Reviewed-by: Matt Caswell <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/23242)
* Fix test_ssl_new testsFrederik Wedel-Heinen2026-08-253-814/+3223
| | | | | | Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Matt Caswell <[email protected]> (Merged from https://github.com/openssl/openssl/pull/22275)
* Run some failing tests with DTLS1.2Frederik Wedel-Heinen2026-08-252-2/+8
| | | | | | Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Matt Caswell <[email protected]> (Merged from https://github.com/openssl/openssl/pull/22275)
* Improve TLS handling of EC point formatsViktor Dukhovni2026-07-102-0/+157
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Decouple the ec_point_formats extension from TLS 1.2 X.509 selection and acceptance. Remove tls1_check_pkey_comp() and its callers in tls1_check_cert_param() and tls1_check_chain(): TLS 1.3 disregards the extension already, and we can decode any point form a peer might send, so refusing a compressed peer cert in TLS 1.2 because we didn't advertise compressed buys nothing. The RFC 4492/8422 section 5.1.2 requirement that the peer's list contain "uncompressed" used to be enforced in a final hook on the client side only. Move it to the two points where the negotiated ciphersuite is known: the client's ServerHello parse hook, and the server's ServerHello construct hook. Both sites fire the alert only when an ECC TLS 1.2 ciphersuite has been negotiated, so a missing "uncompressed" is ignored under TLS 1.3 or a non-ECC cipher. The client- and server-side parse hooks now share one function. Drop the always-NULL ext.ecpointformats fields on SSL_CTX and SSL; our own list is built directly inside the constructors. The peer's list continues to be stored verbatim, and is also exposed through the SSL_get0_ec_point_formats() accessor (now documented). New tests verify the four corners (ECC vs non-ECC ciphersuite, TLS 1.2 vs 1.3) plus that a compressed point form EC cert is usable on both sides without any opt-in. Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Matt Caswell <[email protected]> MergeDate: Fri Jul 10 09:21:30 2026 (Merged from https://github.com/openssl/openssl/pull/30940)
* Add Ed25519 certificates Support for DTLS 1.2Adriano Sela Aviles2026-05-262-390/+603
| | | | | | | | | | Resolves: https://github.com/openssl/openssl/issues/20122 Signed-off-by: Adriano Sela Aviles <[email protected]> Reviewed-by: Viktor Dukhovni <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> MergeDate: Tue May 26 08:34:42 2026 (Merged from https://github.com/openssl/openssl/pull/30007)
* Copyright year updatesopenssl-machine2026-03-101-1/+1
| | | | | | | Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> MergeDate: Tue Mar 10 14:37:54 2026 Release: yes
* New SSL tests for SM2 cert and key exchangeViktor Dukhovni2026-02-214-857/+1346
| | | | | | | | | | | Also some additional tests for other MLKEM hybrids. Reviewed-by: Tim Hudson <[email protected]> Reviewed-by: Matt Caswell <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Paul Yang <[email protected]> MergeDate: Sat Feb 21 13:26:36 2026 (Merged from https://github.com/openssl/openssl/pull/29953)
* Add tests for TLS1.3 TLS_SM4_GCM_SM3 and TLS_SM4_CCM_SM3Milan Broz2026-02-192-3/+98
| | | | | | | | | | | Signed-off-by: Milan Broz <[email protected]> Reviewed-by: Viktor Dukhovni <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Matt Caswell <[email protected]> Reviewed-by: Neil Horman <[email protected]> MergeDate: Thu Feb 19 15:11:20 2026 (Merged from https://github.com/openssl/openssl/pull/30028)
* Remove support for SSLv3Kurt Roeckx2025-12-233-10189/+1426
| | | | | | | | Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Viktor Dukhovni <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29338)
* Copyright year updatesopenssl-machine2025-09-022-2/+2
| | | | | | Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Saša Nedvědický <[email protected]> Release: yes
* Add support for TLS 1.3 OCSP multi-stapling for server certsmartin2025-07-254-2/+210
| | | | | | | | Co-authored-by: Michael Krueger Reviewed-by: David von Oheimb <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/20945)
* Add SSL_CTX_set_ec_point_formats() and SSL_set_ec_point_formats()Tim Perry2025-04-142-1/+5
| | | | | | | | | | The internal fields and implementation for configuration of this parameter already existed, but was not exposed. This change adds simple setters to allow configuration of this field. Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Matt Caswell <[email protected]> (Merged from https://github.com/openssl/openssl/pull/26990)
* Copyright year updatesopenssl-machine2025-03-128-8/+8
| | | | | | Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Matt Caswell <[email protected]> Release: yes
* Make RFC8422 deprecated TLS EC curves disablableViktor Dukhovni2025-02-261-10/+13
| | | | | | | | | Also move the deprecated curves to the end of the list, and order the soon most preferred groups first. Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/26873)
* 28-seclevel.cnf.in: Enable some groups required for high SECLEVELsTomas Mraz2025-02-252-0/+12
| | | | | | Reviewed-by: Tim Hudson <[email protected]> Reviewed-by: Saša Nedvědický <[email protected]> (Merged from https://github.com/openssl/openssl/pull/26801)
* Case-insensitive sigalgsViktor Dukhovni2025-02-188-95/+143
| | | | | | Reviewed-by: Tim Hudson <[email protected]> Reviewed-by: Dmitry Belyavskiy <[email protected]> (Merged from https://github.com/openssl/openssl/pull/26767)
* Make test_ssl_new execute tests with fips provider againTomas Mraz2025-02-148-271/+299
| | | | | | | | | | | | This has regressed with https://github.com/openssl/openssl/pull/24799 The test configs have to be generated differently based on the fips provider version. Reviewed-by: Tim Hudson <[email protected]> Reviewed-by: Neil Horman <[email protected]> (Merged from https://github.com/openssl/openssl/pull/26715)
* ML-DSA: Add TLS certificate testslontis2025-02-142-1/+58
| | | | | | | Reviewed-by: Tim Hudson <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Viktor Dukhovni <[email protected]> (Merged from https://github.com/openssl/openssl/pull/26654)
* Copyright year updatesTomas Mraz2024-09-053-3/+3
| | | | | Reviewed-by: Neil Horman <[email protected]> Release: yes
* Allow an empty NPN/ALPN protocol list in the testsMatt Caswell2024-06-274-244/+443
| | | | | | | | | | | Allow ourselves to configure an empty NPN/ALPN protocol list and test what happens if we do. Follow on from CVE-2024-5535 Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Neil Horman <[email protected]> (Merged from https://github.com/openssl/openssl/pull/24716)
* Adjust tests that were depending on X25519 and X448 in fipsTomas Mraz2024-04-194-146/+154
| | | | | | Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Paul Dale <[email protected]> (Merged from https://github.com/openssl/openssl/pull/24099)
* Copyright year updatesRichard Levitte2024-04-091-1/+1
| | | | | | | | | | Reviewed-by: Neil Horman <[email protected]> Release: yes (cherry picked from commit 0ce7d1f355c1240653e320a3f6f8109c1f05f8c0) Reviewed-by: Hugo Landau <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/24034)
* Set max protocol version for dtls renegotiation tests to dtls1.2Frederik Wedel-Heinen2024-01-032-0/+18
| | | | | | Reviewed-by: Matt Caswell <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/23168)
* Copyright year updatesMatt Caswell2023-09-072-2/+2
| | | | | Reviewed-by: Richard Levitte <[email protected]> Release: yes
* Minor fixesHugo Landau2023-07-052-57/+0
| | | | | | | Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Matt Caswell <[email protected]> Reviewed-by: Paul Dale <[email protected]> (Merged from https://github.com/openssl/openssl/pull/20061)
* Add some test_ssl_new tests for the ffdhe groupsMatt Caswell2023-06-272-759/+1305
| | | | | | | Reviewed-by: Viktor Dukhovni <[email protected]> Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/21274)
* configure: introduce no-ecx to remove ECX related featureYi Li2023-06-141-2/+2
| | | | | | | | | | | This can effectively reduce the binary size for platforms that don't need ECX feature(~100KB). Signed-off-by: Yi Li <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Paul Dale <[email protected]> (Merged from https://github.com/openssl/openssl/pull/20781)
* test: update ssl_new tests in line with pedantic FIPS policyPauli2023-04-212-0/+14
| | | | | | | | | | | | | | | | Add a new option to the `test' section of SSL test data structure. This contains a space separated list of version checks, all of which must pass. Note that the version checks are as they as because: - 3.1.0 doesn't have mandatory EMS support, so it can run the old tests. - 3.1.1 (& later) will have mandatory EMS support, so they can't run them. Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Shane Lontis <[email protected]> Reviewed-by: Hugo Landau <[email protected]> (Merged from https://github.com/openssl/openssl/pull/20762)
* Add support for compressed certificates (RFC8879)Todd Short2022-10-182-0/+391
| | | | | | | | | | * Compressed Certificate extension (server/client) * Server certificates (send/receive) * Client certificate (send/receive) Reviewed-by: Matt Caswell <[email protected]> Reviewed-by: Hugo Landau <[email protected]> (Merged from https://github.com/openssl/openssl/pull/18186)
* Add a test for TLSv1.3 only client sending a correct key_shareMatt Caswell2022-10-122-253/+1052
| | | | | | | | Make sure that a TLSv1.3 only client does not send a TLSv1.3 key_share. Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Dmitry Belyavskiy <[email protected]> (Merged from https://github.com/openssl/openssl/pull/19317)
* Add some more brainpool tests for TLSv1.3Matt Caswell2022-10-072-451/+655
| | | | | | Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Dmitry Belyavskiy <[email protected]> (Merged from https://github.com/openssl/openssl/pull/19315)
* Reimplement brainpool TLSv1.3 support group supportMatt Caswell2022-10-072-2/+2
| | | | | | | | Create new TLS_GROUP_ENTRY values for these groups. Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Dmitry Belyavskiy <[email protected]> (Merged from https://github.com/openssl/openssl/pull/19315)
* Change the SCT issuer key to RSA 2048Bernd Edlinger2022-06-032-25/+13
| | | | | | | | This avoids the need to use SECLEVEL=1 in 12-ct.cnf.in. Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Todd Short <[email protected]> (Merged from https://github.com/openssl/openssl/pull/18450)
* Enable setting SSL_CERT_FLAG_TLS_STRICT with ssl configTomas Mraz2022-06-032-289/+482
| | | | | | Reviewed-by: Todd Short <[email protected]> Reviewed-by: Paul Dale <[email protected]> (Merged from https://github.com/openssl/openssl/pull/17989)
* Add a test_ssl_new testcaseTomas Mraz2022-06-032-0/+57
| | | | | | | | | This requires some code being pulled into the empty protocol implementation so the state machinery works. Reviewed-by: Matt Caswell <[email protected]> Reviewed-by: Paul Dale <[email protected]> (Merged from https://github.com/openssl/openssl/pull/18307)
* Check that UnsafeLegacyServerConnect option existsTomas Mraz2022-05-272-111/+157
| | | | | | Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Ben Kaduk <[email protected]> (Merged from https://github.com/openssl/openssl/pull/18296)
* tls: ban SSL3, TLS1, TLS1.1 and DTLS1.0 at security level one and abovePauli2022-05-082-3/+8
| | | | | | | | | | This is in line with the NEWS entry (erroneously) announcing such for 3.0. Fixes #18194 Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Dmitry Belyavskiy <[email protected]> (Merged from https://github.com/openssl/openssl/pull/18236)
* Update copyright yearMatt Caswell2022-05-031-1/+1
| | | | | Reviewed-by: Tomas Mraz <[email protected]> Release: yes
* Fix typosDimitris Apostolou2022-01-051-2/+2
| | | | | | Reviewed-by: Tim Hudson <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/17392)
* Add a TLS test for name constraints with an EE cert without a SANMatt Caswell2021-12-142-1/+37
| | | | | | | | | | It is valid for name constraints to be in force but for there to be no SAN extension in a certificate. Previous versions of OpenSSL mishandled this. Test for CVE-2021-4044 Reviewed-by: Tomas Mraz <[email protected]>
* Enable brainpool curves for TLS1.3Bernd Edlinger2021-11-262-4/+4
| | | | | | | | See the recently assigned brainpool code points at: https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml Reviewed-by: Paul Dale <[email protected]> (Merged from https://github.com/openssl/openssl/pull/7485)
* Fix tests for new default security levelMatt Caswell2021-10-096-143/+176
| | | | | | | | Fix tests that were expecting a default security level of 1 to work with the new default of 2. Reviewed-by: Dmitry Belyavskiy <[email protected]> (Merged from https://github.com/openssl/openssl/pull/16760)