diff options
author | erikchen@google.com <erikchen@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-06-28 18:47:49 +0000 |
---|---|---|
committer | erikchen@google.com <erikchen@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-06-28 18:47:49 +0000 |
commit | 52a69186b43c61c0f3c96abd583dc9a9e3cf447d (patch) | |
tree | 0ea5ffe8c030e3532af8b2faae98c8361c7287a7 /net/spdy/spdy_session.h | |
parent | 2535e637b7da1d6f530bf8f0a6c482c703d2c1f7 (diff) | |
download | chromium_src-52a69186b43c61c0f3c96abd583dc9a9e3cf447d.zip chromium_src-52a69186b43c61c0f3c96abd583dc9a9e3cf447d.tar.gz chromium_src-52a69186b43c61c0f3c96abd583dc9a9e3cf447d.tar.bz2 |
Streams send a Rst frame upon being closed by client. Some minor editorial fixes.
TEST=net_unittests
BUG=46589
Review URL: http://codereview.chromium.org/2804008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51007 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/spdy/spdy_session.h')
-rw-r--r-- | net/spdy/spdy_session.h | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/net/spdy/spdy_session.h b/net/spdy/spdy_session.h index 8a23168..9526790 100644 --- a/net/spdy/spdy_session.h +++ b/net/spdy/spdy_session.h @@ -91,8 +91,16 @@ class SpdySession : public base::RefCounted<SpdySession>, int WriteStreamData(spdy::SpdyStreamId stream_id, net::IOBuffer* data, int len); - // Close a stream. - void CloseStream(spdy::SpdyStreamId stream_id, int status); + // This marks the stream as half closed from the client side, and removes it + // from the active_streams_ map. + void CloseStream(spdy::SpdyStreamId id, int status); + // This is identical to CloseStream, except it also sends a Rst stream frame. + void CloseStreamAndSendRst(spdy::SpdyStreamId stream_id, int status); + + // Half close a stream. + void HalfCloseStreamClientSide(spdy::SpdyStreamId stream_id, int status); + void HalfCloseStreamServerSide(spdy::SpdyStreamId stream_id, int status); + // Check if a stream is active. bool IsStreamActive(spdy::SpdyStreamId stream_id) const; @@ -142,7 +150,7 @@ class SpdySession : public base::RefCounted<SpdySession>, const linked_ptr<spdy::SpdyHeaderBlock>& headers); void OnSynReply(const spdy::SpdySynReplyControlFrame& frame, const linked_ptr<spdy::SpdyHeaderBlock>& headers); - void OnFin(const spdy::SpdyRstStreamControlFrame& frame); + void OnRst(const spdy::SpdyRstStreamControlFrame& frame); void OnGoAway(const spdy::SpdyGoAwayControlFrame& frame); void OnSettings(const spdy::SpdySettingsControlFrame& frame); @@ -181,7 +189,6 @@ class SpdySession : public base::RefCounted<SpdySession>, // Track active streams in the active stream list. void ActivateStream(SpdyStream* stream); - void DeleteStream(spdy::SpdyStreamId id, int status); // Removes this session from the session pool. void RemoveFromPool(); @@ -270,7 +277,7 @@ class SpdySession : public base::RefCounted<SpdySession>, int streams_initiated_count_; int streams_pushed_count_; int streams_pushed_and_claimed_count_; - int streams_abandoned_count_; + int streams_abandoned_count_; // # of streams that were pushed & abandoned. bool sent_settings_; // Did this session send settings when it started. bool received_settings_; // Did this session receive at least one settings // frame. |