| Index: net/quic/chromium/quic_stream_factory.h
|
| diff --git a/net/quic/chromium/quic_stream_factory.h b/net/quic/chromium/quic_stream_factory.h
|
| index 89a6760e877e6052e04b52054aa023961494c080..7edae1300fc17927e186c49e4d80665df69bb597 100644
|
| --- a/net/quic/chromium/quic_stream_factory.h
|
| +++ b/net/quic/chromium/quic_stream_factory.h
|
| @@ -61,7 +61,7 @@ class HttpServerProperties;
|
| class NetLog;
|
| class ProxyDelegate;
|
| class QuicClock;
|
| -class QuicChromiumAlarmFactory;
|
| +class QuicAlarmFactory;
|
| class QuicChromiumConnectionHelper;
|
| class QuicCryptoClientStreamFactory;
|
| class QuicRandom;
|
| @@ -219,6 +219,7 @@ class NET_EXPORT_PRIVATE QuicStreamFactory
|
| bool delay_tcp_race,
|
| int max_server_configs_stored_in_properties,
|
| bool close_sessions_on_ip_change,
|
| + bool mark_quic_broken_when_network_blackholes,
|
| int idle_connection_timeout_seconds,
|
| int reduced_ping_timeout_seconds,
|
| int packet_reader_yield_after_duration_milliseconds,
|
| @@ -270,8 +271,8 @@ class NET_EXPORT_PRIVATE QuicStreamFactory
|
| // Called by a session after it shuts down.
|
| void OnSessionClosed(QuicChromiumClientSession* session);
|
|
|
| - // Called by a session when it times out with open streams.
|
| - void OnTimeoutWithOpenStreams();
|
| + // Called by a session when it blackholes after the handshake is confirmed.
|
| + void OnBlackholeAfterHandshakeConfirmed(QuicChromiumClientSession* session);
|
|
|
| // Cancels a pending request.
|
| void CancelRequest(QuicStreamRequest* request);
|
| @@ -372,7 +373,7 @@ class NET_EXPORT_PRIVATE QuicStreamFactory
|
|
|
| QuicChromiumConnectionHelper* helper() { return helper_.get(); }
|
|
|
| - QuicChromiumAlarmFactory* alarm_factory() { return alarm_factory_.get(); }
|
| + QuicAlarmFactory* alarm_factory() { return alarm_factory_.get(); }
|
|
|
| bool has_quic_server_info_factory() const {
|
| return quic_server_info_factory_.get() != nullptr;
|
| @@ -402,6 +403,10 @@ class NET_EXPORT_PRIVATE QuicStreamFactory
|
| return migrate_sessions_on_network_change_;
|
| }
|
|
|
| + bool mark_quic_broken_when_network_blackholes() const {
|
| + return mark_quic_broken_when_network_blackholes_;
|
| + }
|
| +
|
| // Dumps memory allocation stats. |parent_dump_absolute_name| is the name
|
| // used by the parent MemoryAllocatorDump in the memory dump hierarchy.
|
| void DumpMemoryStats(base::trace_event::ProcessMemoryDump* pmd,
|
| @@ -535,7 +540,7 @@ class NET_EXPORT_PRIVATE QuicStreamFactory
|
| std::unique_ptr<QuicChromiumConnectionHelper> helper_;
|
|
|
| // The alarm factory used for all connections.
|
| - std::unique_ptr<QuicChromiumAlarmFactory> alarm_factory_;
|
| + std::unique_ptr<QuicAlarmFactory> alarm_factory_;
|
|
|
| // Contains owning pointers to all sessions that currently exist.
|
| SessionIdMap all_sessions_;
|
| @@ -590,6 +595,10 @@ class NET_EXPORT_PRIVATE QuicStreamFactory
|
| // Set if AES-GCM should be preferred, even if there is no hardware support.
|
| bool prefer_aes_;
|
|
|
| + // True if QUIC should be marked as broken when a connection blackholes after
|
| + // the handshake is confirmed.
|
| + bool mark_quic_broken_when_network_blackholes_;
|
| +
|
| // Size of the UDP receive buffer.
|
| int socket_receive_buffer_size_;
|
|
|
|
|