deno
0fd23e75 - fix(net): limit WebTransport handshake frame buffering (#36068)

Commit
101 days ago
fix(net): limit WebTransport handshake frame buffering (#36068) ## Summary - bound incremental WebTransport handshake-frame buffering to 64 KiB - share the bounded reader across SETTINGS, CONNECT response, and CONNECT request decoding - add boundary and arithmetic-overflow tests for the accumulator ## Bug The WebTransport handshake decoders appended another QUIC chunk whenever decoding returned `UnexpectedEnd`, without imposing a maximum accumulated size. An incomplete SETTINGS or CONNECT frame could therefore make the buffer continue growing for as long as more data arrived. The shared reader limits each accumulator, caps individual reads to the remaining capacity plus one byte, and rejects an oversized frame before copying the extra byte. ## Validation - `./tools/format.js` - `cargo fmt --check --package deno_net` - `cargo test -p deno_net handshake_buffer --lib` - `cargo build --bin deno` - existing WebTransport connection spec
Author
Parents
Loading