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_signature.h" | 5 #include "chromeos/network/onc/onc_signature.h" |
6 | 6 |
7 #include "chromeos/network/onc/onc_constants.h" | 7 #include "chromeos/network/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; |
(...skipping 27 matching lines...) Expand all Loading... |
38 { certificate::kOrganization, &kStringSignature }, | 38 { certificate::kOrganization, &kStringSignature }, |
39 { certificate::kOrganizationalUnit, &kStringSignature }, | 39 { certificate::kOrganizationalUnit, &kStringSignature }, |
40 { NULL } | 40 { NULL } |
41 }; | 41 }; |
42 | 42 |
43 const OncFieldSignature certificate_pattern_fields[] = { | 43 const OncFieldSignature certificate_pattern_fields[] = { |
44 { kRecommended, &kRecommendedSignature }, | 44 { kRecommended, &kRecommendedSignature }, |
45 { certificate::kEnrollmentURI, &kStringListSignature }, | 45 { certificate::kEnrollmentURI, &kStringListSignature }, |
46 { certificate::kIssuer, &kIssuerSubjectPatternSignature }, | 46 { certificate::kIssuer, &kIssuerSubjectPatternSignature }, |
47 { certificate::kIssuerCARef, &kStringListSignature }, | 47 { certificate::kIssuerCARef, &kStringListSignature }, |
| 48 { certificate::kIssuerCAPEMs, &kStringListSignature }, |
48 { certificate::kSubject, &kIssuerSubjectPatternSignature }, | 49 { certificate::kSubject, &kIssuerSubjectPatternSignature }, |
49 { NULL } | 50 { NULL } |
50 }; | 51 }; |
51 | 52 |
52 const OncFieldSignature eap_fields[] = { | 53 const OncFieldSignature eap_fields[] = { |
53 { kRecommended, &kRecommendedSignature }, | 54 { kRecommended, &kRecommendedSignature }, |
54 { eap::kAnonymousIdentity, &kStringSignature }, | 55 { eap::kAnonymousIdentity, &kStringSignature }, |
55 { eap::kClientCertPattern, &kCertificatePatternSignature }, | 56 { eap::kClientCertPattern, &kCertificatePatternSignature }, |
56 { eap::kClientCertRef, &kStringSignature }, | 57 { eap::kClientCertRef, &kStringSignature }, |
57 { eap::kClientCertType, &kStringSignature }, | 58 { eap::kClientCertType, &kStringSignature }, |
58 { eap::kIdentity, &kStringSignature }, | 59 { eap::kIdentity, &kStringSignature }, |
59 { eap::kInner, &kStringSignature }, | 60 { eap::kInner, &kStringSignature }, |
60 { eap::kOuter, &kStringSignature }, | 61 { eap::kOuter, &kStringSignature }, |
61 { eap::kPassword, &kStringSignature }, | 62 { eap::kPassword, &kStringSignature }, |
62 { eap::kSaveCredentials, &kBoolSignature }, | 63 { eap::kSaveCredentials, &kBoolSignature }, |
| 64 { eap::kServerCAPEMs, &kStringListSignature }, |
63 { eap::kServerCARef, &kStringSignature }, | 65 { eap::kServerCARef, &kStringSignature }, |
64 { eap::kUseSystemCAs, &kBoolSignature }, | 66 { eap::kUseSystemCAs, &kBoolSignature }, |
65 { NULL } | 67 { NULL } |
66 }; | 68 }; |
67 | 69 |
68 const OncFieldSignature ipsec_fields[] = { | 70 const OncFieldSignature ipsec_fields[] = { |
69 { kRecommended, &kRecommendedSignature }, | 71 { kRecommended, &kRecommendedSignature }, |
70 { vpn::kAuthenticationType, &kStringSignature }, | 72 { ipsec::kAuthenticationType, &kStringSignature }, |
71 { vpn::kClientCertPattern, &kCertificatePatternSignature }, | 73 { vpn::kClientCertPattern, &kCertificatePatternSignature }, |
72 { vpn::kClientCertRef, &kStringSignature }, | 74 { vpn::kClientCertRef, &kStringSignature }, |
73 { vpn::kClientCertType, &kStringSignature }, | 75 { vpn::kClientCertType, &kStringSignature }, |
74 { vpn::kGroup, &kStringSignature }, | 76 { ipsec::kGroup, &kStringSignature }, |
75 { vpn::kIKEVersion, &kIntegerSignature }, | 77 { ipsec::kIKEVersion, &kIntegerSignature }, |
76 { vpn::kPSK, &kStringSignature }, | 78 { ipsec::kPSK, &kStringSignature }, |
77 { vpn::kSaveCredentials, &kBoolSignature }, | 79 { vpn::kSaveCredentials, &kBoolSignature }, |
78 { vpn::kServerCARef, &kStringSignature }, | 80 { ipsec::kServerCAPEMs, &kStringSignature }, |
| 81 { ipsec::kServerCARef, &kStringSignature }, |
79 // Not yet supported. | 82 // Not yet supported. |
80 // { vpn::kEAP, &kEAPSignature }, | 83 // { ipsec::kEAP, &kEAPSignature }, |
81 // { vpn::kXAUTH, &kXAUTHSignature }, | 84 // { ipsec::kXAUTH, &kXAUTHSignature }, |
82 { NULL } | 85 { NULL } |
83 }; | 86 }; |
84 | 87 |
85 const OncFieldSignature l2tp_fields[] = { | 88 const OncFieldSignature l2tp_fields[] = { |
86 { kRecommended, &kRecommendedSignature }, | 89 { kRecommended, &kRecommendedSignature }, |
87 { vpn::kPassword, &kStringSignature }, | 90 { vpn::kPassword, &kStringSignature }, |
88 { vpn::kSaveCredentials, &kBoolSignature }, | 91 { vpn::kSaveCredentials, &kBoolSignature }, |
89 { vpn::kUsername, &kStringSignature }, | 92 { vpn::kUsername, &kStringSignature }, |
90 { NULL } | 93 { NULL } |
91 }; | 94 }; |
(...skipping 13 matching lines...) Expand all Loading... |
105 { vpn::kNsCertType, &kStringSignature }, | 108 { vpn::kNsCertType, &kStringSignature }, |
106 { vpn::kPassword, &kStringSignature }, | 109 { vpn::kPassword, &kStringSignature }, |
107 { vpn::kPort, &kIntegerSignature }, | 110 { vpn::kPort, &kIntegerSignature }, |
108 { vpn::kProto, &kStringSignature }, | 111 { vpn::kProto, &kStringSignature }, |
109 { vpn::kPushPeerInfo, &kBoolSignature }, | 112 { vpn::kPushPeerInfo, &kBoolSignature }, |
110 { vpn::kRemoteCertEKU, &kStringSignature }, | 113 { vpn::kRemoteCertEKU, &kStringSignature }, |
111 { vpn::kRemoteCertKU, &kStringListSignature }, | 114 { vpn::kRemoteCertKU, &kStringListSignature }, |
112 { vpn::kRemoteCertTLS, &kStringSignature }, | 115 { vpn::kRemoteCertTLS, &kStringSignature }, |
113 { vpn::kRenegSec, &kIntegerSignature }, | 116 { vpn::kRenegSec, &kIntegerSignature }, |
114 { vpn::kSaveCredentials, &kBoolSignature }, | 117 { vpn::kSaveCredentials, &kBoolSignature }, |
115 { vpn::kServerCARef, &kStringSignature }, | 118 { openvpn::kServerCAPEMs, &kStringListSignature }, |
| 119 { openvpn::kServerCARef, &kStringSignature }, |
116 // Not supported, yet. | 120 // Not supported, yet. |
| 121 { vpn::kServerCertPEM, &kStringSignature }, |
117 { vpn::kServerCertRef, &kStringSignature }, | 122 { vpn::kServerCertRef, &kStringSignature }, |
118 { vpn::kServerPollTimeout, &kIntegerSignature }, | 123 { vpn::kServerPollTimeout, &kIntegerSignature }, |
119 { vpn::kShaper, &kIntegerSignature }, | 124 { vpn::kShaper, &kIntegerSignature }, |
120 { vpn::kStaticChallenge, &kStringSignature }, | 125 { vpn::kStaticChallenge, &kStringSignature }, |
121 { vpn::kTLSAuthContents, &kStringSignature }, | 126 { vpn::kTLSAuthContents, &kStringSignature }, |
122 { vpn::kTLSRemote, &kStringSignature }, | 127 { vpn::kTLSRemote, &kStringSignature }, |
123 { vpn::kUsername, &kStringSignature }, | 128 { vpn::kUsername, &kStringSignature }, |
124 // Not supported, yet. | 129 // Not supported, yet. |
125 { vpn::kVerb, &kStringSignature }, | 130 { vpn::kVerb, &kStringSignature }, |
126 { NULL } | 131 { NULL } |
(...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
374 | 379 |
375 namespace { | 380 namespace { |
376 | 381 |
377 struct CredentialEntry { | 382 struct CredentialEntry { |
378 const OncValueSignature* value_signature; | 383 const OncValueSignature* value_signature; |
379 const char* field_name; | 384 const char* field_name; |
380 }; | 385 }; |
381 | 386 |
382 const CredentialEntry credentials[] = { | 387 const CredentialEntry credentials[] = { |
383 { &kEAPSignature, onc::eap::kPassword }, | 388 { &kEAPSignature, onc::eap::kPassword }, |
384 { &kIPsecSignature, onc::vpn::kPSK }, | 389 { &kIPsecSignature, onc::ipsec::kPSK }, |
385 { &kL2TPSignature, onc::vpn::kPassword }, | 390 { &kL2TPSignature, onc::vpn::kPassword }, |
386 { &kOpenVPNSignature, onc::vpn::kPassword }, | 391 { &kOpenVPNSignature, onc::vpn::kPassword }, |
387 { &kOpenVPNSignature, onc::vpn::kTLSAuthContents }, | 392 { &kOpenVPNSignature, onc::vpn::kTLSAuthContents }, |
388 { &kWiFiSignature, onc::wifi::kPassphrase }, | 393 { &kWiFiSignature, onc::wifi::kPassphrase }, |
389 { NULL } | 394 { NULL } |
390 }; | 395 }; |
391 | 396 |
392 } // namespace | 397 } // namespace |
393 | 398 |
394 bool FieldIsCredential(const OncValueSignature& signature, | 399 bool FieldIsCredential(const OncValueSignature& signature, |
395 const std::string& onc_field_name) { | 400 const std::string& onc_field_name) { |
396 for (const CredentialEntry* entry = credentials; | 401 for (const CredentialEntry* entry = credentials; |
397 entry->value_signature != NULL; ++entry) { | 402 entry->value_signature != NULL; ++entry) { |
398 if (&signature == entry->value_signature && | 403 if (&signature == entry->value_signature && |
399 onc_field_name == entry->field_name) { | 404 onc_field_name == entry->field_name) { |
400 return true; | 405 return true; |
401 } | 406 } |
402 } | 407 } |
403 return false; | 408 return false; |
404 } | 409 } |
405 | 410 |
406 } // namespace onc | 411 } // namespace onc |
407 } // namespace chromeos | 412 } // namespace chromeos |
OLD | NEW |