diff options
author | Daniel Stenberg <daniel@haxx.se> | 2003-09-15 21:11:22 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2003-09-15 21:11:22 +0000 |
commit | 58b1437cae71335fe78e850f0f2bacfcfb268333 (patch) | |
tree | b99a0ab5711dad3d247a137acc19c89ed5076637 /lib/http_ntlm.c | |
parent | c611ac958e0a680542a56ebb8d96a624c56ae150 (diff) |
When we issue a HTTP request, first make sure if the authentication phase
is over or not, as if it isn't we shall not begin any PUT or POST operation.
This cures bug report #805853, and test case 88 verifies it!
Diffstat (limited to 'lib/http_ntlm.c')
-rw-r--r-- | lib/http_ntlm.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/http_ntlm.c b/lib/http_ntlm.c index 763cb96cb..4297dd3d8 100644 --- a/lib/http_ntlm.c +++ b/lib/http_ntlm.c @@ -277,7 +277,8 @@ static void mkhash(char *password, /* this is for creating ntlm header output */ CURLcode Curl_output_ntlm(struct connectdata *conn, - bool proxy) + bool proxy, + bool *ready) { const char *domain=""; /* empty */ const char *host=""; /* empty */ @@ -299,6 +300,8 @@ CURLcode Curl_output_ntlm(struct connectdata *conn, /* point to the correct struct with this */ struct ntlmdata *ntlm; + *ready = FALSE; + if(proxy) { allocuserpwd = &conn->allocptr.proxyuserpwd; userp = conn->proxyuser; @@ -556,6 +559,7 @@ CURLcode Curl_output_ntlm(struct connectdata *conn, return CURLE_OUT_OF_MEMORY; /* FIX TODO */ ntlm->state = NTLMSTATE_TYPE3; /* we sent a type-3 */ + *ready = TRUE; /* Switch to web authentication after proxy authentication is done */ if (proxy) @@ -570,6 +574,7 @@ CURLcode Curl_output_ntlm(struct connectdata *conn, free(*allocuserpwd); *allocuserpwd=NULL; } + *ready = TRUE; break; } |