Index: webrtc/base/opensslstreamadapter.cc |
diff --git a/webrtc/base/opensslstreamadapter.cc b/webrtc/base/opensslstreamadapter.cc |
index 3d1760721f1f55c136306b7fb5f371453fb92ff4..20584ab21b04e4b96b1e2bd293c1fbb375394783 100644 |
--- a/webrtc/base/opensslstreamadapter.cc |
+++ b/webrtc/base/opensslstreamadapter.cc |
@@ -298,9 +298,10 @@ OpenSSLStreamAdapter::~OpenSSLStreamAdapter() { |
Cleanup(); |
} |
-void OpenSSLStreamAdapter::SetIdentity(SSLIdentity* identity) { |
- ASSERT(!identity_); |
- identity_.reset(static_cast<OpenSSLIdentity*>(identity)); |
+void OpenSSLStreamAdapter::SetCertificate( |
+ const scoped_refptr<webrtc::DtlsCertificate>& certificate) { |
+ ASSERT(!certificate_.get()); |
+ certificate_ = certificate; |
} |
void OpenSSLStreamAdapter::SetServerRole(SSLRole role) { |
@@ -877,7 +878,7 @@ void OpenSSLStreamAdapter::Cleanup() { |
SSL_CTX_free(ssl_ctx_); |
ssl_ctx_ = NULL; |
} |
- identity_.reset(); |
+ certificate_ = nullptr; |
peer_certificate_.reset(); |
// Clear the DTLS timer |
@@ -985,7 +986,9 @@ SSL_CTX* OpenSSLStreamAdapter::SetupSSLContext() { |
} |
#endif |
- if (identity_ && !identity_->ConfigureIdentity(ctx)) { |
+ if (certificate_.get() && |
+ !static_cast<OpenSSLIdentity*>(certificate_->identity()) |
+ ->ConfigureIdentity(ctx)) { |
SSL_CTX_free(ctx); |
return NULL; |
} |