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

Unified Diff: chromeos/network/managed_network_configuration_handler_impl.cc

Issue 510123004: Apply global auto connect ONC policy in GetManagedProperties. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed nit. Created 6 years, 3 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 | « no previous file | chromeos/network/managed_network_configuration_handler_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chromeos/network/managed_network_configuration_handler_impl.cc
diff --git a/chromeos/network/managed_network_configuration_handler_impl.cc b/chromeos/network/managed_network_configuration_handler_impl.cc
index 21c225a5b3fc48fb65a2f72a2d94cc432a54f278..a2a58caeeb1f2d646ea909cef1e8c1a6187aca75 100644
--- a/chromeos/network/managed_network_configuration_handler_impl.cc
+++ b/chromeos/network/managed_network_configuration_handler_impl.cc
@@ -149,15 +149,9 @@ void ManagedNetworkConfigurationHandlerImpl::SendManagedProperties(
shill_property_util::GetUIDataFromProperties(*shill_properties);
const base::DictionaryValue* user_settings = NULL;
- const base::DictionaryValue* shared_settings = NULL;
if (ui_data && profile) {
- if (profile->type() == NetworkProfile::TYPE_SHARED)
- shared_settings = ui_data->user_settings();
- else if (profile->type() == NetworkProfile::TYPE_USER)
- user_settings = ui_data->user_settings();
- else
- NOTREACHED();
+ user_settings = ui_data->user_settings();
} else if (profile) {
NET_LOG_ERROR("Service contains empty or invalid UIData", service_path);
// TODO(pneubeck): add a conversion of user configured entries of old
@@ -174,34 +168,26 @@ void ManagedNetworkConfigurationHandlerImpl::SendManagedProperties(
active_settings->GetStringWithoutPathExpansion(::onc::network_config::kGUID,
&guid);
- const base::DictionaryValue* user_policy = NULL;
- const base::DictionaryValue* device_policy = NULL;
- if (!guid.empty() && profile) {
+ const base::DictionaryValue* network_policy = NULL;
+ const base::DictionaryValue* global_policy = NULL;
+ if (profile) {
const Policies* policies = GetPoliciesForProfile(*profile);
if (!policies) {
InvokeErrorCallback(
service_path, error_callback, kPoliciesNotInitialized);
return;
}
- const base::DictionaryValue* policy =
- GetByGUID(policies->per_network_config, guid);
- if (profile->type() == NetworkProfile::TYPE_SHARED)
- device_policy = policy;
- else if (profile->type() == NetworkProfile::TYPE_USER)
- user_policy = policy;
- else
- NOTREACHED();
+ if (!guid.empty())
+ network_policy = GetByGUID(policies->per_network_config, guid);
+ global_policy = &policies->global_network_config;
}
- // This call also removes credentials from policies.
- scoped_ptr<base::DictionaryValue> augmented_properties =
- onc::MergeSettingsAndPoliciesToAugmented(
- onc::kNetworkConfigurationSignature,
- user_policy,
- device_policy,
- user_settings,
- shared_settings,
- active_settings.get());
+ scoped_ptr<base::DictionaryValue> augmented_properties(
+ policy_util::CreateManagedONC(global_policy,
+ network_policy,
+ user_settings,
+ active_settings.get(),
+ profile));
callback.Run(service_path, *augmented_properties);
}
@@ -297,13 +283,17 @@ void ManagedNetworkConfigurationHandlerImpl::SetProperties(
if (validation_result == onc::Validator::VALID_WITH_WARNINGS)
LOG(WARNING) << "Validation of ONC user settings produced warnings.";
- const base::DictionaryValue* policy =
+ const base::DictionaryValue* network_policy =
GetByGUID(policies->per_network_config, guid);
- VLOG(2) << "This configuration is " << (policy ? "" : "not ") << "managed.";
+ VLOG(2) << "This configuration is " << (network_policy ? "" : "not ")
+ << "managed.";
scoped_ptr<base::DictionaryValue> shill_dictionary(
- policy_util::CreateShillConfiguration(
- *profile, guid, policy, validated_user_settings.get()));
+ policy_util::CreateShillConfiguration(*profile,
+ guid,
+ &policies->global_network_config,
+ network_policy,
+ validated_user_settings.get()));
network_configuration_handler_->SetProperties(
service_path, *shill_dictionary, callback, error_callback);
@@ -341,8 +331,11 @@ void ManagedNetworkConfigurationHandlerImpl::CreateConfiguration(
// in |properties| as it is not our own and from an untrusted source.
std::string guid = base::GenerateGUID();
scoped_ptr<base::DictionaryValue> shill_dictionary(
- policy_util::CreateShillConfiguration(
- *profile, guid, NULL /*no policy*/, &properties));
+ policy_util::CreateShillConfiguration(*profile,
+ guid,
+ NULL, // no global policy
+ NULL, // no network policy
+ &properties));
network_configuration_handler_->CreateConfiguration(
*shill_dictionary, callback, error_callback);
« no previous file with comments | « no previous file | chromeos/network/managed_network_configuration_handler_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698