| Index: net/spdy/spdy_framer.h
|
| diff --git a/net/spdy/spdy_framer.h b/net/spdy/spdy_framer.h
|
| index 8714e373c1b552edba33c5c5b38114eea0b4733d..3cca386e3f4a18e66c4f75cbaeb054114205a9b1 100644
|
| --- a/net/spdy/spdy_framer.h
|
| +++ b/net/spdy/spdy_framer.h
|
| @@ -487,6 +487,9 @@ class NET_EXPORT_PRIVATE SpdyFramer {
|
| // Returns the maximum payload size of a DATA frame.
|
| size_t GetDataFrameMaximumPayload() const;
|
|
|
| + // Returns the prefix length for the given frame type.
|
| + size_t GetPrefixLength(SpdyFrameType type) const;
|
| +
|
| // For debugging.
|
| static const char* StateToString(int state);
|
| static const char* ErrorCodeToString(int error_code);
|
| @@ -511,6 +514,7 @@ class NET_EXPORT_PRIVATE SpdyFramer {
|
| size_t len);
|
|
|
| protected:
|
| + // TODO(jgraettinger): Switch to test peer pattern.
|
| FRIEND_TEST_ALL_PREFIXES(SpdyFramerTest, BasicCompression);
|
| FRIEND_TEST_ALL_PREFIXES(SpdyFramerTest, ControlFrameSizesAreValidated);
|
| FRIEND_TEST_ALL_PREFIXES(SpdyFramerTest, HeaderCompression);
|
| @@ -527,6 +531,10 @@ class NET_EXPORT_PRIVATE SpdyFramer {
|
| ReadLargeSettingsFrameInSmallChunks);
|
| FRIEND_TEST_ALL_PREFIXES(SpdyFramerTest, ControlFrameAtMaxSizeLimit);
|
| FRIEND_TEST_ALL_PREFIXES(SpdyFramerTest, ControlFrameTooLarge);
|
| + FRIEND_TEST_ALL_PREFIXES(SpdyFramerTest,
|
| + TooLargeHeadersFrameUsesContinuation);
|
| + FRIEND_TEST_ALL_PREFIXES(SpdyFramerTest,
|
| + TooLargePushPromiseFrameUsesContinuation);
|
| friend class net::HttpNetworkLayer; // This is temporary for the server.
|
| friend class net::HttpNetworkTransactionTest;
|
| friend class net::HttpProxyClientSocketPoolTest;
|
| @@ -578,6 +586,13 @@ class NET_EXPORT_PRIVATE SpdyFramer {
|
| z_stream* GetHeaderCompressor();
|
| z_stream* GetHeaderDecompressor();
|
|
|
| + size_t GetNumberRequiredContinuationFrames(size_t size);
|
| +
|
| + void WritePayloadWithContinuation(SpdyFrameBuilder* builder,
|
| + const std::string& hpack_encoding,
|
| + SpdyStreamId stream_id,
|
| + SpdyFrameType type);
|
| +
|
| private:
|
| // Deliver the given control frame's uncompressed headers block to the
|
| // visitor in chunks. Returns true if the visitor has accepted all of the
|
|
|