mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
Merge branch 'maint-0.2.9' into maint-0.3.2
This commit is contained in:
+6
-4
@@ -896,18 +896,20 @@ tor_tls_cert_get_key(tor_x509_cert_t *cert)
|
||||
MOCK_IMPL(int,
|
||||
tor_tls_cert_matches_key,(const tor_tls_t *tls, const tor_x509_cert_t *cert))
|
||||
{
|
||||
X509 *peercert = SSL_get_peer_certificate(tls->ssl);
|
||||
tor_x509_cert_t *peer = tor_tls_get_peer_cert((tor_tls_t *)tls);
|
||||
if (!peer)
|
||||
return 0;
|
||||
|
||||
X509 *peercert = peer->cert;
|
||||
EVP_PKEY *link_key = NULL, *cert_key = NULL;
|
||||
int result;
|
||||
|
||||
if (!peercert)
|
||||
return 0;
|
||||
link_key = X509_get_pubkey(peercert);
|
||||
cert_key = X509_get_pubkey(cert->cert);
|
||||
|
||||
result = link_key && cert_key && EVP_PKEY_cmp(cert_key, link_key) == 1;
|
||||
|
||||
X509_free(peercert);
|
||||
tor_x509_cert_free(peer);
|
||||
if (link_key)
|
||||
EVP_PKEY_free(link_key);
|
||||
if (cert_key)
|
||||
|
||||
Reference in New Issue
Block a user