1 Index: squid/src/auth/ntlm/auth_ntlm.c
2 diff -c squid/src/auth/ntlm/auth_ntlm.c:1.17.2.20 squid/src/auth/ntlm/auth_ntlm.c:1.17.2.21
3 *** squid/src/auth/ntlm/auth_ntlm.c:1.17.2.20 Tue Dec 7 16:52:42 2004
4 --- squid/src/auth/ntlm/auth_ntlm.c Thu Feb 3 16:22:12 2005
8 auth_user_request = r->auth_user_request;
9 ntlm_request = auth_user_request->scheme_data;
10 assert(ntlm_request != NULL);
11 + if (!ntlm_request->authserver)
12 + ntlm_request->authserver = srv;
14 + assert(ntlm_request->authserver == srv);
16 /* seperate out the useful data */
17 if (strncasecmp(reply, "TT ", 3) == 0) {
20 /* and we satisfy the request that happended on the refresh boundary */
21 /* note this code is now in two places FIXME */
22 assert(ntlm_request->auth_state == AUTHENTICATE_STATE_NEGOTIATE);
23 - ntlm_request->authserver = srv;
24 ntlm_request->authchallenge = xstrdup(reply);
25 helperstate->challengeuses = 1;
26 } else if (strncasecmp(reply, "AF ", 3) == 0) {
30 /* we only expect LD when finishing the handshake */
31 assert(ntlm_request->auth_state == AUTHENTICATE_STATE_RESPONSE);
32 ntlm_user->username = xstrdup(reply);
33 - helperstate = helperStatefulServerGetData(ntlm_request->authserver);
34 /* BH code: mark helper as broken */
35 authenticateNTLMResetServer(ntlm_request);
36 debug(29, 4) ("authenticateNTLMHandleReply: Error validating user via NTLM. Error returned '%s'\n", reply);
40 ntlm_user = auth_user->scheme_data;
41 ntlm_request = auth_user_request->scheme_data;
42 assert((ntlm_user != NULL) && (ntlm_request != NULL));
43 - assert(!ntlm_request->authserver || ntlm_request->authserver == srv);
44 - helperstate = helperStatefulServerGetData(ntlm_request->authserver);
45 authenticateNTLMResetServer(ntlm_request);
46 if (ntlm_request->auth_state == AUTHENTICATE_STATE_NEGOTIATE) {
47 /* The helper broke on YR. It automatically