Skip to content

fix(deps): bump rustls to 0.23.46 for RUSTSEC-2026-0346..0349 - #127

Merged
al2wang merged 2 commits into
mainfrom
alex/bump-rustls-rustsec-2026-0346
Oct 15, 2026
Merged

al2wang merged 2 commits into
mainfrom
alex/bump-rustls-rustsec-2026-0346

Conversation

@al2wang

@al2wang al2wang commented Oct 15, 2026

Copy link
Copy Markdown
Collaborator

cargo deny check (the first command in the Dependency and license policy step) now fails on current main (3e2896c). It reports four advisories against rustls 0.23.45:

advisory summary rustls fix fixed in
RUSTSEC-2026-0346 Debug impls for client session values expose TLS secrets rustls/rustls#3299 ≥ 0.23.46
RUSTSEC-2026-0347 buffered application data sent to the outer server after ECH rejection rustls/rustls#3300 ≥ 0.23.46
RUSTSEC-2026-0348 Brotli certificate decompression can allocate up to 1 GiB before authentication rustls/rustls#3297 ≥ 0.23.46
RUSTSEC-2026-0349 unauthenticated ServerHello can downgrade later connections to classical key exchange rustls/rustls#3355 ≥ 0.23.46

This PR is a lockfile-only bump to 0.23.46 (cargo update -p rustls --precise 0.23.46). No other crate version moves. rustls 0.23.46 has the same dependency requirements as 0.23.45. The rustls = "0.23.45" requirement in crates/execution/Cargo.toml is a caret requirement and already admits 0.23.46, so it stays as is.

Context: every PR whose plan selects the policy step currently fails on these advisories regardless of its own content. #100 hits them in run 38609470613 (linux job, "Dependency and license policy"), and that failure fails its required source-gate. Landing this separately unblocks #100 without changing it.

Validation (local, Rust 1.89, cargo-deny 0.20.2 / cargo-audit 0.22.2 / cargo-about 0.9.2 as pinned in CI):

  • cargo deny check advisories bans licenses sources: advisories ok, bans ok, licenses ok, sources ok, with no RUSTSEC findings. Control on the same advisory-db snapshot (caee11f): main reports exactly RUSTSEC-2026-0346, 0347, 0348 and 0349 and nothing else; this branch reports none.
  • Full policy step (cargo deny check, cargo about generate about.hbs with the serde/MIT checks, tests/test-supply-chain.sh): pass.
  • cargo fmt --all -- --check: pass.
  • cargo clippy --locked --workspace --all-targets -- -D warnings: pass.
  • cargo test --locked --workspace: 848 passed, 0 failed (54 suites), including the sandbox tests.

🤖 Generated with Claude Code

`cargo deny check` now reports four advisories against rustls 0.23.45:
`Debug` impls for client session values expose TLS secrets (0346), buffered
application data sent to the outer server after ECH rejection (0347), Brotli
certificate decompression can allocate up to 1 GiB before authentication
(0348), and an unauthenticated ServerHello can downgrade later connections to
classical key exchange (0349). All are fixed in >= 0.23.46. Lockfile-only
change (rustls 0.23.45 -> 0.23.46); no other crate version moves.

Signed-off-by: al2wang <lightever131@gmail.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@al2wang
al2wang requested a review from sl-7qx as a code owner October 15, 2026 01:20

@weiddeng weiddeng left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. This is a minimal lockfile-only rustls 0.23.45 → 0.23.46 update; the existing caret requirement admits the patch release, no other dependency entries move, and 0.23.46 is the patched version for RUSTSEC-2026-0346 through -0349. The full CI and required source gate pass.

@al2wang
al2wang merged commit eac5c1a into main Oct 15, 2026
21 of 23 checks passed
@al2wang
al2wang deleted the alex/bump-rustls-rustsec-2026-0346 branch October 15, 2026 16:16
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.

2 participants