diff options
author | Louai Al-Khanji <louai.al-khanji@theqtcompany.com> | 2015-10-15 16:24:54 +0300 |
---|---|---|
committer | Louai Al-Khanji <louai.al-khanji@theqtcompany.com> | 2015-11-21 15:38:39 +0000 |
commit | dbb7817e13bc7f7ccb8f04b00a65eb3dcf8d25f8 (patch) | |
tree | 6b786e700e14bfe100bebd753b7133830231dac4 /src/network | |
parent | 496823b9a856d649c468d03b64241562807f3c16 (diff) |
Remove remaining support for Blackberry
The platform is no longer supported or actively maintained, and is
in the way for improvements to the Unix event dispatcher and QProcess
implementations.
Change-Id: I3935488ca12e2139ea5f46068d7665a453e20526
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Diffstat (limited to 'src/network')
-rw-r--r-- | src/network/bearer/qnetworkconfiguration.cpp | 103 | ||||
-rw-r--r-- | src/network/bearer/qnetworkconfiguration_p.h | 11 | ||||
-rw-r--r-- | src/network/kernel/kernel.pri | 4 | ||||
-rw-r--r-- | src/network/kernel/qnetworkproxy.cpp | 10 | ||||
-rw-r--r-- | src/network/kernel/qnetworkproxy_blackberry.cpp | 165 | ||||
-rw-r--r-- | src/network/socket/qnativesocketengine_unix.cpp | 48 |
6 files changed, 0 insertions, 341 deletions
diff --git a/src/network/bearer/qnetworkconfiguration.cpp b/src/network/bearer/qnetworkconfiguration.cpp index 6b56d3ec88..b68abce380 100644 --- a/src/network/bearer/qnetworkconfiguration.cpp +++ b/src/network/bearer/qnetworkconfiguration.cpp @@ -35,11 +35,6 @@ #include "qnetworkconfiguration_p.h" #include <QDebug> -#ifdef Q_OS_BLACKBERRY -#include "private/qcore_unix_p.h" // qt_safe_open -#include <sys/pps.h> -#endif // Q_OS_BLACKBERRY - QT_BEGIN_NAMESPACE /*! @@ -202,77 +197,6 @@ QT_BEGIN_NAMESPACE \value BearerLTE The configuration is for a LTE (4G) interface. */ -#ifdef Q_OS_BLACKBERRY -static const char cellularStatusFile[] = "/pps/services/radioctrl/modem0/status_public"; - -static QNetworkConfiguration::BearerType cellularStatus() -{ - QNetworkConfiguration::BearerType ret = QNetworkConfiguration::BearerUnknown; - - int cellularStatusFD; - if ((cellularStatusFD = qt_safe_open(cellularStatusFile, O_RDONLY)) == -1) { - qWarning() << Q_FUNC_INFO << "failed to open" << cellularStatusFile; - return ret; - } - char buf[2048]; - if (qt_safe_read(cellularStatusFD, &buf, sizeof(buf)) == -1) { - qWarning() << Q_FUNC_INFO << "read from PPS file failed:" << strerror(errno); - qt_safe_close(cellularStatusFD); - return ret; - } - pps_decoder_t ppsDecoder; - if (pps_decoder_initialize(&ppsDecoder, buf) != PPS_DECODER_OK) { - qWarning() << Q_FUNC_INFO << "failed to initialize PPS decoder"; - qt_safe_close(cellularStatusFD); - return ret; - } - pps_decoder_error_t err; - if ((err = pps_decoder_push(&ppsDecoder, 0)) != PPS_DECODER_OK) { - qWarning() << Q_FUNC_INFO << "pps_decoder_push failed" << err; - pps_decoder_cleanup(&ppsDecoder); - qt_safe_close(cellularStatusFD); - return ret; - } - if (!pps_decoder_is_integer(&ppsDecoder, "network_technology")) { - qWarning() << Q_FUNC_INFO << "field has not the expected data type"; - pps_decoder_cleanup(&ppsDecoder); - qt_safe_close(cellularStatusFD); - return ret; - } - int type; - if (!pps_decoder_get_int(&ppsDecoder, "network_technology", &type) - == PPS_DECODER_OK) { - qWarning() << Q_FUNC_INFO << "could not read bearer type from PPS"; - pps_decoder_cleanup(&ppsDecoder); - qt_safe_close(cellularStatusFD); - return ret; - } - switch (type) { - case 0: // 0 == NONE - break; // unhandled - case 1: // fallthrough, 1 == GSM - case 4: // 4 == CDMA_1X - ret = QNetworkConfiguration::Bearer2G; - break; - case 2: // 2 == UMTS - ret = QNetworkConfiguration::BearerWCDMA; - break; - case 8: // 8 == EVDO - ret = QNetworkConfiguration::BearerEVDO; - break; - case 16: // 16 == LTE - ret = QNetworkConfiguration::BearerLTE; - break; - default: - qWarning() << Q_FUNC_INFO << "unhandled bearer type" << type; - break; - } - pps_decoder_cleanup(&ppsDecoder); - qt_safe_close(cellularStatusFD); - return ret; -} -#endif // Q_OS_BLACKBERRY - /*! Constructs an invalid configuration object. @@ -494,19 +418,6 @@ QNetworkConfiguration::BearerType QNetworkConfiguration::bearerType() const return BearerUnknown; QMutexLocker locker(&d->mutex); - -#ifdef Q_OS_BLACKBERRY - // for cellular configurations, we need to determine the exact - // type right now, because it might have changed after the last scan - if (d->bearerType == QNetworkConfiguration::Bearer2G) { - QNetworkConfiguration::BearerType type = cellularStatus(); - // if reading the status failed for some reason, just - // fall back to 2G - return (type == QNetworkConfiguration::BearerUnknown) - ? QNetworkConfiguration::Bearer2G : type; - } -#endif // Q_OS_BLACKBERRY - return d->bearerType; } @@ -639,20 +550,6 @@ QString QNetworkConfiguration::bearerTypeName() const case BearerWLAN: return QStringLiteral("WLAN"); case Bearer2G: -#ifdef Q_OS_BLACKBERRY - { - // for cellular configurations, we need to determine the exact - // type right now, because it might have changed after the last scan - QNetworkConfiguration::BearerType type = cellularStatus(); - if (type == QNetworkConfiguration::BearerWCDMA) { - return QStringLiteral("WCDMA"); - } else if (type == QNetworkConfiguration::BearerEVDO) { - return QStringLiteral("EVDO"); - }else if (type == QNetworkConfiguration::BearerLTE) { - return QStringLiteral("LTE"); - } - } -#endif // Q_OS_BLACKBERRY return QStringLiteral("2G"); case Bearer3G: return QStringLiteral("3G"); diff --git a/src/network/bearer/qnetworkconfiguration_p.h b/src/network/bearer/qnetworkconfiguration_p.h index 75df36fbd9..c8d926e32f 100644 --- a/src/network/bearer/qnetworkconfiguration_p.h +++ b/src/network/bearer/qnetworkconfiguration_p.h @@ -51,10 +51,6 @@ #include <QtCore/qmutex.h> #include <QtCore/qmap.h> -#ifdef Q_OS_BLACKBERRY -#include <bps/netstatus.h> -#endif - QT_BEGIN_NAMESPACE typedef QExplicitlySharedDataPointer<QNetworkConfigurationPrivate> QNetworkConfigurationPrivatePointer; @@ -66,9 +62,6 @@ public: type(QNetworkConfiguration::Invalid), purpose(QNetworkConfiguration::UnknownPurpose), bearerType(QNetworkConfiguration::BearerUnknown), -#ifdef Q_OS_BLACKBERRY - oldIpStatus(NETSTATUS_IP_STATUS_ERROR_UNKNOWN), -#endif isValid(false), roamingSupported(false) {} virtual ~QNetworkConfigurationPrivate() @@ -89,10 +82,6 @@ public: QNetworkConfiguration::Purpose purpose; QNetworkConfiguration::BearerType bearerType; -#ifdef Q_OS_BLACKBERRY - netstatus_ip_status_t oldIpStatus; -#endif - bool isValid; bool roamingSupported; diff --git a/src/network/kernel/kernel.pri b/src/network/kernel/kernel.pri index 435bfd6c27..8ca9366b0a 100644 --- a/src/network/kernel/kernel.pri +++ b/src/network/kernel/kernel.pri @@ -55,10 +55,6 @@ mac { mac:!ios:SOURCES += kernel/qnetworkproxy_mac.cpp else:win32:SOURCES += kernel/qnetworkproxy_win.cpp -else:blackberry { - SOURCES += kernel/qnetworkproxy_blackberry.cpp - LIBS_PRIVATE += -lbps -} else:contains(QT_CONFIG, libproxy) { SOURCES += kernel/qnetworkproxy_libproxy.cpp LIBS_PRIVATE += -lproxy diff --git a/src/network/kernel/qnetworkproxy.cpp b/src/network/kernel/qnetworkproxy.cpp index 4c7c0c5442..4263938fdf 100644 --- a/src/network/kernel/qnetworkproxy.cpp +++ b/src/network/kernel/qnetworkproxy.cpp @@ -1530,12 +1530,6 @@ void QNetworkProxyFactory::setApplicationProxyFactory(QNetworkProxyFactory *fact SOCKS server for all queries. If SOCKS isn't enabled, it will use the HTTPS proxy for all TcpSocket and UrlRequest queries. - On BlackBerry, this function obtains proxy settings for the default - configuration using system configuration. The type will be set based on - protocol tag "http", "https", "ftp", respectively. By default, it - assumes http type. Proxy username and password are also set during - the query using system configuration. - On other systems, this function will pick up proxy settings from the "http_proxy" environment variable. This variable must be a URL using one of the following schemes: "http", "socks5" or "socks5h". @@ -1552,10 +1546,6 @@ void QNetworkProxyFactory::setApplicationProxyFactory(QNetworkProxyFactory *fact \li On Windows platforms, this function may take several seconds to execute depending on the configuration of the user's system. - - \li On BlackBerry, only UrlRequest and TcpSocket queries are supported. SOCKS is - not supported. The proxy credentials are only retrieved for the - default configuration. \endlist */ diff --git a/src/network/kernel/qnetworkproxy_blackberry.cpp b/src/network/kernel/qnetworkproxy_blackberry.cpp deleted file mode 100644 index ca30a65397..0000000000 --- a/src/network/kernel/qnetworkproxy_blackberry.cpp +++ /dev/null @@ -1,165 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Research In Motion -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the QtNetwork module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL21$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 or version 3 as published by the Free -** Software Foundation and appearing in the file LICENSE.LGPLv21 and -** LICENSE.LGPLv3 included in the packaging of this file. Please review the -** following information to ensure the GNU Lesser General Public License -** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** As a special exception, The Qt Company gives you certain additional -** rights. These rights are described in The Qt Company LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -/** - * Some notes about the code: - * - * ** It is assumed that the system proxies are for url based requests - * ie. HTTP/HTTPS based. - */ - -#include <QtNetwork/qnetworkproxy.h> - -#ifndef QT_NO_NETWORKPROXY - - -#include <QtCore/qflags.h> -#include <QtCore/qurl.h> -#include <QtNetwork/qnetworkconfiguration.h> - -#include <bps/netstatus.h> -#include <errno.h> - - -QT_BEGIN_NAMESPACE - -QList<QNetworkProxy> QNetworkProxyFactory::systemProxyForQuery(const QNetworkProxyQuery &query) -{ - if (query.url().scheme() == QLatin1String("file") - || query.url().scheme() == QLatin1String("qrc")) - return QList<QNetworkProxy>() << QNetworkProxy(QNetworkProxy::NoProxy); - - if (query.queryType() != QNetworkProxyQuery::UrlRequest - && query.queryType() != QNetworkProxyQuery::TcpSocket) { - qWarning("Unsupported query type: %d", query.queryType()); - return QList<QNetworkProxy>() << QNetworkProxy(QNetworkProxy::NoProxy); - } - - QUrl url; - if (query.queryType() == QNetworkProxyQuery::UrlRequest) { - url = query.url(); - } else if (query.queryType() == QNetworkProxyQuery::TcpSocket - && !query.peerHostName().isEmpty()) { - url.setHost(query.peerHostName()); - switch (query.peerPort()) { - case 443: - url.setScheme(QStringLiteral("https")); - break; - case 21: - url.setScheme(QStringLiteral("ftp")); - break; - default: - // for unknown ports, we just pretend we are dealing - // with a HTTP URL, otherwise we will not get a proxy - // from the netstatus API - url.setScheme(QStringLiteral("http")); - } - } - - if (!url.isValid()) { - qWarning("Invalid URL: %s", qPrintable(url.toString())); - return QList<QNetworkProxy>() << QNetworkProxy(QNetworkProxy::NoProxy); - } - - netstatus_proxy_details_t details; - memset(&details, 0, sizeof(netstatus_proxy_details_t)); - -#if BPS_VERSION >= 3001001 - - QByteArray bUrl(url.toEncoded()); - QString sInterface(query.networkConfiguration().name()); - QByteArray bInterface; - if (!sInterface.isEmpty()) { - if (query.networkConfiguration().type() != QNetworkConfiguration::InternetAccessPoint) { - qWarning("Unsupported configuration type: %d", query.networkConfiguration().type()); - return QList<QNetworkProxy>() << QNetworkProxy(QNetworkProxy::NoProxy); - } - bInterface = sInterface.toUtf8(); - } - - if (netstatus_get_proxy_details_for_url(bUrl.constData(), (bInterface.isEmpty() ? NULL : bInterface.constData()), &details) != BPS_SUCCESS) { - qWarning("netstatus_get_proxy_details_for_url failed! errno: %d", errno); - return QList<QNetworkProxy>() << QNetworkProxy(QNetworkProxy::NoProxy); - } - -#else - - if (netstatus_get_proxy_details(&details) != BPS_SUCCESS) { - qWarning("netstatus_get_proxy_details failed! errno: %d", errno); - return QList<QNetworkProxy>() << QNetworkProxy(QNetworkProxy::NoProxy); - } - -#endif - - if (details.http_proxy_host == NULL) { // No proxy - netstatus_free_proxy_details(&details); - return QList<QNetworkProxy>() << QNetworkProxy(QNetworkProxy::NoProxy); - } - - QNetworkProxy proxy; - - QString protocol = query.protocolTag(); - if (protocol.startsWith(QLatin1String("http"), Qt::CaseInsensitive)) { // http, https - proxy.setType((QNetworkProxy::HttpProxy)); - } else if (protocol == QLatin1String("ftp")) { - proxy.setType(QNetworkProxy::FtpCachingProxy); - } else { // assume http proxy - qDebug("Proxy type: %s assumed to be http proxy", qPrintable(protocol)); - proxy.setType((QNetworkProxy::HttpProxy)); - } - - // Set host - // Note: ftp and https proxy type fields *are* obsolete. - // The user interface allows only one host/port which gets duplicated - // to all proxy type fields. - proxy.setHostName(QString::fromUtf8(details.http_proxy_host)); - - // Set port - proxy.setPort(details.http_proxy_port); - - // Set username - if (details.http_proxy_login_user) - proxy.setUser(QString::fromUtf8(details.http_proxy_login_user)); - - // Set password - if (details.http_proxy_login_password) - proxy.setPassword(QString::fromUtf8(details.http_proxy_login_password)); - - netstatus_free_proxy_details(&details); - - return QList<QNetworkProxy>() << proxy; -} - -QT_END_NAMESPACE - -#endif diff --git a/src/network/socket/qnativesocketengine_unix.cpp b/src/network/socket/qnativesocketengine_unix.cpp index 6aff1d25b2..2ed39fcc0a 100644 --- a/src/network/socket/qnativesocketengine_unix.cpp +++ b/src/network/socket/qnativesocketengine_unix.cpp @@ -1185,53 +1185,6 @@ qint64 QNativeSocketEnginePrivate::nativeRead(char *data, qint64 maxSize) return qint64(r); } -#ifdef Q_OS_BLACKBERRY -int QNativeSocketEnginePrivate::nativeSelect(int timeout, bool selectForRead) const -{ - fd_set fds; - FD_ZERO(&fds); - FD_SET(socketDescriptor, &fds); - - int retval; - QList<QSocketNotifier *> notifiers; - if (selectForRead) { - notifiers << readNotifier; - retval = bb_select(notifiers, socketDescriptor + 1, &fds, 0, timeout); - } else { - notifiers << writeNotifier; - retval = bb_select(notifiers, socketDescriptor + 1, 0, &fds, timeout); - } - - return retval; -} - -int QNativeSocketEnginePrivate::nativeSelect(int timeout, bool checkRead, bool checkWrite, - bool *selectForRead, bool *selectForWrite) const -{ - fd_set fdread; - FD_ZERO(&fdread); - if (checkRead) - FD_SET(socketDescriptor, &fdread); - - fd_set fdwrite; - FD_ZERO(&fdwrite); - if (checkWrite) - FD_SET(socketDescriptor, &fdwrite); - - QList<QSocketNotifier *> notifiers; - notifiers << readNotifier << writeNotifier; - int ret = bb_select(notifiers, socketDescriptor + 1, &fdread, &fdwrite, timeout); - - if (ret <= 0) - return ret; - *selectForRead = FD_ISSET(socketDescriptor, &fdread); - *selectForWrite = FD_ISSET(socketDescriptor, &fdwrite); - - return ret; -} - -#else // not Q_OS_BLACKBERRY: - int QNativeSocketEnginePrivate::nativeSelect(int timeout, bool selectForRead) const { fd_set fds; @@ -1278,6 +1231,5 @@ int QNativeSocketEnginePrivate::nativeSelect(int timeout, bool checkRead, bool c return ret; } -#endif // Q_OS_BLACKBERRY QT_END_NAMESPACE |