From cea8e41dc838bcdc2ec63eefac6441ddc608e390 Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Mon, 24 Oct 2011 11:07:02 +0100 Subject: Network - Use isLoopback API in place of existing localhost checks Various places in QtNetwork checked for Localhost or LocalHostIPv6, i.e. 127.0.0.1 or ::1. By using the isLoopback API, other loopback addresses are treated the same way (e.g. 127.0.0.2 and ::ffff:127.0.0.1) Task-number: QTBUG-22246 Change-Id: I46f55630d8646fd68034a509969a0b7cb72ca77c Reviewed-by: Thiago Macieira (Intel) --- src/network/access/qnetworkaccessbackend.cpp | 3 +-- src/network/access/qnetworkreplyhttpimpl.cpp | 3 +-- src/network/socket/qabstractsocket.cpp | 3 +-- src/network/socket/qnativesocketengine.cpp | 2 +- src/network/socket/qsymbiansocketengine.cpp | 2 +- src/network/socket/qtcpserver.cpp | 3 +-- 6 files changed, 6 insertions(+), 10 deletions(-) (limited to 'src') diff --git a/src/network/access/qnetworkaccessbackend.cpp b/src/network/access/qnetworkaccessbackend.cpp index e8483a9029..8dfcb33282 100644 --- a/src/network/access/qnetworkaccessbackend.cpp +++ b/src/network/access/qnetworkaccessbackend.cpp @@ -372,8 +372,7 @@ bool QNetworkAccessBackend::start() const QString host = reply->url.host(); if (host == QLatin1String("localhost") || - QHostAddress(host) == QHostAddress::LocalHost || - QHostAddress(host) == QHostAddress::LocalHostIPv6) { + QHostAddress(host).isLoopback()) { // Don't need an open session for localhost access. } else { // need to wait for session to be opened diff --git a/src/network/access/qnetworkreplyhttpimpl.cpp b/src/network/access/qnetworkreplyhttpimpl.cpp index 52cbaae5e0..2df18b24d9 100644 --- a/src/network/access/qnetworkreplyhttpimpl.cpp +++ b/src/network/access/qnetworkreplyhttpimpl.cpp @@ -1504,8 +1504,7 @@ bool QNetworkReplyHttpImplPrivate::start() // This is not ideal. const QString host = url.host(); if (host == QLatin1String("localhost") || - QHostAddress(host) == QHostAddress::LocalHost || - QHostAddress(host) == QHostAddress::LocalHostIPv6) { + QHostAddress(host).isLoopback()) { // Don't need an open session for localhost access. postRequest(); return true; diff --git a/src/network/socket/qabstractsocket.cpp b/src/network/socket/qabstractsocket.cpp index b662a75259..e5bb72f36a 100644 --- a/src/network/socket/qabstractsocket.cpp +++ b/src/network/socket/qabstractsocket.cpp @@ -802,8 +802,7 @@ void QAbstractSocketPrivate::resolveProxy(const QString &hostname, quint16 port) if (hostname == QLatin1String("localhost") || hostname.startsWith(QLatin1String("localhost.")) || (parsed.setAddress(hostname) - && (parsed == QHostAddress::LocalHost - || parsed == QHostAddress::LocalHostIPv6))) { + && (parsed.isLoopback()))) { proxyInUse = QNetworkProxy::NoProxy; return; } diff --git a/src/network/socket/qnativesocketengine.cpp b/src/network/socket/qnativesocketengine.cpp index 465d26e382..5e3e22a23e 100644 --- a/src/network/socket/qnativesocketengine.cpp +++ b/src/network/socket/qnativesocketengine.cpp @@ -281,7 +281,7 @@ void QNativeSocketEnginePrivate::setError(QAbstractSocket::SocketError error, Er bool QNativeSocketEnginePrivate::checkProxy(const QHostAddress &address) { - if (address == QHostAddress::LocalHost || address == QHostAddress::LocalHostIPv6) + if (address.isLoopback()) return true; #if !defined(QT_NO_NETWORKPROXY) diff --git a/src/network/socket/qsymbiansocketengine.cpp b/src/network/socket/qsymbiansocketengine.cpp index 15635ff4ab..f8831d3b45 100644 --- a/src/network/socket/qsymbiansocketengine.cpp +++ b/src/network/socket/qsymbiansocketengine.cpp @@ -1283,7 +1283,7 @@ bool QSymbianSocketEngine::setMulticastInterface(const QNetworkInterface &iface) bool QSymbianSocketEnginePrivate::checkProxy(const QHostAddress &address) { - if (address == QHostAddress::LocalHost || address == QHostAddress::LocalHostIPv6) + if (address.isLoopback()) return true; #if !defined(QT_NO_NETWORKPROXY) diff --git a/src/network/socket/qtcpserver.cpp b/src/network/socket/qtcpserver.cpp index ccdc50efcb..f82348a6cb 100644 --- a/src/network/socket/qtcpserver.cpp +++ b/src/network/socket/qtcpserver.cpp @@ -177,8 +177,7 @@ QTcpServerPrivate::~QTcpServerPrivate() */ QNetworkProxy QTcpServerPrivate::resolveProxy(const QHostAddress &address, quint16 port) { - if (address == QHostAddress::LocalHost || - address == QHostAddress::LocalHostIPv6) + if (address.isLoopback()) return QNetworkProxy::NoProxy; QList proxies; -- cgit v1.2.3