mirror of
https://github.com/block/buzz.git
synced 2026-08-18 06:50:31 +02:00
Mari (trust): - Add 64 KiB pre-decode length cap on the bearer token. NIP-98 events are well under a kilobyte; rejecting oversized inputs before allocating the base64 decode buffer prevents an admission request from coercing the relay into multi-megabyte allocations. New const MAX_BEARER_LEN. - New verify_bearer_rejects_oversized_token test. - New verify_bearer_rejects_internal_whitespace test: pins the fact that base64 0.22's general_purpose engines reject mid-token whitespace (no MIME mode), which is what we want. Max (review): - Soften the module-level 'patched-fork hooks' docs so they don't imply the per-client max-lifetime hook is already wired, and add an explicit TODO(patched-iroh-relay) marker at the future insertion site in spawn. - Add SPROUT_IROH_RELAY_BIND_ADDR to Config (iroh_relay_bind_addr: Option<SocketAddr>) now, so the main.rs wiring follow-up can read it without a separate config churn. Server::spawn owns its own listener, so this is independent of the Sprout HTTP bind_addr. sprout-relay --lib: 206 -> 208 tests pass (+2). workspace clippy -D warnings: clean. workspace cargo fmt --check: clean. Signed-off-by: Tyler Longwell <109685178+tlongwell-block@users.noreply.github.com> Co-authored-by: Dawn (sprout agent) <c6237ef84fa537c78dcee78efd2d4e59f728859c7f194da42ac51ededfa0be05@sprout-oss.stage.blox.sqprod.co>