mirror of
https://github.com/curl/curl.git
synced 2026-08-25 07:43:32 +03:00
http: custom Authorization: header overrides Negotiate
As documented and as it does for other methods. Difficult to test since it needs a successful kerberos ticket. Reported-by: sdgh179 on github Fixes #22610 Closes #22622
This commit is contained in:
parent
fc6c67ce86
commit
9b29495863
1 changed files with 13 additions and 4 deletions
17
lib/http.c
17
lib/http.c
|
|
@ -687,10 +687,19 @@ static CURLcode output_auth_headers(struct Curl_easy *data,
|
|||
#endif
|
||||
#ifdef USE_SPNEGO
|
||||
if(authstatus->picked == CURLAUTH_NEGOTIATE) {
|
||||
auth = "Negotiate";
|
||||
result = Curl_output_negotiate(data, conn, proxy);
|
||||
if(result)
|
||||
return result;
|
||||
if(
|
||||
#ifndef CURL_DISABLE_PROXY
|
||||
(proxy && !Curl_checkProxyheaders(data, conn,
|
||||
STRCONST("Proxy-authorization"))) ||
|
||||
#endif
|
||||
(!proxy && !Curl_checkheaders(data, STRCONST("Authorization")))) {
|
||||
auth = "Negotiate";
|
||||
result = Curl_output_negotiate(data, conn, proxy);
|
||||
if(result)
|
||||
return result;
|
||||
}
|
||||
else
|
||||
authstatus->done = TRUE;
|
||||
}
|
||||
else
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue