diff -rupN --no-dereference qtbase-everywhere-src-5.15.10/src/network/kernel/qauthenticator.cpp qtbase-everywhere-src-5.15.10-new/src/network/kernel/qauthenticator.cpp
--- qtbase-everywhere-src-5.15.10/src/network/kernel/qauthenticator.cpp 2023-04-24 15:43:14.000000000 +0200
+++ qtbase-everywhere-src-5.15.10-new/src/network/kernel/qauthenticator.cpp 2023-06-15 10:08:06.560935983 +0200
@@ -603,11 +603,13 @@ QByteArray QAuthenticatorPrivate::calcul
break;
case QAuthenticatorPrivate::Negotiate:
methodString = "Negotiate";
- if (challenge.isEmpty()) {
- QByteArray phase1Token;
#if QT_CONFIG(sspi) // SSPI
+ if (challenge.isEmpty() || !sspiWindowsHandles) {
+ QByteArray phase1Token;
phase1Token = qSspiStartup(this, method, host);
#elif QT_CONFIG(gssapi) // GSSAPI
+ if (challenge.isEmpty() || !gssApiHandles) {
+ QByteArray phase1Token;
phase1Token = qGssapiStartup(this, host);
#endif