| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
... otherwise we would not read from the beginning when trying to
read again. The device is reset when we try to resend a request
(e.g. remote host closed etc.).
(cherry picked from commit 795468bdc68931a90454bd1c975f7de7ba670e3b)
Change-Id: I8d7b3afb64b9cd25ee7c13b78f0b470d9dae3021
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
|
|
|
|
|
|
|
|
|
| |
... because almost everybody gets it wrong almost every time.
(cherry picked from commit eaa18f306341818165c2ee4fc22750da04d5e45e)
Change-Id: I3ca1dfe9723d4d29339c2c0a1ebe421f5929c760
Reviewed-by: Richard J. Moore <rich@kde.org>
|
|
|
|
|
|
| |
Change-Id: I52bf8ef0447b701b4ebf7d7d240013a72adb9425
Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
|
|
|
|
|
|
|
|
|
|
| |
- Assigned/Unused variables.
- Unsigned comparison >= 0 is always true.
- Constructor initialization order.
- Signed/Unsigned comparisons.
Change-Id: I1f9edab0506573420ed0bf3055252ba48625c8eb
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
|
|
|
|
|
|
|
|
| |
Change copyrights and license headers from Nokia to Digia
Change-Id: I280c0a575987d1770e354b4948f1d4d767d711ea
Reviewed-by: Simo Fält <simo.falt@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"HTTP/1.1 100 CONTINUE\r\n"
If the header from a server is splitted between two packets
the first packet contains "HTTP/1.1 100" and the second one
contains " CONTINUE\r\n", one space (0x20) is skipped. After
processing the line looks in this way "HTTP/1.1 100CONTINUE".
QHttpNetworkReplyPrivate::readStatus(QAbstractSocket *socket)
is called twice, if a http header is splitted as above.
The function always removes whitespace from the beginning of a packet,
even if it is the second part of a http header
QHttpNetworkReply returns QNetworkReply::RemoteHostClosedError
due to damaged http header during processing.
Task-number: QTBUG-27161
Backported qtbase/60f4fc8b706db9cbeacd5dc4886a7aa347daafc0
Change-Id: I07ec43641bbb9966285a8a1f57a51fb27d2643d4
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
|
|
|
|
|
|
|
|
|
|
| |
Adapted _q_parseUnixDir to handle yearless date strings during
a leap year while performing LIST.
Task-number: QTBUG-26911
Change-Id: I3193400a274a896530d45de986ec8fa5b159abb4
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Reviewed-by: Philip Van Hoof <philip@codeminded.be>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Replace Nokia contact email address with Qt Project website.
- Remove "All rights reserved" line from license headers.
As in the past, to avoid rewriting various autotests that contain
line-number information, an extra blank line has been inserted at the
end of the license text to ensure that this commit does not change the
total number of lines in the license header.
Change-Id: Ie7ba62011752fcb149b99b26317c54f2a0cfa931
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a request is aborted while under load, the abort signal can be
queued in front of a signal emitted from the httpReply.
The abort slot is deleting the httpReply and setting it to null.
So when the queued slot is processed the httpReply is null and
caused an MMU fault.
Removed qWarning from existing null checks, as these are expected
if abort is called with precise timing so that it races with the
reply finishing on the socket.
Task-number: QTBUG-26245
Change-Id: I0a7e0223fda1bc01d117fe8a993c7f6e43fd72ff
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Richard J. Moore <rich@kde.org>
(cherry picked from commit 41064f851591d9437baeda502b6e2504fee8f213)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Qt 4.7.3 sent no Content-Type header by default.
This was fixed independently on 4.8.0 and 4.7.4 branches, with
different defaults.
Since this is often used for web service logins, the 4.7.4
default of x-www-form-urlencoded seems more likely to work.
The warning message is left in place, since not specifying the
content type is still an application bug.
Task-number: QTBUG-23350
Change-Id: I30bf50fd216ee9894d0168e904cea1ed4251ec68
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
(cherry picked from commit 4f578d15fe2ef176f0533c7ff4aea99b17636f85)
Reviewed-by: Laszlo Papp <lpapp@kde.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When doing a NTML authentication it would close the connection after
the second phase before replying when the reply was a HTTP 1.0 version
reply. Since the Proxy-Connection header is set to Keep-Alive in this
case we want to ensure we do not close in this siutation.
Task-number: QTBUG-26037
Change-Id: Icaaf2277efc0d05a946c52fb42b5191964e2e0fe
(cherry picked from commit bd5ef309ba831740fd8475b2f7415f30c1a18be8)
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When handling signals from the session, a pointer is needed.
Also the QNetworkReplyImpl needs to access the manager's session.
So, the manager should have a strong and weak reference.
The strong reference is held during connection establishment.
The weak reference is held all the time, though it will become
null when the session is destroyed in idle.
The non static member function getNetworkSession() is used to
create strong references from the weak reference where required.
Task-number: ou1cimx#1004278
Change-Id: I4b5b36b1d996b98e659d993969006c61b4440c15
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
(backported from commit bae1613c4c3d8c38b90ed2ba5c1b149e1bc87987)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For bearer management to work correctly, we need to know when there
are no network replies active. Previously this was implemented
using qFindChildren, but that doesn't work when the user reparents
QNetworkReply.
QtWebkit does this (actually sets parent to 0).
Also the qFindChildren implementation was racy if multiple requests
were finished in parallel. Again, likely to be triggered by webkit
loading page elements.
Task-number: QTBUG-15812
Change-Id: I181a9ba6611c7c4b6fffa2d84fe4029d89e8f596
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
(cherry picked from commit 3580168c3e357c2289acddc5f2515a3ad306ef2b)
|
|
|
|
|
|
|
|
|
|
| |
This prevents http POST/PUT from hanging if the QIODevice being uploaded
returns -1 from read.
Task-number: QTBUG-24738
Change-Id: I76500cc4f0101cc8e5da5f1dc105508b3f519a3c
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
(cherry picked from commit 3976339ca9b12c7eddbc69ed3a31f85ce845ba63)
|
|
|
|
|
|
| |
Change-Id: Id637dd1155c46ffc75563812b8c9d5f062e76e22
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
|
|
|
|
|
|
|
|
|
|
| |
When we get a remoteHostClosed we should try to read everything from
the socket before we close the channel.
cherry-picked from commit 27bc9945a84c6f6d8e0d2a33183c3a6e9b2978d8
Change-Id: Ia1b64dbd991265ce0ce4c4d21f4df323133e2b07
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
|
|
|
|
|
|
|
| |
Make sure that we always have a reply set when we try to read.
Change-Id: Icedf4190f3a4f0727e9f415c41cb6041fe5f7604
Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
| |
... to conform to RFC 2046 (section 5.1.1). Apparently IIS had problems
without the new line.
Task-number: QTBUG-25429
Change-Id: Ia619bbdcebd407b2716bc467323634e4c8d77bcd
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
(cherry picked from commit 314e590d67db08690b31930e53ca61cedfc4d1e2)
Reviewed-by: Peter Hartmann <9qgm-76ea@xemaps.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added the setReadBufferSize functionallity again by limiting the
amount that the delegate read from the channel. Each time that data is
fetched from the reply buffer, we communicate back to the thread so
that more data can be fetched.
Task-number: QTBUG-25327
Change-Id: I08a246f4e7fbfdb8d58f4c5982ed0c9fa474f560
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
QNetworkSession::open can synchronously emit an error, therefore
we need to queue this.
Otherwise QNetworkReply::finished is emitted before the user has
had a chance to connect the signals.
Task-number: QTBUG-18824
Change-Id: I703d5e31d2934afafabdf0a77ea3aaf5336e8dec
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
(backported from commit 9793dbcc4ae4f5f0976f819e6a33e82e6b24f50e)
|
|
|
|
|
|
|
|
|
|
| |
Previously, we just disconnected signals from QFtp and allowed it
to continue downloading in the background.
Task-number: QTBUG-25494
Change-Id: I891c2fff88ef1ee554d1ccf821a3f7998eeb8406
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
(cherry picked from commit c6864e0a580793f29c7d2cf180fc0f2ac2fc2b2c)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Most FTP servers do not support the ABOR command (they don't process
control channel traffic until the data channel is finished). Or they
require the telnet IP & sync procedure on the control channel (this
requires sending TCP urgent data, which we do not support).
Following behaviour of most browsers and GUI FTP clients, abort
downloads by resetting the data channel.
Abort of uploads needs no change, because the client closes the data
channel rather than the server.
Task-number: QTBUG-25494
Change-Id: I69e7b7c04d709d26def9a4a7081074e1cbf69701
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
(cherry picked from commit a5fcd3f799371239dd375150648bf77cb4745626)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QNetworkAccessManager was using the AutoCloseConnection property
of QNetworkSession to close it when idle. However this property is
only implemented for polling engines and not event driven engines.
Instead, release the network session reference.
If another request comes in, it will be resurrected from the shared
session weak reference.
If not, then after 2 minutes when the connection caches are flushed
the ref count will reach zero and cause the QNetworkSession to be
destroyed (which closes it)
Task-number: QTBUG-15812
Change-Id: I2963bdf13fb02e3ac269489ea463669142f3c5f3
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
(cherry picked from commit 1aeaf0e7089c893a927a5ab311a6176aad5874a7)
|
|
|
|
|
|
|
|
|
|
| |
If there are no bytesAvailable and no reply then the channel
can be closed without any need for this warning.
Task-number: QTBUG-9315
Change-Id: Idd461a38ea932305cc227dbd68b9af61b7e855d2
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When defining QT_NO_WARNING_OUTPUT then qWarning() is not available so
it should be defined in the same manner as qDebug() in this context
which is as QNoDebug.
The cases in QtNetwork are changed to use qWarning("....") to avoid
having to add in an extra include of QDebug just so that qWarning() is
declared in the QT_NO_WARNING_OUTPUT case.
Task-number: QTBUG-25308
Change-Id: I4960d8943e805697d4c05cc6988306e5c25fc2bb
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
If there are still bytesAvailable on the socket and we have
nothing pipelined we should close the channel. This was not
done before as the chunked decoder did not read the last
CRLF. This has now been fixed so this close should be enabled
again.
Task-number: QTBUG-24875
Change-Id: I2ebdce1094282b055f4fd72ca642887c5f96c43b
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
There was a problem with slow https connections that if the download
was ongoing when quit() was called then it tended to cause a crash
because it tries to shutdown the SSL connection.
Task-number: QTBUG-24594
Change-Id: I6b161bc7a9bb99e41849537462de2d7c92661902
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
(cherry picked from commit 46c58502639c25e5d19dd84d913b1208d5051db5)
|
|
|
|
|
|
|
|
|
|
|
| |
When chunked encoding is used we should try to read the last CRLF after
the last zero-lenght chunk, with chunk size coded as 0.
Task-number: QTBUG-19480
Task-number: QTBUG-20924
Change-Id: I39c85f45c329246d6c53c29ba1511039b2503e13
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
|
|
|
|
|
|
|
| |
Task-number: QTBUG-23239
Change-Id: I12f89a4e595231738985ca0cf3179fee7de9fa72
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
|
|
|
|
|
| |
Change-Id: I01245f7f6943f5a8bf30e8215419dbfd4dfcdb09
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QNetworkAccessManager was ignoring the supplied credentials, although
webkit seems to support these urls at a higher level.
Following the behaviour of browsers:
We use supplied credentials if authentication is required.
We add supplied credentials to the authentication cache.
We emit authenticationRequired signal if the credentials were wrong.
We do not use previously cached credentials for that url
Synchronous http requests fail, if the credentials were wrong.
Task-number: QTBUG-18107
Change-Id: If46e8eab1511ba8a0f4bbe0d4efaabc4df0b8ab4
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
(cherry picked from commit b4a538ea1c3cdce09e3528227dba2e8f5765cbdc)
|
|
|
|
|
|
|
|
|
|
| |
In certain circumstances, this could cause the request to time out
(and repeatedly send bad authentication credentials to the server)
instead of failing with AuthenticationRequiredError.
Change-Id: Iff66b32f1d7268f21fd77b6620aae4b5d49d857f
Reviewed-by: Richard J. Moore <rich@kde.org>
(cherry picked from commit d425a0dad38e51c99cfe59294a3706ced90b24a0)
|
|
|
|
|
|
|
|
|
|
| |
An old coding error meant that the C runtime abort() function was
being called instead of QFtp::abort() when cancelling an FTP download
using QNetworkReply::close()
Task-number: QTBUG-22820
Change-Id: Ib97fda9769b2b55a08c042c66c4444cb6216d2b1
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
| |
Change-Id: Ib13737eac7f7cee3ebca44aa712cb6b152672a81
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
|
|
|
|
|
|
|
|
|
| |
Simple search and replace. This commit doesn't touch 3rd-party files,
nor translations (where the change is not so simple and will be handled
in a separate commit).
Change-Id: I4e48513b8078a44a8cd272326685b25338890148
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
| |
When authentication is cancelled, close the channel instead of the
underlying socket.
The previous behaviour could result in further requests being sent
on the closed socket, which caused errors in case of https over a proxy.
Change-Id: I3dbfc164de4fb29a426c06acaac8f29b9da1d705
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
(cherry picked from commit a7b99151f4445755c91d5227607d9ea2f785301f)
|
|
|
|
|
|
|
|
|
|
|
| |
Add variable to QAuthenticatorPrivate for tracking failure
Track authentication success/failure in http proxy socket engine
Track authentication success/failure in http connection channel
Task-number: QTBUG-22875
Change-Id: Id5d39e839428271ad687e9da12fbbdea9c478f4f
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
(cherry-picked from d24aad82896addce88f1ffb4040560e406acf083)
|
|
|
|
|
|
| |
Change-Id: I97b9ecc37e938a3050793fc746288243a1cb40b7
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
(cherry picked from commit 96cda705dcbeb79429055c1acca91f149d318820)
|
|
|
|
|
|
|
|
|
|
| |
The code which prevents pipelining of requests when authentication is
in use had || where && should have been used.
Also check for blank user with a password.
Change-Id: Ic278cedd370c9d81377f49a0af43aef415cb49ad
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
(cherry picked from commit 058fb94afff8a1a9989ab6d18dacc1fe43769fdb)
|
|
|
|
|
|
|
|
|
|
|
|
| |
If NTLM authentication is required for the URL with an empty path,
then QNetworkAuthenticationCache::findClosestMatch(url.path()) returns 0.
e.g. "http://10.1.2.3".
Return a default constructed credential in this case.
Change-Id: I84ad3b308ee3f74fbbac9ad0f11dbdc66047b50b
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
(cherry picked from commit b830c9cededf995fab1b0919a81658ceaec8d422)
|
|\
| |
| |
| |
| |
| |
| |
| | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging:
network auto tests: add QNetworkReply test for pipelining
HTTP: blacklist server for pipelining
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
that server was found out not to support HTTP pipelining.
tested manually; for more information see the task.
Reviewed-by: Markus Goetz
Task-number: QTBUG-21369
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging:
Fix crash in QHttpNetworkReplyPrivate::gunzipBodyPartiallyEnd
Fix warning when using QXmlInputSource with non opened QIODevice
HTTP proxy engine - accept standard Connection header
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If a HTTP server responds with gzip-encoded empty content without defining
Content-Length in the response header QHttpNetworkReplyPrivate::gunzipBodyPartiallyEnd
will crash because it calls zlib inflateEnd for an uninitialized stream.
- Fixed the crash by adding a check if the stream is initialized to gunzipBodyPartiallyEnd.
- Added a regression test tst_QNetworkReply::nb279420gzipNoContentLengthEmptyContentDisconnect
PMO 279420
Task-number: QTBUG-22660
Signed-off-by: Sami Rosendahl <sami.rosendahl@reaktor.fi>
Merge-request: 1465
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
|
|\ \
| |/
| |
| |
| |
| |
| |
| | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging:
networking: regenerate effective TLD table for cookies
QNAM: Fix authentication cache when the password is in the URL
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Two problems:
- The signal cacheCredidentials was not connected in the synchronous
case while it must be connected. (Regression when the threaded http
was merged)
- We cannot cache the credidentials when we proceed the url because
at that point, we do not know the realm (this basically reverts
9bc5a32b875b812c3a706034c8c27614f86bd138)
Merge-request: 1459
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Task-number: QTBUG-18411
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-doc-staging:
Missing icon in the designer documentation
Fridge magnet example code snippet error
qpaintdevice-qt3.html documentation errors
QWebElement example missed information
QSPlitter style-sheet example was invalid
Errors in QSqlDriver::handle examples
QGLColormap example was invalid
QPointer made no mention of QWeakPointer
Invalid links to http://developer.symbian.org
QNetworkDiskCache documentation missed information
QStyleSheet example used a property that is hidden.
QList document referenced to non existing function
QXmlQuery::bindVariable documentation bug
Fix multiple typos in QLineF documentation.
Qmake project file docs lacked information.
Documentation error in SSL document
Fix multiple typos in documentation.
Fix for QVector::toList - code example documentation.
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Documentation didn't mention which unit (B,kB,MB) is used
in setMaximumCacheSize and maximumCacheSize. Added unit to
be bytes.
Task-number: QTBUG-15562
Merge-request: 2698
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
doc/src/declarative/declarativeui.qdoc
doc/src/mainpage.qdoc
doc/src/platforms/supported-platforms.qdoc
doc/src/qt-webpages.qdoc
src/network/access/qnetworkdiskcache.cpp
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The implementation of memory mapped files in Open C requires
munmap to be called from the same thread as mmap. As the
QIODevice can be handed off to another thread, this breaks
application code that works on other operating systems.
Task-number: QT-5309
Reviewed-by: Tadaaki Matsumoto
|