]> git.ipfire.org Git - thirdparty/curl.git/commit
multi: add multi->proto_hash, a key-value store for protocol data
authorStefan Eissing <stefan@eissing.org>
Thu, 11 Apr 2024 10:34:40 +0000 (12:34 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Sat, 25 May 2024 22:15:01 +0000 (00:15 +0200)
commite101a7a8b072b2766aa5b4de481acd3e4d298e4b
treeadc99a6394f64046c5d21aef8c298bcb42a0668b
parent74e0bb1e7a02fbe5031397023abc0f5ad89da997
multi: add multi->proto_hash, a key-value store for protocol data

- add `Curl_hash_add2()` that passes a destructor function for
  the element added. Call element destructor instead of hash
  destructor if present.
- multi: add `proto_hash` for protocol related information,
  remove `struct multi_ssl_backend_data`.
- openssl: use multi->proto_hash to keep x509 shared store
- schannel: use multi->proto_hash to keep x509 shared store
- vtls: remove Curl_free_multi_ssl_backend_data() and its
  equivalents in the TLS backends

Closes #13345
17 files changed:
lib/hash.c
lib/hash.h
lib/multi.c
lib/multihandle.h
lib/vtls/bearssl.c
lib/vtls/gtls.c
lib/vtls/mbedtls.c
lib/vtls/openssl.c
lib/vtls/rustls.c
lib/vtls/schannel.c
lib/vtls/schannel_int.h
lib/vtls/sectransp.c
lib/vtls/vtls.c
lib/vtls/vtls.h
lib/vtls/vtls_int.h
lib/vtls/wolfssl.c
tests/unit/unit1603.c