summaryrefslogtreecommitdiffstats
path: root/net/http/http_auth_handler_negotiate_win.cc
diff options
context:
space:
mode:
Diffstat (limited to 'net/http/http_auth_handler_negotiate_win.cc')
-rw-r--r--net/http/http_auth_handler_negotiate_win.cc10
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_);