summaryrefslogtreecommitdiff
path: root/chromium/net/cert/multi_threaded_cert_verifier.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/net/cert/multi_threaded_cert_verifier.cc')
-rw-r--r--chromium/net/cert/multi_threaded_cert_verifier.cc33
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(