Set alternative path as validated once multi-port probing succeeds.

PiperOrigin-RevId: 476986441
diff --git a/quiche/quic/core/quic_connection.cc b/quiche/quic/core/quic_connection.cc
index ff3834b..bf50a86 100644
--- a/quiche/quic/core/quic_connection.cc
+++ b/quiche/quic/core/quic_connection.cc
@@ -7077,6 +7077,8 @@
 
 void QuicConnection::OnMultiPortPathProbingSuccess(
     std::unique_ptr<QuicPathValidationContext> context, QuicTime start_time) {
+  QUICHE_DCHECK_EQ(Perspective::IS_CLIENT, perspective());
+  alternative_path_.validated = true;
   multi_port_path_context_ = std::move(context);
   multi_port_probing_alarm_->Set(clock_->ApproximateNow() +
                                  multi_port_probing_interval_);
diff --git a/quiche/quic/core/quic_connection_test.cc b/quiche/quic/core/quic_connection_test.cc
index 054e8d8..8b96894 100644
--- a/quiche/quic/core/quic_connection_test.cc
+++ b/quiche/quic/core/quic_connection_test.cc
@@ -13027,6 +13027,8 @@
   EXPECT_TRUE(connection_.HasPendingPathValidation());
   EXPECT_TRUE(QuicConnectionPeer::IsAlternativePath(
       &connection_, kNewSelfAddress, connection_.peer_address()));
+  auto* alt_path = QuicConnectionPeer::GetAlternativePath(&connection_);
+  EXPECT_FALSE(alt_path->validated);
 
   // 30ms RTT.
   const QuicTime::Delta kTestRTT = QuicTime::Delta::FromMilliseconds(30);
@@ -13042,6 +13044,7 @@
   EXPECT_FALSE(connection_.HasPendingPathValidation());
   EXPECT_TRUE(QuicConnectionPeer::IsAlternativePath(
       &connection_, kNewSelfAddress, connection_.peer_address()));
+  EXPECT_TRUE(alt_path->validated);
 
   auto stats = connection_.multi_port_stats();
   EXPECT_EQ(1, stats->num_path_degrading);