From b439e8ffb7e27bb5a7cc22abeb8743eebc57ec70 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Wed, 22 Oct 2003 11:15:48 +0000 Subject: Do the auth stuff at the end-of-headers and not at the start-of-body, as we might not get a body when we get a 401 with a set of WWW-Authenticate: headers. This fixes the problem Kevin Roth detected in 7.10.8-pre4 and pre5. Verified by test case 91. --- lib/transfer.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/transfer.c b/lib/transfer.c index 99beee2b4..d66254bf4 100644 --- a/lib/transfer.c +++ b/lib/transfer.c @@ -450,6 +450,11 @@ CURLcode Curl_readwrite(struct connectdata *conn, data->info.header_size += headerlen; conn->headerbytecount += headerlen; + /* *auth_act() checks what authentication methods that are + available and decides which one (if any) to use. It will + set 'newurl' if an auth metod was picked. */ + Curl_http_auth_act(conn); + if(!k->header) { /* * really end-of-headers. @@ -824,11 +829,6 @@ CURLcode Curl_readwrite(struct connectdata *conn, if(conn->protocol&PROT_HTTP) { /* HTTP-only checks */ - /* *auth_act() checks what authentication methods that are - available and decides which one (if any) to use. It will - set 'newurl' if an auth metod was picked. */ - Curl_http_auth_act(conn); - if (conn->newurl) { if(conn->bits.close) { /* Abort after the headers if "follow Location" is set -- cgit v1.2.3