| 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 "android_webview/browser/net/aw_url_request_context_getter.h" | 5 #include "android_webview/browser/net/aw_url_request_context_getter.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "android_webview/browser/aw_browser_context.h" | 9 #include "android_webview/browser/aw_browser_context.h" |
| 10 #include "android_webview/browser/aw_content_browser_client.h" | 10 #include "android_webview/browser/aw_content_browser_client.h" |
| (...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 218 | 218 |
| 219 net::URLRequestContextBuilder::HttpNetworkSessionParams | 219 net::URLRequestContextBuilder::HttpNetworkSessionParams |
| 220 network_session_params; | 220 network_session_params; |
| 221 ApplyCmdlineOverridesToNetworkSessionParams(&network_session_params); | 221 ApplyCmdlineOverridesToNetworkSessionParams(&network_session_params); |
| 222 builder.set_http_network_session_params(network_session_params); | 222 builder.set_http_network_session_params(network_session_params); |
| 223 builder.SetSpdyAndQuicEnabled(true, false); | 223 builder.SetSpdyAndQuicEnabled(true, false); |
| 224 | 224 |
| 225 scoped_ptr<net::MappedHostResolver> host_resolver(new net::MappedHostResolver( | 225 scoped_ptr<net::MappedHostResolver> host_resolver(new net::MappedHostResolver( |
| 226 net::HostResolver::CreateDefaultResolver(nullptr))); | 226 net::HostResolver::CreateDefaultResolver(nullptr))); |
| 227 ApplyCmdlineOverridesToHostResolver(host_resolver.get()); | 227 ApplyCmdlineOverridesToHostResolver(host_resolver.get()); |
| 228 builder.add_http_auth_handler_factory( | 228 builder.SetHttpAuthHandlerFactory( |
| 229 "negotiate", | 229 CreateAuthHandlerFactory(host_resolver.get()).Pass()); |
| 230 CreateNegotiateAuthHandlerFactory(host_resolver.get()).release()); | |
| 231 builder.set_host_resolver(host_resolver.Pass()); | 230 builder.set_host_resolver(host_resolver.Pass()); |
| 232 | 231 |
| 233 url_request_context_ = builder.Build().Pass(); | 232 url_request_context_ = builder.Build().Pass(); |
| 234 | 233 |
| 235 job_factory_ = CreateJobFactory(&protocol_handlers_, | 234 job_factory_ = CreateJobFactory(&protocol_handlers_, |
| 236 request_interceptors_.Pass()); | 235 request_interceptors_.Pass()); |
| 237 job_factory_.reset(new net::URLRequestInterceptingJobFactory( | 236 job_factory_.reset(new net::URLRequestInterceptingJobFactory( |
| 238 job_factory_.Pass(), | 237 job_factory_.Pass(), |
| 239 browser_context->GetDataReductionProxyIOData()->CreateInterceptor())); | 238 browser_context->GetDataReductionProxyIOData()->CreateInterceptor())); |
| 240 url_request_context_->set_job_factory(job_factory_.get()); | 239 url_request_context_->set_job_factory(job_factory_.get()); |
| (...skipping 25 matching lines...) Expand all Loading... |
| 266 return net_log_.get(); | 265 return net_log_.get(); |
| 267 } | 266 } |
| 268 | 267 |
| 269 void AwURLRequestContextGetter::SetKeyOnIO(const std::string& key) { | 268 void AwURLRequestContextGetter::SetKeyOnIO(const std::string& key) { |
| 270 DCHECK(AwBrowserContext::GetDefault()->GetDataReductionProxyIOData()); | 269 DCHECK(AwBrowserContext::GetDefault()->GetDataReductionProxyIOData()); |
| 271 AwBrowserContext::GetDefault()->GetDataReductionProxyIOData()-> | 270 AwBrowserContext::GetDefault()->GetDataReductionProxyIOData()-> |
| 272 request_options()->SetKeyOnIO(key); | 271 request_options()->SetKeyOnIO(key); |
| 273 } | 272 } |
| 274 | 273 |
| 275 scoped_ptr<net::HttpAuthHandlerFactory> | 274 scoped_ptr<net::HttpAuthHandlerFactory> |
| 276 AwURLRequestContextGetter::CreateNegotiateAuthHandlerFactory( | 275 AwURLRequestContextGetter::CreateAuthHandlerFactory( |
| 277 net::HostResolver* resolver) { | 276 net::HostResolver* resolver) { |
| 278 DCHECK(resolver); | 277 DCHECK(resolver); |
| 279 std::vector<std::string> supported_schemes = {"negotiate"}; | 278 |
| 279 // In Chrome this is configurable via the AuthSchemes policy. For WebView |
| 280 // there is no interest to have it available so far. |
| 281 std::vector<std::string> supported_schemes = {"basic", "digest", "negotiate"}; |
| 280 http_auth_preferences_.reset(new net::HttpAuthPreferences(supported_schemes)); | 282 http_auth_preferences_.reset(new net::HttpAuthPreferences(supported_schemes)); |
| 281 http_auth_preferences_->set_server_whitelist(auth_server_whitelist_); | 283 http_auth_preferences_->set_server_whitelist(auth_server_whitelist_); |
| 282 http_auth_preferences_->set_auth_android_negotiate_account_type( | 284 http_auth_preferences_->set_auth_android_negotiate_account_type( |
| 283 auth_android_negotiate_account_type_); | 285 auth_android_negotiate_account_type_); |
| 284 scoped_ptr<net::HttpAuthHandlerFactory> negotiate_factory( | 286 return net::HttpAuthHandlerRegistryFactory::Create( |
| 285 net::HttpAuthHandlerRegistryFactory::Create(http_auth_preferences_.get(), | 287 http_auth_preferences_.get(), resolver); |
| 286 resolver)); | |
| 287 return negotiate_factory; | |
| 288 } | 288 } |
| 289 | 289 |
| 290 } // namespace android_webview | 290 } // namespace android_webview |
| OLD | NEW |