curl-curl/tests
Stefan Eissing 065b149df0
OpenSSL: check reuse of sessions for verify status
OpenSSL records its peer verification status inside its SSL_SESSION
objects. When a session is later reused, the SSL connection inherits
this verify status.

Session keys prevent reuse of sessions between connections that verify
the peer and those who do not. However, when Apple SecTrust is used
to verify a connection, this does not update the Sessions verify
status (and there is no setter). On session reuse, OpenSSL fails
the verification and Apple SecTrust cannot verify either since the
certificate peer chain is not available.

Fix this by checking the verification status on session reuse and
remove the session again if the peer needs to be verified, but the
session is not.

Reported-by: Christian Schmitza
Fixes #20435
Closes #20446
2026-01-27 14:03:47 +01:00
..
certs badwords: fix issues found in tests 2025-11-17 13:30:35 +01:00
cmake tidy-up: replace banned printf() with puts() 2025-12-15 02:14:28 +01:00
data tool: rename curl handle and result variable in --libcurl-generated code 2026-01-26 13:21:46 +01:00
http OpenSSL: check reuse of sessions for verify status 2026-01-27 14:03:47 +01:00
libtest OpenSSL: check reuse of sessions for verify status 2026-01-27 14:03:47 +01:00
server tests: rename more CURLcode variables to result 2026-01-26 05:46:48 +01:00
tunit tidy-up: miscellaneous 2026-01-20 12:37:56 +01:00
unit tests: rename more CURLcode variables to result 2026-01-26 05:46:48 +01:00
.gitignore tidy-up: .gitignore lines mostly 2025-01-27 20:59:46 +01:00
allversions.pm badwords: fix issues found in tests 2025-11-17 13:30:35 +01:00
appveyor.pm tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
azure.pm runtests: fix quoting in Appveyor and Azure test integration 2023-04-22 11:50:03 -07:00
CMakeLists.txt cmake: add CURL_BUILD_EVERYTHING option 2026-01-26 02:08:02 +01:00
config.in copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
configurehelp.pm.in build: use configurehelp.pm.in with autotools and cmake 2024-09-21 12:21:14 +02:00
devtest.pl tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
dictserver.py badwords: add more contractions, fix fallouts 2025-11-17 19:29:15 +01:00
directories.pm tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
ech_combos.py tidy-up: miscellaneous 2025-11-17 13:32:43 +01:00
ech_tests.sh badwords: fix issues found in tests 2025-11-17 13:30:35 +01:00
ftpserver.pl tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
getpart.pm tidy-up: miscellaneous 2026-01-15 13:06:13 +01:00
globalconfig.pm runtests: improve XML prolog check, enable -w permanently, fix two tests 2025-12-14 12:26:38 +01:00
http2-server.pl tidy-up: miscellaneous 2025-11-17 13:32:43 +01:00
http3-server.pl tidy-up: miscellaneous 2025-11-17 13:32:43 +01:00
http-server.pl tidy-up: miscellaneous 2025-11-17 13:32:43 +01:00
Makefile.am tidy-up: miscellaneous 2026-01-15 13:06:13 +01:00
memanalyze.pl runtests: make memanalyzer a Perl module (for 1.1-2x speed-up per test run) 2025-12-04 13:14:32 +01:00
memanalyzer.pm memdebug: stop tracking send and recv 2025-12-26 10:27:27 +01:00
negtelnetserver.py tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
nghttpx.conf copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
pathhelp.pm tidy-up: Markdown, clang-format nits 2026-01-22 23:44:47 +01:00
processhelp.pm tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
requirements.txt GHA: bump the pip-dependencies group across 2 directories with 3 updates 2025-11-02 17:10:39 +01:00
rtspserver.pl tidy-up: miscellaneous 2025-11-17 13:32:43 +01:00
runner.pm runtests: improve XML prolog check, enable -w permanently, fix two tests 2025-12-14 12:26:38 +01:00
runtests.pl build: merge TrackMemory (CURLDEBUG) into debug-enabled option 2026-01-19 18:43:17 +01:00
secureserver.pl runtests: pass config filename to stunnel in native format (Windows) 2026-01-23 16:51:47 +01:00
serverhelp.pm mqtt: initial support for MQTTS 2026-01-17 22:43:36 +01:00
servers.pm mqtt: initial support for MQTTS 2026-01-17 22:43:36 +01:00
smbserver.py tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
sshhelp.pm tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
sshserver.pl tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
test745.pl tidy-up: Markdown, clang-format nits 2026-01-22 23:44:47 +01:00
test971.pl badwords: fix issues found in tests 2025-11-17 13:30:35 +01:00
test1119.pl tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
test1135.pl badwords: fix issues found in tests 2025-11-17 13:30:35 +01:00
test1139.pl tidy-up: miscellaneous 2025-12-18 21:27:58 +01:00
test1140.pl tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
test1165.pl cmake: match filename suffixes with file content 2025-12-20 11:34:27 +01:00
test1167.pl tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
test1173.pl tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
test1175.pl badwords: fix issues found in tests 2025-11-17 13:30:35 +01:00
test1177.pl NTLM_WB: drop support 2024-04-08 13:58:58 +02:00
test1222.pl tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
test1275.pl tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
test1276.pl scripts: enable strict warnings in Perl where missing, fix fallouts 2025-07-27 22:35:18 +02:00
test1477.pl tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
test1486.pl src: fix formatting nits 2025-12-03 20:50:18 +01:00
test1488.pl badwords: fix issues found in tests 2025-11-17 13:30:35 +01:00
test1544.pl tidy-up: merge root packages directory into projects 2026-01-12 23:49:35 +01:00
test1707.pl scripts: enable strict warnings in Perl where missing, fix fallouts 2025-07-27 22:35:18 +02:00
testcurl.pl tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
testutil.pm tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
tftpserver.pl tidy-up: miscellaneous 2025-11-17 13:32:43 +01:00
util.py tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
valgrind.pm tidy-up: miscellaneous 2025-12-12 04:18:48 +01:00
valgrind.supp hyper: drop support 2024-12-21 11:33:05 +01:00