X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fchrome%2Fbrowser%2Fchromeos%2Fpolicy%2Fuser_network_configuration_updater.cc;h=3221bf1074be2be57df59f2d4b2506e6e9023020;hb=3545e9f2671f595d2a2f3ee75ca0393b01e35ef6;hp=447677e70d70c142f7a400b79b8cfc6d40923ef8;hpb=7d210d4c7e9ba36e635eabc5b5780495f8a63292;p=platform%2Fframework%2Fweb%2Fcrosswalk.git diff --git a/src/chrome/browser/chromeos/policy/user_network_configuration_updater.cc b/src/chrome/browser/chromeos/policy/user_network_configuration_updater.cc index 447677e..3221bf1 100644 --- a/src/chrome/browser/chromeos/policy/user_network_configuration_updater.cc +++ b/src/chrome/browser/chromeos/policy/user_network_configuration_updater.cc @@ -15,6 +15,7 @@ #include "chromeos/network/managed_network_configuration_handler.h" #include "chromeos/network/onc/onc_certificate_importer_impl.h" #include "components/user_manager/user.h" +#include "content/public/browser/browser_thread.h" #include "content/public/browser/notification_source.h" #include "net/cert/x509_certificate.h" #include "policy/policy_constants.h" @@ -84,6 +85,15 @@ void UserNetworkConfigurationUpdater::GetWebTrustedCertificates( *certs = web_trust_certs_; } +void UserNetworkConfigurationUpdater::OnCertificatesImported( + bool /* unused success */, + const net::CertificateList& onc_trusted_certificates) { + web_trust_certs_.clear(); + if (allow_trusted_certificates_from_policy_) + web_trust_certs_ = onc_trusted_certificates; + NotifyTrustAnchorsChanged(); +} + void UserNetworkConfigurationUpdater::ImportCertificates( const base::ListValue& certificates_onc) { // If certificate importer is not yet set, cache the certificate onc. It will @@ -93,13 +103,11 @@ void UserNetworkConfigurationUpdater::ImportCertificates( return; } - web_trust_certs_.clear(); certificate_importer_->ImportCertificates( certificates_onc, onc_source_, - allow_trusted_certificates_from_policy_ ? &web_trust_certs_ : NULL); - - NotifyTrustAnchorsChanged(); + base::Bind(&UserNetworkConfigurationUpdater::OnCertificatesImported, + base::Unretained(this))); } void UserNetworkConfigurationUpdater::ApplyNetworkPolicy( @@ -132,7 +140,10 @@ void UserNetworkConfigurationUpdater::CreateAndSetCertificateImporter( net::NSSCertDatabase* database) { DCHECK(database); SetCertificateImporter(scoped_ptr( - new chromeos::onc::CertificateImporterImpl(database))); + new chromeos::onc::CertificateImporterImpl( + content::BrowserThread::GetMessageLoopProxyForThread( + content::BrowserThread::IO), + database))); } void UserNetworkConfigurationUpdater::SetCertificateImporter(