summaryrefslogtreecommitdiff
path: root/chromium/net/quic/quic_client_session_base.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/net/quic/quic_client_session_base.h')
-rw-r--r--chromium/net/quic/quic_client_session_base.h22
1 files changed, 17 insertions, 5 deletions
diff --git a/chromium/net/quic/quic_client_session_base.h b/chromium/net/quic/quic_client_session_base.h
index 0e3c0fa3ff3..ae65ab01aa4 100644
--- a/chromium/net/quic/quic_client_session_base.h
+++ b/chromium/net/quic/quic_client_session_base.h
@@ -5,6 +5,7 @@
#ifndef NET_QUIC_QUIC_CLIENT_SESSION_BASE_H_
#define NET_QUIC_QUIC_CLIENT_SESSION_BASE_H_
+#include "base/macros.h"
#include "net/quic/quic_crypto_client_stream.h"
#include "net/quic/quic_spdy_session.h"
@@ -13,16 +14,13 @@ namespace net {
// Base class for all client-specific QuicSession subclasses.
class NET_EXPORT_PRIVATE QuicClientSessionBase : public QuicSpdySession {
public:
- QuicClientSessionBase(QuicConnection* connection,
- const QuicConfig& config);
+ QuicClientSessionBase(QuicConnection* connection, const QuicConfig& config);
~QuicClientSessionBase() override;
// Called when the proof in |cached| is marked valid. If this is a secure
// QUIC session, then this will happen only after the proof verifier
- // completes. If this is an insecure QUIC connection, this will happen
- // as soon as a valid config is discovered (either from the cache or
- // from the server).
+ // completes.
virtual void OnProofValid(
const QuicCryptoClientConfig::CachedState& cached) = 0;
@@ -35,7 +33,21 @@ class NET_EXPORT_PRIVATE QuicClientSessionBase : public QuicSpdySession {
// Override base class to set FEC policy before any data is sent by client.
void OnCryptoHandshakeEvent(CryptoHandshakeEvent event) override;
+ // Called by |headers_stream_| when push promise headers have been
+ // received for a stream.
+ void OnPromiseHeaders(QuicStreamId stream_id,
+ StringPiece headers_data) override;
+
+ // Called by |headers_stream_| when push promise headers have been
+ // completely received. |fin| will be true if the fin flag was set
+ // in the headers.
+ void OnPromiseHeadersComplete(QuicStreamId stream_id,
+ QuicStreamId promised_stream_id,
+ size_t frame_len) override;
+
private:
+ QuicStreamId largest_promised_stream_id_;
+
DISALLOW_COPY_AND_ASSIGN(QuicClientSessionBase);
};