Fix to the endless loop of bad Basic authentication as reported in Cris

Bailiff's bug report 768275.
This commit is contained in:
Daniel Stenberg 2003-07-15 23:06:02 +00:00
parent b036986b3e
commit 79749f8eb4
1 changed files with 9 additions and 1 deletions

View File

@ -794,7 +794,15 @@ CURLcode Curl_readwrite(struct connectdata *conn,
}
}
else if(checkprefix("Basic", start)) {
if(data->state.authwant & CURLAUTH_BASIC) {
if((data->state.authwant == CURLAUTH_BASIC) &&
(k->httpcode == 401)) {
/* We asked for Basic authentication but got a 401 back
anyway, which basicly means our name+password isn't
valid. */
data->state.authavail = CURLAUTH_NONE;
infof(data, "Authentication problem. Ignoring this.\n");
}
else if(data->state.authwant & CURLAUTH_BASIC) {
data->state.authavail |= CURLAUTH_BASIC;
}
}