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

Side by Side Diff: chromeos/network/onc/onc_signature.cc

Issue 402953004: Correctly translate Cellular Device properties to ONC (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Restore cellular_with_state signature, add nested ShillToONCTranslator constructor, update tests Created 6 years, 4 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
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_signature.h" 5 #include "chromeos/network/onc/onc_signature.h"
6 6
7 #include "components/onc/onc_constants.h" 7 #include "components/onc/onc_constants.h"
8 #include "third_party/cros_system_api/dbus/service_constants.h" 8 #include "third_party/cros_system_api/dbus/service_constants.h"
9 9
10 using base::Value; 10 using base::Value;
11 11
12 namespace chromeos { 12 namespace chromeos {
13 namespace onc { 13 namespace onc {
14 namespace { 14 namespace {
15 15
16 const OncValueSignature kBoolSignature = { 16 const OncValueSignature kBoolSignature = {
17 base::Value::TYPE_BOOLEAN, NULL 17 base::Value::TYPE_BOOLEAN, NULL
18 }; 18 };
19 const OncValueSignature kStringSignature = { 19 const OncValueSignature kStringSignature = {
20 base::Value::TYPE_STRING, NULL 20 base::Value::TYPE_STRING, NULL
21 }; 21 };
22 const OncValueSignature kIntegerSignature = { 22 const OncValueSignature kIntegerSignature = {
23 base::Value::TYPE_INTEGER, NULL 23 base::Value::TYPE_INTEGER, NULL
24 }; 24 };
25 const OncValueSignature kDoubleSignature = {
26 base::Value::TYPE_DOUBLE, NULL
27 };
25 const OncValueSignature kStringListSignature = { 28 const OncValueSignature kStringListSignature = {
26 base::Value::TYPE_LIST, NULL, &kStringSignature 29 base::Value::TYPE_LIST, NULL, &kStringSignature
27 }; 30 };
28 const OncValueSignature kIntegerListSignature = { 31 const OncValueSignature kIntegerListSignature = {
29 base::Value::TYPE_LIST, NULL, &kIntegerSignature 32 base::Value::TYPE_LIST, NULL, &kIntegerSignature
30 }; 33 };
31 const OncValueSignature kIPConfigListSignature = { 34 const OncValueSignature kIPConfigListSignature = {
32 base::Value::TYPE_LIST, NULL, &kIPConfigSignature 35 base::Value::TYPE_LIST, NULL, &kIPConfigSignature
33 }; 36 };
34 const OncValueSignature kCellularApnListSignature = { 37 const OncValueSignature kCellularApnListSignature = {
35 base::Value::TYPE_LIST, NULL, &kCellularApnSignature 38 base::Value::TYPE_LIST, NULL, &kCellularApnSignature
36 }; 39 };
40 const OncValueSignature kCellularFoundNetworkListSignature = {
41 base::Value::TYPE_LIST, NULL, &kCellularFoundNetworkSignature
42 };
37 43
38 const OncFieldSignature issuer_subject_pattern_fields[] = { 44 const OncFieldSignature issuer_subject_pattern_fields[] = {
39 { ::onc::client_cert::kCommonName, &kStringSignature}, 45 { ::onc::client_cert::kCommonName, &kStringSignature},
40 { ::onc::client_cert::kLocality, &kStringSignature}, 46 { ::onc::client_cert::kLocality, &kStringSignature},
41 { ::onc::client_cert::kOrganization, &kStringSignature}, 47 { ::onc::client_cert::kOrganization, &kStringSignature},
42 { ::onc::client_cert::kOrganizationalUnit, &kStringSignature}, 48 { ::onc::client_cert::kOrganizationalUnit, &kStringSignature},
43 {NULL}}; 49 {NULL}};
44 50
45 const OncFieldSignature certificate_pattern_fields[] = { 51 const OncFieldSignature certificate_pattern_fields[] = {
46 { ::onc::kRecommended, &kRecommendedSignature}, 52 { ::onc::kRecommended, &kRecommendedSignature},
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 const OncFieldSignature cellular_provider_fields[] = { 219 const OncFieldSignature cellular_provider_fields[] = {
214 { ::onc::cellular_provider::kCode, &kStringSignature}, 220 { ::onc::cellular_provider::kCode, &kStringSignature},
215 { ::onc::cellular_provider::kCountry, &kStringSignature}, 221 { ::onc::cellular_provider::kCountry, &kStringSignature},
216 { ::onc::cellular_provider::kName, &kStringSignature}, 222 { ::onc::cellular_provider::kName, &kStringSignature},
217 {NULL}}; 223 {NULL}};
218 224
219 const OncFieldSignature cellular_apn_fields[] = { 225 const OncFieldSignature cellular_apn_fields[] = {
220 { ::onc::cellular_apn::kName, &kStringSignature}, 226 { ::onc::cellular_apn::kName, &kStringSignature},
221 { ::onc::cellular_apn::kUsername, &kStringSignature}, 227 { ::onc::cellular_apn::kUsername, &kStringSignature},
222 { ::onc::cellular_apn::kPassword, &kStringSignature}, 228 { ::onc::cellular_apn::kPassword, &kStringSignature},
229 { ::onc::cellular_apn::kLocalizedName, &kStringSignature},
230 { ::onc::cellular_apn::kLanguage, &kStringSignature},
231 {NULL}};
232
233 const OncFieldSignature cellular_found_network_fields[] = {
234 { ::onc::cellular_found_network::kStatus, &kStringSignature},
235 { ::onc::cellular_found_network::kNetworkId, &kStringSignature},
236 { ::onc::cellular_found_network::kShortName, &kStringSignature},
237 { ::onc::cellular_found_network::kLongName, &kStringSignature},
238 { ::onc::cellular_found_network::kTechnology, &kStringSignature},
239 {NULL}};
240
241 const OncFieldSignature sim_lock_status_fields[] = {
242 { ::onc::sim_lock_status::kLockEnabled, &kBoolSignature},
243 { ::onc::sim_lock_status::kLockType, &kStringSignature},
244 { ::onc::sim_lock_status::kRetriesLeft, &kDoubleSignature},
223 {NULL}}; 245 {NULL}};
224 246
225 const OncFieldSignature cellular_fields[] = { 247 const OncFieldSignature cellular_fields[] = {
226 { ::onc::kRecommended, &kRecommendedSignature}, 248 { ::onc::kRecommended, &kRecommendedSignature},
227 { ::onc::cellular::kAPN, &kCellularApnSignature }, 249 { ::onc::cellular::kAPN, &kCellularApnSignature },
228 { ::onc::cellular::kAPNList, &kCellularApnListSignature}, 250 { ::onc::cellular::kAPNList, &kCellularApnListSignature},
229 {NULL}}; 251 {NULL}};
230 252
231 const OncFieldSignature cellular_with_state_fields[] = { 253 const OncFieldSignature cellular_with_state_fields[] = {
232 { ::onc::cellular::kActivateOverNonCellularNetwork, &kBoolSignature}, 254 { ::onc::cellular::kActivateOverNonCellularNetwork, &kBoolSignature},
233 { ::onc::cellular::kActivationState, &kStringSignature}, 255 { ::onc::cellular::kActivationState, &kStringSignature},
234 { ::onc::cellular::kAllowRoaming, &kBoolSignature}, 256 { ::onc::cellular::kAllowRoaming, &kBoolSignature},
235 { ::onc::cellular::kCarrier, &kStringSignature}, 257 { ::onc::cellular::kCarrier, &kStringSignature},
236 { ::onc::cellular::kESN, &kStringSignature}, 258 { ::onc::cellular::kESN, &kStringSignature},
237 { ::onc::cellular::kFamily, &kStringSignature}, 259 { ::onc::cellular::kFamily, &kStringSignature},
238 { ::onc::cellular::kFirmwareRevision, &kStringSignature}, 260 { ::onc::cellular::kFirmwareRevision, &kStringSignature},
239 { ::onc::cellular::kFoundNetworks, &kStringSignature}, 261 { ::onc::cellular::kFoundNetworks, &kCellularFoundNetworkListSignature},
240 { ::onc::cellular::kHardwareRevision, &kStringSignature}, 262 { ::onc::cellular::kHardwareRevision, &kStringSignature},
241 { ::onc::cellular::kHomeProvider, &kCellularProviderSignature}, 263 { ::onc::cellular::kHomeProvider, &kCellularProviderSignature},
242 { ::onc::cellular::kICCID, &kStringSignature}, 264 { ::onc::cellular::kICCID, &kStringSignature},
243 { ::onc::cellular::kIMEI, &kStringSignature}, 265 { ::onc::cellular::kIMEI, &kStringSignature},
244 { ::onc::cellular::kIMSI, &kStringSignature}, 266 { ::onc::cellular::kIMSI, &kStringSignature},
245 { ::onc::cellular::kManufacturer, &kStringSignature}, 267 { ::onc::cellular::kManufacturer, &kStringSignature},
246 { ::onc::cellular::kMDN, &kStringSignature}, 268 { ::onc::cellular::kMDN, &kStringSignature},
247 { ::onc::cellular::kMEID, &kStringSignature}, 269 { ::onc::cellular::kMEID, &kStringSignature},
248 { ::onc::cellular::kMIN, &kStringSignature}, 270 { ::onc::cellular::kMIN, &kStringSignature},
249 { ::onc::cellular::kModelID, &kStringSignature}, 271 { ::onc::cellular::kModelID, &kStringSignature},
250 { ::onc::cellular::kNetworkTechnology, &kStringSignature}, 272 { ::onc::cellular::kNetworkTechnology, &kStringSignature},
251 { ::onc::cellular::kPRLVersion, &kStringSignature}, 273 { ::onc::cellular::kPRLVersion, &kIntegerSignature},
252 { ::onc::cellular::kProviderRequiresRoaming, &kBoolSignature}, 274 { ::onc::cellular::kProviderRequiresRoaming, &kBoolSignature},
253 { ::onc::cellular::kRoamingState, &kStringSignature}, 275 { ::onc::cellular::kRoamingState, &kStringSignature},
254 { ::onc::cellular::kSelectedNetwork, &kStringSignature}, 276 { ::onc::cellular::kSelectedNetwork, &kStringSignature},
255 { ::onc::cellular::kServingOperator, &kCellularProviderSignature}, 277 { ::onc::cellular::kServingOperator, &kCellularProviderSignature},
256 { ::onc::cellular::kSIMLockEnabled, &kBoolSignature}, 278 { ::onc::cellular::kSIMLockStatus, &kSIMLockStatusSignature},
257 { ::onc::cellular::kSIMLockStatus, &kStringSignature}, 279 { ::onc::cellular::kSIMPresent, &kBoolSignature},
258 { ::onc::cellular::kSIMLockType, &kStringSignature}, 280 { ::onc::cellular::kSupportNetworkScan, &kBoolSignature},
259 { ::onc::cellular::kSIMPresent, &kStringSignature}, 281 { ::onc::cellular::kSupportedCarriers, &kStringListSignature},
260 { ::onc::cellular::kSupportedCarriers, &kStringSignature},
261 { ::onc::cellular::kSupportNetworkScan, &kStringSignature},
262 {NULL}}; 282 {NULL}};
263 283
264 const OncFieldSignature network_configuration_fields[] = { 284 const OncFieldSignature network_configuration_fields[] = {
265 { ::onc::kRecommended, &kRecommendedSignature}, 285 { ::onc::kRecommended, &kRecommendedSignature},
266 { ::onc::network_config::kEthernet, &kEthernetSignature}, 286 { ::onc::network_config::kEthernet, &kEthernetSignature},
267 { ::onc::network_config::kGUID, &kStringSignature}, 287 { ::onc::network_config::kGUID, &kStringSignature},
268 // Not supported for policy but for reading network state. 288 // Not supported for policy but for reading network state.
269 { ::onc::network_config::kIPConfigs, &kIPConfigListSignature}, 289 { ::onc::network_config::kIPConfigs, &kIPConfigListSignature},
270 { ::onc::network_config::kName, &kStringSignature}, 290 { ::onc::network_config::kName, &kStringSignature},
271 // Not supported, yet. 291 // Not supported, yet.
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
402 const OncValueSignature kCellularWithStateSignature = { 422 const OncValueSignature kCellularWithStateSignature = {
403 base::Value::TYPE_DICTIONARY, cellular_with_state_fields, NULL, 423 base::Value::TYPE_DICTIONARY, cellular_with_state_fields, NULL,
404 &kCellularSignature 424 &kCellularSignature
405 }; 425 };
406 const OncValueSignature kCellularProviderSignature = { 426 const OncValueSignature kCellularProviderSignature = {
407 base::Value::TYPE_DICTIONARY, cellular_provider_fields, NULL 427 base::Value::TYPE_DICTIONARY, cellular_provider_fields, NULL
408 }; 428 };
409 const OncValueSignature kCellularApnSignature = { 429 const OncValueSignature kCellularApnSignature = {
410 base::Value::TYPE_DICTIONARY, cellular_apn_fields, NULL 430 base::Value::TYPE_DICTIONARY, cellular_apn_fields, NULL
411 }; 431 };
432 const OncValueSignature kCellularFoundNetworkSignature = {
433 base::Value::TYPE_DICTIONARY, cellular_found_network_fields, NULL
434 };
435 const OncValueSignature kSIMLockStatusSignature = {
436 base::Value::TYPE_DICTIONARY, sim_lock_status_fields, NULL
437 };
412 438
413 const OncFieldSignature* GetFieldSignature(const OncValueSignature& signature, 439 const OncFieldSignature* GetFieldSignature(const OncValueSignature& signature,
414 const std::string& onc_field_name) { 440 const std::string& onc_field_name) {
415 if (!signature.fields) 441 if (!signature.fields)
416 return NULL; 442 return NULL;
417 for (const OncFieldSignature* field_signature = signature.fields; 443 for (const OncFieldSignature* field_signature = signature.fields;
418 field_signature->onc_field_name != NULL; ++field_signature) { 444 field_signature->onc_field_name != NULL; ++field_signature) {
419 if (onc_field_name == field_signature->onc_field_name) 445 if (onc_field_name == field_signature->onc_field_name)
420 return field_signature; 446 return field_signature;
421 } 447 }
(...skipping 29 matching lines...) Expand all
451 if (&signature == entry->value_signature && 477 if (&signature == entry->value_signature &&
452 onc_field_name == entry->field_name) { 478 onc_field_name == entry->field_name) {
453 return true; 479 return true;
454 } 480 }
455 } 481 }
456 return false; 482 return false;
457 } 483 }
458 484
459 } // namespace onc 485 } // namespace onc
460 } // namespace chromeos 486 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698