diff options
author | Kamil Dudka <kdudka@redhat.com> | 2019-07-30 12:59:35 +0200 |
---|---|---|
committer | Kamil Dudka <kdudka@redhat.com> | 2019-08-01 16:21:41 +0200 |
commit | 4c187043c5aac57f354ebb96cc6ff3263411e98d (patch) | |
tree | f2e2298cd80224d5d31ccb8664ecf34178f4059c /lib/http_negotiate.c | |
parent | cd8068ed4c6e03a3c13aa31326d0a7f1a36bfa02 (diff) | |
download | curl-4c187043c5aac57f354ebb96cc6ff3263411e98d.tar.gz |
http_negotiate: improve handling of gss_init_sec_context() failures
If HTTPAUTH_GSSNEGOTIATE was used for a POST request and
gss_init_sec_context() failed, the POST request was sent
with empty body. This commit also restores the original
behavior of `curl --fail --negotiate`, which was changed
by commit 6c6035532383e300c712e4c1cd9fdd749ed5cf59.
Add regression tests 2077 and 2078 to cover this.
Fixes #3992
Closes #4171
Diffstat (limited to 'lib/http_negotiate.c')
-rw-r--r-- | lib/http_negotiate.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/http_negotiate.c b/lib/http_negotiate.c index c8f406444..fe15dcefb 100644 --- a/lib/http_negotiate.c +++ b/lib/http_negotiate.c @@ -151,7 +151,7 @@ CURLcode Curl_output_negotiate(struct connectdata *conn, bool proxy) if(result == CURLE_LOGIN_DENIED) { /* negotiate auth failed, let's continue unauthenticated to stay * compatible with the behavior before curl-7_64_0-158-g6c6035532 */ - conn->data->state.authproblem = TRUE; + authp->done = TRUE; return CURLE_OK; } else if(result) |