mirror of
https://github.com/curl/curl.git
synced 2026-07-24 16:27:17 +03:00
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
This commit is contained in:
parent
e5e2e09a75
commit
fa0ccd9f1f
36 changed files with 1784 additions and 780 deletions
|
|
@ -64,7 +64,13 @@ See also `Curl_llist_insert_next`.
|
|||
|
||||
## Remove a node
|
||||
|
||||
Remove a node again from a list by calling `Curl_llist_remove()`.
|
||||
Remove a node again from a list by calling `Curl_llist_remove()`. This
|
||||
will destroy the node's `elem` (e.g. calling a registered free function).
|
||||
|
||||
To remove a node without destroying it's `elem`, use
|
||||
`Curl_node_take_elem()` which returns the `elem` pointer and
|
||||
removes the node from the list. The caller then owns this pointer
|
||||
and has to take care of it.
|
||||
|
||||
## Iterate
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue