| OLD | NEW |
| (Empty) |
| 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 | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #ifndef CHROME_BROWSER_PREFS_PROXY_PREFS_H_ | |
| 6 #define CHROME_BROWSER_PREFS_PROXY_PREFS_H_ | |
| 7 | |
| 8 #include <string> | |
| 9 | |
| 10 namespace ProxyPrefs { | |
| 11 | |
| 12 // Possible types of specifying proxy settings. Do not change the order of | |
| 13 // the constants, because numeric values are exposed to users. | |
| 14 // If you add an enum constant, you should also add a string to | |
| 15 // kProxyModeNames in the .cc file. | |
| 16 enum ProxyMode { | |
| 17 // Direct connection to the network, other proxy preferences are ignored. | |
| 18 MODE_DIRECT = 0, | |
| 19 | |
| 20 // Try to retrieve a PAC script from http://wpad/wpad.dat or fall back to | |
| 21 // direct connection. | |
| 22 MODE_AUTO_DETECT = 1, | |
| 23 | |
| 24 // Try to retrieve a PAC script from kProxyPacURL or fall back to direct | |
| 25 // connection. | |
| 26 MODE_PAC_SCRIPT = 2, | |
| 27 | |
| 28 // Use the settings specified in kProxyServer and kProxyBypassList. | |
| 29 MODE_FIXED_SERVERS = 3, | |
| 30 | |
| 31 // The system's proxy settings are used, other proxy preferences are | |
| 32 // ignored. | |
| 33 MODE_SYSTEM = 4, | |
| 34 | |
| 35 kModeCount | |
| 36 }; | |
| 37 | |
| 38 // State of proxy configuration. | |
| 39 enum ConfigState { | |
| 40 // Configuration is from policy. | |
| 41 CONFIG_POLICY, | |
| 42 // Configuration is from extension. | |
| 43 CONFIG_EXTENSION, | |
| 44 // Configuration is not from policy or extension but still precedes others. | |
| 45 CONFIG_OTHER_PRECEDE, | |
| 46 // Configuration is from system. | |
| 47 CONFIG_SYSTEM, | |
| 48 // Configuration is recommended i.e there's a fallback configuration. | |
| 49 CONFIG_FALLBACK, | |
| 50 // Configuration is known to be not set. | |
| 51 CONFIG_UNSET, | |
| 52 }; | |
| 53 | |
| 54 // Constants for string values used to specify the proxy mode through externally | |
| 55 // visible APIs, e.g. through policy or the proxy extension API. | |
| 56 extern const char kDirectProxyModeName[]; | |
| 57 extern const char kAutoDetectProxyModeName[]; | |
| 58 extern const char kPacScriptProxyModeName[]; | |
| 59 extern const char kFixedServersProxyModeName[]; | |
| 60 extern const char kSystemProxyModeName[]; | |
| 61 | |
| 62 bool IntToProxyMode(int in_value, ProxyMode* out_value); | |
| 63 bool StringToProxyMode(const std::string& in_value, ProxyMode* out_value); | |
| 64 // Ownership of the return value is NOT passed to the caller. | |
| 65 const char* ProxyModeToString(ProxyMode mode); | |
| 66 std::string ConfigStateToDebugString(ConfigState state); | |
| 67 | |
| 68 } // namespace ProxyPrefs | |
| 69 | |
| 70 #endif // CHROME_BROWSER_PREFS_PROXY_PREFS_H_ | |
| OLD | NEW |