From cf5804412f3a525a35a7549bb557bc20d3243499 Mon Sep 17 00:00:00 2001 From: "cbentzel@chromium.org" Date: Tue, 20 Jul 2010 01:56:36 +0000 Subject: Use different separators for service-type and service-name in Kerberos SPN. GSSAPI expects SPNs to be in the form HTTP@ and SSPI expects SPNs to be in the form HTTP/. BUG=33033 TEST=net_unittests --gtest_filter="*HttpAuthHandlerNegotiate*", go against Kerberized server on Linux or OSX and see that the TGS is retrieved correctly. Review URL: http://codereview.chromium.org/3055001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52984 0039d316-1c4b-4281-b951-d872f2087c98 --- net/http/http_auth_handler_negotiate_unittest.cc | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'net/http/http_auth_handler_negotiate_unittest.cc') diff --git a/net/http/http_auth_handler_negotiate_unittest.cc b/net/http/http_auth_handler_negotiate_unittest.cc index 2646ee6..a95eb44 100644 --- a/net/http/http_auth_handler_negotiate_unittest.cc +++ b/net/http/http_auth_handler_negotiate_unittest.cc @@ -196,7 +196,11 @@ TEST_F(HttpAuthHandlerNegotiateTest, DisableCname) { EXPECT_EQ(OK, auth_handler->GenerateAuthToken(&username, &password, &request_info, &callback, &token)); +#if defined(OS_WIN) EXPECT_EQ(L"HTTP/alias", auth_handler->spn()); +#elif defined(OS_POSIX) + EXPECT_EQ(L"HTTP@alias", auth_handler->spn()); +#endif } TEST_F(HttpAuthHandlerNegotiateTest, DisableCnameStandardPort) { @@ -212,7 +216,11 @@ TEST_F(HttpAuthHandlerNegotiateTest, DisableCnameStandardPort) { EXPECT_EQ(OK, auth_handler->GenerateAuthToken(&username, &password, &request_info, &callback, &token)); +#if defined(OS_WIN) EXPECT_EQ(L"HTTP/alias", auth_handler->spn()); +#elif defined(OS_POSIX) + EXPECT_EQ(L"HTTP@alias", auth_handler->spn()); +#endif } TEST_F(HttpAuthHandlerNegotiateTest, DisableCnameNonstandardPort) { @@ -228,7 +236,11 @@ TEST_F(HttpAuthHandlerNegotiateTest, DisableCnameNonstandardPort) { EXPECT_EQ(OK, auth_handler->GenerateAuthToken(&username, &password, &request_info, &callback, &token)); +#if defined(OS_WIN) EXPECT_EQ(L"HTTP/alias:500", auth_handler->spn()); +#elif defined(OS_POSIX) + EXPECT_EQ(L"HTTP@alias:500", auth_handler->spn()); +#endif } TEST_F(HttpAuthHandlerNegotiateTest, CnameSync) { @@ -244,7 +256,11 @@ TEST_F(HttpAuthHandlerNegotiateTest, CnameSync) { EXPECT_EQ(OK, auth_handler->GenerateAuthToken(&username, &password, &request_info, &callback, &token)); +#if defined(OS_WIN) EXPECT_EQ(L"HTTP/canonical.example.com", auth_handler->spn()); +#elif defined(OS_POSIX) + EXPECT_EQ(L"HTTP@canonical.example.com", auth_handler->spn()); +#endif } TEST_F(HttpAuthHandlerNegotiateTest, CnameAsync) { @@ -260,7 +276,11 @@ TEST_F(HttpAuthHandlerNegotiateTest, CnameAsync) { EXPECT_EQ(ERR_IO_PENDING, auth_handler->GenerateAuthToken( &username, &password, &request_info, &callback, &token)); EXPECT_EQ(OK, callback.WaitForResult()); +#if defined(OS_WIN) EXPECT_EQ(L"HTTP/canonical.example.com", auth_handler->spn()); +#elif defined(OS_POSIX) + EXPECT_EQ(L"HTTP@canonical.example.com", auth_handler->spn()); +#endif } } // namespace net -- cgit v1.1