summaryrefslogtreecommitdiffstats
path: root/chrome/browser
diff options
context:
space:
mode:
authorcbentzel@chromium.org <cbentzel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-01 18:12:26 +0000
committercbentzel@chromium.org <cbentzel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-01 18:12:26 +0000
commit65d3438acf8e8e4f525c23b00c46b7a1330b00ee (patch)
tree83a0c6c4299aaa901feea780b6ef6f2ec2f3c251 /chrome/browser
parent5526773cbfbb6b9f3ef4fbec96bebc5014cf78ff (diff)
downloadchromium_src-65d3438acf8e8e4f525c23b00c46b7a1330b00ee.zip
chromium_src-65d3438acf8e8e4f525c23b00c46b7a1330b00ee.tar.gz
chromium_src-65d3438acf8e8e4f525c23b00c46b7a1330b00ee.tar.bz2
Make the Negotiate Authentication Handler a state machine.
Now that the HttpNetworkTransaction correctly handles asynchronous auth token generation, HttpAuthHandlerNegotiate can be turned into a state machine. This also removes the need for the externally exposed "Resolve Canonical Name" details to users of this handler. BUG=42222 TEST=net_unittests Review URL: http://codereview.chromium.org/2867022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51387 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser')
-rw-r--r--chrome/browser/io_thread.cc7
-rw-r--r--chrome/browser/io_thread.h3
2 files changed, 6 insertions, 4 deletions
diff --git a/chrome/browser/io_thread.cc b/chrome/browser/io_thread.cc
index 885aae9..13adde9 100644
--- a/chrome/browser/io_thread.cc
+++ b/chrome/browser/io_thread.cc
@@ -133,7 +133,8 @@ void IOThread::Init() {
globals_->net_log.reset(new ChromeNetLog());
globals_->host_resolver = CreateGlobalHostResolver();
- globals_->http_auth_handler_factory.reset(CreateDefaultAuthHandlerFactory());
+ globals_->http_auth_handler_factory.reset(CreateDefaultAuthHandlerFactory(
+ globals_->host_resolver));
}
void IOThread::CleanUp() {
@@ -191,7 +192,8 @@ void IOThread::CleanUpAfterMessageLoopDestruction() {
BrowserProcessSubThread::CleanUpAfterMessageLoopDestruction();
}
-net::HttpAuthHandlerFactory* IOThread::CreateDefaultAuthHandlerFactory() {
+net::HttpAuthHandlerFactory* IOThread::CreateDefaultAuthHandlerFactory(
+ net::HostResolver* resolver) {
net::HttpAuthFilterWhitelist* auth_filter = NULL;
// Get the whitelist information from the command line, create an
@@ -234,7 +236,6 @@ net::HttpAuthHandlerFactory* IOThread::CreateDefaultAuthHandlerFactory() {
globals_->url_security_manager.get());
registry_factory->SetURLSecurityManager("negotiate",
globals_->url_security_manager.get());
-
if (negotiate_auth_enabled) {
// Configure the Negotiate settings for the Kerberos SPN.
// TODO(cbentzel): Read the related IE registry settings on Windows builds.
diff --git a/chrome/browser/io_thread.h b/chrome/browser/io_thread.h
index 2c609f5..f0ddca4 100644
--- a/chrome/browser/io_thread.h
+++ b/chrome/browser/io_thread.h
@@ -70,7 +70,8 @@ class IOThread : public BrowserProcessSubThread {
virtual void CleanUpAfterMessageLoopDestruction();
private:
- net::HttpAuthHandlerFactory* CreateDefaultAuthHandlerFactory();
+ net::HttpAuthHandlerFactory* CreateDefaultAuthHandlerFactory(
+ net::HostResolver* resolver);
void InitNetworkPredictorOnIOThread(
bool prefetching_enabled,