Support all HTTP/3 versions in MASQUE This means we'll use h3,h3-29 instead of just h3, and that'll help simplify IETF MASQUE interop events. This code is not used in production. PiperOrigin-RevId: 360223566 Change-Id: I519f6785e130075cb1ed75fcc45f0b3160f3c1b2
diff --git a/quic/masque/masque_utils.cc b/quic/masque/masque_utils.cc index 17dec0d..cd19602 100644 --- a/quic/masque/masque_utils.cc +++ b/quic/masque/masque_utils.cc
@@ -8,17 +8,16 @@ ParsedQuicVersionVector MasqueSupportedVersions() { QuicVersionInitializeSupportForIetfDraft(); - ParsedQuicVersion version = UnsupportedQuicVersion(); - for (const ParsedQuicVersion& vers : AllSupportedVersions()) { - // Find the first version that supports IETF QUIC. - if (vers.HasIetfQuicFrames() && vers.UsesTls()) { - version = vers; - break; + ParsedQuicVersionVector versions; + for (const ParsedQuicVersion& version : AllSupportedVersions()) { + // Use all versions that support IETF QUIC. + if (version.UsesHttp3()) { + QuicEnableVersion(version); + versions.push_back(version); } } - QUICHE_CHECK(version.IsKnown()); - QuicEnableVersion(version); - return {version}; + QUICHE_CHECK(!versions.empty()); + return versions; } QuicConfig MasqueEncapsulatedConfig() {