CURLOPT_SSLCERT_BLOB was added in 7.71.0
In vtls.c the function Curl_ssl_config_matches does not check it for equality when determining if there is a good connection to re-use.
If there are multiple connections after each other to the same host with different client certificates, the first one will be used.
CURLOPT_SSLCERT was checked in this function (data->clientcert), so I think the blob version should be checked as well.
In my current use-case, I first connect to a server without client certificates and later I switch to using them, and it fails because of this issue.
CURLOPT_SSLCERT_BLOBwas added in 7.71.0In
vtls.cthe functionCurl_ssl_config_matchesdoes not check it for equality when determining if there is a good connection to re-use.If there are multiple connections after each other to the same host with different client certificates, the first one will be used.
CURLOPT_SSLCERTwas checked in this function (data->clientcert), so I think the blob version should be checked as well.In my current use-case, I first connect to a server without client certificates and later I switch to using them, and it fails because of this issue.