summaryrefslogtreecommitdiffstats
path: root/src/network/access/qhttpnetworkconnection_p.h
diff options
context:
space:
mode:
authorMartin Petersson <martin.petersson@nokia.com>2011-12-16 10:44:24 +0100
committerQt by Nokia <qt-info@nokia.com>2011-12-16 11:22:52 +0100
commit9bc4b56656a5acabba09093e3da145bf6a4bca62 (patch)
treeef78827db1e7c2c69acc9a598fb6879d7c85d924 /src/network/access/qhttpnetworkconnection_p.h
parentf4ccbc2868f0bef9e9a4cfb8dc8ce2023d221179 (diff)
QNetworkAccessManager: delay IPv4 connection with Happy Eyeballs
Incase we have both IPv4 and IPv6 available after the host lookup we should delay the connection attempt to IPv4. Task-number: QTBUG-23066 Change-Id: I8c0177cf125c9daae314ada73cacef790a39b856 Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Diffstat (limited to 'src/network/access/qhttpnetworkconnection_p.h')
-rw-r--r--src/network/access/qhttpnetworkconnection_p.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/network/access/qhttpnetworkconnection_p.h b/src/network/access/qhttpnetworkconnection_p.h
index 70b9cf3754..18ec92a07a 100644
--- a/src/network/access/qhttpnetworkconnection_p.h
+++ b/src/network/access/qhttpnetworkconnection_p.h
@@ -61,6 +61,7 @@
#include <qauthenticator.h>
#include <qnetworkproxy.h>
#include <qbuffer.h>
+#include <qtimer.h>
#include <private/qhttpnetworkheader_p.h>
#include <private/qhttpnetworkrequest_p.h>
@@ -134,6 +135,7 @@ private:
Q_PRIVATE_SLOT(d_func(), void _q_startNextRequest())
Q_PRIVATE_SLOT(d_func(), void _q_hostLookupFinished(QHostInfo))
+ Q_PRIVATE_SLOT(d_func(), void _q_connectIPv4Channel())
};
@@ -196,6 +198,7 @@ public:
void _q_startNextRequest(); // send the next request from the queue
void _q_hostLookupFinished(QHostInfo info);
+ void _q_connectIPv4Channel();
void createAuthorization(QAbstractSocket *socket, QHttpNetworkRequest &request);
@@ -209,6 +212,7 @@ public:
bool encrypt;
const int channelCount;
+ QTimer ipv4ConnectTimer;
QHttpNetworkConnectionChannel *channels; // parallel connections to the server
bool shouldEmitChannelError(QAbstractSocket *socket);