Граф коммитов

77 Коммитов

Автор SHA1 Сообщение Дата
Honza Bambas e98f5af878 Bug 1365307 - Throttling of HTTP transactions. r=mcmanus 2017-06-01 12:16:00 -04:00
Patrick McManus e7245fc847 Bug 1362388 - Remove nsAHttpTransaction::Available as footgun r=nwgh
nsAHttpTransaction::Available() obtained a bytecount from the abstract
transaction's input stream. If that stream was derived from a file://
it would create janky IO - so remove the interface.

Http2Push maintains a non-inherited interface which is used to check
the number of bytes it has internally buffered in memory.

MozReview-Commit-ID: IQHt8yGsqDE

--HG--
extra : rebase_source : 64449c6bd743119ea7626a3b2b2b91a376280021
2017-05-05 18:12:36 -04:00
Wes Kocher 8eaf64f920 Backed out 2 changesets (bug 1362388) for android build bustage in nsHttpChannel.cpp a=backout
Backed out changeset f5b4fbe31c01 (bug 1362388)
Backed out changeset 446ecc3f5715 (bug 1362388)

MozReview-Commit-ID: DI01cDPrgM7
2017-05-12 13:58:28 -07:00
Patrick McManus 1a4ed2cc65 Bug 1362388 - Remove nsAHttpTransaction::Available as footgun r=nwgh
nsAHttpTransaction::Available() obtained a bytecount from the abstract
transaction's input stream. If that stream was derived from a file://
it would create janky IO - so remove the interface.

Http2Push maintains a non-inherited interface which is used to check
the number of bytes it has internally buffered in memory.

MozReview-Commit-ID: IQHt8yGsqDE

--HG--
extra : rebase_source : 78dbd5cae35bc6cb1ce2f03192226cb85564298e
2017-05-05 18:12:36 -04:00
Sebastian Hengst 4dc5072fcb Backed out changeset fef09999e003 (bug 1362388) 2017-05-11 18:00:09 +02:00
Patrick McManus f48decf9ef Bug 1362388 - Remove nsAHttpTransaction::Available as footgun r=nwgh
nsAHttpTransaction::Available() obtained a bytecount from the abstract
transaction's input stream. If that stream was derived from a file://
it would create janky IO - so remove the interface.

Http2Push maintains a non-inherited interface which is used to check
the number of bytes it has internally buffered in memory.

MozReview-Commit-ID: IQHt8yGsqDE

--HG--
extra : rebase_source : 6b3b210a8f6736887b5076c90621d678b038bcad
2017-05-05 18:12:36 -04:00
Dragana Damjanovic 099e776a6d Bug 1352274 - Add response header indicator for TCP FastOpen suceeded. r=mcmanus 2017-05-04 12:14:54 +02:00
Dragana Damjanovic accc6e95b1 Bug 1188435 - Implement fast open necko part. r=mcmanus 2017-05-04 12:14:04 +02:00
Kershaw Chang 99ed04a411 Bug 1312782 - Part 1: Implement window id to pending transactions table. r=honzab 2017-03-27 04:09:00 -04:00
Wei-Cheng Pan 5143918e81 Bug 1310127 - Part 1: Use MOZ_MUST_USE in netwerk/protocol/http r=mcmanus
Add MOZ_MUST_USE attirbute to headers and idl files.

MozReview-Commit-ID: 7nZQlZoDrv2

--HG--
extra : rebase_source : e8d9469a3b24932d95bf533c54f43c324ffa8c53
2016-12-27 15:22:07 +08:00
Patrick McManus a980860d80 Bug 1340655 - remove h1 pipeline support r=mayhemer 2017-02-17 15:35:37 -05:00
Sebastian Hengst 71318f787d Backed out changeset 379093669b39 (bug 1340655) for warning as err.or at nsHttpConnection.cpp(875). r=backout on a CLOSED TREE 2017-03-01 20:20:57 +01:00
Patrick McManus 63212ea3a1 Bug 1340655 - remove h1 pipeline support r=mayhemer
HTTP/1.1 pipelines have been subsumed by the more effective mux of spdy, h2, and soon quic.

The feature was never able to overcome the limitations of HoL blocking
and TCP reset, and their impact on performance and reliability.

Fundamentally mux is the only way we should be approaching that problem.

The massive amount of code - mostly heuristics to try and deal with
the HoL problem (by classifying things onto different transactions,
timers for broken servers, etc..) has become a maintenance burden with
minimal value given the default off state of the feature.

h2 is the new (working) strategy.

--HG--
extra : rebase_source : 5794957c1f078ca435480724d3caf9bdd861b7de
2017-02-17 15:35:37 -05:00
Patrick McManus 93f999e4af Bug 1322373 - TLS 1.3 early-data for HTTP/2. r=dragana,mcmanus 2017-02-21 15:19:46 -05:00
Dragana Damjanovic 79e0168a9b Bug 1264578 - Networking support for http with TLS 1.3. r=mcmanus
--HG--
extra : rebase_source : eb851624fe67c2112ed4ed1cf7f1790b41a341cd
2016-08-11 08:28:00 -04:00
Sebastian Hengst de7e01f00d Backed out changeset 123049a4ba35 (bug 1264578) for timing out in browser_clientAuth_connection.js. r=backout 2016-08-18 17:28:09 +02:00
Dragana Damjanovic ff61d396de Bug 1264578 - Networking support for http with TLS 1.3. r=mcmanus
--HG--
extra : rebase_source : 09ca6da3ec12db1db0520f20a7cc39c515d8b5a8
2016-08-11 08:28:00 -04:00
Valentin Gosu c8a94789bb Bug 1262326 - Make test_user_agent_overrides.html work in e10s r=nwgh
* Rename SchedulingContext to RequestContext
* Move SetLoadGroupUserAgentOverride to nsHttpChannel
* Cache the userAgentOverride in RequestContext instead of LoadGroup

MozReview-Commit-ID: FQS9uSRR8kd

--HG--
rename : netwerk/base/SchedulingContextService.cpp => netwerk/base/RequestContextService.cpp
rename : netwerk/base/SchedulingContextService.h => netwerk/base/RequestContextService.h
rename : netwerk/base/nsISchedulingContext.idl => netwerk/base/nsIRequestContext.idl
2016-04-21 16:59:17 +02:00
Patrick McManus 54be97b2ea Bug 1247205 - dont loop on http2 softerror r=dragana 2016-02-13 20:54:24 -05:00
Nathan Froyd 01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Nicholas Hurley 16407ea724 Bug 1127618 - make push caches work in e10s. r=mcmanus r=froydnj IGNORE IDL
--HG--
extra : rebase_source : 24dd37c6eaec83a1776d77632b97106e8abb8015
2015-07-31 13:50:08 -07:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Andrea Marchesini cb54385682 Bug 1156632 - Remove unused forward class declarations - patch 4 - netwerk image and dom, r=ehsan 2015-04-22 08:29:20 +02:00
Ryan VanderMeulen 579da75a70 Backed out changeset e713ce8013eb (bug 1127618) for suspicion of causing semi-frequent B2G crashes.
CLOSED TREE
2015-04-09 20:05:49 -04:00
Nicholas Hurley 0b4c1de637 Bug 1127618 - make push caches work in e10s. r=mcmanus r=froydnj
--HG--
extra : rebase_source : 3da2229082ccd041a1ec47ba77d9f0940020f3c9
2015-04-08 14:42:00 +02:00
Ehsan Akhgari 883849ee32 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Patrick McManus 1d224b6824 bug 1094522 - claim conns with null transactions instead of starting new ones r=hurley 2015-01-27 21:55:38 -05:00
Patrick McManus 175115e709 bug 1116867 - make nsIProgressEventSink and nsITransportEventSink safely scriptable r=mayhemer r=bz
These scriptable interfaces use uint_64 arguments with sentinel values
of UINT64_MAX. However, UINT64_MAX exceeds MAX_SAFE_INTEGER and cannot
be gatewayed to/from javascript - so they cannot be used
correctly. Change them to use signed 64 bit numbers and -1 as the
sentinnel. C++ implementations ought to be enough to audit as the
special value could never be used correctly in JS anyhow - also
audited OnProgressChange() uses for downstream use of this data.
---
 dom/base/nsXMLHttpRequest.cpp                      | 19 +++++++----
 dom/base/nsXMLHttpRequest.h                        | 10 +++---
 dom/plugins/base/nsPluginStreamListenerPeer.cpp    |  4 +--
 .../webbrowserpersist/nsWebBrowserPersist.cpp      | 14 ++++----
 image/src/imgLoader.cpp                            |  4 +--
 modules/libjar/nsJARChannel.cpp                    |  3 +-
 netwerk/base/public/nsIProgressEventSink.idl       |  8 ++---
 netwerk/base/public/nsITransport.idl               |  8 ++---
 netwerk/base/public/nsNetUtil.h                    | 24 ++++++++++++++
 netwerk/base/src/Dashboard.cpp                     |  2 +-
 netwerk/base/src/nsBaseChannel.cpp                 | 12 +++----
 netwerk/base/src/nsIncrementalDownload.cpp         |  4 +--
 netwerk/base/src/nsSocketTransport2.cpp            |  5 +--
 netwerk/base/src/nsStreamTransportService.cpp      | 38 +++++++++++++---------
 netwerk/base/src/nsTransportUtils.cpp              | 12 +++----
 netwerk/protocol/file/nsFileChannel.cpp            |  8 +++--
 netwerk/protocol/ftp/nsFtpConnectionThread.cpp     |  4 +--
 netwerk/protocol/http/Http2Push.cpp                |  2 +-
 netwerk/protocol/http/Http2Session.cpp             |  2 +-
 netwerk/protocol/http/HttpChannelChild.cpp         | 31 +++++++++---------
 netwerk/protocol/http/HttpChannelChild.h           |  6 ++--
 netwerk/protocol/http/HttpChannelParent.cpp        |  4 +--
 netwerk/protocol/http/HttpChannelParent.h          |  4 +--
 netwerk/protocol/http/NullHttpTransaction.cpp      |  2 +-
 netwerk/protocol/http/PHttpChannel.ipdl            |  2 +-
 netwerk/protocol/http/SpdyPush31.cpp               |  2 +-
 netwerk/protocol/http/SpdySession31.cpp            |  2 +-
 netwerk/protocol/http/TunnelUtils.cpp              |  2 +-
 netwerk/protocol/http/nsAHttpTransaction.h         |  4 +--
 netwerk/protocol/http/nsHttpChannel.cpp            | 30 +++++++++++------
 netwerk/protocol/http/nsHttpConnection.cpp         |  4 +--
 netwerk/protocol/http/nsHttpConnectionMgr.cpp      |  4 +--
 netwerk/protocol/http/nsHttpPipeline.cpp           |  4 +--
 netwerk/protocol/http/nsHttpPipeline.h             |  6 ++--
 netwerk/protocol/http/nsHttpResponseHead.cpp       |  2 +-
 netwerk/protocol/http/nsHttpResponseHead.h         |  2 +-
 netwerk/protocol/http/nsHttpTransaction.cpp        | 32 +++++++++---------
 netwerk/protocol/http/nsHttpTransaction.h          |  2 +-
 netwerk/protocol/wyciwyg/WyciwygChannelChild.cpp   |  2 +-
 netwerk/protocol/wyciwyg/nsWyciwygChannel.cpp      |  3 +-
 netwerk/test/TestIncrementalDownload.cpp           |  7 ++--
 uriloader/base/nsDocLoader.cpp                     | 14 ++++----
 42 files changed, 203 insertions(+), 151 deletions(-)
2015-01-08 14:48:52 -05:00
Ehsan Akhgari e9499ce141 Bug 1117042 - Mark virtual overridden functions as MOZ_OVERRIDE in netwerk; r=mcmanus 2015-01-02 09:04:04 -05:00
Nicholas Hurley e53d01ea81 Bug 1091263 - HTTP_1_1_REQUIRED support. r=mcmanus 2014-11-06 09:26:00 -05:00
Patrick McManus 12115897d4 bug 1003448 - HTTP/2 Alternate Service and Opportunistic Security [2/2 necko] r=hurley 2014-08-21 10:50:17 -04:00
Patrick McManus 0a3b1e638a bug 378637 part 13 - https proxying changes to casting and trans lifecycle r=hurley
--HG--
extra : rebase_source : 9ba1d5a5c97e6fb42956433dd6738cbec0e8e90c
2014-05-16 11:46:12 -04:00
Patrick McManus 173d1dc1d2 bug 378637 part 12 - proxy over TLS (i.e. https proxying) r=hurley
--HG--
extra : rebase_source : 85b4f6b3eb1a3977ff888fa70214055a41f72da5
2014-04-16 09:52:43 -04:00
Patrick McManus b48b19cab3 bug 378637 part 10 - implement nsAHttpTransaction::ConnectionInfo r=hurley
--HG--
extra : rebase_source : b4b955c652b14e750013130428b71e2e308fead3
2014-04-20 12:01:35 -04:00
Patrick McManus f641c574a8 bug 378637 part 6 - implement nsAHttpTransaction::QueryHttpTransaction r=hurley
--HG--
extra : rebase_source : d2981bb9e47cf9a8f6d038a0c6db6a85f3170f97
2014-04-15 17:40:23 -04:00
Ryan VanderMeulen db079aae32 Backed out 11 changesets (bug 378637) for Android crashes.
Backed out changeset 2a607cddc4cb (bug 378637)
Backed out changeset e416503aea99 (bug 378637)
Backed out changeset b2257226899f (bug 378637)
Backed out changeset dafd618c3f52 (bug 378637)
Backed out changeset dfde9d47d8c4 (bug 378637)
Backed out changeset cf9de5c367a5 (bug 378637)
Backed out changeset 62aa68e8b499 (bug 378637)
Backed out changeset 38efa8f2e56e (bug 378637)
Backed out changeset 2b5753e09a92 (bug 378637)
Backed out changeset 7a73873e133d (bug 378637)
Backed out changeset f58ce7ac1c7f (bug 378637)
2014-05-09 15:25:55 -04:00
Patrick McManus f685e08634 bug 378637 part 11 - proxy over TLS (i.e. https proxying) r=hurley
--HG--
extra : rebase_source : 8962538247666781e30eaa3b9673b857ec150204
2014-04-16 09:52:43 -04:00
Patrick McManus 1ed50ab723 bug 378637 part 9 - implement nsAHttpTransaction::ConnectionInfo r=hurley
--HG--
extra : rebase_source : d69a64d0320c8b0d8a61fe4b6b127b1daa2d2c4d
2014-04-20 12:01:35 -04:00
Patrick McManus 5356f30408 bug 378637 part 6 - implement nsAHttpTransaction::QueryHttpTransaction r=hurley
--HG--
extra : rebase_source : 9e08e2f136b217d62e69da2cb2bb1c16422be520
2014-04-15 17:40:23 -04:00
Patrick McManus c3a11f47df bug 970279 - tie null transactions to cancel and timeout events r=hurley 2014-02-07 17:30:36 -05:00
Patrick McManus cb8d9416e8 bug 957093 - namespace consistency for netwerk/protocol/http r=sworkman
--HG--
extra : rebase_source : f5b1a5e92239003020e75019efbe78a636150b34
2014-01-07 17:05:56 -05:00
Steve Workman 5664e66826 Bug 947391 - Add a timeout for initial HTTP responses r=mcmanus 2013-12-18 15:03:48 -08:00
Ryan VanderMeulen 001213198b Backed out changesets 58db1fb509be and 7301ccf7e0be (bug 947391) for Android xpcshell orange. 2013-12-18 19:41:29 -05:00
Steve Workman 421e5d0ba0 Bug 947391 - Add a timeout for initial HTTP responses r=mcmanus 2013-12-18 15:03:48 -08:00
Steve Workman 87a8b8c0d1 Bug 938803 - Cancel DNS refresh requested in classes implementing nsAHttpTransaction r=mcmanus 2013-11-27 10:19:14 -08:00
Wes Kocher 6c5b337fd8 Backed out changeset 8a25ee567449 (bug 938803) 2013-11-26 19:44:30 -06:00
Steve Workman 14d49d77e1 Bug 938803 - Cancel DNS refresh requested in classes implementing nsAHttpTransaction r=mcmanus 2013-11-26 16:09:49 -08:00
Patrick McManus e18fe0b0fc bug 790388 part 3 - spdy/3 server push r=hurley
--HG--
extra : rebase_source : 1ed60ebda0b790f0ff1578abe7a7732676b495cf
2013-05-29 00:07:03 -04:00
Patrick McManus 2e232b4bd1 bug 871289 [2 of 2] fix trailing whitespace in netwerk/protocol/http/* r=jduell 2013-05-16 09:30:42 -04:00
Patrick McManus 95e42c7d4a bug 822456 - spdy stream id out of order r=honzab 2012-12-18 17:14:21 -05:00