| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #ifndef CHROME_BROWSER_CHROMEOS_CROS_NETWORK_LIBRARY_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_CROS_NETWORK_LIBRARY_H_ |
| 6 #define CHROME_BROWSER_CHROMEOS_CROS_NETWORK_LIBRARY_H_ | 6 #define CHROME_BROWSER_CHROMEOS_CROS_NETWORK_LIBRARY_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include <map> | 9 #include <map> |
| 10 #include <string> | 10 #include <string> |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 83 PROPERTY_INDEX_FIRMWARE_REVISION, | 83 PROPERTY_INDEX_FIRMWARE_REVISION, |
| 84 PROPERTY_INDEX_FOUND_NETWORKS, | 84 PROPERTY_INDEX_FOUND_NETWORKS, |
| 85 PROPERTY_INDEX_GUID, | 85 PROPERTY_INDEX_GUID, |
| 86 PROPERTY_INDEX_HARDWARE_REVISION, | 86 PROPERTY_INDEX_HARDWARE_REVISION, |
| 87 PROPERTY_INDEX_HIDDEN_SSID, | 87 PROPERTY_INDEX_HIDDEN_SSID, |
| 88 PROPERTY_INDEX_HOME_PROVIDER, | 88 PROPERTY_INDEX_HOME_PROVIDER, |
| 89 PROPERTY_INDEX_HOST, | 89 PROPERTY_INDEX_HOST, |
| 90 PROPERTY_INDEX_IDENTITY, | 90 PROPERTY_INDEX_IDENTITY, |
| 91 PROPERTY_INDEX_IMEI, | 91 PROPERTY_INDEX_IMEI, |
| 92 PROPERTY_INDEX_IMSI, | 92 PROPERTY_INDEX_IMSI, |
| 93 PROPERTY_INDEX_IPSEC_AUTHENTICATIONTYPE, |
| 94 PROPERTY_INDEX_IPSEC_IKEVERSION, |
| 93 PROPERTY_INDEX_IS_ACTIVE, | 95 PROPERTY_INDEX_IS_ACTIVE, |
| 94 PROPERTY_INDEX_L2TPIPSEC_CA_CERT_NSS, | 96 PROPERTY_INDEX_L2TPIPSEC_CA_CERT_NSS, |
| 95 PROPERTY_INDEX_L2TPIPSEC_CLIENT_CERT_ID, | 97 PROPERTY_INDEX_L2TPIPSEC_CLIENT_CERT_ID, |
| 96 PROPERTY_INDEX_L2TPIPSEC_CLIENT_CERT_SLOT, | 98 PROPERTY_INDEX_L2TPIPSEC_CLIENT_CERT_SLOT, |
| 97 PROPERTY_INDEX_L2TPIPSEC_PASSWORD, | 99 PROPERTY_INDEX_L2TPIPSEC_PASSWORD, |
| 98 PROPERTY_INDEX_L2TPIPSEC_PIN, | 100 PROPERTY_INDEX_L2TPIPSEC_PIN, |
| 99 PROPERTY_INDEX_L2TPIPSEC_PSK, | 101 PROPERTY_INDEX_L2TPIPSEC_PSK, |
| 100 PROPERTY_INDEX_L2TPIPSEC_USER, | 102 PROPERTY_INDEX_L2TPIPSEC_USER, |
| 101 PROPERTY_INDEX_L2TPIPSEC_GROUP_NAME, | 103 PROPERTY_INDEX_L2TPIPSEC_GROUP_NAME, |
| 102 PROPERTY_INDEX_MANUFACTURER, | 104 PROPERTY_INDEX_MANUFACTURER, |
| 103 PROPERTY_INDEX_MDN, | 105 PROPERTY_INDEX_MDN, |
| 104 PROPERTY_INDEX_MEID, | 106 PROPERTY_INDEX_MEID, |
| 105 PROPERTY_INDEX_MIN, | 107 PROPERTY_INDEX_MIN, |
| 106 PROPERTY_INDEX_MODE, | 108 PROPERTY_INDEX_MODE, |
| 107 PROPERTY_INDEX_MODEL_ID, | 109 PROPERTY_INDEX_MODEL_ID, |
| 108 PROPERTY_INDEX_NAME, | 110 PROPERTY_INDEX_NAME, |
| 109 PROPERTY_INDEX_NETWORKS, | 111 PROPERTY_INDEX_NETWORKS, |
| 110 PROPERTY_INDEX_NETWORK_TECHNOLOGY, | 112 PROPERTY_INDEX_NETWORK_TECHNOLOGY, |
| 111 PROPERTY_INDEX_OFFLINE_MODE, | 113 PROPERTY_INDEX_OFFLINE_MODE, |
| 114 PROPERTY_INDEX_OLP, |
| 115 PROPERTY_INDEX_ONC_CLIENT_CERT_PATTERN, // Used internally for ONC parsing |
| 116 PROPERTY_INDEX_ONC_CLIENT_CERT_REF, // Used internally for ONC parsing |
| 117 PROPERTY_INDEX_ONC_CLIENT_CERT_TYPE, // Used internally for ONC parsing |
| 118 PROPERTY_INDEX_ONC_IPSEC, // Used internally for ONC parsing |
| 119 PROPERTY_INDEX_ONC_L2TP, // Used internally for ONC parsing |
| 120 PROPERTY_INDEX_ONC_OPENVPN, // Used internally for ONC parsing |
| 121 PROPERTY_INDEX_ONC_REMOVE, // Used internally for ONC parsing |
| 122 PROPERTY_INDEX_ONC_WIFI, // Used internally for ONC parsing |
| 123 PROPERTY_INDEX_ONC_VPN, // Used internally for ONC parsing |
| 124 PROPERTY_INDEX_OPEN_VPN_AUTH, |
| 125 PROPERTY_INDEX_OPEN_VPN_AUTHRETRY, |
| 126 PROPERTY_INDEX_OPEN_VPN_AUTHNOCACHE, |
| 127 PROPERTY_INDEX_OPEN_VPN_CACERT, |
| 128 PROPERTY_INDEX_OPEN_VPN_CERT, |
| 129 PROPERTY_INDEX_OPEN_VPN_CIPHER, |
| 130 PROPERTY_INDEX_OPEN_VPN_CLIENT_CERT_ID, |
| 131 PROPERTY_INDEX_OPEN_VPN_CLIENT_CERT_SLOT, |
| 132 PROPERTY_INDEX_OPEN_VPN_COMPLZO, |
| 133 PROPERTY_INDEX_OPEN_VPN_COMPNOADAPT, |
| 134 PROPERTY_INDEX_OPEN_VPN_KEYDIRECTION, |
| 135 PROPERTY_INDEX_OPEN_VPN_NSCERTTYPE, |
| 136 PROPERTY_INDEX_OPEN_VPN_OTP, |
| 137 PROPERTY_INDEX_OPEN_VPN_PASSWORD, |
| 138 PROPERTY_INDEX_OPEN_VPN_PIN, |
| 139 PROPERTY_INDEX_OPEN_VPN_PORT, |
| 140 PROPERTY_INDEX_OPEN_VPN_PROTO, |
| 141 PROPERTY_INDEX_OPEN_VPN_PKCS11_PROVIDER, |
| 142 PROPERTY_INDEX_OPEN_VPN_PUSHPEERINFO, |
| 143 PROPERTY_INDEX_OPEN_VPN_REMOTECERTEKU, |
| 144 PROPERTY_INDEX_OPEN_VPN_REMOTECERTKU, |
| 145 PROPERTY_INDEX_OPEN_VPN_REMOTECERTTLS, |
| 146 PROPERTY_INDEX_OPEN_VPN_RENEGSEC, |
| 147 PROPERTY_INDEX_OPEN_VPN_SERVERPOLLTIMEOUT, |
| 148 PROPERTY_INDEX_OPEN_VPN_SHAPER, |
| 149 PROPERTY_INDEX_OPEN_VPN_STATICCHALLENGE, |
| 150 PROPERTY_INDEX_OPEN_VPN_TLSAUTHCONTENTS, |
| 151 PROPERTY_INDEX_OPEN_VPN_TLSREMOTE, |
| 152 PROPERTY_INDEX_OPEN_VPN_USER, |
| 112 PROPERTY_INDEX_OPERATOR_CODE, | 153 PROPERTY_INDEX_OPERATOR_CODE, |
| 113 PROPERTY_INDEX_OPERATOR_NAME, | 154 PROPERTY_INDEX_OPERATOR_NAME, |
| 114 PROPERTY_INDEX_PASSPHRASE, | 155 PROPERTY_INDEX_PASSPHRASE, |
| 115 PROPERTY_INDEX_PASSPHRASE_REQUIRED, | 156 PROPERTY_INDEX_PASSPHRASE_REQUIRED, |
| 116 PROPERTY_INDEX_PORTAL_URL, | 157 PROPERTY_INDEX_PORTAL_URL, |
| 117 PROPERTY_INDEX_POWERED, | 158 PROPERTY_INDEX_POWERED, |
| 118 PROPERTY_INDEX_PRIORITY, | 159 PROPERTY_INDEX_PRIORITY, |
| 160 PROPERTY_INDEX_PROVIDER_TYPE, |
| 119 PROPERTY_INDEX_PRL_VERSION, | 161 PROPERTY_INDEX_PRL_VERSION, |
| 120 PROPERTY_INDEX_PROFILE, | 162 PROPERTY_INDEX_PROFILE, |
| 121 PROPERTY_INDEX_PROFILES, | 163 PROPERTY_INDEX_PROFILES, |
| 122 PROPERTY_INDEX_PROVIDER, | 164 PROPERTY_INDEX_PROVIDER, |
| 123 PROPERTY_INDEX_PROXY_CONFIG, | 165 PROPERTY_INDEX_PROXY_CONFIG, |
| 124 PROPERTY_INDEX_REMOVE, | |
| 125 PROPERTY_INDEX_ROAMING_STATE, | 166 PROPERTY_INDEX_ROAMING_STATE, |
| 126 PROPERTY_INDEX_SAVE_CREDENTIALS, | 167 PROPERTY_INDEX_SAVE_CREDENTIALS, |
| 127 PROPERTY_INDEX_SCANNING, | 168 PROPERTY_INDEX_SCANNING, |
| 128 PROPERTY_INDEX_SECURITY, | 169 PROPERTY_INDEX_SECURITY, |
| 129 PROPERTY_INDEX_SELECTED_NETWORK, | 170 PROPERTY_INDEX_SELECTED_NETWORK, |
| 130 PROPERTY_INDEX_SERVICES, | 171 PROPERTY_INDEX_SERVICES, |
| 131 PROPERTY_INDEX_SERVICE_WATCH_LIST, | 172 PROPERTY_INDEX_SERVICE_WATCH_LIST, |
| 132 PROPERTY_INDEX_SERVING_OPERATOR, | 173 PROPERTY_INDEX_SERVING_OPERATOR, |
| 133 PROPERTY_INDEX_SIGNAL_STRENGTH, | 174 PROPERTY_INDEX_SIGNAL_STRENGTH, |
| 134 PROPERTY_INDEX_SIM_LOCK, | 175 PROPERTY_INDEX_SIM_LOCK, |
| 135 PROPERTY_INDEX_SSID, | 176 PROPERTY_INDEX_SSID, |
| 136 PROPERTY_INDEX_STATE, | 177 PROPERTY_INDEX_STATE, |
| 137 PROPERTY_INDEX_SUPPORT_NETWORK_SCAN, | 178 PROPERTY_INDEX_SUPPORT_NETWORK_SCAN, |
| 138 PROPERTY_INDEX_TECHNOLOGY_FAMILY, | 179 PROPERTY_INDEX_TECHNOLOGY_FAMILY, |
| 139 PROPERTY_INDEX_TYPE, | 180 PROPERTY_INDEX_TYPE, |
| 140 PROPERTY_INDEX_UI_DATA, | 181 PROPERTY_INDEX_UI_DATA, |
| 141 PROPERTY_INDEX_UNKNOWN, | 182 PROPERTY_INDEX_UNKNOWN, |
| 142 PROPERTY_INDEX_USAGE_URL, | 183 PROPERTY_INDEX_USAGE_URL, |
| 143 PROPERTY_INDEX_OLP, | 184 PROPERTY_INDEX_VPN_DOMAIN, |
| 144 PROPERTY_INDEX_OPEN_VPN_USER, | |
| 145 PROPERTY_INDEX_OPEN_VPN_PASSWORD, | |
| 146 PROPERTY_INDEX_OPEN_VPN_CLIENT_CERT_ID, | |
| 147 PROPERTY_INDEX_WIFI_AUTH_MODE, | 185 PROPERTY_INDEX_WIFI_AUTH_MODE, |
| 148 PROPERTY_INDEX_WIFI_FREQUENCY, | 186 PROPERTY_INDEX_WIFI_FREQUENCY, |
| 149 PROPERTY_INDEX_WIFI_HEX_SSID, | 187 PROPERTY_INDEX_WIFI_HEX_SSID, |
| 150 PROPERTY_INDEX_WIFI_HIDDEN_SSID, | 188 PROPERTY_INDEX_WIFI_HIDDEN_SSID, |
| 151 PROPERTY_INDEX_WIFI_PHY_MODE, | 189 PROPERTY_INDEX_WIFI_PHY_MODE |
| 152 }; | 190 }; |
| 153 | 191 |
| 154 // Connection enums (see flimflam/include/service.h) | 192 // Connection enums (see flimflam/include/service.h) |
| 155 enum ConnectionType { | 193 enum ConnectionType { |
| 156 TYPE_UNKNOWN = 0, | 194 TYPE_UNKNOWN = 0, |
| 157 TYPE_ETHERNET = 1, | 195 TYPE_ETHERNET = 1, |
| 158 TYPE_WIFI = 2, | 196 TYPE_WIFI = 2, |
| 159 TYPE_WIMAX = 3, | 197 TYPE_WIMAX = 3, |
| 160 TYPE_BLUETOOTH = 4, | 198 TYPE_BLUETOOTH = 4, |
| 161 TYPE_CELLULAR = 5, | 199 TYPE_CELLULAR = 5, |
| (...skipping 499 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 661 state == STATE_IDLE || | 699 state == STATE_IDLE || |
| 662 state == STATE_DISCONNECT || | 700 state == STATE_DISCONNECT || |
| 663 state == STATE_FAILURE || | 701 state == STATE_FAILURE || |
| 664 state == STATE_ACTIVATION_FAILURE); | 702 state == STATE_ACTIVATION_FAILURE); |
| 665 } | 703 } |
| 666 | 704 |
| 667 virtual bool UpdateStatus(const std::string& key, | 705 virtual bool UpdateStatus(const std::string& key, |
| 668 const base::Value& value, | 706 const base::Value& value, |
| 669 PropertyIndex* index); | 707 PropertyIndex* index); |
| 670 | 708 |
| 709 // Retrieves a property from the property_map_. If |value| is NULL, |
| 710 // just returns whether or not the given property was found. |
| 711 bool GetProperty(PropertyIndex index, const base::Value** value) const; |
| 712 |
| 671 protected: | 713 protected: |
| 672 Network(const std::string& service_path, | 714 Network(const std::string& service_path, |
| 673 ConnectionType type); | 715 ConnectionType type); |
| 674 | 716 |
| 675 NetworkParser* network_parser() { return network_parser_.get(); } | 717 NetworkParser* network_parser() { return network_parser_.get(); } |
| 676 void SetNetworkParser(NetworkParser* parser); | 718 void SetNetworkParser(NetworkParser* parser); |
| 677 | 719 |
| 678 // Updates property_map_ for the corresponding property index. | 720 // Updates property_map_ for the corresponding property index. |
| 679 void UpdatePropertyMap(PropertyIndex index, const base::Value& value); | 721 void UpdatePropertyMap(PropertyIndex index, const base::Value& value); |
| 680 | 722 |
| (...skipping 30 matching lines...) Expand all Loading... |
| 711 | 753 |
| 712 // This allows NetworkParser and its subclasses access to device | 754 // This allows NetworkParser and its subclasses access to device |
| 713 // privates so that they can be reconstituted during parsing. The | 755 // privates so that they can be reconstituted during parsing. The |
| 714 // parsers only access things through the private set_ functions so | 756 // parsers only access things through the private set_ functions so |
| 715 // that this class can evolve without having to change all the | 757 // that this class can evolve without having to change all the |
| 716 // parsers. | 758 // parsers. |
| 717 friend class NetworkParser; | 759 friend class NetworkParser; |
| 718 friend class NativeNetworkParser; | 760 friend class NativeNetworkParser; |
| 719 friend class NativeVirtualNetworkParser; | 761 friend class NativeVirtualNetworkParser; |
| 720 friend class OncNetworkParser; | 762 friend class OncNetworkParser; |
| 763 friend class OncWifiNetworkParser; |
| 721 friend class OncVirtualNetworkParser; | 764 friend class OncVirtualNetworkParser; |
| 722 | 765 |
| 723 // This allows the implementation classes access to privates. | 766 // This allows the implementation classes access to privates. |
| 724 NETWORK_LIBRARY_IMPL_FRIENDS; | 767 NETWORK_LIBRARY_IMPL_FRIENDS; |
| 725 | 768 |
| 726 // Use these functions at your peril. They are used by the various | 769 // Use these functions at your peril. They are used by the various |
| 727 // parsers to set state, and really shouldn't be used by anything else | 770 // parsers to set state, and really shouldn't be used by anything else |
| 728 // because they don't do the error checking and sending to the | 771 // because they don't do the error checking and sending to the |
| 729 // network layer that the other setters do. | 772 // network layer that the other setters do. |
| 730 void set_device_path(const std::string& device_path) { | 773 void set_device_path(const std::string& device_path) { |
| (...skipping 1021 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1752 const std::string& service_path) = 0; | 1795 const std::string& service_path) = 0; |
| 1753 | 1796 |
| 1754 // Factory function, creates a new instance and returns ownership. | 1797 // Factory function, creates a new instance and returns ownership. |
| 1755 // For normal usage, access the singleton via CrosLibrary::Get(). | 1798 // For normal usage, access the singleton via CrosLibrary::Get(). |
| 1756 static NetworkLibrary* GetImpl(bool stub); | 1799 static NetworkLibrary* GetImpl(bool stub); |
| 1757 }; | 1800 }; |
| 1758 | 1801 |
| 1759 } // namespace chromeos | 1802 } // namespace chromeos |
| 1760 | 1803 |
| 1761 #endif // CHROME_BROWSER_CHROMEOS_CROS_NETWORK_LIBRARY_H_ | 1804 #endif // CHROME_BROWSER_CHROMEOS_CROS_NETWORK_LIBRARY_H_ |
| OLD | NEW |