| Index: net/spdy/buffered_spdy_framer.h
|
| diff --git a/net/spdy/buffered_spdy_framer.h b/net/spdy/buffered_spdy_framer.h
|
| index 64aa0f786e04ba2d1a437f10b7dc9e3b5f77c632..426bc5ffb6e98f61437e46b85a6ba9599d359a79 100644
|
| --- a/net/spdy/buffered_spdy_framer.h
|
| +++ b/net/spdy/buffered_spdy_framer.h
|
| @@ -81,7 +81,7 @@ class NET_EXPORT_PRIVATE BufferedSpdyFramerVisitorInterface {
|
| virtual void OnSettingsAck() {}
|
|
|
| // Called at the completion of parsing SETTINGS id and value tuples.
|
| - virtual void OnSettingsEnd() {};
|
| + virtual void OnSettingsEnd() {}
|
|
|
| // Called when a PING frame has been parsed.
|
| virtual void OnPing(SpdyPingId unique_id, bool is_ack) = 0;
|
| @@ -103,6 +103,12 @@ class NET_EXPORT_PRIVATE BufferedSpdyFramerVisitorInterface {
|
| SpdyStreamId promised_stream_id,
|
| const SpdyHeaderBlock& headers) = 0;
|
|
|
| + // Called when a frame type we don't recognize is received.
|
| + // Return true if this appears to be a valid extension frame, false otherwise.
|
| + // We distinguish between extension frames and nonsense by checking
|
| + // whether the stream id is valid.
|
| + virtual bool OnUnknownFrame(SpdyStreamId stream_id, int frame_type) = 0;
|
| +
|
| protected:
|
| virtual ~BufferedSpdyFramerVisitorInterface() {}
|
|
|
| @@ -163,6 +169,7 @@ class NET_EXPORT_PRIVATE BufferedSpdyFramer
|
| size_t length,
|
| bool fin) OVERRIDE;
|
| virtual void OnContinuation(SpdyStreamId stream_id, bool end) OVERRIDE;
|
| + virtual bool OnUnknownFrame(SpdyStreamId stream_id, int frame_type) OVERRIDE;
|
|
|
| // SpdyFramer methods.
|
| size_t ProcessInput(const char* data, size_t len);
|
|
|