diff options
Diffstat (limited to 'chromium/net/cert/multi_threaded_cert_verifier.cc')
-rw-r--r-- | chromium/net/cert/multi_threaded_cert_verifier.cc | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/chromium/net/cert/multi_threaded_cert_verifier.cc b/chromium/net/cert/multi_threaded_cert_verifier.cc index 35afe371c67..2d650253dda 100644 --- a/chromium/net/cert/multi_threaded_cert_verifier.cc +++ b/chromium/net/cert/multi_threaded_cert_verifier.cc @@ -5,6 +5,7 @@ #include "net/cert/multi_threaded_cert_verifier.h" #include <algorithm> +#include <memory> #include <utility> #include "base/bind.h" @@ -12,6 +13,7 @@ #include "base/callback_helpers.h" #include "base/compiler_specific.h" #include "base/containers/linked_list.h" +#include "base/memory/ptr_util.h" #include "base/message_loop/message_loop.h" #include "base/metrics/histogram_macros.h" #include "base/profiler/scoped_tracker.h" @@ -30,7 +32,7 @@ #include "net/cert/x509_certificate_net_log_param.h" #include "net/log/net_log.h" -#if defined(USE_NSS_VERIFIER) +#if defined(USE_NSS_CERTS) #include <private/pprthred.h> // PR_DetachThread #endif @@ -83,10 +85,10 @@ const unsigned kMaxCacheEntries = 256; // The number of seconds to cache entries. const unsigned kTTLSecs = 1800; // 30 minutes. -scoped_ptr<base::Value> CertVerifyResultCallback( +std::unique_ptr<base::Value> CertVerifyResultCallback( const CertVerifyResult& verify_result, NetLogCaptureMode capture_mode) { - scoped_ptr<base::DictionaryValue> results(new base::DictionaryValue()); + std::unique_ptr<base::DictionaryValue> results(new base::DictionaryValue()); results->SetBoolean("has_md5", verify_result.has_md5); results->SetBoolean("has_md2", verify_result.has_md2); results->SetBoolean("has_md4", verify_result.has_md4); @@ -101,7 +103,7 @@ scoped_ptr<base::Value> CertVerifyResultCallback( NetLogX509CertificateCallback(verify_result.verified_cert.get(), capture_mode)); - scoped_ptr<base::ListValue> hashes(new base::ListValue()); + std::unique_ptr<base::ListValue> hashes(new base::ListValue()); for (std::vector<HashValue>::const_iterator it = verify_result.public_key_hashes.begin(); it != verify_result.public_key_hashes.end(); @@ -239,7 +241,7 @@ void DoVerifyOnWorkerThread(const scoped_refptr<CertVerifyProc>& verify_proc, *error = verify_proc->Verify(cert.get(), hostname, ocsp_response, flags, crl_set.get(), additional_trust_anchors, result); -#if defined(USE_NSS_VERIFIER) +#if defined(USE_NSS_CERTS) // Detach the thread from NSPR. // Calling NSS functions attaches the thread to NSPR, which stores // the NSPR thread ID in thread-specific data. @@ -286,7 +288,7 @@ class CertVerifierJob { const scoped_refptr<CRLSet>& crl_set, const CertificateList& additional_trust_anchors) { // Owned by the bound reply callback. - scoped_ptr<MultiThreadedCertVerifier::CachedResult> owned_result( + std::unique_ptr<MultiThreadedCertVerifier::CachedResult> owned_result( new MultiThreadedCertVerifier::CachedResult()); // Parameter evaluation order is undefined in C++. Ensure the pointer value @@ -320,11 +322,11 @@ class CertVerifierJob { } // Creates and attaches a request to the Job. - scoped_ptr<CertVerifierRequest> CreateRequest( + std::unique_ptr<CertVerifierRequest> CreateRequest( const CompletionCallback& callback, CertVerifyResult* verify_result, const BoundNetLog& net_log) { - scoped_ptr<CertVerifierRequest> request( + std::unique_ptr<CertVerifierRequest> request( new CertVerifierRequest(this, callback, verify_result, net_log)); request->net_log().AddEvent( @@ -360,9 +362,10 @@ class CertVerifierJob { } void OnJobCompleted( - scoped_ptr<MultiThreadedCertVerifier::CachedResult> verify_result) { + std::unique_ptr<MultiThreadedCertVerifier::CachedResult> verify_result) { TRACE_EVENT0("net", "CertVerifierJob::OnJobCompleted"); - scoped_ptr<CertVerifierJob> keep_alive = cert_verifier_->RemoveJob(this); + std::unique_ptr<CertVerifierJob> keep_alive = + cert_verifier_->RemoveJob(this); LogMetrics(*verify_result); cert_verifier_->SaveResultToCache(key_, *verify_result); @@ -419,7 +422,7 @@ int MultiThreadedCertVerifier::Verify(X509Certificate* cert, CRLSet* crl_set, CertVerifyResult* verify_result, const CompletionCallback& callback, - scoped_ptr<Request>* out_req, + std::unique_ptr<Request>* out_req, const BoundNetLog& net_log) { out_req->reset(); @@ -453,7 +456,7 @@ int MultiThreadedCertVerifier::Verify(X509Certificate* cert, inflight_joins_++; } else { // Need to make a new job. - scoped_ptr<CertVerifierJob> new_job( + std::unique_ptr<CertVerifierJob> new_job( new CertVerifierJob(key, net_log.net_log(), cert, this)); if (!new_job->Start(verify_proc_, cert, hostname, ocsp_response, flags, @@ -470,7 +473,7 @@ int MultiThreadedCertVerifier::Verify(X509Certificate* cert, job->set_is_first_job(true); } - scoped_ptr<CertVerifierRequest> request = + std::unique_ptr<CertVerifierRequest> request = job->CreateRequest(callback, verify_result, net_log); *out_req = std::move(request); return ERR_IO_PENDING; @@ -559,12 +562,12 @@ void MultiThreadedCertVerifier::SaveResultToCache(const RequestParams& key, start_time + base::TimeDelta::FromSeconds(kTTLSecs))); } -scoped_ptr<CertVerifierJob> MultiThreadedCertVerifier::RemoveJob( +std::unique_ptr<CertVerifierJob> MultiThreadedCertVerifier::RemoveJob( CertVerifierJob* job) { DCHECK(CalledOnValidThread()); bool erased_job = inflight_.erase(job) == 1; DCHECK(erased_job); - return make_scoped_ptr(job); + return base::WrapUnique(job); } void MultiThreadedCertVerifier::OnCACertChanged( |