diff options
Diffstat (limited to 'chromeos/network/onc')
-rw-r--r-- | chromeos/network/onc/onc_normalizer.cc | 4 | ||||
-rw-r--r-- | chromeos/network/onc/onc_signature.cc | 11 | ||||
-rw-r--r-- | chromeos/network/onc/onc_validator.cc | 4 |
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; } |