mirror of
https://github.com/moparisthebest/curl
synced 2024-12-21 23:58:49 -05:00
http_perhapsrewind: consider NTLM over proxy too
The logic previously checked for a started NTLM negotiation only for host and not also with proxy, leading to problems doing POSTs over a proxy NTLM that are larger than 2000 bytes. Now it includes proxy in the check. Bug: http://curl.haxx.se/bug/view.cgi?id=3582321 Reported by: John Suprock
This commit is contained in:
parent
e1fa945e7e
commit
487538e87a
@ -387,7 +387,8 @@ static CURLcode http_perhapsrewind(struct connectdata *conn)
|
|||||||
(data->state.authproxy.picked == CURLAUTH_NTLM_WB) ||
|
(data->state.authproxy.picked == CURLAUTH_NTLM_WB) ||
|
||||||
(data->state.authhost.picked == CURLAUTH_NTLM_WB)) {
|
(data->state.authhost.picked == CURLAUTH_NTLM_WB)) {
|
||||||
if(((expectsend - bytessent) < 2000) ||
|
if(((expectsend - bytessent) < 2000) ||
|
||||||
(conn->ntlm.state != NTLMSTATE_NONE)) {
|
(conn->ntlm.state != NTLMSTATE_NONE) ||
|
||||||
|
(conn->proxyntlm.state != NTLMSTATE_NONE)) {
|
||||||
/* The NTLM-negotiation has started *OR* there is just a little (<2K)
|
/* The NTLM-negotiation has started *OR* there is just a little (<2K)
|
||||||
data left to send, keep on sending. */
|
data left to send, keep on sending. */
|
||||||
|
|
||||||
@ -407,7 +408,7 @@ static CURLcode http_perhapsrewind(struct connectdata *conn)
|
|||||||
" bytes\n", (curl_off_t)(expectsend - bytessent));
|
" bytes\n", (curl_off_t)(expectsend - bytessent));
|
||||||
}
|
}
|
||||||
|
|
||||||
/* This is not NTLM or NTLM with many bytes left to send: close
|
/* This is not NTLM or many bytes left to send: close
|
||||||
*/
|
*/
|
||||||
conn->bits.close = TRUE;
|
conn->bits.close = TRUE;
|
||||||
data->req.size = 0; /* don't download any more than 0 bytes */
|
data->req.size = 0; /* don't download any more than 0 bytes */
|
||||||
|
Loading…
Reference in New Issue
Block a user