60 lines
2.3 KiB
Diff
60 lines
2.3 KiB
Diff
From 017de42929811e384a9741d46e4553e74605b79c Mon Sep 17 00:00:00 2001
|
|
From: Lars Schmertmann <Lars.Schmertmann@governikus.de>
|
|
Date: Tue, 13 Sep 2016 14:24:25 +0200
|
|
Subject: [PATCH] Introduce QNetworkAccessManager::useAuthenticationManagerFrom
|
|
|
|
Sometimes it is desirable to use a new connection but keep already
|
|
entered user credentials for usability reasons. This is now possible by
|
|
using the AuthenticationManager from a different NetworkAccessManager.
|
|
|
|
[ChangeLog][QtCore][QNetworkAccessManager] Introduce useAuthenticationManagerFrom()
|
|
|
|
Change-Id: If61f0d03fc8b2f159bad869d0a2b650170e1e174
|
|
---
|
|
src/network/access/qnetworkaccessmanager.cpp | 15 +++++++++++++++
|
|
src/network/access/qnetworkaccessmanager.h | 2 ++
|
|
2 files changed, 17 insertions(+)
|
|
|
|
diff --git x/qtbase/src/network/access/qnetworkaccessmanager.cpp y/qtbase/src/network/access/qnetworkaccessmanager.cpp
|
|
index 927e103..c6dfca4 100644
|
|
--- x/qtbase/src/network/access/qnetworkaccessmanager.cpp
|
|
+++ y/qtbase/src/network/access/qnetworkaccessmanager.cpp
|
|
@@ -1083,6 +1083,21 @@ void QNetworkAccessManager::connectToHost(const QString &hostName, quint16 port)
|
|
}
|
|
|
|
/*!
|
|
+ \since 5.9
|
|
+
|
|
+ Sets the manager's authentication manager to be the one from
|
|
+ \a accessManager. This is useful when you need to use a new connection,
|
|
+ but keep already-entered user-credentials for usability reasons.
|
|
+*/
|
|
+void QNetworkAccessManager::useAuthenticationManagerFrom(const QNetworkAccessManager& accessManager)
|
|
+{
|
|
+ const QNetworkAccessManagerPrivate * const e = accessManager.d_func();
|
|
+
|
|
+ Q_D(QNetworkAccessManager);
|
|
+ d->authenticationManager = e->authenticationManager;
|
|
+}
|
|
+
|
|
+/*!
|
|
\since 4.7
|
|
|
|
Sends a custom request to the server identified by the URL of \a request.
|
|
diff --git x/qtbase/src/network/access/qnetworkaccessmanager.h y/qtbase/src/network/access/qnetworkaccessmanager.h
|
|
index 4ce4757..66e3ffb 100644
|
|
--- x/qtbase/src/network/access/qnetworkaccessmanager.h
|
|
+++ y/qtbase/src/network/access/qnetworkaccessmanager.h
|
|
@@ -143,6 +143,8 @@ public:
|
|
#endif
|
|
void connectToHost(const QString &hostName, quint16 port = 80);
|
|
|
|
+ void useAuthenticationManagerFrom(const QNetworkAccessManager& accessManager);
|
|
+
|
|
Q_SIGNALS:
|
|
#ifndef QT_NO_NETWORKPROXY
|
|
void proxyAuthenticationRequired(const QNetworkProxy &proxy, QAuthenticator *authenticator);
|
|
--
|
|
2.9.3
|
|
|