diff options
author | Johannes Schindelin <johannes.schindelin@gmx.de> | 2018-07-17 14:52:53 +0200 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2018-07-24 10:11:25 +0200 |
commit | df57b439f4cfd594bde29055e7258607056985dc (patch) | |
tree | db654aa5e5199f101dacf946f7484052773bd1d4 /src/tool_parsecfg.c | |
parent | 26e35844e776e601aead505e37e5c6c8e1a41cf3 (diff) |
auth: only ever pick CURLAUTH_BEARER if we *have* a Bearer token
The Bearer authentication was added to cURL 7.61.0, but there is a
problem: if CURLAUTH_ANY is selected, and the server supports multiple
authentication methods including the Bearer method, we strongly prefer
that latter method (only CURLAUTH_NEGOTIATE beats it), and if the Bearer
authentication fails, we will never even try to attempt any other
method.
This is particularly unfortunate when we already know that we do not
have any Bearer token to work with.
Such a scenario happens e.g. when using Git to push to Visual Studio
Team Services (which supports Basic and Bearer authentication among
other methods) and specifying the Personal Access Token directly in the
URL (this aproach is frequently taken by automated builds).
Let's make sure that we have a Bearer token to work with before we
select the Bearer authentication among the available authentication
methods.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Closes #2754
Diffstat (limited to 'src/tool_parsecfg.c')
0 files changed, 0 insertions, 0 deletions