Change the version label for QUIC v99 + TLS from T099
to \xff\x00\x00\x16 to match the IETF draft 22 version label.
Remove --quic_ietf_draft_version.

gfe-relnote: n/a - QUIC v99 only
PiperOrigin-RevId: 266466333
Change-Id: Iddffd25585012807dc2bb9c291a9a16e39649c5b
diff --git a/quic/tools/quic_client_interop_test_bin.cc b/quic/tools/quic_client_interop_test_bin.cc
index d972678..39f8ff9 100644
--- a/quic/tools/quic_client_interop_test_bin.cc
+++ b/quic/tools/quic_client_interop_test_bin.cc
@@ -19,14 +19,6 @@
 
 DEFINE_QUIC_COMMAND_LINE_FLAG(int32_t, port, 0, "The port to connect to.");
 
-DEFINE_QUIC_COMMAND_LINE_FLAG(
-    int32_t,
-    quic_ietf_draft,
-    0,
-    "QUIC IETF draft number to use over the wire, e.g. 18. "
-    "By default this sets quic_version to T099. "
-    "This also enables required internal QUIC flags.");
-
 namespace quic {
 
 enum class Feature {
@@ -118,11 +110,9 @@
   return features;
 }
 
-std::set<Feature> ServerSupport(std::string host,
-                                int port,
-                                int32_t ietf_draft) {
+std::set<Feature> ServerSupport(std::string host, int port) {
   // Configure version list.
-  QuicVersionInitializeSupportForIetfDraft(ietf_draft);
+  QuicVersionInitializeSupportForIetfDraft();
   ParsedQuicVersion version =
       ParsedQuicVersion(PROTOCOL_TLS1_3, QUIC_VERSION_99);
   ParsedQuicVersionVector versions = {version};
@@ -160,13 +150,12 @@
   }
   std::string host = GetQuicFlag(FLAGS_host);
   int port = GetQuicFlag(FLAGS_port);
-  const int32_t quic_ietf_draft = GetQuicFlag(FLAGS_quic_ietf_draft);
-  if (host.empty() || port == 0 || quic_ietf_draft == 0) {
+  if (host.empty() || port == 0) {
     quic::QuicPrintCommandLineFlagHelp(usage);
     exit(1);
   }
 
-  auto supported_features = quic::ServerSupport(host, port, quic_ietf_draft);
+  auto supported_features = quic::ServerSupport(host, port);
   std::cout << "Supported features: ";
   for (auto feature : supported_features) {
     std::cout << MatrixLetter(feature);
diff --git a/quic/tools/quic_toy_client.cc b/quic/tools/quic_toy_client.cc
index ed05600..09e7a50 100644
--- a/quic/tools/quic_toy_client.cc
+++ b/quic/tools/quic_toy_client.cc
@@ -111,13 +111,11 @@
     "versions are offered in the handshake. Also supports wire versions "
     "such as Q043 or T099.");
 
-DEFINE_QUIC_COMMAND_LINE_FLAG(
-    int32_t,
-    quic_ietf_draft,
-    0,
-    "QUIC IETF draft number to use over the wire, e.g. 18. "
-    "By default this sets quic_version to T099. "
-    "This also enables required internal QUIC flags.");
+DEFINE_QUIC_COMMAND_LINE_FLAG(bool,
+                              quic_ietf_draft,
+                              false,
+                              "Use the IETF draft version. This also enables "
+                              "required internal QUIC flags.");
 
 DEFINE_QUIC_COMMAND_LINE_FLAG(
     bool,
@@ -183,14 +181,12 @@
   quic::ParsedQuicVersionVector versions = quic::CurrentSupportedVersions();
 
   std::string quic_version_string = GetQuicFlag(FLAGS_quic_version);
-  const int32_t quic_ietf_draft = GetQuicFlag(FLAGS_quic_ietf_draft);
-  if (quic_ietf_draft > 0) {
-    quic::QuicVersionInitializeSupportForIetfDraft(quic_ietf_draft);
-    if (quic_version_string.length() == 0) {
-      quic_version_string = "T099";
-    }
-  }
-  if (quic_version_string.length() > 0) {
+  if (GetQuicFlag(FLAGS_quic_ietf_draft)) {
+    quic::QuicVersionInitializeSupportForIetfDraft();
+    versions = {{quic::PROTOCOL_TLS1_3, quic::QUIC_VERSION_99}};
+    quic::QuicEnableVersion(versions[0]);
+
+  } else if (!quic_version_string.empty()) {
     if (quic_version_string[0] == 'T') {
       // ParseQuicVersionString checks quic_supports_tls_handshake.
       SetQuicFlag(FLAGS_quic_supports_tls_handshake, true);
@@ -201,8 +197,7 @@
         quic::QUIC_VERSION_UNSUPPORTED) {
       return 1;
     }
-    versions.clear();
-    versions.push_back(parsed_quic_version);
+    versions = {parsed_quic_version};
     quic::QuicEnableVersion(parsed_quic_version);
   }
 
diff --git a/quic/tools/quic_toy_server.cc b/quic/tools/quic_toy_server.cc
index 633b465..9fb15eb 100644
--- a/quic/tools/quic_toy_server.cc
+++ b/quic/tools/quic_toy_server.cc
@@ -26,12 +26,11 @@
     "construction to seed the cache. Cache directory can be "
     "generated using `wget -p --save-headers <url>`");
 
-DEFINE_QUIC_COMMAND_LINE_FLAG(
-    int32_t,
-    quic_ietf_draft,
-    0,
-    "QUIC IETF draft number to use over the wire, e.g. 18. "
-    "This also enables required internal QUIC flags.");
+DEFINE_QUIC_COMMAND_LINE_FLAG(bool,
+                              quic_ietf_draft,
+                              false,
+                              "Use the IETF draft version. This also enables "
+                              "required internal QUIC flags.");
 
 namespace quic {
 
@@ -50,9 +49,8 @@
     : backend_factory_(backend_factory), server_factory_(server_factory) {}
 
 int QuicToyServer::Start() {
-  const int32_t quic_ietf_draft = GetQuicFlag(FLAGS_quic_ietf_draft);
-  if (quic_ietf_draft > 0) {
-    quic::QuicVersionInitializeSupportForIetfDraft(quic_ietf_draft);
+  if (GetQuicFlag(FLAGS_quic_ietf_draft)) {
+    QuicVersionInitializeSupportForIetfDraft();
     quic::QuicEnableVersion(
         quic::ParsedQuicVersion(quic::PROTOCOL_TLS1_3, quic::QUIC_VERSION_99));
   }