summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/browser/ui/webui/options/certificate_manager_browsertest.cc4
-rw-r--r--chromeos/cert_loader.cc33
-rw-r--r--chromeos/dbus/cryptohome_client.cc7
3 files changed, 25 insertions, 19 deletions
diff --git a/chrome/browser/ui/webui/options/certificate_manager_browsertest.cc b/chrome/browser/ui/webui/options/certificate_manager_browsertest.cc
index ba52cd7..1517808 100644
--- a/chrome/browser/ui/webui/options/certificate_manager_browsertest.cc
+++ b/chrome/browser/ui/webui/options/certificate_manager_browsertest.cc
@@ -25,6 +25,7 @@
#include "chrome/browser/policy/profile_policy_connector.h"
#include "chrome/browser/policy/profile_policy_connector_factory.h"
#include "chromeos/network/onc/onc_test_utils.h"
+#include "crypto/nss_util.h"
#endif
using testing::AnyNumber;
@@ -93,6 +94,9 @@ class CertificateManagerBrowserTest : public options::OptionsUIBrowserTest {
}
policy::MockConfigurationPolicyProvider provider_;
+#if defined(OS_CHROMEOS)
+ crypto::ScopedTestNSSDB test_nssdb_;
+#endif
};
#if defined(OS_CHROMEOS)
diff --git a/chromeos/cert_loader.cc b/chromeos/cert_loader.cc
index d60b9d0..5d76711 100644
--- a/chromeos/cert_loader.cc
+++ b/chromeos/cert_loader.cc
@@ -44,8 +44,7 @@ base::TimeDelta GetNextRequestDelayMs(base::TimeDelta last_delay) {
}
void LoadNSSCertificates(net::CertificateList* cert_list) {
- if (base::chromeos::IsRunningOnChromeOS())
- net::NSSCertDatabase::GetInstance()->ListCerts(cert_list);
+ net::NSSCertDatabase::GetInstance()->ListCerts(cert_list);
}
void CallOpenPersistentNSSDB() {
@@ -54,8 +53,7 @@ void CallOpenPersistentNSSDB() {
// Ensure we've opened the user's key/certificate database.
crypto::OpenPersistentNSSDB();
- if (base::chromeos::IsRunningOnChromeOS())
- crypto::EnableTPMTokenForNSS();
+ crypto::EnableTPMTokenForNSS();
}
} // namespace
@@ -77,8 +75,7 @@ void CertLoader::Shutdown() {
// static
CertLoader* CertLoader::Get() {
- CHECK(g_cert_loader)
- << "CertLoader::Get() called before Initialize()";
+ CHECK(g_cert_loader) << "CertLoader::Get() called before Initialize()";
return g_cert_loader;
}
@@ -151,6 +148,9 @@ void CertLoader::MaybeRequestCertificates() {
// Ensure we only initialize the TPM token once.
DCHECK_EQ(tpm_token_state_, TPM_STATE_UNKNOWN);
+ if (!base::chromeos::IsRunningOnChromeOS())
+ tpm_token_state_ = TPM_DISABLED;
+
InitializeTokenAndLoadCertificates();
}
@@ -197,16 +197,14 @@ void CertLoader::InitializeTokenAndLoadCertificates() {
return;
}
case TPM_TOKEN_INFO_RECEIVED: {
- if (base::chromeos::IsRunningOnChromeOS()) {
- base::PostTaskAndReplyWithResult(
- crypto_task_runner_.get(),
- FROM_HERE,
- base::Bind(&crypto::InitializeTPMToken,
- tpm_token_name_, tpm_user_pin_),
- base::Bind(&CertLoader::OnTPMTokenInitialized,
- initialize_token_factory_.GetWeakPtr()));
- return;
- }
+ base::PostTaskAndReplyWithResult(
+ crypto_task_runner_.get(),
+ FROM_HERE,
+ base::Bind(
+ &crypto::InitializeTPMToken, tpm_token_name_, tpm_user_pin_),
+ base::Bind(&CertLoader::OnTPMTokenInitialized,
+ initialize_token_factory_.GetWeakPtr()));
+ return;
tpm_token_state_ = TPM_TOKEN_INITIALIZED;
// FALL_THROUGH_INTENDED
}
@@ -349,8 +347,9 @@ void CertLoader::UpdateCertificates(net::CertificateList* cert_list) {
// Ignore any existing certificates.
cert_list_.swap(*cert_list);
- NotifyCertificatesLoaded(!certificates_loaded_);
+ bool initial_load = !certificates_loaded_;
certificates_loaded_ = true;
+ NotifyCertificatesLoaded(initial_load);
certificates_update_running_ = false;
if (certificates_update_required_)
diff --git a/chromeos/dbus/cryptohome_client.cc b/chromeos/dbus/cryptohome_client.cc
index a766d09..6ba9834 100644
--- a/chromeos/dbus/cryptohome_client.cc
+++ b/chromeos/dbus/cryptohome_client.cc
@@ -1033,8 +1033,11 @@ class CryptohomeClientStubImpl : public CryptohomeClient {
const char kStubLabel[] = "Stub TPM Token";
const char kStubUserPin[] = "012345";
base::MessageLoop::current()->PostTask(
- FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, kStubLabel,
- kStubUserPin));
+ FROM_HERE,
+ base::Bind(callback,
+ DBUS_METHOD_CALL_SUCCESS,
+ std::string(kStubLabel),
+ std::string(kStubUserPin)));
}
// CryptohomeClient override.