curl/lib/vtls
Stefan Eissing 75c2c881af
openssl+sectrust: fix session reuse
When TLS is verified via Apple SecTrust, openssl internal state is a
verification faiure (that is how it works, we use sectrust when openssl
fails to verify and natice ca store is enabled).

OpenSSL stores this verification status inside its TLS session objects.
On reuse, we see an unverified session and do not reuse it for a
verified connect attempt. While this is a performance penalty for most
connections, it *fails* on ftps:// transfers where servers expect
session reuse on DATA connections.

Fix this by remembering that TLS and a session was verified by sectrust
and allow reuse of such sessions for new connect attempts that also use
sectrust.

Closes #22235
2026-07-01 23:11:10 +02:00
..
apple.c ngtcp2: share common functionality 2026-06-10 13:28:05 +02:00
apple.h lib: use lib source directory as base include path 2026-02-23 16:00:42 +01:00
cipher_suite.c tidy-up: drop stray comparisons with literal zero 2026-06-10 15:15:54 +02:00
cipher_suite.h lib: use lib source directory as base include path 2026-02-23 16:00:42 +01:00
gtls.c tidy-up: drop stray comparisons with literal zero 2026-06-10 15:15:54 +02:00
gtls.h gtls: fix some typos 2026-05-05 08:46:26 +02:00
hostcheck.c lib: use lib source directory as base include path 2026-02-23 16:00:42 +01:00
hostcheck.h lib: use lib source directory as base include path 2026-02-23 16:00:42 +01:00
keylog.c tidy-up: drop redundant != NULL syntax 2026-06-09 14:37:36 +02:00
keylog.h tidy-up: apply clang-format fixes 2026-05-28 00:05:47 +02:00
mbedtls.c tidy-up: syntax and code nits 2026-06-26 15:45:24 +02:00
mbedtls.h lib: use lib source directory as base include path 2026-02-23 16:00:42 +01:00
openssl.c openssl+sectrust: fix session reuse 2026-07-01 23:11:10 +02:00
openssl.h openssl+sectrust: fix session reuse 2026-07-01 23:11:10 +02:00
rustls.c dns-httpsrr-lookup: use origin, not peer 2026-06-17 12:04:49 +02:00
rustls.h lib: use lib source directory as base include path 2026-02-23 16:00:42 +01:00
schannel.c schannel: shut off experimental TLS 1.3 support for Win 10 2026-07-01 03:37:35 -04:00
schannel.h lib: use lib source directory as base include path 2026-02-23 16:00:42 +01:00
schannel_int.h windows: update MS SDK versions in comments 2026-05-15 03:41:33 +02:00
schannel_verify.c tidy-up: miscellaneous 2026-06-11 19:48:07 +02:00
vtls.c tidy-up: syntax and code nits 2026-06-26 15:45:24 +02:00
vtls.h tidy-up: miscellaneous 2026-06-14 20:10:28 +02:00
vtls_config.c tidy-up: make 'CA' uppercase, where missing 2026-06-22 21:04:45 +02:00
vtls_config.h vtls_config: adjust to origin 2026-06-01 09:39:17 +02:00
vtls_int.h tidy-up: apply clang-format fixes 2026-05-28 00:05:47 +02:00
vtls_scache.c build: enable -Wformat-signedness, fix issues found 2026-06-10 15:14:08 +02:00
vtls_scache.h openssl+sectrust: fix session reuse 2026-07-01 23:11:10 +02:00
vtls_spack.c openssl+sectrust: fix session reuse 2026-07-01 23:11:10 +02:00
vtls_spack.h lib: use lib source directory as base include path 2026-02-23 16:00:42 +01:00
wolfssl.c tidy-up: syntax and code nits 2026-06-26 15:45:24 +02:00
wolfssl.h wolfssl: fix -Wmissing-prototypes 2026-04-21 10:09:58 +02:00
x509asn1.c x509asn1: fix DH public key parameter extraction 2026-05-16 01:06:56 +02:00
x509asn1.h x509asn1: fixed and adapted for ASN1tostr unit testing 2026-03-20 13:03:40 +01:00