summaryrefslogtreecommitdiffstats
path: root/src/network/access
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2016-06-06 08:34:03 +0200
committerLiang Qi <liang.qi@qt.io>2016-06-06 09:04:55 +0200
commit57057f76add416d0faf2e09a90c126baafb6198e (patch)
tree07d54f8e5daeb3ed1161723542e94c324d745166 /src/network/access
parentdc0ae02ebc8e221f952829230c0301a718a6f10b (diff)
parentfd70978693bd92761e9989bc1c76bf83c1e8c987 (diff)
Merge remote-tracking branch 'origin/5.6' into 5.7
Conflicts: .qmake.conf config.tests/unix/nis/nis.cpp mkspecs/unsupported/freebsd-g++/qplatformdefs.h src/corelib/tools/qdatetime.cpp src/corelib/tools/qsimd.cpp src/corelib/tools/qsimd_p.h src/network/access/access.pri src/network/access/qnetworkreplynsurlconnectionimpl.mm src/network/access/qnetworkreplynsurlconnectionimpl_p.h src/plugins/platforms/cocoa/qnsview.mm src/plugins/printsupport/windows/qwindowsprintdevice.cpp tests/auto/corelib/kernel/qobject/tst_qobject.cpp tests/auto/network/access/qnetworkreply/BLACKLIST tests/auto/widgets/widgets/qopenglwidget/BLACKLIST Change-Id: I4b32055bbf922392ef0264fd403405416fffee57
Diffstat (limited to 'src/network/access')
-rw-r--r--src/network/access/access.pri10
-rw-r--r--src/network/access/qhttpnetworkconnectionchannel.cpp2
-rw-r--r--src/network/access/qnetworkaccessmanager.cpp10
-rw-r--r--src/network/access/qnetworkreplynsurlconnectionimpl.mm458
-rw-r--r--src/network/access/qnetworkreplynsurlconnectionimpl_p.h87
5 files changed, 1 insertions, 566 deletions
diff --git a/src/network/access/access.pri b/src/network/access/access.pri
index 42c7c80f3b..38e9c25269 100644
--- a/src/network/access/access.pri
+++ b/src/network/access/access.pri
@@ -72,14 +72,4 @@ SOURCES += \
mac: LIBS_PRIVATE += -framework Security
-ios {
- HEADERS += \
- access/qnetworkreplynsurlconnectionimpl_p.h
-
- OBJECTIVE_SOURCES += \
- access/qnetworkreplynsurlconnectionimpl.mm
-
- LIBS_PRIVATE += -framework Foundation
-}
-
include($$PWD/../../3rdparty/zlib_dependency.pri)
diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp
index 56716cbe01..2f7be01078 100644
--- a/src/network/access/qhttpnetworkconnectionchannel.cpp
+++ b/src/network/access/qhttpnetworkconnectionchannel.cpp
@@ -331,7 +331,7 @@ bool QHttpNetworkConnectionChannel::ensureConnection()
priv->phase = QAuthenticatorPrivate::Start;
QString connectHost = connection->d_func()->hostName;
- qint16 connectPort = connection->d_func()->port;
+ quint16 connectPort = connection->d_func()->port;
#ifndef QT_NO_NETWORKPROXY
// HTTPS always use transparent proxy.
diff --git a/src/network/access/qnetworkaccessmanager.cpp b/src/network/access/qnetworkaccessmanager.cpp
index 927e103abc..587ab27a0f 100644
--- a/src/network/access/qnetworkaccessmanager.cpp
+++ b/src/network/access/qnetworkaccessmanager.cpp
@@ -56,10 +56,6 @@
#include "qnetworkreplydataimpl_p.h"
#include "qnetworkreplyfileimpl_p.h"
-#if defined(Q_OS_IOS) && defined(QT_NO_SSL)
-#include "qnetworkreplynsurlconnectionimpl_p.h"
-#endif
-
#include "QtCore/qbuffer.h"
#include "QtCore/qurl.h"
#include "QtCore/qvector.h"
@@ -1207,12 +1203,6 @@ QNetworkReply *QNetworkAccessManager::createRequest(QNetworkAccessManager::Opera
}
}
-// Use NSURLConnection for https on iOS when OpenSSL is disabled.
-#if defined(Q_OS_IOS) && defined(QT_NO_SSL)
- if (scheme == QLatin1String("https"))
- return new QNetworkReplyNSURLConnectionImpl(this, request, op, outgoingData);
-#endif
-
#ifndef QT_NO_HTTP
// Since Qt 5 we use the new QNetworkReplyHttpImpl
if (scheme == QLatin1String("http") || scheme == QLatin1String("preconnect-http")
diff --git a/src/network/access/qnetworkreplynsurlconnectionimpl.mm b/src/network/access/qnetworkreplynsurlconnectionimpl.mm
deleted file mode 100644
index 58a3ba1448..0000000000
--- a/src/network/access/qnetworkreplynsurlconnectionimpl.mm
+++ /dev/null
@@ -1,458 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2016 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of the QtNetwork module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** 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 https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://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 3 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL3 included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 3 requirements
-** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 2.0 or (at your option) the GNU General
-** Public license version 3 or any later version approved by the KDE Free
-** Qt Foundation. The licenses are as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-2.0.html and
-** https://www.gnu.org/licenses/gpl-3.0.html.
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include "qnetworkreplynsurlconnectionimpl_p.h"
-
-#include "QtCore/qdatetime.h"
-#include <QtCore/qcoreapplication.h>
-#include <QtCore/qdebug.h>
-#include <Foundation/Foundation.h>
-
-QT_BEGIN_NAMESPACE
-
-// Network reply implementation using NSUrlConnection.
-//
-// Class/object structure:
-//
-// QNetworkReplyNSURLConnectionImpl
-// |- QNetworkReplyNSURLConnectionImplPrivate
-// |- (bytes read)
-// |- (QIODevice and CFStream for async POST data transfer)
-// |- NSURLConnection
-// |- QtNSURLConnectionDelegate <NSURLConnectionDataDelegate>
-// |- NSURLResponse/NSHTTPURLResponse
-// |- (response data)
-//
-// The main entry point is the QNetworkReplyNSURLConnectionImpl constructor, which
-// receives a network request from QNetworkAccessManager. The constructor
-// creates a NSURLRequest and initiates a NSURLConnection with a QtNSURLConnectionDelegate.
-// The delegate callbacks are then called asynchronously as the request completes.
-//
-
-@class QtNSURLConnectionDelegate;
-class QNetworkReplyNSURLConnectionImplPrivate: public QNetworkReplyPrivate
-{
-public:
- QNetworkReplyNSURLConnectionImplPrivate();
- virtual ~QNetworkReplyNSURLConnectionImplPrivate();
-
- Q_DECLARE_PUBLIC(QNetworkReplyNSURLConnectionImpl)
- NSURLConnection * urlConnection;
- QtNSURLConnectionDelegate *urlConnectionDelegate;
- qint64 bytesRead;
-
- // Sequental outgiong data streaming
- QIODevice *outgoingData;
- CFReadStreamRef readStream;
- CFWriteStreamRef writeStream;
- CFIndex transferBufferSize;
-
- // Forwarding functions to the public class.
- void setFinished();
- void setHeader(QNetworkRequest::KnownHeaders header, const QVariant &value);
- void setRawHeader(const QByteArray &headerName, const QByteArray &value);
- void setError(QNetworkReply::NetworkError errorCode, const QString &errorString);
- void setAttribute(QNetworkRequest::Attribute code, const QVariant &value);
-};
-
-@interface QtNSURLConnectionDelegate : NSObject
-{
- NSURLResponse *response;
- NSMutableData *responseData;
- QNetworkReplyNSURLConnectionImplPrivate * replyprivate;
-}
-
-- (id)initWithQNetworkReplyNSURLConnectionImplPrivate:(QNetworkReplyNSURLConnectionImplPrivate *)a_replyPrivate ;
-#if QT_MAC_PLATFORM_SDK_EQUAL_OR_ABOVE(__MAC_10_7, __IPHONE_3_0)
-- (void)connection:(NSURLConnection *)connection willSendRequestForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge;
-#endif
-- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError*)error;
-- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse*)response;
-- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData*)data;
-- (void)connection:(NSURLConnection *)connection didSendBodyData:(NSInteger)bytesWritten
- totalBytesWritten:(NSInteger)totalBytesWritten totalBytesExpectedToWrite:(NSInteger)totalBytesExpectedToWrite;
-- (NSCachedURLResponse*)connection:(NSURLConnection*)connection willCacheResponse:(NSCachedURLResponse*)cachedResponse;
-- (NSURLRequest*)connection:(NSURLConnection*)connection willSendRequest:(NSURLRequest*)request redirectResponse:(NSURLResponse*)redirectResponse;
-- (void)connectionDidFinishLoading:(NSURLConnection*)connection;
-- (BOOL)connectionShouldUseCredentialStorage:(NSURLConnection*)connection;
-
-@end
-
-QNetworkReplyNSURLConnectionImplPrivate::QNetworkReplyNSURLConnectionImplPrivate()
- : QNetworkReplyPrivate()
- , urlConnection(0)
- , urlConnectionDelegate(0)
- , bytesRead(0)
- , readStream(0)
- , writeStream(0)
- , transferBufferSize(4096)
-{
-}
-
-QNetworkReplyNSURLConnectionImplPrivate::~QNetworkReplyNSURLConnectionImplPrivate()
-{
- [urlConnection cancel];
- [urlConnection release];
- [urlConnectionDelegate release];
- if (readStream)
- CFRelease(readStream);
- if (writeStream)
- CFRelease(writeStream);
-}
-
-void QNetworkReplyNSURLConnectionImplPrivate::setFinished()
-{
- q_func()->setFinished(true);
- QMetaObject::invokeMethod(q_func(), "finished", Qt::QueuedConnection);
-}
-
-void QNetworkReplyNSURLConnectionImplPrivate::setHeader(QNetworkRequest::KnownHeaders header, const QVariant &value)
-{
- q_func()->setHeader(header, value);
-}
-
-void QNetworkReplyNSURLConnectionImplPrivate::setRawHeader(const QByteArray &headerName, const QByteArray &value)
-{
- q_func()->setRawHeader(headerName, value);
-}
-
-void QNetworkReplyNSURLConnectionImplPrivate::setError(QNetworkReply::NetworkError errorCode, const QString &errorString)
-{
- q_func()->setError(errorCode, errorString);
-}
-
-void QNetworkReplyNSURLConnectionImplPrivate::setAttribute(QNetworkRequest::Attribute code, const QVariant &value)
-{
- q_func()->setAttribute(code, value);
-}
-
-void QNetworkReplyNSURLConnectionImpl::readyReadOutgoingData()
-{
- Q_D(QNetworkReplyNSURLConnectionImpl);
- int bytesRead = 0;
- do {
- char data[d->transferBufferSize];
- bytesRead = d->outgoingData->read(data, d->transferBufferSize);
- if (bytesRead <= 0)
- break;
- CFIndex bytesWritten = CFWriteStreamWrite(d->writeStream, reinterpret_cast<unsigned char *>(data), bytesRead);
- if (bytesWritten != bytesRead) {
- CFErrorRef err = CFWriteStreamCopyError(d->writeStream);
- qWarning() << "QNetworkReplyNSURLConnectionImpl: CFWriteStreamWrite error"
- << (err ? QString::number(CFErrorGetCode(err)) : QStringLiteral(""));
- }
- } while (bytesRead > 0);
-
- if (d->outgoingData->atEnd())
- CFWriteStreamClose(d->writeStream);
-}
-
-@interface QtNSURLConnectionDelegate ()
-
-@property (nonatomic, retain) NSURLResponse* response;
-@property (nonatomic, retain) NSMutableData* responseData;
-
-@end
-
-@implementation QtNSURLConnectionDelegate
-
-@synthesize response;
-@synthesize responseData;
-
-- (id)initWithQNetworkReplyNSURLConnectionImplPrivate:(QNetworkReplyNSURLConnectionImplPrivate *)a_replyPrivate
-{
- if (self = [super init])
- replyprivate = a_replyPrivate;
- return self;
-}
-
-- (void)dealloc
-{
- [response release];
- [responseData release];
- [super dealloc];
-}
-
-#if QT_MAC_PLATFORM_SDK_EQUAL_OR_ABOVE(__MAC_10_7, __IPHONE_3_0)
-- (void)connection:(NSURLConnection *)connection willSendRequestForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge
-{
- Q_UNUSED(connection)
- Q_UNUSED(challenge)
-
- if ([challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodServerTrust]) {
- SecTrustRef serverTrust = challenge.protectionSpace.serverTrust;
- SecTrustResultType resultType;
- SecTrustEvaluate(serverTrust, &resultType);
- if (resultType == kSecTrustResultUnspecified) {
- // All good
- [challenge.sender performDefaultHandlingForAuthenticationChallenge:challenge];
- } else if (resultType == kSecTrustResultRecoverableTrustFailure) {
- // Certificate verification error, ask user
- // ### TODO actually ask user
- // (test site: https://testssl-expire.disig.sk/index.en.html)
- qWarning() << "QNetworkReplyNSURLConnection: Certificate verification error handlig is"
- << "not implemented. Connection will time out.";
- } else {
- // other error, which the default handler will handle
- [challenge.sender performDefaultHandlingForAuthenticationChallenge:challenge];
- }
- }
-
- [challenge.sender performDefaultHandlingForAuthenticationChallenge:challenge];
-}
-#endif
-
-- (void)connection:(NSURLConnection*)connection didFailWithError:(NSError*)error
-{
- Q_UNUSED(connection)
-
- QNetworkReply::NetworkError qtError = QNetworkReply::UnknownNetworkError;
- if ([[error domain] isEqualToString:NSURLErrorDomain]) {
- switch ([error code]) {
- case NSURLErrorTimedOut: qtError = QNetworkReply::TimeoutError; break;
- case NSURLErrorUnsupportedURL: qtError = QNetworkReply::ProtocolUnknownError; break;
- case NSURLErrorCannotFindHost: qtError = QNetworkReply::HostNotFoundError; break;
- case NSURLErrorCannotConnectToHost: qtError = QNetworkReply::ConnectionRefusedError; break;
- case NSURLErrorNetworkConnectionLost: qtError = QNetworkReply::NetworkSessionFailedError; break;
- case NSURLErrorDNSLookupFailed: qtError = QNetworkReply::HostNotFoundError; break;
- case NSURLErrorNotConnectedToInternet: qtError = QNetworkReply::NetworkSessionFailedError; break;
- case NSURLErrorUserAuthenticationRequired: qtError = QNetworkReply::AuthenticationRequiredError; break;
- default: break;
- }
- }
-
- replyprivate->setError(qtError, QString::fromNSString([error localizedDescription]));
- replyprivate->setFinished();
-}
-
-- (void)connection:(NSURLConnection*)connection didReceiveResponse:(NSURLResponse*)aResponse
-{
- Q_UNUSED(connection)
- self.response = aResponse;
- self.responseData = [NSMutableData data];
-
- // copy headers
- if ([aResponse isKindOfClass:[NSHTTPURLResponse class]]) {
- NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse*)aResponse;
- NSDictionary *headers = [httpResponse allHeaderFields];
- for (NSString *key in headers) {
- NSString *value = [headers objectForKey:key];
- replyprivate->setRawHeader(QString::fromNSString(key).toUtf8(), QString::fromNSString(value).toUtf8());
- }
-
- int code = [httpResponse statusCode];
- replyprivate->setAttribute(QNetworkRequest::HttpStatusCodeAttribute, code);
- } else {
- if ([aResponse expectedContentLength] != NSURLResponseUnknownLength)
- replyprivate->setHeader(QNetworkRequest::ContentLengthHeader, [aResponse expectedContentLength]);
- }
-
- QMetaObject::invokeMethod(replyprivate->q_func(), "metaDataChanged", Qt::QueuedConnection);
-}
-
-- (void)connection:(NSURLConnection*)connection didReceiveData:(NSData*)data
-{
- Q_UNUSED(connection)
- [responseData appendData:data];
-
- if ([response expectedContentLength] != NSURLResponseUnknownLength) {
- QMetaObject::invokeMethod(replyprivate->q_func(), "downloadProgress", Qt::QueuedConnection,
- Q_ARG(qint64, qint64([responseData length] + replyprivate->bytesRead)),
- Q_ARG(qint64, qint64([response expectedContentLength])));
- }
-
- QMetaObject::invokeMethod(replyprivate->q_func(), "readyRead", Qt::QueuedConnection);
-}
-
-- (void)connection:(NSURLConnection*)connection didSendBodyData:(NSInteger)bytesWritten totalBytesWritten:(NSInteger)totalBytesWritten
- totalBytesExpectedToWrite:(NSInteger)totalBytesExpectedToWrite
-{
- Q_UNUSED(connection)
- Q_UNUSED(bytesWritten)
- QMetaObject::invokeMethod(replyprivate->q_func(), "uploadProgress", Qt::QueuedConnection,
- Q_ARG(qint64, qint64(totalBytesWritten)),
- Q_ARG(qint64, qint64(totalBytesExpectedToWrite)));
-}
-
-- (NSCachedURLResponse*)connection:(NSURLConnection*)connection willCacheResponse:(NSCachedURLResponse*)cachedResponse
-{
- Q_UNUSED(connection)
- return cachedResponse;
-}
-
-- (NSURLRequest*)connection:(NSURLConnection*)connection willSendRequest:(NSURLRequest*)request redirectResponse:(NSURLResponse*)redirectResponse
-{
- Q_UNUSED(connection)
- Q_UNUSED(redirectResponse)
- return request;
-}
-
-- (void)connectionDidFinishLoading:(NSURLConnection*)connection
-{
- Q_UNUSED(connection)
- replyprivate->setFinished();
-}
-
-- (BOOL)connectionShouldUseCredentialStorage:(NSURLConnection*)connection
-{
- Q_UNUSED(connection)
- return YES;
-}
-
-@end
-
-QNetworkReplyNSURLConnectionImpl::~QNetworkReplyNSURLConnectionImpl()
-{
-}
-
-QNetworkReplyNSURLConnectionImpl::QNetworkReplyNSURLConnectionImpl(QObject *parent,
- const QNetworkRequest &request, const QNetworkAccessManager::Operation operation, QIODevice* outgoingData)
- : QNetworkReply(*new QNetworkReplyNSURLConnectionImplPrivate(), parent)
-{
- setRequest(request);
- setUrl(request.url());
- setOperation(operation);
- QNetworkReply::open(QIODevice::ReadOnly);
-
- QNetworkReplyNSURLConnectionImplPrivate *d = (QNetworkReplyNSURLConnectionImplPrivate*) d_func();
-
- QUrl url = request.url();
- if (url.host() == QLatin1String("localhost"))
- url.setHost(QString());
-
- if (url.path().isEmpty())
- url.setPath(QLatin1String("/"));
- setUrl(url);
-
- // Create a NSMutableURLRequest from QNetworkRequest
- NSMutableURLRequest *nsRequest = [NSMutableURLRequest requestWithURL:request.url().toNSURL()
- cachePolicy:NSURLRequestUseProtocolCachePolicy
- timeoutInterval:60.0];
- // copy headers
- const auto headers = request.rawHeaderList();
- for (const QByteArray &header : headers) {
- QByteArray headerValue = request.rawHeader(header);
- [nsRequest addValue:QString::fromUtf8(headerValue).toNSString()
- forHTTPHeaderField:QString::fromUtf8(header).toNSString()];
- }
-
- if (operation == QNetworkAccessManager::GetOperation)
- [nsRequest setHTTPMethod:@"GET"];
- else if (operation == QNetworkAccessManager::PostOperation)
- [nsRequest setHTTPMethod:@"POST"];
- else if (operation == QNetworkAccessManager::PutOperation)
- [nsRequest setHTTPMethod:@"PUT"];
- else if (operation == QNetworkAccessManager::DeleteOperation)
- [nsRequest setHTTPMethod:@"DELETE"];
- else
- qWarning() << "QNetworkReplyNSURLConnection: Unsupported netork operation" << operation;
-
- if (outgoingData) {
- d->outgoingData = outgoingData;
- if (outgoingData->isSequential()) {
- // set up streaming from outgoingData iodevice to request
- CFStreamCreateBoundPair(kCFAllocatorDefault, &d->readStream, &d->writeStream, d->transferBufferSize);
- CFWriteStreamOpen(d->writeStream);
- [nsRequest setHTTPBodyStream:reinterpret_cast<NSInputStream *>(d->readStream)];
- connect(outgoingData, SIGNAL(readyRead()), this, SLOT(readyReadOutgoingData()));
- readyReadOutgoingData();
- } else {
- // move all data at once
- QByteArray data = outgoingData->readAll();
- [nsRequest setHTTPBody:[NSData dataWithBytes:data.constData() length:data.length()]];
- }
- }
-
- // Create connection
- d->urlConnectionDelegate = [[QtNSURLConnectionDelegate alloc] initWithQNetworkReplyNSURLConnectionImplPrivate:d];
- d->urlConnection = [[NSURLConnection alloc] initWithRequest:nsRequest delegate:d->urlConnectionDelegate];
- if (!d->urlConnection) {
- // ### what type of error is an initWithRequest fail?
- setError(QNetworkReply::ProtocolUnknownError, QStringLiteral("QNetworkReplyNSURLConnection internal error"));
- }
-}
-
-void QNetworkReplyNSURLConnectionImpl::close()
-{
- // No-op? Network ops should continue (especially POSTs)
- QNetworkReply::close();
-}
-
-void QNetworkReplyNSURLConnectionImpl::abort()
-{
- Q_D(QNetworkReplyNSURLConnectionImpl);
- [d->urlConnection cancel];
- QNetworkReply::close();
-}
-
-qint64 QNetworkReplyNSURLConnectionImpl::bytesAvailable() const
-{
- Q_D(const QNetworkReplyNSURLConnectionImpl);
- qint64 available = QNetworkReply::bytesAvailable() +
- [[d->urlConnectionDelegate responseData] length];
- return available;
-}
-
-bool QNetworkReplyNSURLConnectionImpl::isSequential() const
-{
- return true;
-}
-
-qint64 QNetworkReplyNSURLConnectionImpl::size() const
-{
- Q_D(const QNetworkReplyNSURLConnectionImpl);
- return [[d->urlConnectionDelegate responseData] length] + d->bytesRead;
-}
-
-/*!
- \internal
-*/
-qint64 QNetworkReplyNSURLConnectionImpl::readData(char *data, qint64 maxlen)
-{
- Q_D(QNetworkReplyNSURLConnectionImpl);
- qint64 dataSize = [[d->urlConnectionDelegate responseData] length];
- qint64 canRead = qMin(maxlen, dataSize);
- const char *sourceBase = static_cast<const char *>([[d->urlConnectionDelegate responseData] bytes]);
- memcpy(data, sourceBase, canRead);
- [[d->urlConnectionDelegate responseData] replaceBytesInRange:NSMakeRange(0, canRead) withBytes:NULL length:0];
- d->bytesRead += canRead;
- return canRead;
-}
-
-QT_END_NAMESPACE
diff --git a/src/network/access/qnetworkreplynsurlconnectionimpl_p.h b/src/network/access/qnetworkreplynsurlconnectionimpl_p.h
deleted file mode 100644
index c948e66629..0000000000
--- a/src/network/access/qnetworkreplynsurlconnectionimpl_p.h
+++ /dev/null
@@ -1,87 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2016 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of the QtNetwork module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** 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 https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://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 3 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL3 included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 3 requirements
-** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 2.0 or (at your option) the GNU General
-** Public license version 3 or any later version approved by the KDE Free
-** Qt Foundation. The licenses are as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-2.0.html and
-** https://www.gnu.org/licenses/gpl-3.0.html.
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef QNETWORKREPLYNSURLCONNECTIONIMPL_H
-#define QNETWORKREPLYNSURLCONNECTIONIMPL_H
-
-//
-// W A R N I N G
-// -------------
-//
-// This file is not part of the Qt API. It exists for the convenience
-// of the Network Access API. This header file may change from
-// version to version without notice, or even be removed.
-//
-// We mean it.
-//
-
-#include "qnetworkreply.h"
-#include "qnetworkreply_p.h"
-#include "qnetworkaccessmanager.h"
-#include <QFile>
-#include <private/qabstractfileengine_p.h>
-
-QT_BEGIN_NAMESPACE
-
-
-class QNetworkReplyNSURLConnectionImplPrivate;
-class QNetworkReplyNSURLConnectionImpl: public QNetworkReply
-{
- Q_OBJECT
-public:
- QNetworkReplyNSURLConnectionImpl(QObject *parent, const QNetworkRequest &req, const QNetworkAccessManager::Operation op, QIODevice* outgoingData);
- virtual ~QNetworkReplyNSURLConnectionImpl();
- virtual void abort();
-
- // reimplemented from QNetworkReply
- virtual void close();
- virtual qint64 bytesAvailable() const;
- virtual bool isSequential () const;
- qint64 size() const;
-
- virtual qint64 readData(char *data, qint64 maxlen);
-public Q_SLOTS:
- void readyReadOutgoingData();
-
- Q_DECLARE_PRIVATE(QNetworkReplyNSURLConnectionImpl)
-};
-
-QT_END_NAMESPACE
-
-#endif // QNetworkReplyNSURLConnectionImpl_H