diff options
author | rch <rch@chromium.org> | 2015-04-18 06:29:46 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-04-18 13:30:40 +0000 |
commit | c081544e054c8bd9b350f73816ccf9118b0ffe9e (patch) | |
tree | cb5ef85b4c62ae0ae5e7f51eb5bbb63fc9ea3beb /net/quic/spdy_utils.h | |
parent | 2bd42fdbfab81b645ac926bd115e2a0762426b64 (diff) | |
download | chromium_src-c081544e054c8bd9b350f73816ccf9118b0ffe9e.zip chromium_src-c081544e054c8bd9b350f73816ccf9118b0ffe9e.tar.gz chromium_src-c081544e054c8bd9b350f73816ccf9118b0ffe9e.tar.bz2 |
Land Recent QUIC Changes until 04/15/2015
Introduce new QUIC tag for stateless rejects.
Merge internal change: 91210526
https://codereview.chromium.org/1097573003/
Add the option to estimate bandwidth by using the max of the recent samples rather than the average. Default to true in prod.
Full implementation of make-tcp-fast's windowed max over 8 RTTs to come later.
Merge internal change: 90885261
https://codereview.chromium.org/1091913002/
Temporarily fix a flaky QUIC EndToEndTest until b/19572432 is fixed.
Merge internal change: 90710547
https://codereview.chromium.org/1084403006/
Remove extraneous FEC interface from QuicFramer. No functional change.
Merge internal change: 90653152
https://codereview.chromium.org/1092783004/
Create a new TCP cubic mode with a min CWND of 4 packets, but with a pacing rate as low as 1 packet per RTT.
Merge internal change: 90646967
https://codereview.chromium.org/1097553004/
Remove common cert set 0 from QUIC.
Common cert set 0 was generated 2 years ago (or so) at the inception
of the QUIC project. The version of the GIA cert which it contains is
expired, so the set essentially server no purpose. Common cert set 1
was generated back in July and contains a current version of GIA.
Merge internal change: 90426581
https://codereview.chromium.org/1092843002/
Allow QUIC's LargePostNoPacketLoss test to have some packets lost until b/16460210 is fixed.
Merge internal change: 90417911
https://codereview.chromium.org/1084323004/
Reorganize incoming packet validity checks. Most behavior unchanged, but QUIC connection requests that are flagged for time-wait and also have a not-understood version now get a version negotiation packet.
Add tests to verify the various validity checks have the desired effect.
Merge internal change: 90277728
https://codereview.chromium.org/1090063004/
Stop explicitly setting header fields with their default values.
Pull out packet construction into a ConstructPacket method.
Merge internal change: 90276965
https://codereview.chromium.org/1092833002/
Use C++11 delegate constructors to avoid constructor body duplication.
Merge internal change: 90275058
https://codereview.chromium.org/1090113002/
No need to have a QuicPacketHeader member variable: it's not expensive to build, and building a new one each time ensures it doesn't contain unexpected values.
Merge internal change: 90274866
https://codereview.chromium.org/1065543003/
Augment QUIC_VERSION_25 by removing unused error_details field from QuicRstStreamFrame
The error field is populated, but error_details string is never used.
Merge internal change: 90259315
https://codereview.chromium.org/1091863002/
Stop storing QuicSession's flow controller in a scoped_ptr.
Every session has a flow controller nowadays. We never change or delete it, no
longer needs to be in a scoped_ptr.
Merge internal change: 90250975
https://codereview.chromium.org/1097603002/
Additional tests to verify that a connection is closed when a decryptable packet with damaged payload is processed. Add a debug logging message.
Merge internal change: 90188127
https://codereview.chromium.org/1094743002/
Tidy up some comments in QuicConnection, and remove linebreak in method signature.
https://codereview.chromium.org/1090073002/
Initialize all fields in the default QuicServerId constructor
Fixed QuicServerId constructor to initialize all fields.
Merge internal change: 90180296
https://codereview.chromium.org/1061783004/
Implement QUIC version 25 which supports SPDY/4 style header blocks.
Merge internal change: 90161489
https://codereview.chromium.org/1094733002/
Remove DFATAL on double close of a QUIC connection, silent early return instead. No behavior change.
This DFATAL is a relic from the old days when the code was much simpler and we could easily verify that CloseConnection wasn't being called from multiple places in the current stack. Multiple calls to CloseConnection are not dangerous. Quoting rch: "the code is significantly more complex now and reasoning about where we are in the call stack of other methods which might have also closed the connection seems really daunting."
Merge internal change: 90156411
https://codereview.chromium.org/1096563002/
add a version() convenience method to ReliableQuicStream.
Merge internal change: 89979074
https://codereview.chromium.org/1096493005/
deprecate --FLAGS_quic_small_default_packet_size
Merge internal change: 89899060
https://codereview.chromium.org/1070393003/
Remove QUIC's ack train detection code because it's never used now that pacing is always enabled.
Merge internal change: 89890425
https://codereview.chromium.org/1097533002/
Review URL: https://codereview.chromium.org/1091923002
Cr-Commit-Position: refs/heads/master@{#325772}
Diffstat (limited to 'net/quic/spdy_utils.h')
-rw-r--r-- | net/quic/spdy_utils.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/net/quic/spdy_utils.h b/net/quic/spdy_utils.h index efb72a0..ac13c2e 100644 --- a/net/quic/spdy_utils.h +++ b/net/quic/spdy_utils.h @@ -8,6 +8,7 @@ #include <string> #include "net/base/net_export.h" +#include "net/quic/quic_protocol.h" #include "net/spdy/spdy_framer.h" namespace net { @@ -16,8 +17,15 @@ const SpdyMajorVersion kDefaultSpdyMajorVersion = SPDY3; class NET_EXPORT_PRIVATE SpdyUtils { public: + static SpdyMajorVersion GetSpdyVersionForQuicVersion( + QuicVersion quic_version); + static std::string SerializeUncompressedHeaders( - const SpdyHeaderBlock& headers); + const SpdyHeaderBlock& headers, + QuicVersion version); + + static SpdyHeaderBlock ConvertSpdy3ResponseHeadersToSpdy4( + SpdyHeaderBlock response_headers); private: DISALLOW_COPY_AND_ASSIGN(SpdyUtils); |