diff options
author | Daniel Stenberg <daniel@haxx.se> | 2003-09-15 22:33:18 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2003-09-15 22:33:18 +0000 |
commit | 951e2a654582c6c05c28d69b049584d28e19b932 (patch) | |
tree | 589186ea3134975d0a8d8dfeb6809076c8e5cd97 | |
parent | fcacd38036bcf134b3ee312677919e9666f38c54 (diff) |
If a connection is closed down and it had some kind of NTLM involved, we
reset the authentication state to make it restart on the next connection.
This of course because NTLM is connection-oriented, whilst all other
authentication schemes are not.
-rw-r--r-- | lib/url.c | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -1298,6 +1298,13 @@ CURLcode Curl_disconnect(struct connectdata *conn) conn->bits.rangestringalloc = FALSE; } + if((conn->ntlm.state != NTLMSTATE_NONE) || + (conn->proxyntlm.state != NTLMSTATE_NONE)) + /* Authentication data is a mix of connection-related and sessionhandle- + related stuff. NTLM is connection-related so when we close the shop + we shall forget. */ + conn->data->state.authstage = 0; + if(-1 != conn->connectindex) { /* unlink ourselves! */ infof(conn->data, "Closing connection #%d\n", conn->connectindex); |