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 "chromeos/network/onc/onc_translation_tables.h" | 5 #include "chromeos/network/onc/onc_translation_tables.h" |
6 | 6 |
7 #include <cstddef> | 7 #include <cstddef> |
8 | 8 |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "components/onc/onc_constants.h" | 10 #include "components/onc/onc_constants.h" |
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
115 // { ::onc::wifi::kSSID, shill::kWifiHexSsid}, | 115 // { ::onc::wifi::kSSID, shill::kWifiHexSsid}, |
116 // This field is converted during translation, see onc_translator_*. | 116 // This field is converted during translation, see onc_translator_*. |
117 // { ::onc::wifi::kSecurity, shill::kSecurityProperty }, | 117 // { ::onc::wifi::kSecurity, shill::kSecurityProperty }, |
118 { ::onc::wifi::kSignalStrength, shill::kSignalStrengthProperty}, | 118 { ::onc::wifi::kSignalStrength, shill::kSignalStrengthProperty}, |
119 {NULL}}; | 119 {NULL}}; |
120 | 120 |
121 const FieldTranslationEntry cellular_apn_fields[] = { | 121 const FieldTranslationEntry cellular_apn_fields[] = { |
122 { ::onc::cellular_apn::kName, shill::kApnProperty}, | 122 { ::onc::cellular_apn::kName, shill::kApnProperty}, |
123 { ::onc::cellular_apn::kUsername, shill::kApnUsernameProperty}, | 123 { ::onc::cellular_apn::kUsername, shill::kApnUsernameProperty}, |
124 { ::onc::cellular_apn::kPassword, shill::kApnPasswordProperty}, | 124 { ::onc::cellular_apn::kPassword, shill::kApnPasswordProperty}, |
| 125 { ::onc::cellular_apn::kLocalizedName, shill::kApnLocalizedNameProperty}, |
| 126 { ::onc::cellular_apn::kLanguage, shill::kApnLanguageProperty}, |
| 127 {NULL}}; |
| 128 |
| 129 const FieldTranslationEntry cellular_found_network_fields[] = { |
| 130 { ::onc::cellular_found_network::kNetworkId, shill::kNetworkIdProperty}, |
| 131 { ::onc::cellular_found_network::kStatus, shill::kStatusProperty}, |
| 132 { ::onc::cellular_found_network::kTechnology, shill::kTechnologyProperty}, |
| 133 { ::onc::cellular_found_network::kShortName, shill::kShortNameProperty}, |
| 134 { ::onc::cellular_found_network::kLongName, shill::kLongNameProperty}, |
125 {NULL}}; | 135 {NULL}}; |
126 | 136 |
127 const FieldTranslationEntry cellular_provider_fields[] = { | 137 const FieldTranslationEntry cellular_provider_fields[] = { |
128 { ::onc::cellular_provider::kCode, shill::kOperatorCodeKey}, | 138 { ::onc::cellular_provider::kCode, shill::kOperatorCodeKey}, |
129 { ::onc::cellular_provider::kCountry, shill::kOperatorCountryKey}, | 139 { ::onc::cellular_provider::kCountry, shill::kOperatorCountryKey}, |
130 { ::onc::cellular_provider::kName, shill::kOperatorNameKey}, | 140 { ::onc::cellular_provider::kName, shill::kOperatorNameKey}, |
131 {NULL}}; | 141 {NULL}}; |
132 | 142 |
| 143 const FieldTranslationEntry sim_lock_status_fields[] = { |
| 144 { ::onc::sim_lock_status::kLockEnabled, shill::kSIMLockEnabledProperty}, |
| 145 { ::onc::sim_lock_status::kLockType, shill::kSIMLockTypeProperty}, |
| 146 { ::onc::sim_lock_status::kRetriesLeft, shill::kSIMLockRetriesLeftProperty}, |
| 147 {NULL}}; |
| 148 |
133 // This must only contain Service properties and not Device properties. | 149 // This must only contain Service properties and not Device properties. |
134 // For Device properties see kCellularDeviceTable. | 150 // For Device properties see kCellularDeviceTable. |
135 const FieldTranslationEntry cellular_fields[] = { | 151 const FieldTranslationEntry cellular_fields[] = { |
136 { ::onc::cellular::kActivateOverNonCellularNetwork, | 152 { ::onc::cellular::kActivateOverNonCellularNetwork, |
137 shill::kActivateOverNonCellularNetworkProperty}, | 153 shill::kActivateOverNonCellularNetworkProperty}, |
138 { ::onc::cellular::kActivationState, shill::kActivationStateProperty}, | 154 { ::onc::cellular::kActivationState, shill::kActivationStateProperty}, |
139 { ::onc::cellular::kNetworkTechnology, shill::kNetworkTechnologyProperty}, | 155 { ::onc::cellular::kNetworkTechnology, shill::kNetworkTechnologyProperty}, |
140 { ::onc::cellular::kRoamingState, shill::kRoamingStateProperty}, | 156 { ::onc::cellular::kRoamingState, shill::kRoamingStateProperty}, |
141 {NULL}}; | 157 {NULL}}; |
142 | 158 |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
178 { &kEAPSignature, eap_fields }, | 194 { &kEAPSignature, eap_fields }, |
179 { &kIPsecSignature, ipsec_fields }, | 195 { &kIPsecSignature, ipsec_fields }, |
180 { &kL2TPSignature, l2tp_fields }, | 196 { &kL2TPSignature, l2tp_fields }, |
181 { &kXAUTHSignature, xauth_fields }, | 197 { &kXAUTHSignature, xauth_fields }, |
182 { &kOpenVPNSignature, openvpn_fields }, | 198 { &kOpenVPNSignature, openvpn_fields }, |
183 { &kVerifyX509Signature, verify_x509_fields }, | 199 { &kVerifyX509Signature, verify_x509_fields }, |
184 { &kVPNSignature, vpn_fields }, | 200 { &kVPNSignature, vpn_fields }, |
185 { &kWiFiSignature, wifi_fields }, | 201 { &kWiFiSignature, wifi_fields }, |
186 { &kWiFiWithStateSignature, wifi_fields }, | 202 { &kWiFiWithStateSignature, wifi_fields }, |
187 { &kCellularApnSignature, cellular_apn_fields }, | 203 { &kCellularApnSignature, cellular_apn_fields }, |
| 204 { &kCellularFoundNetworkSignature, cellular_found_network_fields }, |
188 { &kCellularProviderSignature, cellular_provider_fields }, | 205 { &kCellularProviderSignature, cellular_provider_fields }, |
| 206 { &kSIMLockStatusSignature, sim_lock_status_fields }, |
189 { &kCellularSignature, cellular_fields }, | 207 { &kCellularSignature, cellular_fields }, |
190 { &kCellularWithStateSignature, cellular_fields }, | 208 { &kCellularWithStateSignature, cellular_fields }, |
191 { &kNetworkWithStateSignature, network_fields }, | 209 { &kNetworkWithStateSignature, network_fields }, |
192 { &kNetworkConfigurationSignature, network_fields }, | 210 { &kNetworkConfigurationSignature, network_fields }, |
193 { &kIPConfigSignature, ipconfig_fields }, | 211 { &kIPConfigSignature, ipconfig_fields }, |
194 { NULL } | 212 { NULL } |
195 }; | 213 }; |
196 | 214 |
197 struct NestedShillDictionaryEntry { | 215 struct NestedShillDictionaryEntry { |
198 const OncValueSignature* onc_signature; | 216 const OncValueSignature* onc_signature; |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
251 // Translation of the EAP.Inner field in case of EAP.Outer == TTLS | 269 // Translation of the EAP.Inner field in case of EAP.Outer == TTLS |
252 const StringTranslationEntry kEAP_TTLS_InnerTable[] = { | 270 const StringTranslationEntry kEAP_TTLS_InnerTable[] = { |
253 { ::onc::eap::kMD5, shill::kEapPhase2AuthTTLSMD5}, | 271 { ::onc::eap::kMD5, shill::kEapPhase2AuthTTLSMD5}, |
254 { ::onc::eap::kMSCHAPv2, shill::kEapPhase2AuthTTLSMSCHAPV2}, | 272 { ::onc::eap::kMSCHAPv2, shill::kEapPhase2AuthTTLSMSCHAPV2}, |
255 { ::onc::eap::kPAP, shill::kEapPhase2AuthTTLSPAP}, | 273 { ::onc::eap::kPAP, shill::kEapPhase2AuthTTLSPAP}, |
256 {NULL}}; | 274 {NULL}}; |
257 | 275 |
258 // This must contain only Shill Device properties and no Service properties. | 276 // This must contain only Shill Device properties and no Service properties. |
259 // For Service properties see cellular_fields. | 277 // For Service properties see cellular_fields. |
260 const FieldTranslationEntry kCellularDeviceTable[] = { | 278 const FieldTranslationEntry kCellularDeviceTable[] = { |
| 279 // This field is converted during translation, see onc_translator_*. |
| 280 // { ::onc::cellular::kAPNList, shill::kCellularApnListProperty}, |
261 { ::onc::cellular::kAllowRoaming, shill::kCellularAllowRoamingProperty}, | 281 { ::onc::cellular::kAllowRoaming, shill::kCellularAllowRoamingProperty}, |
262 { ::onc::cellular::kCarrier, shill::kCarrierProperty}, | 282 { ::onc::cellular::kCarrier, shill::kCarrierProperty}, |
263 { ::onc::cellular::kESN, shill::kEsnProperty}, | 283 { ::onc::cellular::kESN, shill::kEsnProperty}, |
264 { ::onc::cellular::kFamily, shill::kTechnologyFamilyProperty}, | 284 { ::onc::cellular::kFamily, shill::kTechnologyFamilyProperty}, |
265 { ::onc::cellular::kFirmwareRevision, shill::kFirmwareRevisionProperty}, | 285 { ::onc::cellular::kFirmwareRevision, shill::kFirmwareRevisionProperty}, |
266 { ::onc::cellular::kFoundNetworks, shill::kFoundNetworksProperty}, | 286 // This field is converted during translation, see onc_translator_*. |
| 287 // { ::onc::cellular::kFoundNetworks, shill::kFoundNetworksProperty}, |
267 { ::onc::cellular::kHardwareRevision, shill::kHardwareRevisionProperty}, | 288 { ::onc::cellular::kHardwareRevision, shill::kHardwareRevisionProperty}, |
268 { ::onc::cellular::kHomeProvider, shill::kHomeProviderProperty}, | 289 { ::onc::cellular::kHomeProvider, shill::kHomeProviderProperty}, |
269 { ::onc::cellular::kICCID, shill::kIccidProperty}, | 290 { ::onc::cellular::kICCID, shill::kIccidProperty}, |
270 { ::onc::cellular::kIMEI, shill::kImeiProperty}, | 291 { ::onc::cellular::kIMEI, shill::kImeiProperty}, |
271 { ::onc::cellular::kIMSI, shill::kImsiProperty}, | 292 { ::onc::cellular::kIMSI, shill::kImsiProperty}, |
272 { ::onc::cellular::kManufacturer, shill::kManufacturerProperty}, | 293 { ::onc::cellular::kManufacturer, shill::kManufacturerProperty}, |
273 { ::onc::cellular::kMDN, shill::kMdnProperty}, | 294 { ::onc::cellular::kMDN, shill::kMdnProperty}, |
274 { ::onc::cellular::kMEID, shill::kMeidProperty}, | 295 { ::onc::cellular::kMEID, shill::kMeidProperty}, |
275 { ::onc::cellular::kMIN, shill::kMinProperty}, | 296 { ::onc::cellular::kMIN, shill::kMinProperty}, |
276 { ::onc::cellular::kModelID, shill::kModelIDProperty}, | 297 { ::onc::cellular::kModelID, shill::kModelIDProperty}, |
277 { ::onc::cellular::kPRLVersion, shill::kPRLVersionProperty}, | 298 { ::onc::cellular::kPRLVersion, shill::kPRLVersionProperty}, |
278 { ::onc::cellular::kProviderRequiresRoaming, | 299 { ::onc::cellular::kProviderRequiresRoaming, |
279 shill::kProviderRequiresRoamingProperty}, | 300 shill::kProviderRequiresRoamingProperty}, |
280 { ::onc::cellular::kSelectedNetwork, shill::kSelectedNetworkProperty}, | 301 { ::onc::cellular::kSelectedNetwork, shill::kSelectedNetworkProperty}, |
281 { ::onc::cellular::kSIMLockEnabled, shill::kSIMLockEnabledProperty}, | 302 // This field is converted during translation, see onc_translator_*. |
282 { ::onc::cellular::kSIMLockStatus, shill::kSIMLockStatusProperty}, | 303 // { ::onc::cellular::kSIMLockStatus, shill::kSIMLockStatusProperty}, |
283 { ::onc::cellular::kSIMLockType, shill::kSIMLockTypeProperty}, | |
284 { ::onc::cellular::kSIMPresent, shill::kSIMPresentProperty}, | 304 { ::onc::cellular::kSIMPresent, shill::kSIMPresentProperty}, |
285 { ::onc::cellular::kSupportedCarriers, shill::kSupportedCarriersProperty}, | 305 { ::onc::cellular::kSupportedCarriers, shill::kSupportedCarriersProperty}, |
286 { ::onc::cellular::kSupportNetworkScan, shill::kSupportNetworkScanProperty}, | 306 { ::onc::cellular::kSupportNetworkScan, shill::kSupportNetworkScanProperty}, |
287 {NULL}}; | 307 {NULL}}; |
288 | 308 |
289 const FieldTranslationEntry* GetFieldTranslationTable( | 309 const FieldTranslationEntry* GetFieldTranslationTable( |
290 const OncValueSignature& onc_signature) { | 310 const OncValueSignature& onc_signature) { |
291 for (const OncValueTranslationEntry* it = onc_value_translation_table; | 311 for (const OncValueTranslationEntry* it = onc_value_translation_table; |
292 it->onc_signature != NULL; ++it) { | 312 it->onc_signature != NULL; ++it) { |
293 if (it->onc_signature == &onc_signature) | 313 if (it->onc_signature == &onc_signature) |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
346 continue; | 366 continue; |
347 *onc_value = table[i].onc_value; | 367 *onc_value = table[i].onc_value; |
348 return true; | 368 return true; |
349 } | 369 } |
350 LOG(ERROR) << "Value '" << shill_value << "' cannot be translated to ONC"; | 370 LOG(ERROR) << "Value '" << shill_value << "' cannot be translated to ONC"; |
351 return false; | 371 return false; |
352 } | 372 } |
353 | 373 |
354 } // namespace onc | 374 } // namespace onc |
355 } // namespace chromeos | 375 } // namespace chromeos |
OLD | NEW |