summaryrefslogtreecommitdiffstats
path: root/src/network/access
Commit message (Collapse)AuthorAgeFilesLines
* QNAM HTTP: Re-write compression codeMarkus Goetz2011-07-126-249/+100
| | | | | | | | | | | | | | | This eliminates some code (header parsing) that can be done by zlib already. Add support for 'deflate' encoding. Also do less memory copying while uncompressing. Change-Id: I94de21e3c58b904dd91d004c375ed8cbea56cb0b Task-Number: QTBUG-13191 Reviewed-on: http://codereview.qt.nokia.com/1314 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com> Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com> Reviewed-by: Markus Goetz
* QNAM HTTP: Do zero-copy for small HTTP replies by defaultMarkus Goetz2011-07-123-9/+22
| | | | | | | | | | Task-Number: QTBUG-19046 Change-Id: I34bf432c81d94787524124b7d110a00305a660c1 Reviewed-on: http://codereview.qt.nokia.com/1516 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com> Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
* QNAM: Remove QNetworkAccessHttpBackendMarkus Goetz2011-07-115-1362/+0
| | | | | | | | | Qt 5.0 is using QNetworkReplyHttpImpl Change-Id: I230230dc8b81e55a6c0cc8e1d85714e49fd35d17 Reviewed-on: http://codereview.qt.nokia.com/1381 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
* QNAM: Add support for more KnownHeadersMarkus Goetz2011-07-082-1/+24
| | | | | | | | | Task-Number: QTBUG-17267 Change-Id: I32b41d26411ee3a7162bb658d69363a5eeb37230 Reviewed-on: http://codereview.qt.nokia.com/1327 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
* QNAM HTTP: Fix canReadLine() for zerocopyMarkus Goetz2011-07-051-1/+2
| | | | | | | Change-Id: I16cf25c72b3fa16649c3e4e0f4d4b08ad7ce360d Reviewed-on: http://codereview.qt.nokia.com/1161 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
* Remove QT3_SUPPORT from networkShane Kearns2011-07-053-43/+0
| | | | | | | Change-Id: I962bece24c958c053a3edc0e49a594b61a3725ae Reviewed-on: http://codereview.qt.nokia.com/1093 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Liang Qi <liang.qi@nokia.com>
* QNam remove compile warnings for QNetworkReplyHttpImplMartin Petersson2011-07-041-1/+1
| | | | | | | Change-Id: I677a72a1cdcb295dd87d2559163e6f56e97c40c8 Reviewed-on: http://codereview.qt.nokia.com/1083 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Markus Goetz
* Add Happy-Eyeballs style IPv6 connection establishing.Martin Petersson2011-07-044-17/+210
| | | | | | | | | | | | | | | | In the cases where a DNS lookup will give you both an IPv4 and IPv6 address, this will start two connection channels at the same time. One trying to connect using IPv4 and one on IPv6. This is done so that we can use the fastest one for the connection. To do this we have to do the hostlookup in the connection. The result is then in the cache for the individual socket so it will not need to do another lookup. Task-number: QTBUG-16458 Change-Id: I806c20168d9c5edc2831b80f82a2bd570b36d5fa Reviewed-on: http://codereview.qt.nokia.com/1003 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
* Doc: Fixed qdoc warnings.David Boddie2011-07-011-10/+15
| | | | | | | Change-Id: I7b4e9ef513b82a82d2365c9256d09520a44ad10d Reviewed-on: http://codereview.qt.nokia.com/324 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Push the data together with the error in the synchronous case.Pierre Rossi2011-06-291-0/+1
| | | | | | | | | | As it turns out some test cases in QtWebKit rely on this. Task-number: QTBUG-19556 Change-Id: I84c8abca5e9a018a4057c827fca973b8ebb39df6 Reviewed-on: http://codereview.qt.nokia.com/795 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Markus Goetz
* fix "Host" header of ipv6 URLs in QNAMshiroki2011-05-261-1/+11
| | | | | | Change-Id: I6bf3320e5ab285e3d1f4d72bd1ef0a0e42813e5b Reviewed-on: http://codereview.qt.nokia.com/115 Reviewed-by: Markus Goetz
* Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-stagingQt Continuous Integration System2011-05-2564-1089/+1093
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging: (21 commits) Fixed line endings. Update licenseheader text in source files for qtbase Qt module New configure.exe binary Add -qpa option on Windows Use qglobal.h's VERSION number instead of hardcoded current version More examples adjusted to Symbian and Maemo5. (cherry picked from commit a97b9620a584c9b1a2e006873183526b3d7e001e) Doc: Added some details to the accessibility events API documentation. Doc: Fixed qdoc warnings. Doc: Fixed qdoc warnings. Doc: Made an additional change for clarity. Doc: Noted that the example will not work as expected with a mouse. Doc: Fixed qdoc warnings. Doc: Applying a pending change from previous merges. Doc: Fixed qdoc warning. Doc: Fixed qdoc warnings. Doc: Applied pending fixes to API documentation. Doc: Various fixes to documentation, some based on changes in master. Doc: Added missing project and desktop files. Doc: Documented the value returned when no field can be found. Squashed commit of changes from the 4.8-temp branch. ...
| * Update licenseheader text in source files for qtbase Qt moduleJyri Tahtela2011-05-2464-1088/+1088
| | | | | | | | | | | | | | Updated version of LGPL and FDL licenseheaders. Apply release phase licenseheaders for all source files. Reviewed-by: Trust Me
| * Doc: Applying a pending change from previous merges.David Boddie2011-05-231-0/+4
| |
| * Doc: Fixed qdoc warnings.David Boddie2011-05-231-1/+1
| |
* | Add QUrl::topLevelDomain() and move TLD table from QtNetwork to QtCoreRobert Hogan2011-05-245-6543/+2
|/ | | | | | | | | | | | | | | | | | | | | | | Move Qt's copy of the Mozilla public suffix list from QtNetwork to QtCore and use it to expose a new API function QUrl::topLevelDomain(). This function returns the section of the url that is a registrar-controlled top level domain. QtCore now exports a couple of functions to the other Qt modules: qTopLevelDomain, a helper function for QUrl::topLevelDomain(); and qIsEffectiveTLD(), a helper function for QNetworkCookeieJar. The motivation for this new API is to allow QtWebKit implement a Third-Party Cookie blocking policy. For this QtWebKit needs to know the element of the url that is the registry-controlled TLD. Without this knowledge it would end up blocking third-party cookies per host rather than per registry-controlled domain. See also https://bugs.webkit.org/show_bug.cgi?id=45455 Merge-request: 1205 Task-number: QTBUG-13601 Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com> (cherry picked from commit 154402f56dcf8303a6ce601a52215226af8d31ba)
* emit QNetWorkAccessManager::finished on QNetworkReply::abort()Martin Petersson2011-05-111-0/+2
| | | | | | | | | | | | If we can not get online when the request is made then we are in the WaitingForSession state. This will happen for example if the device is in flight mode. This fix follows the same logic as in _q_networkSessionFailed, but we should look into why we have the WaitingForSession check in finished(). Task-number: QT-4747 Reviewed-by: Markus Goetz (cherry picked from commit 0c9cb9a34d6b472cb53bf1af4616af55b593b616)
* QNAM: Re-order checks in migrateBackend()Markus Goetz2011-05-111-4/+4
| | | | | | | | | Do the easy checks first, will avoid a crash in the HTTP code if request is serviced from the cache. Task-number: QTBUG-18770 Reviewed-by: Peter Hartmann (cherry picked from commit d03a28a289cf0665290e6ea0375b31cbb2d6649e)
* HTTP backend: do not load resources from cache that must be revalidatedPeter Hartmann2011-05-101-7/+5
| | | | | | | | | | | | The header field "Cache-Control: must-revalidate" is a strict requirement for loading the resource from the server, and not reading it from the cache without revalidating first. With this patch, PreferCache will load such from the network instead of loading them from the cache, and AlwaysCache will throw a ContentNotFound error. Reviewed-by: Markus Goetz Task-number: QTBUG-18983 (cherry picked from commit 0e449f38894b1bd2dbb2f14206a011424679f063)
* Clarified sendCustomRequest documentation to include HTTPSJanne Anttila2011-05-101-1/+1
| | | | | Reviewed-By: mgoetz (cherry picked from commit 16b8c940dac02ec77e6ff9fe4150c32db1811e74)
* Fix warnings on unused parameters and variablesThiago Macieira2011-05-101-1/+0
| | | | (cherry picked from commit 940f16babab76b328b7c9bfdb5435102c689b76b)
* Update QTBUG-17223 for Qt 4.8Shane Kearns2011-05-093-1/+16
| | | | | | | | | | | | | | | In Qt 4.7, http network requests are assigned to http connection channels before connecting the channel. In Qt 4.8, channels are connected "blind" as this gives a performance improvement in certain circumstances. On the assumption that User-Agent should be the same for all the requests being sent to the server in a given burst, we use the first queued request to set the user agent for a http proxy. Task-number: QTBUG-17223 Reviewed-by: Markus Goetz Reviewed-by: Martin Petersson
* Send User-Agent from the network request in http proxy CONNECT commandShane Kearns2011-05-091-0/+6
| | | | | | | | | | | | | Some proxies can discriminate based on the User-Agent when sent a CONNECT command for establishing a HTTPS connection. With this change, if the User-Agent header is set in the QNetworkRequest then it will be passed to the http socket engine for use in the connect command sent to the proxy. As before, "Mozilla/5.0" will be used by default when no user agent has been set. Task-number: QTBUG-17223 Reviewed-by: Markus Goetz
* Fix QNetworkReplyImpl error handlingShane Kearns2011-05-091-4/+13
| | | | | | | | | The backend was never started when compiled without bearer management, now it is. Now emits the error signal in case of startup errors which would leave the state machine hanging. Previously it just printed a warning. Reviewed-by: Peter Hartmann
* Enable per network configuration proxy settings in QNetworkAccessManagerShane Kearns2011-05-092-27/+53
| | | | | | | | | | | | | | Delayed the resolving of the proxy until the backend is being started. This is because the proxy settings are not known until after QNetworkAccessManager has brought the network online using QNetworkSession. On Nokia's symbian3 phones, the default network configuration is a service network containing a list of access points in priority order. For a typical user, this will include one or more WLAN networks and a cellular network - each of which can have different proxy settings. Task-number: QTBUG-18618 Reviewed-by: Peter Hartmann
* HTTP cache backend: do not load resources that must be revalidatedPeter Hartmann2011-05-041-2/+7
| | | | | | | | | | | The header field "Cache-Control: must-revalidate" is a strict requirement for loading the resource from the server, and not reading it from the cache without revalidating first. With this patch, PreferCache will load such from the network instead of loading them from the cache, and AlwaysCache will throw a ContentNotFound error. Reviewed-by: Markus Goetz Task-number: QTBUG-18983
* HTTP reply: do not load resources from cache that must be revalidatedPeter Hartmann2011-05-041-7/+5
| | | | | | | | | | | The header field "Cache-Control: must-revalidate" is a strict requirement for loading the resource from the server, and not reading it from the cache without revalidating first. With this patch, PreferCache will load such from the network instead of loading them from the cache, and AlwaysCache will throw a ContentNotFound error. Reviewed-by: Markus Goetz Task-number: QTBUG-18983
* QNetworkCookie: allow spaces in unquoted valuesPeter Hartmann2011-05-041-4/+5
| | | | | | | | | | We should follow http://tools.ietf.org/html/draft-ietf-httpstate-cookie-23 , which says parse the value until reaching the next ';' or the end of the line. Other cookie implementations allow spaces in unquoted values as well. Reviewed-by: Martin Petersson Task-number: QTBUG-18876
* QNAM HTTP: Removes some commentsMarkus Goetz2011-05-031-17/+4
|
* QNAM HTTP: More commentsMarkus Goetz2011-05-031-23/+14
|
* QNAM HTTP: Implement abort() and close()Markus Goetz2011-05-031-6/+35
|
* QNAM HTTP: CommentsMarkus Goetz2011-05-031-11/+7
|
* QNAM: Function re-orderingMarkus Goetz2011-05-032-39/+36
|
* HTTP caching documentation: add some commentsPeter Hartmann2011-05-031-2/+5
|
* Revert "HTTP caching internals: fix logic for PreferNetwork and PreferCache"Peter Hartmann2011-05-031-6/+1
| | | | This reverts commit 11838861a23ace66307306cf9c96b3f1910e09a9.
* QNAM: Fix initialization order warningsMarkus Goetz2011-05-032-35/+54
|
* QNAM: TODO comments for Qt 5Markus Goetz2011-05-031-0/+3
|
* QNAM HTTP: Fix upload progress signalMarkus Goetz2011-05-031-1/+1
|
* HTTP caching internals: fix logic for PreferNetwork and PreferCachePeter Hartmann2011-05-031-1/+6
|
* HTTP Network Reply Impl: return earlier when resource loaded from cachePeter Hartmann2011-05-031-4/+4
|
* HTTP Reply implementation: make cache validation method return boolPeter Hartmann2011-05-032-14/+12
|
* cache: rename validateCache() to loadFromCacheIfAllowed()Peter Hartmann2011-05-032-4/+4
|
* QNAM: Fix proxy code after refactoringMarkus Goetz2011-05-032-7/+13
|
* fix buildPeter Hartmann2011-05-031-0/+1
|
* QNAM: Start new HTTP backend architectureMarkus Goetz2011-05-036-281/+1203
|
* QNAM: Copy files for new architectureMarkus Goetz2011-05-032-0/+1359
|
* QNAM: Improve internal proxyAuthenticationRequired()Markus Goetz2011-05-033-9/+12
| | | | | | | Make it independent from the backend architecture to improve refactorability. Reviewed-by: Peter Hartmann
* QNAM: Improve internal authenticationRequired()Markus Goetz2011-05-033-13/+17
| | | | | | | Make it independant from the backend architecture to improve refactorability. Reviewed-by: Peter Hartmann
* Initial import from the monolithic Qt.Qt by Nokia2011-04-2765-0/+32622
This is the beginning of revision history for this module. If you want to look at revision history older than this, please refer to the Qt Git wiki for how to use Git history grafting. At the time of writing, this wiki is located here: http://qt.gitorious.org/qt/pages/GitIntroductionWithQt If you have already performed the grafting and you don't see any history beyond this commit, try running "git log" with the "--follow" argument. Branched from the monolithic repo, Qt master branch, at commit 896db169ea224deb96c59ce8af800d019de63f12