Don't call CRYPTO_add in BoringSSL.
The old OpenSSL threading hooks were removed in favor of the library knowing about threads internally. Instead of CRYPTO_add, use FOO_up_ref wrappers that don't require reaching into the type. BUG=none R=jiayl@webrtc.org, juberti@google.com Review URL: https://webrtc-codereview.appspot.com/54579004 Cr-Commit-Position: refs/heads/master@{#9324}
This commit is contained in:
@@ -157,7 +157,11 @@ OpenSSLKeyPair* OpenSSLKeyPair::GetReference() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void OpenSSLKeyPair::AddReference() {
|
void OpenSSLKeyPair::AddReference() {
|
||||||
|
#if defined(OPENSSL_IS_BORINGSSL)
|
||||||
|
EVP_PKEY_up_ref(pkey_);
|
||||||
|
#else
|
||||||
CRYPTO_add(&pkey_->references, 1, CRYPTO_LOCK_EVP_PKEY);
|
CRYPTO_add(&pkey_->references, 1, CRYPTO_LOCK_EVP_PKEY);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
@@ -341,7 +345,11 @@ void OpenSSLCertificate::ToDER(Buffer* der_buffer) const {
|
|||||||
|
|
||||||
void OpenSSLCertificate::AddReference() const {
|
void OpenSSLCertificate::AddReference() const {
|
||||||
ASSERT(x509_ != NULL);
|
ASSERT(x509_ != NULL);
|
||||||
|
#if defined(OPENSSL_IS_BORINGSSL)
|
||||||
|
X509_up_ref(x509_);
|
||||||
|
#else
|
||||||
CRYPTO_add(&x509_->references, 1, CRYPTO_LOCK_X509);
|
CRYPTO_add(&x509_->references, 1, CRYPTO_LOCK_X509);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
OpenSSLIdentity::OpenSSLIdentity(OpenSSLKeyPair* key_pair,
|
OpenSSLIdentity::OpenSSLIdentity(OpenSSLKeyPair* key_pair,
|
||||||
|
|||||||
Reference in New Issue
Block a user