Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(466)

Unified Diff: webrtc/base/sslstreamadapter_unittest.cc

Issue 1269843005: Added DtlsCertificate, a ref counted object owning an SSLIdentity (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Merge with master Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webrtc/base/sslstreamadapter_unittest.cc
diff --git a/webrtc/base/sslstreamadapter_unittest.cc b/webrtc/base/sslstreamadapter_unittest.cc
index 67658ba6103ed8e6f4e0bf369ad5a1126cc07378..d96ee92b31494f8de34a6fb2cfd11e39341be043 100644
--- a/webrtc/base/sslstreamadapter_unittest.cc
+++ b/webrtc/base/sslstreamadapter_unittest.cc
@@ -165,25 +165,23 @@ class SSLStreamAdapterTestBase : public testing::Test,
const std::string& client_private_key_pem,
bool dtls,
rtc::KeyType client_key_type = rtc::KT_DEFAULT,
- rtc::KeyType server_key_type = rtc::KT_DEFAULT)
- : client_buffer_(kFifoBufferSize),
- server_buffer_(kFifoBufferSize),
- client_stream_(
- new SSLDummyStream(this, "c2s", &client_buffer_, &server_buffer_)),
- server_stream_(
- new SSLDummyStream(this, "s2c", &server_buffer_, &client_buffer_)),
- client_ssl_(rtc::SSLStreamAdapter::Create(client_stream_)),
- server_ssl_(rtc::SSLStreamAdapter::Create(server_stream_)),
- client_identity_(NULL),
- server_identity_(NULL),
- delay_(0),
- mtu_(1460),
- loss_(0),
- lose_first_packet_(false),
- damage_(false),
- dtls_(dtls),
- handshake_wait_(5000),
- identities_set_(false) {
+ rtc::KeyType server_key_type = rtc::KT_DEFAULT) :
tommi (sloooow) - chröme 2015/08/18 14:49:35 nit: no need to change this
+ client_buffer_(kFifoBufferSize),
+ server_buffer_(kFifoBufferSize),
+ client_stream_(
+ new SSLDummyStream(this, "c2s", &client_buffer_, &server_buffer_)),
+ server_stream_(
+ new SSLDummyStream(this, "s2c", &server_buffer_, &client_buffer_)),
+ client_ssl_(rtc::SSLStreamAdapter::Create(client_stream_)),
+ server_ssl_(rtc::SSLStreamAdapter::Create(server_stream_)),
+ delay_(0),
+ mtu_(1460),
+ loss_(0),
+ lose_first_packet_(false),
+ damage_(false),
+ dtls_(dtls),
+ handshake_wait_(5000),
+ identities_set_(false) {
// Set use of the test RNG to get predictable loss patterns.
rtc::SetRandomTestMode(true);
@@ -192,15 +190,21 @@ class SSLStreamAdapterTestBase : public testing::Test,
server_ssl_->SignalEvent.connect(this, &SSLStreamAdapterTestBase::OnEvent);
if (!client_cert_pem.empty() && !client_private_key_pem.empty()) {
- client_identity_ = rtc::SSLIdentity::FromPEMStrings(
- client_private_key_pem, client_cert_pem);
+ client_certificate_ = webrtc::DtlsCertificate::Create(
+ rtc::scoped_ptr<rtc::SSLIdentity>(
+ rtc::SSLIdentity::FromPEMStrings(client_private_key_pem,
+ client_cert_pem)).Pass());
} else {
- client_identity_ = rtc::SSLIdentity::Generate("client", client_key_type);
+ client_certificate_ = webrtc::DtlsCertificate::Create(
+ rtc::scoped_ptr<rtc::SSLIdentity>(
+ rtc::SSLIdentity::Generate("client", client_key_type)).Pass());
}
- server_identity_ = rtc::SSLIdentity::Generate("server", server_key_type);
+ server_certificate_ = webrtc::DtlsCertificate::Create(
+ rtc::scoped_ptr<rtc::SSLIdentity>(
+ rtc::SSLIdentity::Generate("server", server_key_type)).Pass());
- client_ssl_->SetIdentity(client_identity_);
- server_ssl_->SetIdentity(server_identity_);
+ client_ssl_->SetCertificate(client_certificate_);
+ server_ssl_->SetCertificate(server_certificate_);
}
~SSLStreamAdapterTestBase() {
@@ -228,17 +232,21 @@ class SSLStreamAdapterTestBase : public testing::Test,
client_params.not_before = not_before;
client_params.not_after = not_after;
client_params.key_type = rtc::KT_DEFAULT;
- client_identity_ = rtc::SSLIdentity::GenerateForTest(client_params);
+ client_certificate_ = webrtc::DtlsCertificate::Create(
+ rtc::scoped_ptr<rtc::SSLIdentity>(
+ rtc::SSLIdentity::GenerateForTest(client_params)).Pass());
rtc::SSLIdentityParams server_params;
server_params.common_name = "server";
server_params.not_before = not_before;
server_params.not_after = not_after;
server_params.key_type = rtc::KT_DEFAULT;
- server_identity_ = rtc::SSLIdentity::GenerateForTest(server_params);
+ server_certificate_ = webrtc::DtlsCertificate::Create(
+ rtc::scoped_ptr<rtc::SSLIdentity>(
+ rtc::SSLIdentity::GenerateForTest(server_params)).Pass());
- client_ssl_->SetIdentity(client_identity_);
- server_ssl_->SetIdentity(server_identity_);
+ client_ssl_->SetCertificate(client_certificate_);
+ server_ssl_->SetCertificate(server_certificate_);
}
virtual void OnEvent(rtc::StreamInterface *stream, int sig, int err) {
@@ -260,9 +268,8 @@ class SSLStreamAdapterTestBase : public testing::Test,
LOG(LS_INFO) << "Setting peer identities by digest";
- rv = server_identity_->certificate().ComputeDigest(rtc::DIGEST_SHA_1,
- digest, 20,
- &digest_len);
+ rv = server_certificate_->identity()->certificate().ComputeDigest(
+ rtc::DIGEST_SHA_1, digest, 20, &digest_len);
ASSERT_TRUE(rv);
if (!correct) {
LOG(LS_INFO) << "Setting bogus digest for server cert";
@@ -273,8 +280,8 @@ class SSLStreamAdapterTestBase : public testing::Test,
ASSERT_TRUE(rv);
- rv = client_identity_->certificate().ComputeDigest(rtc::DIGEST_SHA_1,
- digest, 20, &digest_len);
+ rv = client_certificate_->identity()->certificate().ComputeDigest(
+ rtc::DIGEST_SHA_1, digest, 20, &digest_len);
ASSERT_TRUE(rv);
if (!correct) {
LOG(LS_INFO) << "Setting bogus digest for client cert";
@@ -448,8 +455,8 @@ class SSLStreamAdapterTestBase : public testing::Test,
SSLDummyStream *server_stream_; // freed by server_ssl_ destructor
rtc::scoped_ptr<rtc::SSLStreamAdapter> client_ssl_;
rtc::scoped_ptr<rtc::SSLStreamAdapter> server_ssl_;
- rtc::SSLIdentity *client_identity_; // freed by client_ssl_ destructor
- rtc::SSLIdentity *server_identity_; // freed by server_ssl_ destructor
+ rtc::scoped_refptr<webrtc::DtlsCertificate> client_certificate_;
+ rtc::scoped_refptr<webrtc::DtlsCertificate> server_certificate_;
int delay_;
size_t mtu_;
int loss_;

Powered by Google App Engine
This is Rietveld 408576698