diff options
author | Gatis Paeglis <gatis.paeglis@digia.com> | 2014-06-12 12:37:44 +0200 |
---|---|---|
committer | Gatis Paeglis <gatis.paeglis@digia.com> | 2014-06-13 09:39:28 +0300 |
commit | 84cb69dd5af6d2e44cce7bbef2536706d781f799 (patch) | |
tree | e5bccd42551a4f836dfbdeaa5754017bf1a6d26c /src | |
parent | a63568ab216fb0fa8e13eaa26358f9fe5af108ae (diff) |
Don't hardcode interface name in getIPAddress()
Change-Id: I29ac16d598ce56a7fa0a7b3b5bb89ca12d5f074a
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@digia.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/utils/qdroidutils.cpp | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/src/utils/qdroidutils.cpp b/src/utils/qdroidutils.cpp index d880de9..379fc20 100644 --- a/src/utils/qdroidutils.cpp +++ b/src/utils/qdroidutils.cpp @@ -225,14 +225,20 @@ bool QDroidUtils::setDisplayBrightness(quint8 value) */ QString QDroidUtils::getIPAddress() { - QStringList addresses; - QNetworkInterface interface = QNetworkInterface::interfaceFromName(QStringLiteral("eth0")); - QList<QNetworkAddressEntry> entries; - entries = interface.addressEntries(); - foreach (const QNetworkAddressEntry &entry, entries) { - addresses.append(entry.ip().toString().split('%').first()); + QList<QNetworkInterface> availableInterfaces = QNetworkInterface::allInterfaces(); + if (availableInterfaces.length() > 0) { + foreach (const QNetworkInterface &interface, availableInterfaces) { + if (interface.flags() & QNetworkInterface::IsRunning + && (interface.flags() & QNetworkInterface::IsLoopBack) == 0) { + QList<QNetworkAddressEntry> entries = interface.addressEntries(); + QStringList addresses; + foreach (const QNetworkAddressEntry &entry, entries) + addresses.append(entry.ip().toString().split('%').first()); + return addresses.join(QStringLiteral(", ")); + } + } } - return addresses.join(QStringLiteral(", ")); + return QString(); } /*! |