summaryrefslogtreecommitdiffstats
path: root/src/plugins/bearer
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@digia.com>2014-09-22 14:17:52 +0200
committerFrederik Gladhorn <frederik.gladhorn@digia.com>2014-09-23 11:23:36 +0200
commitc5a3e5edd9e63b18abf1838c86a27a662224b02c (patch)
tree9a367c113d9b586da73439cb100744d616ce6399 /src/plugins/bearer
parent3312ac91692c3a4a033d123eecbf982d3ff10471 (diff)
parenta5df2e7120412dfdedb9f4951cdb061c0f218bf7 (diff)
Merge remote-tracking branch 'origin/5.3' into 5.4
The isAlwaysAskOption was removed in 38621713150b663355ebeb799a5a50d8e39a3c38 so manually removed code in src/plugins/bearer/connman/qconnmanengine.cpp Conflicts: src/corelib/global/qglobal.h src/corelib/tools/qcollator_macx.cpp src/corelib/tools/qstring.cpp src/gui/kernel/qwindow.cpp src/gui/kernel/qwindow_p.h src/gui/text/qtextengine.cpp src/platformsupport/fontdatabases/fontconfig/qfontenginemultifontconfig_p.h src/plugins/platforms/android/qandroidinputcontext.cpp src/plugins/platforms/xcb/qglxintegration.cpp src/plugins/platforms/xcb/qglxintegration.h src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/testlib/qtestcase.cpp src/testlib/qtestlog.cpp src/widgets/dialogs/qfiledialog.cpp src/widgets/kernel/qwindowcontainer.cpp tests/auto/corelib/tools/qcollator/tst_qcollator.cpp tests/auto/gui/text/qtextscriptengine/tst_qtextscriptengine.cpp tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp Change-Id: Ic5d4187f682257a17509f6cd28d2836c6cfe2fc8
Diffstat (limited to 'src/plugins/bearer')
-rw-r--r--src/plugins/bearer/connman/connman.pro1
-rw-r--r--src/plugins/bearer/connman/qconnmanengine.cpp60
-rw-r--r--src/plugins/bearer/connman/qconnmanengine.h5
-rw-r--r--src/plugins/bearer/corewlan/qcorewlanengine.mm3
-rw-r--r--src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm3
-rw-r--r--src/plugins/bearer/generic/qgenericengine.cpp1
6 files changed, 10 insertions, 63 deletions
diff --git a/src/plugins/bearer/connman/connman.pro b/src/plugins/bearer/connman/connman.pro
index 0da2dfacf6..bc4efe8b62 100644
--- a/src/plugins/bearer/connman/connman.pro
+++ b/src/plugins/bearer/connman/connman.pro
@@ -6,7 +6,6 @@ load(qt_plugin)
QT = core network-private dbus
CONFIG += link_pkgconfig
-packagesExist(connectionagent) { DEFINES += QT_HAS_CONNECTIONAGENT }
HEADERS += qconnmanservice_linux_p.h \
qofonoservice_linux_p.h \
diff --git a/src/plugins/bearer/connman/qconnmanengine.cpp b/src/plugins/bearer/connman/qconnmanengine.cpp
index adefb7504e..3d7daedeb0 100644
--- a/src/plugins/bearer/connman/qconnmanengine.cpp
+++ b/src/plugins/bearer/connman/qconnmanengine.cpp
@@ -54,11 +54,6 @@
#include <QtDBus/QDBusInterface>
#include <QtDBus/QDBusMessage>
#include <QtDBus/QDBusReply>
-#ifdef QT_HAS_CONNECTIONAGENT
-#include <sys/inotify.h>
-#include <fcntl.h>
-#include <qcore_unix_p.h>
-#endif
#ifndef QT_NO_BEARERMANAGEMENT
#ifndef QT_NO_DBUS
@@ -78,9 +73,6 @@ QConnmanEngine::QConnmanEngine(QObject *parent)
QConnmanEngine::~QConnmanEngine()
{
-#ifdef QT_HAS_CONNECTIONAGENT
- qt_safe_close(inotifyFileDescriptor);
-#endif
}
bool QConnmanEngine::connmanAvailable() const
@@ -108,16 +100,6 @@ void QConnmanEngine::initialize()
addServiceConfiguration(servPath);
}
Q_EMIT updateCompleted();
-#ifdef QT_HAS_CONNECTIONAGENT
- QSettings confFile(QStringLiteral("nemomobile"),QStringLiteral("connectionagent"));
-
- inotifyFileDescriptor = ::inotify_init();
- inotifyWatcher = ::inotify_add_watch(inotifyFileDescriptor, QFile::encodeName(confFile.fileName()), IN_MODIFY);
- if (inotifyWatcher > 0) {
- QSocketNotifier *notifier = new QSocketNotifier(inotifyFileDescriptor, QSocketNotifier::Read, this);
- connect(notifier, SIGNAL(activated(int)), this, SLOT(inotifyActivated()));
- }
-#endif
}
void QConnmanEngine::changedModem()
@@ -195,10 +177,6 @@ void QConnmanEngine::connectToId(const QString &id)
emit connectionError(id, QBearerEngineImpl::OperationNotSupported);
return;
}
- if (isAlwaysAskRoaming()) {
- emit connectionError(id, QBearerEngineImpl::OperationNotSupported);
- return;
- }
}
}
if (serv->autoConnect())
@@ -272,12 +250,11 @@ QNetworkSession::State QConnmanEngine::sessionStateForId(const QString &id)
return QNetworkSession::Disconnected;
}
- if (servState == QLatin1String("association") || servState == QLatin1String("configuration")
- || servState == QLatin1String("ready")) {
+ if (servState == QLatin1String("association") || servState == QLatin1String("configuration")) {
return QNetworkSession::Connecting;
}
- if (servState == QLatin1String("online")) {
+ if (servState == QLatin1String("online") || servState == QLatin1String("ready")) {
return QNetworkSession::Connected;
}
@@ -421,9 +398,8 @@ QNetworkConfiguration::StateFlags QConnmanEngine::getStateForService(const QStri
if (serv->type() == QLatin1String("cellular")) {
- if (!serv->autoConnect()
- || (serv->roaming()
- && (isAlwaysAskRoaming() || !isRoamingAllowed(serv->path())))) {
+ if (!serv->autoConnect()|| (serv->roaming()
+ && !isRoamingAllowed(serv->path()))) {
flag = (flag | QNetworkConfiguration::Defined);
} else {
flag = (flag | QNetworkConfiguration::Discovered);
@@ -437,7 +413,7 @@ QNetworkConfiguration::StateFlags QConnmanEngine::getStateForService(const QStri
flag = QNetworkConfiguration::Undefined;
}
}
- if (state == QLatin1String("online")) {
+ if (state == QLatin1String("online") || state == QLatin1String("ready")) {
flag = (flag | QNetworkConfiguration::Active);
}
@@ -576,17 +552,6 @@ bool QConnmanEngine::requiresPolling() const
return false;
}
-bool QConnmanEngine::isAlwaysAskRoaming()
-{
-#ifdef QT_HAS_CONNECTIONAGENT
- QSettings confFile(QStringLiteral("nemomobile"),QStringLiteral("connectionagent"));
- confFile.beginGroup(QStringLiteral("Connectionagent"));
- return confFile.value(QStringLiteral("askForRoaming")).toBool();
-#else
- return false;
-#endif
-}
-
void QConnmanEngine::reEvaluateCellular()
{
Q_FOREACH (const QString &servicePath, connmanManager->getServices()) {
@@ -596,21 +561,6 @@ void QConnmanEngine::reEvaluateCellular()
}
}
-void QConnmanEngine::inotifyActivated()
-{
-#ifdef QT_HAS_CONNECTIONAGENT
-
- char buffer[1024];
- int len = qt_safe_read(inotifyFileDescriptor, (void *)buffer, sizeof(buffer));
- if (len > 0) {
- struct inotify_event *event = (struct inotify_event *)buffer;
- if (event->wd == inotifyWatcher && (event->mask & IN_MODIFY) == 0) {
- QTimer::singleShot(1000, this, SLOT(reEvaluateCellular())); //give this time to finish write
- }
- }
-#endif
-}
-
QT_END_NAMESPACE
#endif // QT_NO_DBUS
diff --git a/src/plugins/bearer/connman/qconnmanengine.h b/src/plugins/bearer/connman/qconnmanengine.h
index 4a4e91659b..4d5495ae86 100644
--- a/src/plugins/bearer/connman/qconnmanengine.h
+++ b/src/plugins/bearer/connman/qconnmanengine.h
@@ -108,7 +108,6 @@ private Q_SLOTS:
void serviceStateChanged(const QString &state);
void configurationChange(QConnmanServiceInterface * service);
void reEvaluateCellular();
- void inotifyActivated();
private:
QConnmanManagerInterface *connmanManager;
@@ -134,12 +133,8 @@ private:
QNetworkConfiguration::BearerType ofonoTechToBearerType(const QString &type);
bool isRoamingAllowed(const QString &context);
- bool isAlwaysAskRoaming();
QMap <QString,QConnmanServiceInterface *> connmanServiceInterfaces;
- int inotifyWatcher;
- int inotifyFileDescriptor;
-
protected:
bool requiresPolling() const;
};
diff --git a/src/plugins/bearer/corewlan/qcorewlanengine.mm b/src/plugins/bearer/corewlan/qcorewlanengine.mm
index 554ad26e51..65e70876f2 100644
--- a/src/plugins/bearer/corewlan/qcorewlanengine.mm
+++ b/src/plugins/bearer/corewlan/qcorewlanengine.mm
@@ -419,7 +419,8 @@ QCoreWlanEngine::QCoreWlanEngine(QObject *parent)
QCoreWlanEngine::~QCoreWlanEngine()
{
- scanThread->wait(5000);
+ scanThread->terminate();
+ scanThread->wait();
while (!foundConfigurations.isEmpty())
delete foundConfigurations.takeFirst();
diff --git a/src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm b/src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm
index ba1cf33258..6cf614cb30 100644
--- a/src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm
+++ b/src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm
@@ -404,7 +404,8 @@ QCoreWlanEngine::QCoreWlanEngine(QObject *parent)
QCoreWlanEngine::~QCoreWlanEngine()
{
- scanThread->wait(5000);
+ scanThread->terminate();
+ scanThread->wait();
while (!foundConfigurations.isEmpty())
delete foundConfigurations.takeFirst();
diff --git a/src/plugins/bearer/generic/qgenericengine.cpp b/src/plugins/bearer/generic/qgenericengine.cpp
index d2579372c7..d687539d84 100644
--- a/src/plugins/bearer/generic/qgenericengine.cpp
+++ b/src/plugins/bearer/generic/qgenericengine.cpp
@@ -165,6 +165,7 @@ static QNetworkConfiguration::BearerType qGetInterfaceType(const QString &interf
ifreq request;
strncpy(request.ifr_name, interface.toLocal8Bit().data(), sizeof(request.ifr_name));
+ request.ifr_name[sizeof(request.ifr_name) - 1] = '\0';
int result = ioctl(sock, SIOCGIFHWADDR, &request);
close(sock);