Rewrite QuicSpdyStreamBodyBuffer's consumed byte tracking algorithm. This is motivated by having to consume unknown frames (in a later CL), see cr/258682203 for the end goal. There is some behavioral change as a side effect of the new algorithm: DATA frame headers are consumed immediately, not only when some of the corresponding payload is consumed. This hinges on the previously undocumented property of HttpDecoder that in only calls Visitor::On*FrameStart() methods after the entire frame header is processed. This behavioral change necessitates minor updates to tests. I plan four more CLs after this: one to move HEADERS frame header and payload consumption calculations from QuicSpdyStream to QuicSpdyStreamBodyBuffer; one to consume unknown frames; one to rename QuicSpdyStreamBodyBuffer to QuicSpdyStreamBodyManager or something similar; and one to remove Http3FrameLengths if by that point it's entirely unused. gfe-relnote: n/a, change to QUIC v99-only code. Protected by existing disabled gfe2_reloadable_flag_quic_enable_version_99. PiperOrigin-RevId: 259987101 Change-Id: Id8a734fb36466b3502373097faba2c6c81c793de
QUICHE (QUIC, Http/2, Etc) is Google‘s implementation of QUIC and related protocols. It powers Chromium as well as Google’s QUIC servers and some other projects.
The code is currently in process of being moved from https://cs.chromium.org/chromium/src/net/third_party/ into this repository. Please excuse our appearance while we're under construction.