summaryrefslogtreecommitdiffstats
path: root/net/spdy/spdy_protocol.h
diff options
context:
space:
mode:
authorjgraettinger@chromium.org <jgraettinger@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-02-25 05:42:05 +0000
committerjgraettinger@chromium.org <jgraettinger@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-02-25 05:42:05 +0000
commit53669f6067d653bd701a145e0bde26edfa074605 (patch)
tree6e0cb51106b8ee6a1a421ac24f51794474527b07 /net/spdy/spdy_protocol.h
parent1214b853e84214f7e908a61272eefebe82b7303d (diff)
downloadchromium_src-53669f6067d653bd701a145e0bde26edfa074605.zip
chromium_src-53669f6067d653bd701a145e0bde26edfa074605.tar.gz
chromium_src-53669f6067d653bd701a145e0bde26edfa074605.tar.bz2
Implements the ACK flag for SPDY4/HTTP2 PING frames
This lands server change 61378132 by birenroy. Also update SpdySession, BufferedSpdyFramer, etc to accept and pass the |is_ack| flag. BUG=345769 Review URL: https://codereview.chromium.org/169283012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253088 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/spdy/spdy_protocol.h')
-rw-r--r--net/spdy/spdy_protocol.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/net/spdy/spdy_protocol.h b/net/spdy/spdy_protocol.h
index 110b7eb..5cad819 100644
--- a/net/spdy/spdy_protocol.h
+++ b/net/spdy/spdy_protocol.h
@@ -301,6 +301,10 @@ enum SpdyControlFlags {
CONTROL_FLAG_UNIDIRECTIONAL = 2
};
+enum SpdyPingFlags {
+ PING_FLAG_ACK = 0x1,
+};
+
enum SpdyHeadersFlags {
HEADERS_FLAG_PRIORITY = 0x08
};
@@ -609,13 +613,18 @@ class NET_EXPORT_PRIVATE SpdySettingsIR : public SpdyFrameIR {
class NET_EXPORT_PRIVATE SpdyPingIR : public SpdyFrameIR {
public:
- explicit SpdyPingIR(SpdyPingId id) : id_(id) {}
+ explicit SpdyPingIR(SpdyPingId id) : id_(id), is_ack_(false) {}
SpdyPingId id() const { return id_; }
+ // ACK logic is valid only for SPDY versions 4 and above.
+ bool is_ack() const { return is_ack_; }
+ void set_is_ack(bool is_ack) { is_ack_ = is_ack; }
+
virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE;
private:
SpdyPingId id_;
+ bool is_ack_;
DISALLOW_COPY_AND_ASSIGN(SpdyPingIR);
};