| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "components/policy/core/browser/proxy_policy_handler.h" | 5 #include "components/policy/core/browser/proxy_policy_handler.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "base/macros.h" | 10 #include "base/macros.h" |
| 11 #include "base/memory/ptr_util.h" |
| 11 #include "base/strings/string_number_conversions.h" | 12 #include "base/strings/string_number_conversions.h" |
| 12 #include "base/values.h" | 13 #include "base/values.h" |
| 13 #include "components/policy/core/browser/configuration_policy_handler.h" | 14 #include "components/policy/core/browser/configuration_policy_handler.h" |
| 14 #include "components/policy/core/browser/policy_error_map.h" | 15 #include "components/policy/core/browser/policy_error_map.h" |
| 15 #include "components/policy/core/common/policy_map.h" | 16 #include "components/policy/core/common/policy_map.h" |
| 16 #include "components/prefs/pref_value_map.h" | 17 #include "components/prefs/pref_value_map.h" |
| 17 #include "components/proxy_config/proxy_config_dictionary.h" | 18 #include "components/proxy_config/proxy_config_dictionary.h" |
| 18 #include "components/proxy_config/proxy_config_pref_names.h" | 19 #include "components/proxy_config/proxy_config_pref_names.h" |
| 19 #include "grit/components_strings.h" | 20 #include "grit/components_strings.h" |
| 20 #include "policy/policy_constants.h" | 21 #include "policy/policy_constants.h" |
| (...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 168 proxy_mode = ProxyPrefs::MODE_DIRECT; | 169 proxy_mode = ProxyPrefs::MODE_DIRECT; |
| 169 NOTREACHED(); | 170 NOTREACHED(); |
| 170 } | 171 } |
| 171 } else { | 172 } else { |
| 172 return; | 173 return; |
| 173 } | 174 } |
| 174 | 175 |
| 175 switch (proxy_mode) { | 176 switch (proxy_mode) { |
| 176 case ProxyPrefs::MODE_DIRECT: | 177 case ProxyPrefs::MODE_DIRECT: |
| 177 prefs->SetValue(proxy_config::prefs::kProxy, | 178 prefs->SetValue(proxy_config::prefs::kProxy, |
| 178 make_scoped_ptr(ProxyConfigDictionary::CreateDirect())); | 179 base::WrapUnique(ProxyConfigDictionary::CreateDirect())); |
| 179 break; | 180 break; |
| 180 case ProxyPrefs::MODE_AUTO_DETECT: | 181 case ProxyPrefs::MODE_AUTO_DETECT: |
| 181 prefs->SetValue( | 182 prefs->SetValue( |
| 182 proxy_config::prefs::kProxy, | 183 proxy_config::prefs::kProxy, |
| 183 make_scoped_ptr(ProxyConfigDictionary::CreateAutoDetect())); | 184 base::WrapUnique(ProxyConfigDictionary::CreateAutoDetect())); |
| 184 break; | 185 break; |
| 185 case ProxyPrefs::MODE_PAC_SCRIPT: { | 186 case ProxyPrefs::MODE_PAC_SCRIPT: { |
| 186 std::string pac_url_string; | 187 std::string pac_url_string; |
| 187 if (pac_url && pac_url->GetAsString(&pac_url_string)) { | 188 if (pac_url && pac_url->GetAsString(&pac_url_string)) { |
| 188 prefs->SetValue(proxy_config::prefs::kProxy, | 189 prefs->SetValue(proxy_config::prefs::kProxy, |
| 189 make_scoped_ptr(ProxyConfigDictionary::CreatePacScript( | 190 base::WrapUnique(ProxyConfigDictionary::CreatePacScript( |
| 190 pac_url_string, false))); | 191 pac_url_string, false))); |
| 191 } else { | 192 } else { |
| 192 NOTREACHED(); | 193 NOTREACHED(); |
| 193 } | 194 } |
| 194 break; | 195 break; |
| 195 } | 196 } |
| 196 case ProxyPrefs::MODE_FIXED_SERVERS: { | 197 case ProxyPrefs::MODE_FIXED_SERVERS: { |
| 197 std::string proxy_server; | 198 std::string proxy_server; |
| 198 std::string bypass_list_string; | 199 std::string bypass_list_string; |
| 199 if (server->GetAsString(&proxy_server)) { | 200 if (server->GetAsString(&proxy_server)) { |
| 200 if (bypass_list) | 201 if (bypass_list) |
| 201 bypass_list->GetAsString(&bypass_list_string); | 202 bypass_list->GetAsString(&bypass_list_string); |
| 202 prefs->SetValue( | 203 prefs->SetValue( |
| 203 proxy_config::prefs::kProxy, | 204 proxy_config::prefs::kProxy, |
| 204 make_scoped_ptr(ProxyConfigDictionary::CreateFixedServers( | 205 base::WrapUnique(ProxyConfigDictionary::CreateFixedServers( |
| 205 proxy_server, bypass_list_string))); | 206 proxy_server, bypass_list_string))); |
| 206 } | 207 } |
| 207 break; | 208 break; |
| 208 } | 209 } |
| 209 case ProxyPrefs::MODE_SYSTEM: | 210 case ProxyPrefs::MODE_SYSTEM: |
| 210 prefs->SetValue(proxy_config::prefs::kProxy, | 211 prefs->SetValue(proxy_config::prefs::kProxy, |
| 211 make_scoped_ptr(ProxyConfigDictionary::CreateSystem())); | 212 base::WrapUnique(ProxyConfigDictionary::CreateSystem())); |
| 212 break; | 213 break; |
| 213 case ProxyPrefs::kModeCount: | 214 case ProxyPrefs::kModeCount: |
| 214 NOTREACHED(); | 215 NOTREACHED(); |
| 215 } | 216 } |
| 216 } | 217 } |
| 217 | 218 |
| 218 const base::Value* ProxyPolicyHandler::GetProxyPolicyValue( | 219 const base::Value* ProxyPolicyHandler::GetProxyPolicyValue( |
| 219 const PolicyMap& policies, const char* policy_name) { | 220 const PolicyMap& policies, const char* policy_name) { |
| 220 // See note on the ProxyPolicyHandler implementation above. | 221 // See note on the ProxyPolicyHandler implementation above. |
| 221 const base::Value* value = policies.GetValue(key::kProxySettings); | 222 const base::Value* value = policies.GetValue(key::kProxySettings); |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 331 key::kProxyServerMode, | 332 key::kProxyServerMode, |
| 332 IDS_POLICY_OUT_OF_RANGE_ERROR, | 333 IDS_POLICY_OUT_OF_RANGE_ERROR, |
| 333 base::IntToString(server_mode_value)); | 334 base::IntToString(server_mode_value)); |
| 334 return false; | 335 return false; |
| 335 } | 336 } |
| 336 } | 337 } |
| 337 return true; | 338 return true; |
| 338 } | 339 } |
| 339 | 340 |
| 340 } // namespace policy | 341 } // namespace policy |
| OLD | NEW |