diff options
Diffstat (limited to 'net/http/http_auth_handler_negotiate_win.cc')
-rw-r--r-- | net/http/http_auth_handler_negotiate_win.cc | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/net/http/http_auth_handler_negotiate_win.cc b/net/http/http_auth_handler_negotiate_win.cc index ffa48ef9..c09beb0 100644 --- a/net/http/http_auth_handler_negotiate_win.cc +++ b/net/http/http_auth_handler_negotiate_win.cc @@ -4,7 +4,9 @@ #include "net/http/http_auth_handler_negotiate.h" +#include "base/logging.h" #include "net/base/net_errors.h" +#include "net/http/http_auth_filter.h" namespace net { @@ -92,6 +94,14 @@ int HttpAuthHandlerNegotiate::Factory::CreateAuthHandler( scoped_refptr<HttpAuthHandler>* handler) { if (is_unsupported_) return ERR_UNSUPPORTED_AUTH_SCHEME; + if (filter() && !filter()->IsValid(origin, target)) { + LOG(INFO) << "URL " << origin + << "fails filter validation for authentication method " + << "Negotiate"; + + return ERR_INVALID_AUTH_CREDENTIALS; + } + if (max_token_length_ == 0) { int rv = DetermineMaxTokenLength(sspi_library_, NEGOSSP_NAME, &max_token_length_); |