mirror of
https://github.com/yhirose/cpp-httplib.git
synced 2026-10-26 21:41:31 +00:00
Turn off session resumption on wolfSSL servers verifying clients
wolfSSL shares its session cache between contexts, so a session resumed on a server that checks client certificates could carry a certificate checked against another server's CA, or against a client CA replaced since. Such a server no longer resumes sessions.
This commit is contained in:
@@ -72,6 +72,8 @@ cpp-httplib supports multiple TLS backends through an abstraction layer:
|
||||
|
||||
> [!NOTE]
|
||||
> **wolfSSL limitation:** `get_ca_certs()` and `get_ca_names()` only reflect CA certificates loaded via `load_ca_cert_store()`. Certificates loaded through `set_ca_cert_path()` or system certificates (`load_system_certs`) are not enumerable.
|
||||
>
|
||||
> A wolfSSL server that verifies client certificates does not resume TLS sessions: wolfSSL shares its session cache between contexts, so a resumed session could carry a certificate checked against another server's client CA.
|
||||
|
||||
> [!NOTE]
|
||||
> **BoringSSL (best-effort):** BoringSSL builds under `CPPHTTPLIB_OPENSSL_SUPPORT` and is exercised by CI against current upstream. Because BoringSSL does not guarantee API stability, support is best-effort — breakage may occasionally land. Two known behavioral differences vs OpenSSL: (1) BoringSSL's public headers require C++14 or later, so consumers must compile accordingly; (2) hostname verification is SAN-only per RFC 6125 §6.4.4 (no CN fallback).
|
||||
|
||||
Reference in New Issue
Block a user