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

Side by Side Diff: webrtc/base/opensslidentity.cc

Issue 1920043002: Replace scoped_ptr with unique_ptr in webrtc/base/ (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Rebased Created 4 years, 7 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 unified diff | Download patch
« no previous file with comments | « webrtc/base/opensslidentity.h ('k') | webrtc/base/opensslstreamadapter.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2004 The WebRTC Project Authors. All rights reserved. 2 * Copyright 2004 The WebRTC Project Authors. All rights reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
11 #if HAVE_OPENSSL_SSL_H 11 #if HAVE_OPENSSL_SSL_H
12 12
13 #include "webrtc/base/opensslidentity.h" 13 #include "webrtc/base/opensslidentity.h"
14 14
15 #include <memory>
16
15 // Must be included first before openssl headers. 17 // Must be included first before openssl headers.
16 #include "webrtc/base/win32.h" // NOLINT 18 #include "webrtc/base/win32.h" // NOLINT
17 19
18 #include <openssl/bio.h> 20 #include <openssl/bio.h>
19 #include <openssl/err.h> 21 #include <openssl/err.h>
20 #include <openssl/pem.h> 22 #include <openssl/pem.h>
21 #include <openssl/bn.h> 23 #include <openssl/bn.h>
22 #include <openssl/rsa.h> 24 #include <openssl/rsa.h>
23 #include <openssl/crypto.h> 25 #include <openssl/crypto.h>
24 26
(...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after
273 default: 275 default:
274 // Unknown algorithm. There are several unhandled options that are less 276 // Unknown algorithm. There are several unhandled options that are less
275 // common and more complex. 277 // common and more complex.
276 LOG(LS_ERROR) << "Unknown signature algorithm NID: " << nid; 278 LOG(LS_ERROR) << "Unknown signature algorithm NID: " << nid;
277 algorithm->clear(); 279 algorithm->clear();
278 return false; 280 return false;
279 } 281 }
280 return true; 282 return true;
281 } 283 }
282 284
283 rtc::scoped_ptr<SSLCertChain> OpenSSLCertificate::GetChain() const { 285 std::unique_ptr<SSLCertChain> OpenSSLCertificate::GetChain() const {
284 // Chains are not yet supported when using OpenSSL. 286 // Chains are not yet supported when using OpenSSL.
285 // OpenSSLStreamAdapter::SSLVerifyCallback currently requires the remote 287 // OpenSSLStreamAdapter::SSLVerifyCallback currently requires the remote
286 // certificate to be self-signed. 288 // certificate to be self-signed.
287 return nullptr; 289 return nullptr;
288 } 290 }
289 291
290 bool OpenSSLCertificate::ComputeDigest(const std::string& algorithm, 292 bool OpenSSLCertificate::ComputeDigest(const std::string& algorithm,
291 unsigned char* digest, 293 unsigned char* digest,
292 size_t size, 294 size_t size,
293 size_t* length) const { 295 size_t* length) const {
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after
423 } 425 }
424 426
425 OpenSSLIdentity* OpenSSLIdentity::GenerateForTest( 427 OpenSSLIdentity* OpenSSLIdentity::GenerateForTest(
426 const SSLIdentityParams& params) { 428 const SSLIdentityParams& params) {
427 return GenerateInternal(params); 429 return GenerateInternal(params);
428 } 430 }
429 431
430 SSLIdentity* OpenSSLIdentity::FromPEMStrings( 432 SSLIdentity* OpenSSLIdentity::FromPEMStrings(
431 const std::string& private_key, 433 const std::string& private_key,
432 const std::string& certificate) { 434 const std::string& certificate) {
433 scoped_ptr<OpenSSLCertificate> cert( 435 std::unique_ptr<OpenSSLCertificate> cert(
434 OpenSSLCertificate::FromPEMString(certificate)); 436 OpenSSLCertificate::FromPEMString(certificate));
435 if (!cert) { 437 if (!cert) {
436 LOG(LS_ERROR) << "Failed to create OpenSSLCertificate from PEM string."; 438 LOG(LS_ERROR) << "Failed to create OpenSSLCertificate from PEM string.";
437 return NULL; 439 return NULL;
438 } 440 }
439 441
440 BIO* bio = BIO_new_mem_buf(const_cast<char*>(private_key.c_str()), -1); 442 BIO* bio = BIO_new_mem_buf(const_cast<char*>(private_key.c_str()), -1);
441 if (!bio) { 443 if (!bio) {
442 LOG(LS_ERROR) << "Failed to create a new BIO buffer."; 444 LOG(LS_ERROR) << "Failed to create a new BIO buffer.";
443 return NULL; 445 return NULL;
(...skipping 27 matching lines...) Expand all
471 SSL_CTX_use_PrivateKey(ctx, key_pair_->pkey()) != 1) { 473 SSL_CTX_use_PrivateKey(ctx, key_pair_->pkey()) != 1) {
472 LogSSLErrors("Configuring key and certificate"); 474 LogSSLErrors("Configuring key and certificate");
473 return false; 475 return false;
474 } 476 }
475 return true; 477 return true;
476 } 478 }
477 479
478 } // namespace rtc 480 } // namespace rtc
479 481
480 #endif // HAVE_OPENSSL_SSL_H 482 #endif // HAVE_OPENSSL_SSL_H
OLDNEW
« no previous file with comments | « webrtc/base/opensslidentity.h ('k') | webrtc/base/opensslstreamadapter.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698