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

Unified Diff: chromeos/tpm_token_loader.cc

Issue 135193007: Use user specific NSSDatabase in CertLoader. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 6 years, 11 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
« no previous file with comments | « chromeos/tpm_token_loader.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chromeos/tpm_token_loader.cc
diff --git a/chromeos/tpm_token_loader.cc b/chromeos/tpm_token_loader.cc
index 6d1bd5345f6f0e4b7fec0c9aa3407ae277b3031c..f48fb16e99e915defa002b34b9d44a38e5a7a074 100644
--- a/chromeos/tpm_token_loader.cc
+++ b/chromeos/tpm_token_loader.cc
@@ -55,7 +55,13 @@ static TPMTokenLoader* g_tpm_token_loader = NULL;
// static
void TPMTokenLoader::Initialize() {
CHECK(!g_tpm_token_loader);
- g_tpm_token_loader = new TPMTokenLoader();
+ g_tpm_token_loader = new TPMTokenLoader(false /*for_test*/);
+}
+
+// static
+void TPMTokenLoader::InitializeForTest() {
+ CHECK(!g_tpm_token_loader);
+ g_tpm_token_loader = new TPMTokenLoader(true /*for_test*/);
}
// static
@@ -77,19 +83,20 @@ bool TPMTokenLoader::IsInitialized() {
return g_tpm_token_loader;
}
-TPMTokenLoader::TPMTokenLoader()
- : initialize_tpm_for_test_(false),
+TPMTokenLoader::TPMTokenLoader(bool for_test)
+ : initialized_for_test_(for_test),
tpm_token_state_(TPM_STATE_UNKNOWN),
tpm_request_delay_(
base::TimeDelta::FromMilliseconds(kInitialRequestDelayMs)),
tpm_token_slot_id_(-1),
weak_factory_(this) {
- if (LoginState::IsInitialized())
+ if (!initialized_for_test_ && LoginState::IsInitialized())
LoginState::Get()->AddObserver(this);
-}
-void TPMTokenLoader::InitializeTPMForTest() {
- initialize_tpm_for_test_ = true;
+ if (initialized_for_test_) {
+ tpm_token_state_ = TPM_TOKEN_INITIALIZED;
+ tpm_user_pin_ = "111111";
+ }
}
void TPMTokenLoader::SetCryptoTaskRunner(
@@ -99,7 +106,7 @@ void TPMTokenLoader::SetCryptoTaskRunner(
}
TPMTokenLoader::~TPMTokenLoader() {
- if (LoginState::IsInitialized())
+ if (!initialized_for_test_ && LoginState::IsInitialized())
LoginState::Get()->RemoveObserver(this);
}
@@ -127,14 +134,14 @@ void TPMTokenLoader::MaybeStartTokenInitialization() {
if (!LoginState::IsInitialized())
return;
- bool request_certificates = LoginState::Get()->IsUserLoggedIn() ||
+ bool start_initialization = LoginState::Get()->IsUserLoggedIn() ||
LoginState::Get()->IsInSafeMode();
- VLOG(1) << "RequestCertificates: " << request_certificates;
- if (!request_certificates)
+ VLOG(1) << "StartTokenInitialization: " << start_initialization;
+ if (!start_initialization)
return;
- if (!initialize_tpm_for_test_ && !base::SysInfo::IsRunningOnChromeOS())
+ if (!base::SysInfo::IsRunningOnChromeOS())
tpm_token_state_ = TPM_DISABLED;
// Treat TPM as disabled for guest users since they do not store certs.
@@ -277,8 +284,7 @@ void TPMTokenLoader::OnTPMTokenInitialized(bool success) {
}
void TPMTokenLoader::NotifyTPMTokenReady() {
- FOR_EACH_OBSERVER(Observer, observers_,
- OnTPMTokenReady(tpm_user_pin_, tpm_token_name_, tpm_token_slot_id_));
+ FOR_EACH_OBSERVER(Observer, observers_, OnTPMTokenReady());
}
void TPMTokenLoader::LoggedInStateChanged() {
« no previous file with comments | « chromeos/tpm_token_loader.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698