summaryrefslogtreecommitdiffstats
path: root/chromeos/network/onc
diff options
context:
space:
mode:
Diffstat (limited to 'chromeos/network/onc')
-rw-r--r--chromeos/network/onc/onc_normalizer.cc4
-rw-r--r--chromeos/network/onc/onc_signature.cc11
-rw-r--r--chromeos/network/onc/onc_validator.cc4
3 files changed, 4 insertions, 15 deletions
diff --git a/chromeos/network/onc/onc_normalizer.cc b/chromeos/network/onc/onc_normalizer.cc
index abe93e0..88796bf 100644
--- a/chromeos/network/onc/onc_normalizer.cc
+++ b/chromeos/network/onc/onc_normalizer.cc
@@ -157,12 +157,8 @@ void Normalizer::NormalizeNetworkConfiguration(base::DictionaryValue* network) {
network->RemoveWithoutPathExpansion(::onc::network_config::kStaticIPConfig,
NULL);
network->RemoveWithoutPathExpansion(::onc::network_config::kName, NULL);
- network->RemoveWithoutPathExpansion(::onc::network_config::kNameServers,
- NULL);
network->RemoveWithoutPathExpansion(::onc::network_config::kProxySettings,
NULL);
- network->RemoveWithoutPathExpansion(::onc::network_config::kSearchDomains,
- NULL);
network->RemoveWithoutPathExpansion(::onc::network_config::kType, NULL);
// Fields dependent on kType are removed afterwards, too.
}
diff --git a/chromeos/network/onc/onc_signature.cc b/chromeos/network/onc/onc_signature.cc
index 2bd48ea..44bc1b5 100644
--- a/chromeos/network/onc/onc_signature.cc
+++ b/chromeos/network/onc/onc_signature.cc
@@ -177,7 +177,7 @@ const OncFieldSignature ipconfig_fields[] = {
{ ::onc::ipconfig::kIPAddress, &kStringSignature},
{ ::onc::ipconfig::kNameServers, &kStringListSignature},
{ ::onc::ipconfig::kRoutingPrefix, &kIntegerSignature},
- { ::onc::network_config::kSearchDomains, &kStringListSignature},
+ { ::onc::ipconfig::kSearchDomains, &kStringListSignature},
{ ::onc::ipconfig::kType, &kStringSignature},
{ ::onc::ipconfig::kWebProxyAutoDiscoveryUrl, &kStringSignature},
{NULL}};
@@ -301,20 +301,11 @@ const OncFieldSignature network_configuration_fields[] = {
{ ::onc::network_config::kCellular, &kCellularSignature},
{ ::onc::network_config::kEthernet, &kEthernetSignature},
{ ::onc::network_config::kGUID, &kStringSignature},
-
{ ::onc::network_config::kName, &kStringSignature},
-
- // Not supported, yet.
- { ::onc::network_config::kNameServers, &kStringListSignature},
-
{ ::onc::network_config::kPriority, &kIntegerSignature},
{ ::onc::network_config::kProxySettings, &kProxySettingsSignature},
{ ::onc::kRecommended, &kRecommendedSignature},
{ ::onc::kRemove, &kBoolSignature},
-
- // Not supported, yet.
- { ::onc::network_config::kSearchDomains, &kStringListSignature},
-
{ ::onc::network_config::kStaticIPConfig, &kStaticIPConfigSignature},
{ ::onc::network_config::kType, &kStringSignature},
{ ::onc::network_config::kVPN, &kVPNSignature},
diff --git a/chromeos/network/onc/onc_validator.cc b/chromeos/network/onc/onc_validator.cc
index fd55b29..60a863c 100644
--- a/chromeos/network/onc/onc_validator.cc
+++ b/chromeos/network/onc/onc_validator.cc
@@ -608,8 +608,10 @@ bool Validator::ValidateIPConfig(base::DictionaryValue* result) {
}
bool all_required_exist = RequireField(*result, kIPAddress) &&
- RequireField(*result, kRoutingPrefix) &&
RequireField(*result, ::onc::ipconfig::kType);
+ if (result->HasKey(kIPAddress))
+ all_required_exist &= RequireField(*result, kRoutingPrefix);
+
return !error_on_missing_field_ || all_required_exist;
}