aboutsummaryrefslogtreecommitdiff
path: root/lib/http_ntlm.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2003-09-15 21:11:22 +0000
committerDaniel Stenberg <daniel@haxx.se>2003-09-15 21:11:22 +0000
commit58b1437cae71335fe78e850f0f2bacfcfb268333 (patch)
treeb99a0ab5711dad3d247a137acc19c89ed5076637 /lib/http_ntlm.c
parentc611ac958e0a680542a56ebb8d96a624c56ae150 (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.c7
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;
}