From 68cb6a4d4ee454a40b58c7d726401ed164287f38 Mon Sep 17 00:00:00 2001 From: Felix Weilbach Date: Fri, 8 Oct 2021 17:00:10 +0200 Subject: [PATCH] Only use basic authentication if needed Signed-off-by: Felix Weilbach --- src/libsync/networkjobs.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/libsync/networkjobs.cpp b/src/libsync/networkjobs.cpp index 763367988177e..878b87fd81830 100644 --- a/src/libsync/networkjobs.cpp +++ b/src/libsync/networkjobs.cpp @@ -926,7 +926,10 @@ void DetermineAuthTypeJob::start() oldFlowRequired->setIgnoreCredentialFailure(true); connect(get, &SimpleNetworkJob::finishedSignal, this, [this, get]() { - if (get->reply()->error() == QNetworkReply::AuthenticationRequiredError) { + const auto reply = get->reply(); + const auto wwwAuthenticateHeader = reply->rawHeader("WWW-Authenticate"); + if (reply->error() == QNetworkReply::AuthenticationRequiredError + && (wwwAuthenticateHeader.startsWith("Basic") || wwwAuthenticateHeader.startsWith("Bearer"))) { _resultGet = Basic; } else { _resultGet = LoginFlowV2;