Index: chrome/browser/chromeos/policy/user_network_configuration_updater_factory.cc |
diff --git a/chrome/browser/chromeos/policy/user_network_configuration_updater_factory.cc b/chrome/browser/chromeos/policy/user_network_configuration_updater_factory.cc |
index 5d22dc7f1d08a9ec8b35bc40657a981d25cb01d3..88c6436197fb7c5191e7b5c42e2295fd6a7c94b7 100644 |
--- a/chrome/browser/chromeos/policy/user_network_configuration_updater_factory.cc |
+++ b/chrome/browser/chromeos/policy/user_network_configuration_updater_factory.cc |
@@ -7,12 +7,14 @@ |
#include "base/memory/singleton.h" |
#include "chrome/browser/chromeos/policy/user_network_configuration_updater.h" |
#include "chrome/browser/chromeos/profiles/profile_helper.h" |
+#include "chrome/browser/net/cert_database_service_factory.h" |
#include "chrome/browser/policy/profile_policy_connector.h" |
#include "chrome/browser/policy/profile_policy_connector_factory.h" |
#include "chrome/browser/profiles/incognito_helpers.h" |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/common/pref_names.h" |
#include "chromeos/network/network_handler.h" |
+#include "components/cert_database/public/cert_database_service.h" |
#include "components/keyed_service/content/browser_context_dependency_manager.h" |
#include "components/policy/core/common/cloud/cloud_policy_constants.h" |
#include "components/user_manager/user.h" |
@@ -39,6 +41,7 @@ UserNetworkConfigurationUpdaterFactory::UserNetworkConfigurationUpdaterFactory() |
"UserNetworkConfigurationUpdater", |
BrowserContextDependencyManager::GetInstance()) { |
DependsOn(ProfilePolicyConnectorFactory::GetInstance()); |
+ DependsOn(CertDatabaseServiceFactory::GetInstance()); |
} |
UserNetworkConfigurationUpdaterFactory:: |
@@ -80,13 +83,23 @@ KeyedService* UserNetworkConfigurationUpdaterFactory::BuildServiceInstanceFor( |
ProfilePolicyConnector* profile_connector = |
ProfilePolicyConnectorFactory::GetForProfile(profile); |
- return UserNetworkConfigurationUpdater::CreateForUserPolicy( |
- profile, |
- allow_trusted_certs_from_policy, |
- *user, |
- profile_connector->policy_service(), |
- chromeos::NetworkHandler::Get()->managed_network_configuration_handler()) |
- .release(); |
+ CertDatabaseService* cert_service = |
+ CertDatabaseServiceFactory::GetForBrowserContext(context); |
+ |
+ UserNetworkConfigurationUpdater* updater = |
+ UserNetworkConfigurationUpdater::CreateForUserPolicy( |
+ profile, |
+ allow_trusted_certs_from_policy, |
+ *user, |
+ profile_connector->policy_service(), |
+ chromeos::NetworkHandler::Get() |
+ ->managed_network_configuration_handler()).release(); |
+ |
+ cert_service->GetNSSCertDatabase(base::Bind( |
+ &UserNetworkConfigurationUpdater::CreateAndSetCertificateImporter, |
+ base::Unretained(updater))); |
mattm
2014/09/05 07:35:28
Is Unretained safe here? Are ownership/lifetime i
pneubeck (no reviews)
2014/09/05 08:04:56
Yes, this one isn't thought through yet.
I'll add
pneubeck (no reviews)
2014/09/12 16:20:23
This is fixed now.
|
+ |
+ return updater; |
} |
} // namespace policy |