diff --git a/lib/http_ntlm.c b/lib/http_ntlm.c
index 0052608584541615ec26662a5e63c6e903945702..d1f4e306ce16be2f44fa41169bf3b95993d374f7 100644
--- a/lib/http_ntlm.c
+++ b/lib/http_ntlm.c
@@ -277,8 +277,7 @@ static void mkhash(char *password,
 
 /* this is for creating ntlm header output */
 CURLcode Curl_output_ntlm(struct connectdata *conn,
-                          bool proxy,
-                          bool *ready)
+                          bool proxy)
 {
   const char *domain=""; /* empty */
   const char *host=""; /* empty */
@@ -300,7 +299,9 @@ CURLcode Curl_output_ntlm(struct connectdata *conn,
   /* point to the correct struct with this */
   struct ntlmdata *ntlm;
 
-  *ready = FALSE;
+  curlassert(conn);
+  curlassert(conn->data);
+  conn->data->state.authdone = FALSE;
 
   if(proxy) {
     allocuserpwd = &conn->allocptr.proxyuserpwd;
@@ -562,7 +563,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;
+    conn->data->state.authdone = TRUE;
 
     /* Switch to web authentication after proxy authentication is done */
     if (proxy)
@@ -577,7 +578,7 @@ CURLcode Curl_output_ntlm(struct connectdata *conn,
       free(*allocuserpwd);
       *allocuserpwd=NULL;
     }
-    *ready = TRUE;
+    conn->data->state.authdone = TRUE;
     break;
   }
 
diff --git a/lib/http_ntlm.h b/lib/http_ntlm.h
index df7f49703f26791abd1db4bedfbcdcc645cd6d90..4386a1cbf19684c5d90f8ac549be16fc37a0be44 100644
--- a/lib/http_ntlm.h
+++ b/lib/http_ntlm.h
@@ -36,7 +36,7 @@ typedef enum {
 CURLntlm Curl_input_ntlm(struct connectdata *conn, bool proxy, char *header);
 
 /* this is for creating ntlm header output */
-CURLcode Curl_output_ntlm(struct connectdata *conn, bool proxy, bool *ready);
+CURLcode Curl_output_ntlm(struct connectdata *conn, bool proxy);
 
 void Curl_ntlm_cleanup(struct SessionHandle *data);