Skip to content

h3: support trailer field sections - #529

Open
SC123667 wants to merge 1 commit into
Tencent:developfrom
SC123667:codex/support-http3-trailers-226
Open

h3: support trailer field sections#529
SC123667 wants to merge 1 commit into
Tencent:developfrom
SC123667:codex/support-http3-trailers-226

Conversation

@SC123667

Copy link
Copy Markdown

Summary

  • add explicit Rust and C APIs for additional HTTP/3 field sections, covering request and response trailers as well as informational response chaining
  • track send and receive message phases so initial DATA, duplicate trailers, and HEADERS or DATA after trailers are rejected with H3_FRAME_UNEXPECTED
  • QPACK-decode every received field section and surface trailers through the existing Headers event/callback with clarified fin semantics
  • preserve atomic HEADERS writes and add a flow-control retry path for blocked trailer sections

Standards

  • RFC 9114 Section 4.1 message sequencing
  • RFC 9204 field-section decoding through the existing QPACK path

Testing

  • cargo fmt --all -- --check
  • typos -c ./typos.toml
  • cargo clippy --all -- -D warnings
  • cargo clippy --all -F ffi -- -D warnings
  • cargo build --all -F ffi --verbose
  • cargo test --verbose (563 unit tests and 1 doc test passed)
  • cargo build --all --no-default-features -F h3 and cargo test --no-default-features -F h3 (558 unit tests and 1 doc test passed)
  • cargo build --all --no-default-features -F ffi,h3 and cargo test --no-default-features -F ffi,h3 (558 unit tests and 1 doc test passed)
  • RUSTDOCFLAGS="-D warnings" cargo doc --no-deps --all-features
  • generated-header comparison, C/C++ header syntax checks, and exported-symbol verification

Resolves #226

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support HTTP/3 Trailer

1 participant