Change #286580
| Category | None |
| Changed by | Daniel Stenberg <daniel@haxx.se> |
| Changed at | Fri 16 Oct 2026 23:16:50 |
| Repository | https://api.github.com/repos/curl/curl |
| Project | curl/curl |
| Branch | master |
| Revision | ec0a5d1b060f63336efb93134635cf46ebda920a |
Comments
urldata: move OpenSSL provider state to OpenSSL context struct It should be kept per connection, to allow connections to outlive the easy handle and it allows the easy handle to change provider for subsequent transfers correctly. This changes behavior slightly for *setopt() since it now runs the logic lazily at transfer setup time, meaning setting the wrong provider/engine for example will be detected much later now. Fix an ENGINE memory leak from before. Revert the 7ea37abc6ac01 commit that stopped connection reuse. Reported-by: vansukmbg on hackerone Closes #23436
Changed files
- docs/libcurl/opts/CURLOPT_SSLENGINE.md
- lib/easy.c
- lib/setopt.c
- lib/urldata.h
- lib/vquic/vquic-tls.c
- lib/vtls/gtls.c
- lib/vtls/mbedtls.c
- lib/vtls/openssl.c
- lib/vtls/openssl.h
- lib/vtls/rustls.c
- lib/vtls/schannel.c
- lib/vtls/vtls.c
- lib/vtls/vtls_int.h
- lib/vtls/wolfssl.c