Skip to content

deps: rustls 0.23.46 in the runtime; advisories checked in CI on every lockfile - #9

Merged
cpoder merged 1 commit into
masterfrom
deps/rustls-0.23.46-audit
Oct 14, 2026
Merged

cpoder merged 1 commit into
masterfrom
deps/rustls-0.23.46-audit

Conversation

@cpoder

@cpoder cpoder commented Oct 14, 2026

Copy link
Copy Markdown
Owner

cargo audit on core/Cargo.lock reported ten advisories, and nothing in CI runs it.

  • rustls 0.23.43 → 0.23.46 (RUSTSEC-2026-0285, -0346, -0348, -0349). It is the TLS stack of the runtime's HTTP client (http-poll, oauth-poll, webhooks, Vault) and of MQTT over TLS. Lock-only change. Checked with the built binary: POST /connectors/test on an http-poll to https://api.github.com/zen answers GET OK, and https://expired.badssl.com/ is refused for its expired certificate.
  • Audit in CI. scripts/audit.sh audits every committed Cargo.lock (core and the four connectors) from the repo root, because cargo-audit reads .cargo/audit.toml from the current directory only. .github/workflows/audit.yml runs it on push, on pull requests and daily, since advisories are published without any commit here.
  • Documented ignores in .cargo/audit.toml for what has no patched release: rustls 0.22.4 and rustls-webpki 0.102.8 (six advisories) from the sync nats 0.25 client in core, amqp and mq, and idna 0.1.5 from amiquip in the amqp connector. Each entry says why it is not reachable as used here. Moving to async-nats removes the six.

Fail before, pass after: against master's core/Cargo.lock the new audit fails (RUSTSEC-2026-0285, -0348); on this branch all five locks pass. cargo test (43 passed), the 22 golden cases and the parse check of all 51 scripts pass locally.

The release image (ghcr.io/cpoder/vejas-runtime) is built from core/ only; the connectors are not in it.

🤖 Generated with Claude Code

…y lockfile

cargo-audit on core/Cargo.lock reported ten advisories and nothing in CI
looked. Four were rustls 0.23.43 (RUSTSEC-2026-0285, -0346, -0348, -0349),
the TLS stack of the runtime's HTTP client and of MQTT over TLS. 0.23.46 is
the patched release of the same line; only the lock moves. Checked with the
built binary: POST /connectors/test on an http-poll to
https://api.github.com/zen answers GET OK, and https://expired.badssl.com/
is refused for its expired certificate.

The other six are rustls 0.22.4 and rustls-webpki 0.102.8, pulled by the
sync nats 0.25 client in core and in the amqp and mq connectors (amqp also
uses rustls 0.22 directly for amqps://). nats 0.25 has no patched release;
async-nats is the way out. .cargo/audit.toml lists them with the reason
none is reachable as used here, along with idna 0.1.5 (RUSTSEC-2024-0421)
from amiquip in the amqp connector.

scripts/audit.sh audits every committed Cargo.lock from the repo root,
since cargo-audit reads .cargo/audit.toml from the current directory only.
.github/workflows/audit.yml runs it on push, on pull requests and daily.
Against master's core lock it fails (RUSTSEC-2026-0285, -0348); on this
branch all five locks pass.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@cpoder
cpoder merged commit 2e8e1ed into master Oct 14, 2026
4 checks passed
@cpoder
cpoder deleted the deps/rustls-0.23.46-audit branch October 14, 2026 16:46
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.

1 participant