curl/lib/vquic
Stefan Eissing fa0ccd9f1f
lib: TLS session ticket caching reworked
Described in detail in internal doc TLS-SESSIONS.md

Main points:
- use a new `ssl_peer_key` for cache lookups by connection filters
- recognize differences between TLSv1.3 and other tickets
  * TLSv1.3 tickets are single-use, cache can hold several of them for a peer
  * TLSv1.2 are reused, keep only a single one per peer
- differentiate between ticket BLOB to store (that could be persisted) and object instances
- use put/take/return pattern for cache access
- remember TLS version, ALPN protocol, time received and lifetime of ticket
- auto-expire tickets after their lifetime

Closes #15774
2024-12-20 14:59:23 +01:00
..
.checksrc lib: enable strerror and strncpy checksrc warnings in subdirs 2024-09-09 16:51:21 +02:00
curl_msh3.c lib: use bool/TRUE/FALSE properly 2024-10-03 09:31:56 +02:00
curl_msh3.h quic: rename vquic implementations, fix for quiche build. 2023-01-05 23:39:49 +01:00
curl_ngtcp2.c lib: TLS session ticket caching reworked 2024-12-20 14:59:23 +01:00
curl_ngtcp2.h ngtcp2: adjust config and code checks for ngtcp2 without nghttp3 2023-03-23 15:39:13 +01:00
curl_osslq.c lib: TLS session ticket caching reworked 2024-12-20 14:59:23 +01:00
curl_osslq.h http3: initial support for OpenSSL 3.2 QUIC stack 2024-01-22 16:15:45 +01:00
curl_quiche.c lib: TLS session ticket caching reworked 2024-12-20 14:59:23 +01:00
curl_quiche.h quic: rename vquic implementations, fix for quiche build. 2023-01-05 23:39:49 +01:00
vquic_int.h lib: merge ENABLE_QUIC C macro into USE_HTTP3 2024-04-13 08:33:27 +00:00
vquic-tls.c lib: TLS session ticket caching reworked 2024-12-20 14:59:23 +01:00
vquic-tls.h lib: TLS session ticket caching reworked 2024-12-20 14:59:23 +01:00
vquic.c vquic: recv_mmsg, use fewer, but larger buffers 2024-10-31 23:40:51 +01:00
vquic.h lib: merge ENABLE_QUIC C macro into USE_HTTP3 2024-04-13 08:33:27 +00:00