Add a --disable_port_changes option to quic_client to not change
ports after every request.

gfe-relnote: n/a - tool only
PiperOrigin-RevId: 270695063
Change-Id: Ib2ed0c7cae1853a6a438d7f473069c7a26249b38
diff --git a/quic/tools/quic_toy_client.cc b/quic/tools/quic_toy_client.cc
index 42eadf8..4c4a1f5 100644
--- a/quic/tools/quic_toy_client.cc
+++ b/quic/tools/quic_toy_client.cc
@@ -161,6 +161,12 @@
     false,
     "If true, drop response body immediately after it is received.");
 
+DEFINE_QUIC_COMMAND_LINE_FLAG(
+    bool,
+    disable_port_changes,
+    false,
+    "If true, do not change local port after each request.");
+
 namespace quic {
 
 QuicToyClient::QuicToyClient(ClientFactory* client_factory)
@@ -343,7 +349,7 @@
     }
 
     // Change the ephemeral port if there are more requests to do.
-    if (i + 1 < num_requests) {
+    if (!GetQuicFlag(FLAGS_disable_port_changes) && i + 1 < num_requests) {
       if (!client->ChangeEphemeralPort()) {
         std::cerr << "Failed to change ephemeral port." << std::endl;
         return 1;