| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/chromeos/cros/native_network_parser.h" | 5 #include "chrome/browser/chromeos/cros/native_network_parser.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/stringprintf.h" | 9 #include "base/stringprintf.h" |
| 10 #include "base/string_util.h" | 10 #include "base/string_util.h" |
| (...skipping 1010 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1021 bool NativeWifiNetworkParser::ParseValue(PropertyIndex index, | 1021 bool NativeWifiNetworkParser::ParseValue(PropertyIndex index, |
| 1022 const base::Value& value, | 1022 const base::Value& value, |
| 1023 Network* network) { | 1023 Network* network) { |
| 1024 DCHECK_EQ(TYPE_WIFI, network->type()); | 1024 DCHECK_EQ(TYPE_WIFI, network->type()); |
| 1025 WifiNetwork* wifi_network = static_cast<WifiNetwork*>(network); | 1025 WifiNetwork* wifi_network = static_cast<WifiNetwork*>(network); |
| 1026 switch (index) { | 1026 switch (index) { |
| 1027 case PROPERTY_INDEX_WIFI_HEX_SSID: { | 1027 case PROPERTY_INDEX_WIFI_HEX_SSID: { |
| 1028 std::string ssid_hex; | 1028 std::string ssid_hex; |
| 1029 if (!value.GetAsString(&ssid_hex)) | 1029 if (!value.GetAsString(&ssid_hex)) |
| 1030 return false; | 1030 return false; |
| 1031 | |
| 1032 wifi_network->SetHexSsid(ssid_hex); | 1031 wifi_network->SetHexSsid(ssid_hex); |
| 1033 return true; | 1032 return true; |
| 1034 } | 1033 } |
| 1035 case PROPERTY_INDEX_WIFI_BSSID: | 1034 case PROPERTY_INDEX_WIFI_BSSID: { |
| 1036 case PROPERTY_INDEX_WIFI_AUTH_MODE: | 1035 std::string bssid; |
| 1037 case PROPERTY_INDEX_WIFI_PHY_MODE: | 1036 if (!value.GetAsString(&bssid)) |
| 1038 case PROPERTY_INDEX_WIFI_HIDDEN_SSID: | 1037 return false; |
| 1039 case PROPERTY_INDEX_WIFI_FREQUENCY: | 1038 wifi_network->set_bssid(bssid); |
| 1040 // These properties are currently not used in the UI. | |
| 1041 return true; | 1039 return true; |
| 1040 } |
| 1041 case PROPERTY_INDEX_WIFI_HIDDEN_SSID: { |
| 1042 bool hidden_ssid; |
| 1043 if (!value.GetAsBoolean(&hidden_ssid)) |
| 1044 return false; |
| 1045 wifi_network->set_hidden_ssid(hidden_ssid); |
| 1046 return true; |
| 1047 } |
| 1048 case PROPERTY_INDEX_WIFI_FREQUENCY: { |
| 1049 int frequency; |
| 1050 if (!value.GetAsInteger(&frequency)) |
| 1051 return false; |
| 1052 wifi_network->set_frequency(frequency); |
| 1053 return true; |
| 1054 } |
| 1042 case PROPERTY_INDEX_NAME: { | 1055 case PROPERTY_INDEX_NAME: { |
| 1043 // Does not change network name when it was already set by WiFi.HexSSID. | 1056 // Does not change network name when it was already set by WiFi.HexSSID. |
| 1044 if (!wifi_network->name().empty()) | 1057 if (!wifi_network->name().empty()) |
| 1045 return true; | 1058 return true; |
| 1046 else | 1059 else |
| 1047 return NativeWirelessNetworkParser::ParseValue(index, value, network); | 1060 return NativeWirelessNetworkParser::ParseValue(index, value, network); |
| 1048 } | 1061 } |
| 1049 case PROPERTY_INDEX_GUID: { | 1062 case PROPERTY_INDEX_GUID: { |
| 1050 std::string unique_id; | 1063 std::string unique_id; |
| 1051 if (!value.GetAsString(&unique_id)) | 1064 if (!value.GetAsString(&unique_id)) |
| (...skipping 13 matching lines...) Expand all Loading... |
| 1065 if (!value.GetAsString(&passphrase)) | 1078 if (!value.GetAsString(&passphrase)) |
| 1066 break; | 1079 break; |
| 1067 // Only store the passphrase if we are the owner. | 1080 // Only store the passphrase if we are the owner. |
| 1068 // TODO(stevenjb): Remove this when chromium-os:12948 is resolved. | 1081 // TODO(stevenjb): Remove this when chromium-os:12948 is resolved. |
| 1069 if (chromeos::UserManager::Get()->IsCurrentUserOwner()) | 1082 if (chromeos::UserManager::Get()->IsCurrentUserOwner()) |
| 1070 wifi_network->set_passphrase(passphrase); | 1083 wifi_network->set_passphrase(passphrase); |
| 1071 return true; | 1084 return true; |
| 1072 } | 1085 } |
| 1073 case PROPERTY_INDEX_PASSPHRASE_REQUIRED: { | 1086 case PROPERTY_INDEX_PASSPHRASE_REQUIRED: { |
| 1074 bool passphrase_required; | 1087 bool passphrase_required; |
| 1075 value.GetAsBoolean(&passphrase_required); | |
| 1076 if (!value.GetAsBoolean(&passphrase_required)) | 1088 if (!value.GetAsBoolean(&passphrase_required)) |
| 1077 break; | 1089 break; |
| 1078 wifi_network->set_passphrase_required(passphrase_required); | 1090 wifi_network->set_passphrase_required(passphrase_required); |
| 1079 return true; | 1091 return true; |
| 1080 } | 1092 } |
| 1081 case PROPERTY_INDEX_IDENTITY: { | 1093 case PROPERTY_INDEX_IDENTITY: { |
| 1082 std::string identity; | 1094 std::string identity; |
| 1083 if (!value.GetAsString(&identity)) | 1095 if (!value.GetAsString(&identity)) |
| 1084 break; | 1096 break; |
| 1085 wifi_network->set_identity(identity); | 1097 wifi_network->set_identity(identity); |
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1142 wifi_network->set_eap_passphrase(eap_passphrase); | 1154 wifi_network->set_eap_passphrase(eap_passphrase); |
| 1143 return true; | 1155 return true; |
| 1144 } | 1156 } |
| 1145 case PROPERTY_INDEX_EAP_CA_CERT: { | 1157 case PROPERTY_INDEX_EAP_CA_CERT: { |
| 1146 std::string eap_cert_nickname; | 1158 std::string eap_cert_nickname; |
| 1147 if (!value.GetAsString(&eap_cert_nickname)) | 1159 if (!value.GetAsString(&eap_cert_nickname)) |
| 1148 break; | 1160 break; |
| 1149 wifi_network->set_eap_server_ca_cert_nss_nickname(eap_cert_nickname); | 1161 wifi_network->set_eap_server_ca_cert_nss_nickname(eap_cert_nickname); |
| 1150 return true; | 1162 return true; |
| 1151 } | 1163 } |
| 1164 case PROPERTY_INDEX_WIFI_AUTH_MODE: |
| 1165 case PROPERTY_INDEX_WIFI_PHY_MODE: |
| 1152 case PROPERTY_INDEX_EAP_CLIENT_CERT: | 1166 case PROPERTY_INDEX_EAP_CLIENT_CERT: |
| 1153 case PROPERTY_INDEX_EAP_CLIENT_CERT_NSS: | 1167 case PROPERTY_INDEX_EAP_CLIENT_CERT_NSS: |
| 1154 case PROPERTY_INDEX_EAP_PRIVATE_KEY: | 1168 case PROPERTY_INDEX_EAP_PRIVATE_KEY: |
| 1155 case PROPERTY_INDEX_EAP_PRIVATE_KEY_PASSWORD: | 1169 case PROPERTY_INDEX_EAP_PRIVATE_KEY_PASSWORD: |
| 1156 case PROPERTY_INDEX_EAP_KEY_ID: | 1170 case PROPERTY_INDEX_EAP_KEY_ID: |
| 1157 case PROPERTY_INDEX_EAP_CA_CERT_ID: | 1171 case PROPERTY_INDEX_EAP_CA_CERT_ID: |
| 1158 case PROPERTY_INDEX_EAP_PIN: | 1172 case PROPERTY_INDEX_EAP_PIN: |
| 1159 case PROPERTY_INDEX_EAP_KEY_MGMT: | 1173 case PROPERTY_INDEX_EAP_KEY_MGMT: |
| 1160 // These properties are currently not used in the UI. | 1174 // These properties are currently not used in the UI. |
| 1161 return true; | 1175 return true; |
| (...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1333 PROVIDER_TYPE_MAX)); | 1347 PROVIDER_TYPE_MAX)); |
| 1334 return &parser; | 1348 return &parser; |
| 1335 } | 1349 } |
| 1336 | 1350 |
| 1337 ProviderType NativeVirtualNetworkParser::ParseProviderType( | 1351 ProviderType NativeVirtualNetworkParser::ParseProviderType( |
| 1338 const std::string& type) { | 1352 const std::string& type) { |
| 1339 return provider_type_mapper()->Get(type); | 1353 return provider_type_mapper()->Get(type); |
| 1340 } | 1354 } |
| 1341 | 1355 |
| 1342 } // namespace chromeos | 1356 } // namespace chromeos |
| OLD | NEW |