Enable ALPS in the client only for QUIC versions that use HTTP/3 frames.
PiperOrigin-RevId: 361543622
Change-Id: I946ed0131e01fca298d997b39e8a2cad5d714dc5
diff --git a/quic/core/tls_client_handshaker.cc b/quic/core/tls_client_handshaker.cc
index 1f3159e..7163bd5 100644
--- a/quic/core/tls_client_handshaker.cc
+++ b/quic/core/tls_client_handshaker.cc
@@ -176,9 +176,13 @@
return false;
}
- // Enable ALPS.
+ // Enable ALPS only for versions that use HTTP/3 frames.
if (enable_alps_) {
for (const std::string& alpn_string : alpns) {
+ ParsedQuicVersion version = ParseQuicVersionString(alpn_string);
+ if (!version.IsKnown() || !version.UsesHttp3()) {
+ continue;
+ }
if (SSL_add_application_settings(
ssl(), reinterpret_cast<const uint8_t*>(alpn_string.data()),
alpn_string.size(), nullptr, /* settings_len = */ 0) != 1) {