feat: add WebTransport (HTTP/3) server endpoint for browser clients

Feature-gated behind --features webtransport. Uses h3, h3-quinn,
and h3-webtransport crates to accept WebTransport sessions over
HTTP/3. Dispatches RPC through the same v2 handler registry as
native QUIC, using identical wire framing.

- webtransport.rs: H3 connection handling, session management,
  bidi stream RPC dispatch with auth handshake
- Config: --webtransport-listen / QPQ_WEBTRANSPORT_LISTEN
- ALPN: "h3" for WebTransport, "capnp" for native QUIC
- Also fixes: add missing save/load_revocation_log to SqlStore
This commit is contained in:
2026-03-04 20:59:59 +01:00
parent 511fc7822e
commit 3f5a3a5ac8
5 changed files with 507 additions and 1 deletions

View File

@@ -79,7 +79,7 @@ mdns-sd = "0.12"
# WebTransport (HTTP/3) — feature-gated, for browser clients.
h3 = { version = "0.0.8", optional = true }
h3-quinn = { version = "0.0.10", optional = true }
h3-quinn = { version = "0.0.10", features = ["datagram"], optional = true }
h3-webtransport = { version = "0.1", optional = true }
http = { version = "1", optional = true }