[Session restore] Rename group name Enabled to Restore.
[chromium-blink-merge.git] / chromeos / network / onc / onc_signature.h
blobd0c9e508a9d87291df38002b8bbd8ecb898cae12
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
3 // found in the LICENSE file.
5 #ifndef CHROMEOS_NETWORK_ONC_ONC_SIGNATURE_H_
6 #define CHROMEOS_NETWORK_ONC_ONC_SIGNATURE_H_
8 #include <string>
10 #include "base/values.h"
11 #include "chromeos/chromeos_export.h"
13 namespace chromeos {
14 namespace onc {
16 struct OncValueSignature;
18 struct OncFieldSignature {
19 const char* onc_field_name;
20 const OncValueSignature* value_signature;
23 struct CHROMEOS_EXPORT OncValueSignature {
24 base::Value::Type onc_type;
25 const OncFieldSignature* fields;
26 const OncValueSignature* onc_array_entry_signature;
27 const OncValueSignature* base_signature;
30 CHROMEOS_EXPORT const OncFieldSignature* GetFieldSignature(
31 const OncValueSignature& signature,
32 const std::string& onc_field_name);
34 CHROMEOS_EXPORT bool FieldIsCredential(const OncValueSignature& signature,
35 const std::string& onc_field_name);
37 CHROMEOS_EXPORT extern const OncValueSignature kRecommendedSignature;
38 CHROMEOS_EXPORT extern const OncValueSignature kEAPSignature;
39 CHROMEOS_EXPORT extern const OncValueSignature kIssuerSubjectPatternSignature;
40 CHROMEOS_EXPORT extern const OncValueSignature kCertificatePatternSignature;
41 CHROMEOS_EXPORT extern const OncValueSignature kIPsecSignature;
42 CHROMEOS_EXPORT extern const OncValueSignature kL2TPSignature;
43 CHROMEOS_EXPORT extern const OncValueSignature kXAUTHSignature;
44 CHROMEOS_EXPORT extern const OncValueSignature kOpenVPNSignature;
45 CHROMEOS_EXPORT extern const OncValueSignature kThirdPartyVPNSignature;
46 CHROMEOS_EXPORT extern const OncValueSignature kVerifyX509Signature;
47 CHROMEOS_EXPORT extern const OncValueSignature kVPNSignature;
48 CHROMEOS_EXPORT extern const OncValueSignature kEthernetSignature;
49 CHROMEOS_EXPORT extern const OncValueSignature kIPConfigSignature;
50 CHROMEOS_EXPORT extern const OncValueSignature kSavedIPConfigSignature;
51 CHROMEOS_EXPORT extern const OncValueSignature kStaticIPConfigSignature;
52 CHROMEOS_EXPORT extern const OncValueSignature kProxyLocationSignature;
53 CHROMEOS_EXPORT extern const OncValueSignature kProxyManualSignature;
54 CHROMEOS_EXPORT extern const OncValueSignature kProxySettingsSignature;
55 CHROMEOS_EXPORT extern const OncValueSignature kWiFiSignature;
56 CHROMEOS_EXPORT extern const OncValueSignature kWiMAXSignature;
57 CHROMEOS_EXPORT extern const OncValueSignature kCertificateSignature;
58 CHROMEOS_EXPORT extern const OncValueSignature kNetworkConfigurationSignature;
59 CHROMEOS_EXPORT extern const OncValueSignature
60 kGlobalNetworkConfigurationSignature;
61 CHROMEOS_EXPORT extern const OncValueSignature kCertificateListSignature;
62 CHROMEOS_EXPORT extern const OncValueSignature
63 kNetworkConfigurationListSignature;
64 CHROMEOS_EXPORT extern const OncValueSignature kToplevelConfigurationSignature;
66 // Derived "ONC with State" signatures.
67 CHROMEOS_EXPORT extern const OncValueSignature kNetworkWithStateSignature;
68 CHROMEOS_EXPORT extern const OncValueSignature kWiFiWithStateSignature;
69 CHROMEOS_EXPORT extern const OncValueSignature kWiMAXWithStateSignature;
70 CHROMEOS_EXPORT extern const OncValueSignature kCellularSignature;
71 CHROMEOS_EXPORT extern const OncValueSignature kCellularWithStateSignature;
72 CHROMEOS_EXPORT extern const OncValueSignature kCellularProviderSignature;
73 CHROMEOS_EXPORT extern const OncValueSignature kCellularApnSignature;
74 CHROMEOS_EXPORT extern const OncValueSignature kCellularFoundNetworkSignature;
75 CHROMEOS_EXPORT extern const OncValueSignature kSIMLockStatusSignature;
77 } // namespace onc
78 } // namespace chromeos
80 #endif // CHROMEOS_NETWORK_ONC_ONC_SIGNATURE_H_