Internal change
PiperOrigin-RevId: 482897495
diff --git a/quiche/quic/core/http/quic_spdy_stream.cc b/quiche/quic/core/http/quic_spdy_stream.cc
index e27a23a..2584a39 100644
--- a/quiche/quic/core/http/quic_spdy_stream.cc
+++ b/quiche/quic/core/http/quic_spdy_stream.cc
@@ -659,6 +659,14 @@
"Promise headers received by server");
}
+bool QuicSpdyStream::CopyAndValidateTrailers(const QuicHeaderList& header_list,
+ bool expect_final_byte_offset,
+ size_t* final_byte_offset,
+ spdy::Http2HeaderBlock* trailers) {
+ return SpdyUtils::CopyAndValidateTrailers(
+ header_list, expect_final_byte_offset, final_byte_offset, trailers);
+}
+
void QuicSpdyStream::OnTrailingHeadersComplete(
bool fin, size_t /*frame_len*/, const QuicHeaderList& header_list) {
// TODO(b/134706391): remove |fin| argument.
@@ -681,9 +689,8 @@
size_t final_byte_offset = 0;
const bool expect_final_byte_offset = !VersionUsesHttp3(transport_version());
- if (!SpdyUtils::CopyAndValidateTrailers(header_list, expect_final_byte_offset,
- &final_byte_offset,
- &received_trailers_)) {
+ if (!CopyAndValidateTrailers(header_list, expect_final_byte_offset,
+ &final_byte_offset, &received_trailers_)) {
QUIC_DLOG(ERROR) << ENDPOINT << "Trailers for stream " << id()
<< " are malformed.";
stream_delegate()->OnStreamError(QUIC_INVALID_HEADERS_STREAM_DATA,
diff --git a/quiche/quic/core/http/quic_spdy_stream.h b/quiche/quic/core/http/quic_spdy_stream.h
index 5ba4400..a4ca50e 100644
--- a/quiche/quic/core/http/quic_spdy_stream.h
+++ b/quiche/quic/core/http/quic_spdy_stream.h
@@ -335,6 +335,11 @@
quiche::QuicheReferenceCountedPointer<QuicAckListenerInterface>
ack_listener);
+ virtual bool CopyAndValidateTrailers(const QuicHeaderList& header_list,
+ bool expect_final_byte_offset,
+ size_t* final_byte_offset,
+ spdy::Http2HeaderBlock* trailers);
+
Visitor* visitor() { return visitor_; }
void set_headers_decompressed(bool val) { headers_decompressed_ = val; }