| Index: net/quic/quic_chromium_client_session.cc
|
| diff --git a/net/quic/quic_chromium_client_session.cc b/net/quic/quic_chromium_client_session.cc
|
| index 15ec708d5f4c8df66dd85ad4db6eea3e37c19fc4..2b244b03578027e2226635ca146527d1cdfcdcf3 100644
|
| --- a/net/quic/quic_chromium_client_session.cc
|
| +++ b/net/quic/quic_chromium_client_session.cc
|
| @@ -205,6 +205,7 @@ QuicChromiumClientSession::QuicChromiumClientSession(
|
| std::move(socket_performance_watcher),
|
| net_log_)),
|
| going_away_(false),
|
| + port_migration_detected_(false),
|
| disabled_reason_(QUIC_DISABLED_NOT),
|
| token_binding_signatures_(kTokenBindingSignatureMapSize),
|
| weak_factory_(this) {
|
| @@ -760,6 +761,7 @@ void QuicChromiumClientSession::OnCryptoHandshakeMessageReceived(
|
| void QuicChromiumClientSession::OnGoAway(const QuicGoAwayFrame& frame) {
|
| QuicSession::OnGoAway(frame);
|
| NotifyFactoryOfSessionGoingAway();
|
| + port_migration_detected_ = frame.error_code == QUIC_ERROR_MIGRATING_PORT;
|
| }
|
|
|
| void QuicChromiumClientSession::OnRstStream(const QuicRstStreamFrame& frame) {
|
| @@ -1098,6 +1100,11 @@ bool QuicChromiumClientSession::MigrateToSocket(
|
| return true;
|
| }
|
|
|
| +void QuicChromiumClientSession::PopulateNetErrorDetails(
|
| + NetErrorDetails* details) {
|
| + details->quic_port_migration_detected = port_migration_detected_;
|
| +}
|
| +
|
| const DatagramClientSocket* QuicChromiumClientSession::GetDefaultSocket()
|
| const {
|
| DCHECK(sockets_.back().get() != nullptr);
|
|
|