summaryrefslogtreecommitdiff
path: root/lib/http.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2003-09-04 11:34:09 +0000
committerDaniel Stenberg <daniel@haxx.se>2003-09-04 11:34:09 +0000
commit2956fe97a023f18a6ef9a1bc29f1b641891bcabb (patch)
treec36d91b6a647ac1e8ee8501766e97e956ff777a7 /lib/http.c
parent1f9b0e70ab2131315744d0eedf9c5e29f34c8cb4 (diff)
downloadcurl-2956fe97a023f18a6ef9a1bc29f1b641891bcabb.tar.gz
Jörg pointed out that I did this fix wrongly, now authwant is cleared
properly if no auth is available
Diffstat (limited to 'lib/http.c')
-rw-r--r--lib/http.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/http.c b/lib/http.c
index c1fc9552a..694238397 100644
--- a/lib/http.c
+++ b/lib/http.c
@@ -162,6 +162,8 @@ void Curl_http_auth_act(struct connectdata *conn)
{
struct SessionHandle *data = conn->data;
+ data->state.authwant = CURLAUTH_NONE; /* clear it first */
+
if(data->state.authavail) {
if(data->state.authavail & CURLAUTH_GSSNEGOTIATE)
data->state.authwant = CURLAUTH_GSSNEGOTIATE;
@@ -171,13 +173,11 @@ void Curl_http_auth_act(struct connectdata *conn)
data->state.authwant = CURLAUTH_NTLM;
else if(data->state.authavail & CURLAUTH_BASIC)
data->state.authwant = CURLAUTH_BASIC;
- else
- data->state.authwant = CURLAUTH_NONE; /* none */
if(data->state.authwant)
conn->newurl = strdup(data->change.url); /* clone URL */
+ data->state.authavail = CURLAUTH_NONE; /* clear it here */
}
- data->state.authavail = CURLAUTH_NONE; /* clear it here */
}
/*