| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Windows unhelpfully writes to only one byte of the output buffer
when getsockopt is called for a boolean option. Therefore we have
to zero initialise the int rather than initialising to -1 as was
done before.
This in general only works for little endian architecture, because
the word would look like 0x01000000 on big endian. So I have added
some compile time asserts in the assumption that windows is always
little endian. This is ok for comparisons with 0/false, but not
comparisons with true or nonzero values.
Task-number: QTBUG-23488
Change-Id: I3c586d1ada76465fc045a82661f289920c657a4c
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
(cherry picked from commit 46e4a9d5231e2d9e35424259858713ca539b8e30)
|
|
|
|
|
|
|
|
|
|
|
| |
If the DNS server returns a non authoritative host not found response,
then windows returns WSATRY_AGAIN error code.
This is now reported as HostNotFound and not UnknownError
Change-Id: I212985acd4e85ff4b2bdb6c57ec403405a7695fb
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
(cherry picked from commit 844b096d674c3b803923357502435ef89ce0c738)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QSslCertificate can be copied around into multiple threads,
without detaching. For example, the https worker threads inside
QNetworkAccessManager.
There are const methods, which lazily initialise members of
the private class without detaching (i.e. caching results of
expensive function calls)
These functions now lock the d pointer using QMutexPool to
avoid concurrency related crashes.
autotest crashes 20% of the time in release builds without
the fix, passes 100 times in a row with the fix.
Task-number: QTBUG-20452
Change-Id: I64a01af8159216f2dd6215a08669890f6c029ca8
(cherry picked from commit 55bf4ed9468ad467a0b681d2d041edbc2a5a4d21)
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
| |
Change-Id: Ide85353a85750a1ff85d392629855670ec4f67c0
Reviewed-by: Corentin Chary <corentin.chary@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QGlobalNetworkProxy (a singleton) had two phase construction, with
the second phase being called from QNetworkProxy's constructor.
This isn't necessary, and has been reported as causing deadlocks.
Although constructing socket engine handlers has side effects
(they add themselves to a list on construction and remove themselves
on destruction), this appears to be safe. The socket engine handlers
are only used while holding the list mutex, and any socket engines
created don't have any reference to the factory that created them.
With the new version, it is possible that two instances of
QHttpSocketEngineHandler and QSocks5SocketEngineHandler exist
temporarily if a Q_GLOBAL_STATIC initialisation race occurs.
This appears safe, because the loser of the race deletes its
handlers, which remove themselves from the global list as above.
Task-number: QTBUG-13088
Change-Id: I8cf520da717d8ab7d862ab89c6de13aea6d60ac3
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
(cherry picked from commit aee4cbf22a5942c7bd4b9545a8fcb7cf2930e0ee)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
| |
This feature was implemented in 4.8, but documentation was not
updated at the time.
Task-number: QTBUG-18181
Change-Id: I657d7ab7aaf43b73b7bf8fd1cb76086522cf5c2b
(cherry picked from commit 6f7bd6532d34713811c8f70b287d151d24cdda7c)
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SSL context was destroyed on disconnect. This makes it impossible to
decrypt buffered encrypted data. So if there is encrypted data in the
receive buffers, then don't destroy the ssl context until the socket is
destroyed.
Task-Number: QTBUG-23607
Change-Id: I16a7b4fa006647ec73049c90cdbc72686696850f
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Richard J. Moore <rich@kde.org>
(cherry picked from commit c5aba0ac17ae6ed8f3847bd30325acdbd1ecaa80)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Task-number: QTBUG-13362
Task-number: QTBUG-18356
Task-number: QTBUG-18417
Task-number: QTBUG-18664
Task-number: QTBUG-21562
Task-number: QTBUG-22094
Task-number: QTBUG-18741
Task-number: QTBUG-15921
Task-number: QTBUG-22172
Task-number: QTBUG-15738
Change-Id: I1d383a22612cd4fbcb7e03751e76409ca57fe7a2
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Task-number: QTBUG-18101
Task-number: QTBUG-8673
Task-number: QTBUG-14194
Task-number: QTBUG-9109
Task-number: QTBUG-9466
Task-number: QTBUG-8323
Task-number: QTBUG-7924
Task-number: QTBUG-20355
Task-number: QTBUG-19367
Task-number: QTBUG-21295
Task-number: QTBUG-14554
Task-number: QTBUG-8331
Task-number: QTBUG-8329
Task-number: QTBUG-8786
Task-number: QTBUG-8787
Change-Id: I4b6403df4a0078fa385abbfab5b6c3a94f175295
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
|
|
|
|
|
|
|
|
|
| |
Since the coreservices test should be part of the QPA ones after all,
this reverts d317182e and fixes the original problem correctly by
checking if qpa is on before testing for coreservices
Change-Id: I476f56924ff2d9bbc2f290563aaff9528fe72766
Reviewed-by: Eike Ziller <eike.ziller@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>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-symbian-staging:
Fix http authentication to a different realm on the same server
Fix race in http connection channel
Don't fetch credentials from cache following a failed proxy authentication
Handle plain socket write errors in SSL
Fix for assertion failure
Fix faulty logic in http connection pipelining
Test case for QTBUG-22875
QThreads on Symbian are named to allow them to be opened externally
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is a regression caused by the NTLMv2 authentication patch.
I have manually tested NTLMv2 authentication against MS IIS and reverting
these two lines does not break it.
Task-number: QT-5209
Change-Id: I64159cbe468e1a7f834f8726fd0c9d4ab4c54b38
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
(cherry-picked from 4954f71648aa7f74a4cb8b1dd26470b5da44459e)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When an ssl socket is closed during connecting, and it is using a proxy
then it is possible for the plain socket to be in pending close state
when transmit() is called.
As errors were not handled, this caused the socket (and https request)
to "hang".
It now propagates the error from plain socket.
Change-Id: I6fb86815a2a63e197cea582f4b153e487543477c
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
(cherry picked from commit 2cc78885b0b7d08f965998d156945a077e56c1d8)
|
| |
| |
| |
| |
| |
| | |
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)
|
|\ \
| |/
|/|
| |
| |
| |
| | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging:
SSL: fix build with -openssl-linked for OpenSSL 0.9.8*
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
OpenSSL's SSL_ctrl() always took a "void *" argument as 4th parameter,
since at least version 0.9.7.
I have no idea why we had "const void *" in there.
Reviewed-by: Richard J. Moore <rich@kde.org>
Task-number: QTBUG-23132
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When using "user@dns-domain" for NTLM authentication, the whole string
should be sent as the username, and the domain should be set to an
empty string.
The domain sent by the server is still reflected if the username
does not contain an '@' character.
Manually tested using MS IIS on a domain-joined PC.
Task-number: QTBUG-19894
Task-number: ou1cimx1#949951
Change-Id: Ie1f81172e71cb7cce7b8c909062be990c24aea47
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
(cherry picked from commit f74ff46c7a333d771b07d8ff38df10d9fd13bbcf)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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-symbian-staging:
Correct client rect calculation for MCL
Symbian: Fix CBA display on application with multiple windows
Fix def files
doc - document symbian behaviour of QFile::link
Symbian - prefer sessions started by this process to choose proxy
Freezing Def files in Qt
Lightmaps demo Symbian fix
CBA comes on top of option menu
Fix memory leaks in OpenVG and OpenGL resource pools
Fix sqlite driver memory eating due to close failure
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When WLAN and 3G connections are both active, the proxy for the wrong
connection may have been chosen in the case of plain sockets or
QNetworkAccessManager with an invalid configuration.
When enumarating active connections to choose a proxy, prefer a connection
that was opened by this process.
Task-number: QTBUG-22615
Task-number: ou1cimx1#930701
Reviewed-by: mread
|
|\ \ \
| |/ /
|/| /
| |/
| |
| |
| | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging:
Backport SMP safe initialisation of QNetworkConfigurationManager
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The original commit in Qt5 uses new atomics API that is not
in Qt4. I have replaced with equivalent calls.
Also the init/cleanup functions are different, so those are renamed.
Reviewed-by: mread
Task-number: ou1cimx1#946677
Original commit message follows:
Author: Thiago Macieira <thiago@kde.org>
Date: Wed Jul 6 00:06:15 2011 +0200
Fix the QNetworkConnectionManagerPrivate initialisation code.
The current code was meant to be a thread-safe initialisation that
also ran a couple of extra steps. But it wasn't. While it's ok to call
qAddPostRoutine(), the call to updateConfigurations() was
thread-unsafe. It is possible that another thread got the pointer to
the Private before updateConfigurations() finished.
So instead protect the initialisation with a mutex.
It's possible that the value of the pointer becomes visible to
other processors before the other contained values, so use
atomics here.
To call qAddPostRoutine safely from the main thread, use the trick
of deleteLater() (which is thread-safe) in another thread connecting
to a slot.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
... and only resolve the functions when the methods are available.
SSL 2 functionality is not always available in OpenSSL anymore.
Change-Id: Ia3178685b26c67ac55447476789e06710b596181
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
(cherry picked from commit 09404c072fec2e195d8114dc4d95ce3683c341cf)
|
|\ \
| |/
| |
| |
| |
| |
| | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging:
QNetworkProxy documentation: mention usage of "http_proxy" variable
|
| |
| |
| |
| |
| |
| |
| |
| | |
This is done on systems other than Windows or Mac.
Change-Id: I631ea350cb9bc123edc6df33b6f661afa8f0778b
Reviewed-by: Arvid Picciani
(cherry picked from commit ac22fa8a33472cbdd85ef312c436442a93959ab3)
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1:
Fix sporadic hang in QLocalServer::close() in OS X 10.7
Qt Linguist: Fix crash after select 2nd translation in lengthvariant
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
There is a bug in CFSocket/CFRunLoopSource in OS X 10.7 which can lead to a deadlock
in CFRunLoopRemoveSource or CFRunLoopSourceInvalidate if the CFSocket manager thread
is concurrently calling CFSocketInvalidate as a result of the socket's file descriptor
having been closed.
QLocalServer::close() triggers this race by closing the socket fd before unregistering
the QSocketNotifier, which internally uses CFSocket.
This commit fixes the problem by changing the ordering in close() so that the socket notifier
is disabled before closing the file descriptor. This change also makes QLocalServer::close()
perform operations in reverse order to QLocalServer::listen(), as would be expected.
Task-number: QTBUG-22789
Merge-request: 1470
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
|
|\ \ \
| |/ /
|/| /
| |/
| |
| |
| | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging:
QNAM: make systemProxyForQuery respect http_proxy
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
the generic systemProxyForQuery will use http_proxy from the
environment, if it is set.
Change-Id: Ie685c47eb6df1fdd2ab223defc7172bb25e6fe30
Reviewed-by: Thiago Macieira (Intel) <thiago.macieira@intel.com>
(cherry picked from commit b22d290a37903f2c5ecfe58e8183cd293ead99dc)
|
|\ \
| |/
| |
| |
| |
| |
| | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging:
Add the ability to do unsafe SSL renegotiation as a fallback.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This commit adds the ability to perform legacy SSL renegotiation as
a fallback via QSsl::SslOptions. This is something that used to work,
but has been disabled by default in newer versions of openssl. The
need for this has been reported by users (eg. in QTBUG-14983).
Change-Id: I5b80f3ffd07e0c5faddc469f6a8f857bac5740f7
Reviewed-by: Corentin Chary <corentin.chary@gmail.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
(cherry picked from commit 75b2a4960b753766ea2eec4dbd34c67733ca8089)
|
|\ \
| |/
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The Proxy-Connection header is a non standard header, but is widely
used so forming a de-facto standard.
Some proxies use the official Connection header, so we should check
for that in responses. Otherwise https connections over http proxy
fail in case the proxy sends "Connection: close" with the 407 reply.
Task-number: QTBUG-22177
Change-Id: If6cfa4ebb7ac9d97d65b6ddcc8257aee20ac0448
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
(cherry picked from commit 0ad18e18d1223b173d4a0d374b70ec08c3b22b11)
|
|\ \
| |/
| |
| |
| |
| |
| |
| | |
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-earth-staging:
SSL: blacklist intermediate certificates that issued weak certs
|
| |
| |
| |
| |
| |
| |
| | |
... as did browser vendors.
Tested manually with affected CA certificates.
Reviewed-by: Richard J. Moore <rich@kde.org>
|