Remove redundant checks in CNetworkUtils::getKnownLocalIpV4Addresses()

refs #869
This commit is contained in:
Roland Winklmeier
2017-02-15 15:09:36 +01:00
committed by Mathew Sutcliffe
parent 7edd1bb621
commit 98b2061d3d
3 changed files with 6 additions and 10 deletions

View File

@@ -94,17 +94,14 @@ namespace BlackMisc
QStringList CNetworkUtils::getKnownLocalIpV4Addresses()
{
QStringList ips;
if (!CNetworkUtils::hasConnectedInterface(false)) {return ips; }
for (const QHostAddress &address : QNetworkInterface::allAddresses())
const QList<QHostAddress> allAddresses = QNetworkInterface::allAddresses();
for (const QHostAddress &address : allAddresses)
{
if (address.isLoopback() || address.isNull()) continue;
if (address.protocol() == QAbstractSocket::IPv4Protocol && address != QHostAddress(QHostAddress::LocalHost))
if (address.isNull()) { continue; }
if (address.protocol() == QAbstractSocket::IPv4Protocol)
{
QString a = address.toString();
if (CNetworkUtils::isValidIPv4Address(a))
{
ips.append(a);
}
ips.append(a);
}
}
ips.sort();

View File

@@ -86,7 +86,7 @@ namespace BlackMisc
//! Can connect to URL?
static bool canConnect(const BlackMisc::Network::CUrl &url, int timeoutMs = getTimeoutMs());
//! Find out my IPv4 address, empty if not possible
//! Find out my IPv4 addresses including loopback, empty if not possible
static QStringList getKnownLocalIpV4Addresses();
//! Valid IPv4 address