| Index: net/quic/quic_crypto_client_stream.h
|
| diff --git a/net/quic/quic_crypto_client_stream.h b/net/quic/quic_crypto_client_stream.h
|
| index edfc1f58e3976ba13946406b0aa230fb3e9e6052..634b281bb2b7ce1b04c144d7def40566497662f6 100644
|
| --- a/net/quic/quic_crypto_client_stream.h
|
| +++ b/net/quic/quic_crypto_client_stream.h
|
| @@ -23,7 +23,23 @@ class CryptoTestUtils;
|
| class QuicChromiumClientSessionPeer;
|
| } // namespace test
|
|
|
| -class NET_EXPORT_PRIVATE QuicCryptoClientStream : public QuicCryptoStream {
|
| +class NET_EXPORT_PRIVATE QuicCryptoClientStreamBase : public QuicCryptoStream {
|
| + public:
|
| + explicit QuicCryptoClientStreamBase(QuicClientSessionBase* session);
|
| +
|
| + ~QuicCryptoClientStreamBase() override{};
|
| +
|
| + // Performs a crypto handshake with the server.
|
| + virtual void CryptoConnect() = 0;
|
| +
|
| + // num_sent_client_hellos returns the number of client hello messages that
|
| + // have been sent. If the handshake has completed then this is one greater
|
| + // than the number of round-trips needed for the handshake.
|
| + virtual int num_sent_client_hellos() const = 0;
|
| +};
|
| +
|
| +class NET_EXPORT_PRIVATE QuicCryptoClientStream
|
| + : public QuicCryptoClientStreamBase {
|
| public:
|
| // kMaxClientHellos is the maximum number of times that we'll send a client
|
| // hello. The value 3 accounts for:
|
| @@ -32,24 +48,20 @@ class NET_EXPORT_PRIVATE QuicCryptoClientStream : public QuicCryptoStream {
|
| // the server being unwilling to send it without a valid source-address
|
| // token.
|
| static const int kMaxClientHellos = 3;
|
| -
|
| QuicCryptoClientStream(const QuicServerId& server_id,
|
| QuicClientSessionBase* session,
|
| ProofVerifyContext* verify_context,
|
| QuicCryptoClientConfig* crypto_config);
|
| +
|
| ~QuicCryptoClientStream() override;
|
|
|
| + // From QuicCryptoClientStreamBase
|
| + void CryptoConnect() override;
|
| + int num_sent_client_hellos() const override;
|
| +
|
| // CryptoFramerVisitorInterface implementation
|
| void OnHandshakeMessage(const CryptoHandshakeMessage& message) override;
|
|
|
| - // Performs a crypto handshake with the server.
|
| - virtual void CryptoConnect();
|
| -
|
| - // num_sent_client_hellos returns the number of client hello messages that
|
| - // have been sent. If the handshake has completed then this is one greater
|
| - // than the number of round-trips needed for the handshake.
|
| - int num_sent_client_hellos() const;
|
| -
|
| // Returns true if a channel ID was sent on this connection.
|
| bool WasChannelIDSent() const;
|
|
|
| @@ -128,8 +140,7 @@ class NET_EXPORT_PRIVATE QuicCryptoClientStream : public QuicCryptoStream {
|
| void DoInitialize(QuicCryptoClientConfig::CachedState* cached);
|
|
|
| // Send either InchoateClientHello or ClientHello message to the server.
|
| - void DoSendCHLO(const CryptoHandshakeMessage* in,
|
| - QuicCryptoClientConfig::CachedState* cached);
|
| + void DoSendCHLO(QuicCryptoClientConfig::CachedState* cached);
|
|
|
| // Process REJ message from the server.
|
| void DoReceiveREJ(const CryptoHandshakeMessage* in,
|
|
|