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

Side by Side Diff: chromeos/cert_loader.cc

Issue 20087002: Add migration from CaCert NSS nicknames to PEM. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 7 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chromeos/cert_loader.h ('k') | chromeos/chromeos.gyp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chromeos/cert_loader.h" 5 #include "chromeos/cert_loader.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/chromeos/chromeos_version.h" 9 #include "base/chromeos/chromeos_version.h"
10 #include "base/message_loop/message_loop_proxy.h" 10 #include "base/message_loop/message_loop_proxy.h"
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 VLOG(1) << "CallOpenPersistentNSSDB"; 52 VLOG(1) << "CallOpenPersistentNSSDB";
53 53
54 // Ensure we've opened the user's key/certificate database. 54 // Ensure we've opened the user's key/certificate database.
55 crypto::OpenPersistentNSSDB(); 55 crypto::OpenPersistentNSSDB();
56 crypto::EnableTPMTokenForNSS(); 56 crypto::EnableTPMTokenForNSS();
57 } 57 }
58 58
59 } // namespace 59 } // namespace
60 60
61 static CertLoader* g_cert_loader = NULL; 61 static CertLoader* g_cert_loader = NULL;
62
62 // static 63 // static
63 void CertLoader::Initialize() { 64 void CertLoader::Initialize() {
64 CHECK(!g_cert_loader); 65 CHECK(!g_cert_loader);
65 g_cert_loader = new CertLoader(); 66 g_cert_loader = new CertLoader();
66 g_cert_loader->Init(); 67 g_cert_loader->Init();
67 } 68 }
68 69
69 // static 70 // static
70 void CertLoader::Shutdown() { 71 void CertLoader::Shutdown() {
71 CHECK(g_cert_loader); 72 CHECK(g_cert_loader);
(...skipping 29 matching lines...) Expand all
101 if (LoginState::IsInitialized()) 102 if (LoginState::IsInitialized())
102 LoginState::Get()->AddObserver(this); 103 LoginState::Get()->AddObserver(this);
103 } 104 }
104 105
105 void CertLoader::SetCryptoTaskRunner( 106 void CertLoader::SetCryptoTaskRunner(
106 const scoped_refptr<base::SequencedTaskRunner>& crypto_task_runner) { 107 const scoped_refptr<base::SequencedTaskRunner>& crypto_task_runner) {
107 crypto_task_runner_ = crypto_task_runner; 108 crypto_task_runner_ = crypto_task_runner;
108 MaybeRequestCertificates(); 109 MaybeRequestCertificates();
109 } 110 }
110 111
112 void CertLoader::SetSlowTaskRunnerForTest(
113 const scoped_refptr<base::SequencedTaskRunner>& task_runner) {
114 slow_task_runner_for_test_ = task_runner;
115 }
116
111 CertLoader::~CertLoader() { 117 CertLoader::~CertLoader() {
112 net::CertDatabase::GetInstance()->RemoveObserver(this); 118 net::CertDatabase::GetInstance()->RemoveObserver(this);
113 if (LoginState::IsInitialized()) 119 if (LoginState::IsInitialized())
114 LoginState::Get()->RemoveObserver(this); 120 LoginState::Get()->RemoveObserver(this);
115 } 121 }
116 122
117 void CertLoader::AddObserver(CertLoader::Observer* observer) { 123 void CertLoader::AddObserver(CertLoader::Observer* observer) {
118 observers_.AddObserver(observer); 124 observers_.AddObserver(observer);
119 } 125 }
120 126
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
319 VLOG(1) << "StartLoadCertificates: " << certificates_update_running_; 325 VLOG(1) << "StartLoadCertificates: " << certificates_update_running_;
320 326
321 if (certificates_update_running_) { 327 if (certificates_update_running_) {
322 certificates_update_required_ = true; 328 certificates_update_required_ = true;
323 return; 329 return;
324 } 330 }
325 331
326 net::CertificateList* cert_list = new net::CertificateList; 332 net::CertificateList* cert_list = new net::CertificateList;
327 certificates_update_running_ = true; 333 certificates_update_running_ = true;
328 certificates_update_required_ = false; 334 certificates_update_required_ = false;
329 base::WorkerPool::GetTaskRunner(true /* task_is_slow */)-> 335
330 PostTaskAndReply( 336 base::TaskRunner* task_runner =
331 FROM_HERE, 337 base::WorkerPool::GetTaskRunner(true /* task is slow */);
332 base::Bind(LoadNSSCertificates, cert_list), 338 if (slow_task_runner_for_test_)
333 base::Bind(&CertLoader::UpdateCertificates, 339 task_runner = slow_task_runner_for_test_.get();
stevenjb 2013/08/05 18:28:09 Maybe else GetTaskRunner, instead of always callin
pneubeck (no reviews) 2013/08/06 07:54:14 Done.
334 update_certificates_factory_.GetWeakPtr(), 340 task_runner->PostTaskAndReply(
335 base::Owned(cert_list))); 341 FROM_HERE,
342 base::Bind(LoadNSSCertificates, cert_list),
343 base::Bind(&CertLoader::UpdateCertificates,
344 update_certificates_factory_.GetWeakPtr(),
345 base::Owned(cert_list)));
336 } 346 }
337 347
338 void CertLoader::UpdateCertificates(net::CertificateList* cert_list) { 348 void CertLoader::UpdateCertificates(net::CertificateList* cert_list) {
339 CHECK(thread_checker_.CalledOnValidThread()); 349 CHECK(thread_checker_.CalledOnValidThread());
340 DCHECK(certificates_update_running_); 350 DCHECK(certificates_update_running_);
341 VLOG(1) << "UpdateCertificates: " << cert_list->size(); 351 VLOG(1) << "UpdateCertificates: " << cert_list->size();
342 352
343 // Ignore any existing certificates. 353 // Ignore any existing certificates.
344 cert_list_.swap(*cert_list); 354 cert_list_.swap(*cert_list);
345 355
(...skipping 23 matching lines...) Expand all
369 VLOG(1) << "OnCertRemoved"; 379 VLOG(1) << "OnCertRemoved";
370 StartLoadCertificates(); 380 StartLoadCertificates();
371 } 381 }
372 382
373 void CertLoader::LoggedInStateChanged(LoginState::LoggedInState state) { 383 void CertLoader::LoggedInStateChanged(LoginState::LoggedInState state) {
374 VLOG(1) << "LoggedInStateChanged: " << state; 384 VLOG(1) << "LoggedInStateChanged: " << state;
375 MaybeRequestCertificates(); 385 MaybeRequestCertificates();
376 } 386 }
377 387
378 } // namespace chromeos 388 } // namespace chromeos
OLDNEW
« no previous file with comments | « chromeos/cert_loader.h ('k') | chromeos/chromeos.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698