Index: squid/src/auth/ntlm/auth_ntlm.c diff -c squid/src/auth/ntlm/auth_ntlm.c:1.17.2.23 squid/src/auth/ntlm/auth_ntlm.c:1.17.2.24 *** squid/src/auth/ntlm/auth_ntlm.c:1.17.2.23 Thu Sep 1 15:58:50 2005 --- squid/src/auth/ntlm/auth_ntlm.c Fri Sep 16 15:45:10 2005 *************** *** 191,211 **** } else { debug(28, 0) ("unrecognised ntlm auth scheme parameter '%s'\n", param_str); } - /* - * disable client side request pipelining. There is a race with - * NTLM when the client sends a second request on an NTLM - * connection before the authenticate challenge is sent. With - * this patch, the client may fail to authenticate, but squid's - * state will be preserved. Caveats: this should be a post-parse - * test, but that can wait for the modular parser to be integrated. - */ - if (ntlmConfig->authenticate && Config.onoff.pipeline_prefetch != 0) - Config.onoff.pipeline_prefetch = 0; - - if (ntlmConfig->use_ntlm_negotiate && ntlmConfig->challengeuses> 0) { - debug(28, 1) ("challenge reuses incompatible with use_ntlm_negotiate. Disabling challenge reuse\n"); - ntlmConfig->challengeuses = 0; - } } --- 191,196 ---- *************** *** 241,246 **** --- 226,246 ---- { static int ntlminit = 0; if (ntlmConfig->authenticate) { + /* + * disable client side request pipelining. There is a race with + * NTLM when the client sends a second request on an NTLM + * connection before the authenticate challenge is sent. With + * this patch, the client may fail to authenticate, but squid's + * state will be preserved. + */ + if (ntlmConfig->authenticate && Config.onoff.pipeline_prefetch != 0) { + debug(28, 1) ("pipeline prefetching incompatile with NTLM authentication. Disabling pipeline_prefetch\n"); + Config.onoff.pipeline_prefetch = 0; + } + if (ntlmConfig->use_ntlm_negotiate && ntlmConfig->challengeuses> 0) { + debug(28, 1) ("challenge reuses incompatible with use_ntlm_negotiate. Disabling challenge reuse\n"); + ntlmConfig->challengeuses = 0; + } if (!ntlm_helper_state_pool) ntlm_helper_state_pool = memPoolCreate("NTLM Helper State data", sizeof(ntlm_helper_state_t)); if (!ntlm_user_pool)