summaryrefslogtreecommitdiffstats
path: root/src/network
Commit message (Collapse)AuthorAgeFilesLines
* QNAM: Clarify docs about when a QNetworkReply can be deletedMarkus Goetz2009-07-242-2/+16
| | | | | Task-number: 258644 Reviewed-by: Thiago
* QHttpNetworkConnection: Clarifying code comment about compressionMarkus Goetz2009-07-211-1/+6
| | | | Reviewed-by: TrustMe
* QNAM: Proper loading of meta data when having AlwaysCache modeMarkus Goetz2009-07-212-0/+24
| | | | | | | | | Properly load the raw headers and properly handle the redirection when having a network cache in AlwaysCache mode (equals the offline mode in web browser). Task-number: 256240 Reviewed-by: Thiago Macieira
* QUdpSocket: Doc improvementMarkus Goetz2009-07-171-0/+3
| | | | | Task-number: 236891 Reviewed-By: David Boddie
* Removed outdated information from QNetworkRequest documentationMarkus Goetz2009-07-171-3/+1
| | | | Reviewed-by: TrustMe
* Add a "User-Agent" line to our HTTP proxy requests.Thiago Macieira2009-07-151-0/+1
| | | | | | | | | | | | | | | | Apparently some proxy servers can be configured to deny requests based on User-Agent, even for CONNECT connections. See https://bugs.kde.org/show_bug.cgi?id=155707#c155 for an example (packet dump in #c157, analysis in #c158). So send a User-Agent header with value "Mozilla/5.0", hoping that this will be enough to allow the connection. I hope it will, because other tools like libtool send something completely different: User-Agent: curl/7.19.5 (i586-mandriva-linux-gnu) libcurl/7.19.5 GnuTLS/2.8.1 zlib/1.2.3 c-ares/1.6.0 libidn/1.15 libssh2/1.0 Reviewed-by: TrustMe
* QNAM: Fix double sending of a HTTP requestMarkus Goetz2009-07-132-0/+9
| | | | | | | | | In some cases, weird timing issues could occur. In those cases, an EOF was sent twice for the upload data, leading to the HTTP code being confused and sending the request headers twice. Task-number: 257662 Reviewed-by: Thiago Macieira
* Fixed dead code possibly leading to crash.Rohan McGovern2009-07-031-1/+1
| | | | | | | | Looks like this `&&' was meant to be `||'. QNetworkProxy::FtpCachingProxy is 5 so it's clearly impossible for type to be less than 0 and greater than QNetworkProxy::FtpCachingProxy. Reviewed-by: Aaron Kennedy
* fix crash in QLocalServer on WinCE when waitForNewConnection times outJoerg Bornemann2009-06-301-1/+1
| | | | Reviewed-by: mauricek
* QNetworkAccessManager stuff: Some fixes for coverityMarkus Goetz2009-06-293-6/+13
| | | | | | A few "fixes" to make that number go down.. Reviewed-by: Thiago Macieira
* QNetworkReplyImpl: Protect against recursive event loopsMarkus Goetz2009-06-252-2/+39
| | | | | | | | | | This fixes a bug that occured together with a QProgressDialog. The signal emission was like: readyRead readyRead readyRead [...] readyRead finished readyRead Now finished should be properly at the ending of this sequence. Task-number: 256630 Reviewed-by: Thiago Macieira <thiago.macieira@nokia.com>
* QNetworkAccessManager: Clarify doc about deleting QNetworkReplyMarkus Goetz2009-06-181-3/+2
| | | | Reviewed-by: Volker Hilsheimer
* QNAM HTTP code: Do not close TCP connection in all casesMarkus Goetz2009-06-181-1/+2
| | | | | | | | | | This makes sure the keep-alive connections stay open even if someone deletes a QNetworkReply which will then go all the way down to removeReply(QHttpNetworkReply). Should fix http://lists.trolltech.com/pipermail/qt-interest/2009-June/007777.html Reviewed-by: Peter Hartmann
* Update license headers as requested by the marketing department.Jason McDonald2009-06-16127-254/+254
| | | | Reviewed-by: Trust Me
* Fix wrong comparator in QSslCertificatePrivate::QByteArray_from_X509Markus Goetz2009-06-151-1/+1
| | | | | | | | | Because less-than instead of less-or-equal-than was used, the last line of a PEM encoding was not built when the raw length was multiple of 64. Task-number: 256066 Reviewed-by: mariusSO
* QSslSocket: Wrong warning message in startServerEncryptionMarkus Goetz2009-06-101-1/+1
| | | | Reviewed-by: TrustMe
* Make it possible to compile Qt 4.5 SSL support with OpenSSL 1.0.0Bernhard Rosenkraenzer2009-06-095-2/+59
| | | | | | | (-beta2, but 1.0.0 final shouldn't be very different) Merge-request: 449 Reviewed-by: Thiago Macieira <thiago.macieira@nokia.com>
* Doc typo fix in QSslSocketMarkus Goetz2009-06-081-1/+1
| | | | Reviewed-by: TrustMe
* Set the error to be HostUnreacheable if WSAEHOSTUNREACH is recievedAndy Shaw2009-06-081-0/+5
| | | | | | | This was a contribution sent via the public bugs channel. Task-number: 255161 Reviewed-by: Marius Storm-Olsen
* open pipes in overlapped mode also on the client sideOswald Buddenhagen2009-06-031-2/+2
| | | | | | otherwise PeekNamedPipe() may block in threaded environments. Reviewed-by: thiago
* QNetworkReply internals: do not assert when aborted and reading dataPeter Hartmann2009-05-271-1/+2
| | | | | | | | ...but just silently return. This is ok because at another location in QNetworkReplyImplPrivate we do the same. Reviewed-by: Thiago Task-number: 254638
* SSL: Remove broken system certificate loading codeMarkus Goetz2009-05-261-24/+1
| | | | | Task-number: 254365 Reviewed-by: Peter Hartmann
* Doc: Clarified what close(), abort() and disconnectFromHost() really doDavid Boddie2009-05-251-10/+18
| | | | | | | | | | | to the socket connection. (Reviewed - see below.) Also included corrections to the description of how to send SocketError and SocketState values via signals. (Trust me - as part of an earlier revision of the custom types documentation.) Task-number: 222907 Reviewed-by: Andy Shaw
* Doc: Miscellaneous documentation fixes for Qt 4.5.x and later.David Boddie2009-05-251-1/+1
| | | | Reviewed-by: Trust Me
* Fix another compilation breakage introduced by the fix to theThiago Macieira2009-05-231-15/+0
| | | | | | | | | compilation breakage introduced in 6c1d7e57. The fix in fc7a43cce did fix the failure, but created another one because qhostinfo_win.cpp also had a copy of qt_sockaddr_in6 Reviewed-by: Jason McDonald
* Fix compilation breakage on Windows caused by 6c1d7e57.Thiago Macieira2009-05-223-41/+32
| | | | | | | On Windows, QT_NO_IPV6 isn't defined, but the necessary includes were missing. So #include winsock2.h and also use our own structures. Reviewed-By: Trust Me
* Fixed compilation with -qtnamespaceMarkus Goetz2009-05-224-8/+8
| | | | | Task-number: 254333 Reviewed-by: Andy Shaw <qt-info@nokia.com>
* Fixed strict aliasing breaks with sockaddr_XXX structs.Thiago Macieira2009-05-222-41/+29
| | | | | | | | | This case it was possible to fix by using a union of the types when we actually declare the variable. Besides, this avoids a bunch of #ifdef for IPv6 functionality. Reviewed-By: Oswald Buddenhagen
* Fix some typos in the documentation.Frederik Schwarzer2009-05-183-3/+3
| | | | | | Usually, "the the" is not proper English Reviewed-By: Thiago Macieira
* Fix QNetworkDiskCache to expire the oldest files first.Benjamin C Meyer2009-05-181-3/+3
| | | | | | | | | | When expiring cache files use a QMultiMap, when using a QMap not all files are put into the map because often many files (downloaded or updated at the same time) will have the same creation QDateTime and so only one will go into the QMap who's key is QDateTime. Reviewed-By: Thiago Macieira Reviewed-By: Peter Hartmann
* HTTP authentication: return error if authentication cannot be handledPeter Hartmann2009-05-151-5/+15
| | | | | | | return error upon receiving an unknown authentication method (e.g. WSSE); before we were just silently returning. Reviewed-by: Thiago Macieira
* HTTP backend / network cache: only cache responses to GET by defaultPeter Hartmann2009-05-131-12/+30
| | | | | | | | responses to POST might be cacheable, but are not cacheable by default; responses to PUT or DELETE are never cacheable. Reviewed-by: Thiago Macieira Task-number: 252281
* Improve the HTTP status line parsing and catch more errors.Thiago Macieira2009-05-132-23/+37
| | | | | | | | | | | | There's no need for using QByteArrayMatcher for one single character, so avoid the overhead. Also validate the message header a bit more: we require the status line to start with "HTTP/n.m " where n and m are positive integers less than 10. Task-number: 248838 Reviewed-by: Markus Goetz
* Fix handling of garbage data sent by the HTTP server instead of aThiago Macieira2009-05-132-3/+22
| | | | | | | | | | | proper HTTP reply. If the server's reply doesn't start with "HTTP/", then the reply is not valid. This could happen if we connected via HTTP to an HTTPS server. It could also happen with an Icecast server (reply ICY/x.y). Task-number: 248838 Reviewed-by: Markus Goetz
* Document that we don't support NTLM version 2.Thiago Macieira2009-05-111-0/+9
| | | | | Task-number: 236925 Reviewed-by: Tor Arne Vestbø
* fix parsing cookies in multiple linesPeter Hartmann2009-05-072-17/+17
| | | | | | | | | | | | original patch by Benjamin Meyer. Handle multiple cookies split by new lines in a cleaner way. Parsing the combined string was error prone. Splitting them and sending each line through our header parser is more robust, and has more obvious code paths. Tested by logging into wordpress.com, facebook.com etc. Reviewed-by: Thiago Task-number: 251959
* Fix OpenSSL dynamic loading on OpenBSD.Thiago Macieira2009-05-071-3/+6
| | | | | | | | | | | OpenBSD's OpenSSL libraries are linked in a bizarre way: libssl.so doesn't link to libcrypto.so, even though it depends on it. I don't claim to understand why, but they do it. So make sure we export its symbols for libssl to see and we load libcrypto first. Task-number: 252042 Patch by: Marc Espie <espie@openbsd.org> Reviewed-by: Peter Hartmann
* Make QNetworkProxy calculate the capabilities for a new proxy typeThiago Macieira2009-05-071-3/+10
| | | | | | | | | | | | If you write: QNetworkProxy proxy; proxy.setType(QNetworkProxy::HttpProxy); Then now QNetworkProxy will set the capabilities to the default value for the new proxy type. Previously, it wouldn't do that: default values were set only for the type passed in the constructor. Reviewed-by: Peter Hartmann
* Clarify documentation in QNetworkProxy about SOCKS5 supporting domainThiago Macieira2009-05-071-4/+5
| | | | | | name resolution Task-number: 252761
* QNetworkDiskCache: check if opening file succeedsBenjamin C Meyer2009-05-061-2/+6
| | | | | | | | In QNetworkDiskCache::prepare() When QTemporaryFile::open fails, delete the cache item and return 0 rather then returning a closed device. And a spelling mistake in a qWarning() Reviewed-by: Peter Hartmann
* Moved the QT_BEGIN_NAMESPACE macro to the right place in qsslcipher.cppThiago Macieira2009-05-061-1/+1
| | | | | Task-number: 252298 Reviewed-by: Peter Hartmann
* QNetworkCookieJar: do not allow cookies for domains like ".com"Peter Hartmann2009-05-041-0/+7
| | | | | | | | the domain attribute in cookies must always contain one embedded dot, according to RFC 2109 section 4.3.2 Reviewed-by: Thiago Task-number: 251467
* QNetworkCookieJar: allow cookies with wrong domain attributePeter Hartmann2009-04-301-5/+4
| | | | | | | | | | According to the (old) cookie RFC 2109, the domain attribute must always contain a leading dot. Some servers do not have that, but all browsers accept those cookies anyway, so we should do that as well. Reviewed-by: Olivier Reviewed-by: Denis Task-number: 228974
* QNetworkAccessManager: do not segfault when using a network cacheBenjamin C Meyer2009-04-291-1/+2
| | | | | | | Don't setfault when setting 0 for the network cache such as when you want to disable it. Reviewed-by: Peter Hartmann
* Re-send network request properly when the socket is in Closing state.Denis Dzyubenko2009-04-241-0/+8
| | | | | | | | | This fixes the "QAbstractSocket::connectToHost() called when already connecting/connected to <hostname>". The issue was that we were trying to call connect on a socket that was in a Closing state. We have to wait for the disconnected signal before we try to connect again. Reviewed-by: Prasanth
* don't complain about invalid socket on server shutdownOswald Buddenhagen2009-04-241-2/+4
| | | | Reviewed-by: thiago
* correctly handle remote disconnectsOswald Buddenhagen2009-04-231-1/+1
| | | | | | | | | about the only error case for a PeekNamedPipe() which does not actually want to read anything is some kind of disconnect. so ignore the error code and just handle the error as a close. Task-number: 247144 Reviewed-by: thiago
* fix reading problem on 64-bit machines in QProcess and socket enginePeter Hartmann2009-04-161-17/+2
| | | | | | | | | | QProcessPrivate and QNativeSocketEnginePrivate were reporting a wrong number of bytes available on 64-bit machines, due to use of size_t in ioctl. That was required by Irix, which we dropped support for, so we can also drop size_t Reviewed-by: Thiago Task-number: 249537
* Add a warning for trying to connectToHost() when disconnecting.Thiago Macieira2009-04-161-1/+1
| | | | | | | | | | | | | | Right now, we print this warning if connectToHost() is called when we're in ConnectingState (waiting for remote to SYN,ACK) or in ConnectedState. This also means connectToHost() allows interruption of the HostLookupState cleanly (I think). But if you called connectToHost() right after disconnectFromHost() and there were data to write, the connectToHost() could discard the pending outgoing data and reconnect. Or not, depending on whether the DNS resolution ended first. In other words, race condition. Reviewed-by: Peter Hartmann
* BT: QAbstractSocket: fix check for closing state (typo)Peter Hartmann2009-04-151-1/+1
| | | | | | | | emit disconnected() if we were in ConnectedState or in ClosingState before Reviewed-by: Thiago Task-number: 250976