summaryrefslogtreecommitdiffstats
path: root/src/network
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Merge branch '5.11' into dev" into refs/staging/devEdward Welbourne2018-07-311-6/+3
|\
| * Merge branch '5.11' into devEdward Welbourne2018-07-311-6/+3
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: qmake/library/qmakebuiltins.cpp src/plugins/platforms/windows/qwindowstabletsupport.h src/plugins/platforms/xcb/qxcbconnection.cpp src/plugins/platforms/xcb/qxcbconnection.h src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/plugins/platforms/xcb/qxcbwindow.cpp src/widgets/styles/qstylesheetstyle.cpp tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp Done-With: Gatis Paeglis <gatis.paeglis@qt.io> Change-Id: I000b0eb3cea2a5c7a99b95732bfdd41507cf916e
| | * QNetworkRequest - fix the documentationTimur Pocheptsov2018-07-201-6/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The wording was quite confusing and misleading - if not set exlicitly, QNetworkRequest::sslConfiguration() will initialize configuration to be equivalent of QSslConfiguration::defaultConfiguration(), not what the documentation stated. Task-number: QTBUG-13418 Change-Id: Id578db47ec75031376f73db42108053655fbf5c3 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | | QDtls: respect pre-set verification errorsTimur Pocheptsov2018-07-311-1/+1
|/ / | | | | | | | | | | | | | | | | | | That's actually how ignoreVerificationErrors (and QSslSocket::ignoreSslErrors) are used to set the expected/known verification errors before handshake. Auto-test updated too. Change-Id: I9c700302d81ddb383a4a750fafd594373fb38ace Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | Remove redundant #if-eryTimur Pocheptsov2018-07-301-8/+1
| | | | | | | | | | | | | | | | | | As now the feature 'dtls' depends on the feature 'openssl' - ifdefs are redundant, this code is always 'openssl-only'. Change-Id: I6a7fe9e3a00ae05656af1626e7de74e813df5d32 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | DTLS - treat QSslSocket::UnencryptedMode as invalidTimur Pocheptsov2018-07-281-0/+6
| | | | | | | | | | | | | | | | | | Unfortunately, this enum is not 'binary', it also has 'UnencryptedMode' and as a result we can end up with server-side method/context. Change-Id: If2da4c1b9f7e9ff916d933c9517c00a632aea324 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | QNetworkAccessManager: Port doc snippet to functor-connectAndre Hartmann2018-07-271-7/+7
| | | | | | | | | | | | Change-Id: I719856168a254c90b0bb0943faee5ab0be75b0bd Reviewed-by: Martin Smith <martin.smith@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | QDtls - use conventional namesTimur Pocheptsov2018-07-272-10/+10
| | | | | | | | | | | | | | | | More Qt-style and more natural, also, shorter names. Change-Id: I97bd68a8614126d518a3853027661435dc4e080d Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | SecureTransport - implement renegotiationsTimur Pocheptsov2018-07-272-11/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After a handshake was completed, TLS socket is in 'connectionEncrypted' state. So on a read notification, in 'transmit', we call 'SSLRead' to read supposedly encrypted application data or TLS internal messages. In case SSLRead finds either ClientHello or HelloRequest from a server, it attempts in a rather sneaky manner to renegotiate. And as it happens here and there with SecureTransport, SSLRead fails and the work is only half-done, since we have kSSLSessionOptionBreakOnServerAuth and kSSLSessionOptionBreakOnCertRequested options set to 'true'. We end up with completely unexpected errors like errSSLClientCertRequested or errSSLPeerAuthCompleted (yes, this is so normal and totally expected for 'SSLRead' function to verify certificates and WRITE messages, no need to document this at all!). If SecureTransport is sneaky, so can be us: - in a read callback SecureTransport is probing the type of record and we can notice a sudden session state change - it goes from kSSLConnected (which is set upon handshake completion) to kSSLHandshake (which means a (re)handshake is ongoing); - if this is the case - we lie to SecureTransport about the amount of data available (0 bytes), set 'renegotiating' to 'true', return errSSLWouldBlock; - in 'transmit', if SSLRead returns errSSLWouldBlock and 'renegotiating' was set, we call 'startHandshake' until isHandshakeComplete() == true or some error encountered. [ChangeLog][QtNetwork][QSslSocket] Implement renegotiation for SecureTransport backend Task-number: QTBUG-69420 Change-Id: Iaab1336aa3abf3f6ac94b358f3142d2738a18ee9 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | QDtls - refactorTimur Pocheptsov2018-07-262-10/+10
| | | | | | | | | | | | | | | | | | This patch renames rather awkward 'remote' into more conventional 'peer' (similar to what we have in QAbstractSocket). Change-Id: Ifc45e538b8adf9cc076bd7aee693277829fd94dc Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.11' into dev" into ↵Thiago Macieira2018-07-173-23/+24
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-07-173-23/+24
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/xcb/qxcbintegration.cpp Conflicts git missed: src/plugins/platforms/qnx/qqnxglcontext.cpp Change-Id: I0582cdc9e66e43efe79038b9c43d4f9572ac88fc
| | * Use nullptr instead of 0Jesus Fernandez2018-07-163-23/+24
| | | | | | | | | | | | | | | Change-Id: I37e776b84193d705b48d5d75ad620fd41b271d9e Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | | SecureTransport - enable ALPN on macOSTimur Pocheptsov2018-07-171-4/+4
|/ / | | | | | | | | | | | | | | | | | | | | | | | | Initially macOS SDK 10.13 had a missing symbol (only a function declaration in a header), while iOS, tvOS and watchOS SDKs all had the required symbol. Now it appears more recent SDK for macOS also has the function we need and thus we enable ALPN on macOS (as a result 'h2' protocol can now be negotiated as required by RFC 7540). [ChangeLog][QtNetwork][QSslSocket] Enable ALPN (and thus HTTP/2 negotiation) in SecureTransport backend (macOS). Change-Id: I65bd8262a9571a5495d11f7f5a29d150334cd09c Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | SecureTransport - cleanup the code a bitTimur Pocheptsov2018-07-141-35/+30
| | | | | | | | | | | | | | | | | | | | No need in ugly macro ioErr and if-ery, no need in generic noErr. SecureTransport has its own, more specific error codes: errSecIO and errSecSuccess (which have the equivalent values). Change-Id: Ifd99fbcbee290fe27caa0c258923f4527c047ba8 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | Extend the feature 'dtls' to handle missing DTLS support in OpenSSLTimur Pocheptsov2018-07-1313-30/+118
| | | | | | | | | | | | | | | | | | | | | | | | OpenSSL has 'no-dtls' configure option (or can be too ancient to properly support it), we shall respect such builds. This patch extends configure.json with a 'dtls' test and adds protection against linkage/compile-time issues in the QtNetwork's code. Change-Id: I0c0dd94f5c226115cee4285b82c83aa546555aea Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | OpenSSL: remove unused symbols/declarationsTimur Pocheptsov2018-07-133-15/+0
| | | | | | | | | | | | | | | | | | | | These are leftovers from the prototype version of DTLS connection and no code is using them now. Change-Id: I3970a56303a59ce95e9c22344fac89e89f6559c8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | QSslSocketBackendPrivate - avoid recursion while handing errorsTimur Pocheptsov2018-07-122-7/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The logic seems to be simple - if client code on error signal tries to close TLS socket and this socket has buffered data, it calls 'flush' and 'transmit' or even 'startHandshake' as a result, which in turn will set and emit error again. To auto- test this, we initiate a handshake with pre-shared key hint on a server side and both client/server sockets incorrectly configured (missing PSK signals). We also do early write into the client socket to make sure it has some data buffered by the moment we call 'close'. Task-number: QTBUG-68089 Task-number: QTBUG-56476 Change-Id: I6ba6435bd572ad85d9209c4c81774a397081b34f Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | Provide access to QSslCertificate on OpenSSL free Windows buildsAllan Sandfeld Jensen2018-07-066-28/+46
| | | | | | | | | | | | | | | | | | | | | | The QSslCertificate class can parse and provide details about SSL certificates without a proper backend, this can for instance be used by QtWebEngine to provide metadata about certificates, even on Windows builds without OpenSSL, as QtWebEngine does not use Qt's SSL stack. Change-Id: Ib48f1ed7315c5bc66721ec87ee651d8372f07f71 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | QDtls - handle server-side timeoutsTimur Pocheptsov2018-07-052-16/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | According to RFC 6347 a DTLS server also must retransmit buffered message(s) if timeouts happen during the handshake phase (so it's not a client only as I initially understood it). Conveniently so an auto-test is already in place and needs just a tiny adjustment - handshakeWithRetransmission covers both sides. Change-Id: If914ec3052e28ef5bf12a40e5eede45bbc53e8e0 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devLiang Qi2018-07-0210-17/+30
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/platforms/cocoa/qnsview.mm src/plugins/platforms/cocoa/qnsview_dragging.mm src/plugins/platforms/ios/qiosinputcontext.mm src/plugins/platforms/xcb/qxcbconnection.cpp src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/plugins/platforms/xcb/qxcbwindow.cpp src/tools/androiddeployqt/main.cpp Was moved from qttools into qtbase in 5.11. So re-apply 32398e4d here. tests/auto/corelib/global/qlogging/test/test.pro tests/auto/corelib/global/qlogging/tst_qlogging.cpp tests/auto/corelib/io/qfile/tst_qfile.cpp tests/auto/corelib/kernel/qtimer/tst_qtimer.cpp tests/auto/corelib/thread/qthreadstorage/test/test.pro tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp tests/auto/widgets/kernel/qapplication/test/test.pro Done-with: Gatis Paeglis <gatis.paeglis@qt.io> Done-with: Mårten Nordheim <marten.nordheim@qt.io> Done-with: Oliver Wolff <oliver.wolff@qt.io> Change-Id: Id970486c5315a1718c540f00deb2633533e8fc7b
| * QtCore/QtNetwork/QTestlib: Fix build with MinGW/g++ 8.1 x64Friedemann Kleint2018-06-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix warnings about invalid function type casts (return types conflicting with the FARPROC returned by GetProcAddress()) like: corelib\global\qoperatingsystemversion_win.cpp:100:48: error: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'RtlGetVersionFunction' {aka 'long int (*)(_OSVERSIONINFOW*)'} [-Werror=cast-function-type] io\qlockfile_win.cpp:158:85: error: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'GetModuleFileNameExFunc' {aka 'long unsigned int (*)(void*, HINSTANCE__*, wchar_t*, long unsigned int)'} [-Werror=cast-function-type] by introducing nested casts. Task-number: QTBUG-68742 Task-number: QTQAINFRA-2095 Change-Id: I3a5d2ea901bf5dc35963c589d61cf3dc7393377a Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| * Do not build SPDY support if SSL is disabledJoerg Bornemann2018-06-251-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | QSpdyProtocolHandler requires the features http and ssl. This fixes the moc warning src/network/access/qspdyprotocolhandler_p.h:0: Note: No relevant classes found. No output generated. for the -no-ssl build. Change-Id: I915751e98fc67e8601a8da8c5d18b11304bc0390 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Peter Hartmann <peter-qt@hartmann.tk>
| * QtNetwork/SSL: Fix build with MinGW/g++ 8.1 x64Friedemann Kleint2018-06-222-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | Fix warnings about invalid function type casts (return types conflicting with the FARPROC returned by GetProcAddress()) like: corelib\global\qoperatingsystemversion_win.cpp:100:48: error: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'RtlGetVersionFunction' {aka 'long int (*)(_OSVERSIONINFOW*)'} [-Werror=cast-function-type] by introducing nested casts. Task-number: QTBUG-68742 Task-number: QTQAINFRA-2095 Change-Id: I8ba6a74e6347dada486ca40c98aa8999957c4281 Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
| * Doc: Add missing full stops in briefsPaul Wicking2018-06-215-5/+5
| | | | | | | | | | | | Task-number: QTBUG-68933 Change-Id: I3f2a9f8c562f9a44bb32bddd31d75abbfe6de04d Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
| * QNativeSocketEnginePrivate (win) read sender's port and addressTimur Pocheptsov2018-06-141-0/+2
| | | | | | | | | | | | | | | | | | | | even if recvmsg results in WSAEMSGSIZE. Task-number: QTBUG-68755 Change-Id: I418e924b3e9001e7b7ad991e32d7d6f89ae499af Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QtNetwork: Fix and streamline translations of QDtlsFriedemann Kleint2018-06-284-14/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Use %-placeholder formatting instead of string concatenation for messages of the form "XX failed: %1" - Introduce helper functions for duplicate messages - Introduce helper function for message reporting function failures to avoid duplication - Extract helper function for reporting SSL handshake errors Complemements ac583b686d0677517e7f8a10ce4e79c7fe227ccf. Change-Id: Iaf6c158ca8086d0b17a3e3c51955707734829615 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | QAbstractSocket - protect against the broken invariantTimur Pocheptsov2018-06-271-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | It's possible to use QAbstractSocket (more precisely QUdpSocket) in a quite unusual way: connect to its stateChanged() signal and call close() in the slot (thus invalidating socketEngine pointer). For QAbstractSocket::bind() this results in a null-pointer dereference. Task-number: QTBUG-69063 Change-Id: Ife2c778ff59ccc7b99a96caa5ba67f877aaefe42 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | QByteArray: add compare() with case sensitivity optionsThiago Macieira2018-06-2211-38/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | Need to do the same for startsWith() and endsWith(). indexOf() is a lot harder. [ChangeLog][QtCore][QByteArray] Added compare(), which takes Qt::CaseSensitivity as one of the parameters. This function is more efficient than using toLower() or toUpper() and then comparing. Change-Id: Ib48364abee9f464c96c6fffd152e69bde4194df7 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | SSL: Add a feature for DTLSUlf Hermann2018-06-215-8/+27
| | | | | | | | | | | | | | | | | | | | | | For now the new feature depends on openssl as that is the only supported implementation. Once we get an implementation for SecureTransport, we can change the condition. The feature needs to be public because qdtls.h is a public header. Change-Id: Ie3e4acbeb2888f2fb13453b3ecdc19bacc83f6e6 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Let's encrypt datagramsTimur Pocheptsov2018-06-1814-24/+2682
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds DTLS support to QtNetwork module (and its OpenSSL back-end). DTLS over UDP is defined by RFC 6347. The new API consists of 1) QDtlsClientVerifier which checks if a client that sent us ClientHello is a real DTLS client by generating a cookie, sending a HelloVerifyRequest with this cookie attached, and then verifiying a cookie received back. To be deployed in combination with a server-side QUdpSocket. 2) QDtls - initiates and proceeds with a TLS handshake (client or server side), with certificates and/or pre-shared key (PSK), and encrypts/decrypts datagrams after the handshake has finished. This patch does not implement yet another UDP socket, instead it allows use of existing QUdpSocket(s), by adding DTLS support on top. OpenSSL back-end uses a custom BIO to make it work with QUdpSocket and give a finer control over IO operations. On the server side, demultiplexing is left to client code (could be done either by connecting QUdpSocket or by extracting address/port for an incoming datagram and then forwarding/dispatching them to the corresponding QDtls object). Task-number: QTPM-779 Change-Id: Ifcdf8586c70c3018b0c5549efc722e795f2c1c52 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | configure: dequote library sources asapOswald Buddenhagen2018-06-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | the json format uses single strings for library sources, as that leads to less noisy source text. however, this implies the need for de-quoting and subsequent re-quoting whenever the values are processed. so change the internal representation to regular qmake string lists as the first thing when processing the lib source, and re-quote only when outputting the values. CFLAGS are excluded, because we'll deal with them differently. Change-Id: I4ab43d98085ea9f6601fd21ac2afb5bce4f7e2a9 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devLiang Qi2018-06-073-4/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/corelib/kernel/qeventdispatcher_cf.mm src/gui/kernel/qguiapplication_p.h src/gui/kernel/qwindowsysteminterface.cpp src/gui/kernel/qwindowsysteminterface.h src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/cocoa/qnswindowdelegate.mm src/plugins/platforms/ios/qioseventdispatcher.mm src/plugins/platforms/windows/qwindowsdrag.h src/plugins/platforms/windows/qwindowsinternalmimedata.h src/plugins/platforms/windows/qwindowsmime.cpp src/plugins/platforms/winrt/qwinrtscreen.cpp Change-Id: Ic817f265c2386e83839d2bb9ef7419cb29705246
| * Fix build for Android with android-clang in r17Liang Qi2018-06-061-2/+0
| | | | | | | | | | | | Task-number: QTBUG-67464 Change-Id: Ib971a5da82b31bce9ac1c9ac623ad7d5302cfaec Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * Doc: Remove outdated info and linkify valueMårten Nordheim2018-06-041-1/+1
| | | | | | | | | | | | | | No reason to duplicate the info there in a paranthesis. Change-Id: Ie01be382d36bbc8e7f2eff4cc7ae0df207869c25 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| * Fix change-of-sign warning found by ICCThiago Macieira2018-06-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | qhostaddress.cpp(263): warning #68: integer conversion resulted in a change of sign length = -1; ^ I changed the length member from int to quint8 in commit 8656ee950b4f57eae605180fd8328441b3e670b9 but I never tested ICC. Change-Id: I052407b777ec43f78378fffd15311669b490ed7b Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | QSslSocket - bail out early if TLS initialization failsTimur Pocheptsov2018-06-051-0/+23
| | | | | | | | | | | | | | | | | | | | No need to start with 'connectToHost' from 'connectToHostEncrytped' - we will fail to start client encryption later anyway. This can happen if we, for example, fail to resolve some symbols or libraries are missing. Task-number: QTBUG-65142 Change-Id: I0614d5cdf875aaf5b992d8ab6024bcaf3f84b915 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-05-294-17/+38
|\| | | | | | | Change-Id: I8d8b03ea46c537b091b72dc7b68aa6aa3a627ba6
| * Fix build for Android with android-clangLiang Qi2018-05-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | kernel/qnetworkinterface_linux.cpp:204:17: error: comparison of integers of different signs: '__u32' (aka 'unsigned int') and 'qsizetype' (aka 'int') [-Werror,-Wsign-compare] if (NLMSG_OK(hdr, len)) ^~~~~~~~~~~~~~~~~~ This amends 09cb23f342fd2eae7ca85a99fa0a10b7ab103443. Change-Id: Ib966a60b7a7117d63ed758cba7b556abd90eca0c Reviewed-by: Mikhail Svetkin <mikhail.svetkin@qt.io> Reviewed-by: BogDan Vatra <bogdan@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Fix build if openssl is configured with no-des or no-rc2André Klitzing2018-05-243-16/+37
| | | | | | | | | | | | | | | | | | A custom build of openssl can disable DES or RC2. This allows to build Qt against those builds. Change-Id: I9b91c943fab4d217a791381e81a7d87a9ff5031a Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devLiang Qi2018-05-243-3/+5
|\| | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/features/qt_common.prf src/corelib/tools/qstring.cpp src/plugins/platforms/windows/qwindowsmousehandler.cpp src/widgets/widgets/qmainwindowlayout_p.h Change-Id: I5df613008f6336f69b257d08e49a133d033a9d65
| * Http/2 - remove unused 'compressedData'Timur Pocheptsov2018-05-241-1/+0
| | | | | | | | | | | | | | | | and thus reduce memory consumption, allocations etc. Task-number: QTBUG-68394 Change-Id: Ibad9b01a1e709e6abafcd9531fbcfc1eafa9cff3 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
| * Fix build for Android with android-clangLiang Qi2018-05-161-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | kernel/qnetworkinterface_linux.cpp:172:18: error: comparison of integers of different signs: '__u32' (aka 'unsigned int') and 'qsizetype' (aka 'int') [-Werror,-Wsign-compare] if (!NLMSG_OK(hdr, len)) ^~~~~~~~~~~~~~~~~~ kernel/qnetworkinterface_linux.cpp:197:26: error: comparison of integers of different signs: '__u32' (aka 'unsigned int') and 'qsizetype' (aka 'int') [-Werror,-Wsign-compare] } while (NLMSG_OK(hdr, len)); ^~~~~~~~~~~~~~~~~~ Change-Id: I3d0a4efc9fc42dd9b0726f2b62ff494220b8026e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: BogDan Vatra <bogdan@kdab.com>
| * Treat the Content-Disposition header as a known headerAndy Shaw2018-05-141-0/+3
| | | | | | | | | | Change-Id: I307f67b10759d17f603a340b14266ab47d195497 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devLiang Qi2018-05-142-5/+5
|\| | | | | | | | | | | | | | | | | Conflicts: mkspecs/features/qt_module_headers.prf tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp tests/auto/widgets/kernel/qwidget/BLACKLIST Change-Id: I2a08952d28d1d0e3d73f521a3d44700ce79ff16c
| * Merge remote-tracking branch 'origin/5.11.0' into 5.11Qt Forward Merge Bot2018-05-092-5/+5
| |\ | | | | | | | | | Change-Id: Id6e2acd5e31c1ac858ddf1d8873a6f10694141de
| | * Fix documentation of setBackendConfigurationOptionAndré Klitzing2018-04-252-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | Introduced by mistake in f55c73ede28d4455f555a28e401407326ac9b954 Change-Id: Ieac8fc0a6bb536e5ef3770a22785fe41d4033ee9 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | | QWindowsCARootFetcher: fix compile with QSSLSOCKET_DEBUGMårten Nordheim2018-05-111-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | Didn't compile with it when I was moving it out. Change-Id: I3645af71ea3295a61f20000a6bc4716b6e996ce5 Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-05-051-3/+1
|\| | | | | | | | | | | Change-Id: Ib58433da04bffb5dfab5486b80f17f39cc4145fa
| * | Fix crash in qsslsocket_opensslMårten Nordheim2018-05-041-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | We were using the wrong free function in a path which was hit in an edge case (PKCS#12 certificate without a private key attached). Change-Id: I5335b5dea7a926b242bed0fd9b989b681a5828d8 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>