Skip to content

fix(deps): close two russh SSH server advisories by moving to 0.64.1 - #658

Merged
GeiserX merged 1 commit into
mainfrom
fix/russh-0.64.1
Oct 21, 2026
Merged

GeiserX merged 1 commit into
mainfrom
fix/russh-0.64.1

Conversation

@GeiserX

@GeiserX GeiserX commented Oct 21, 2026 •

Copy link
Copy Markdown
Owner

Dependabot reports two open russh advisories against Cargo.lock. russh is only built with the ssh feature, where it runs the Tailscale SSH server.

  • GHSA-4wc5-f2rc-q74m (medium): crafted constraint records make the agent protocol server allocate memory without bound. Fixed in 0.64.1.
  • GHSA-j7h2-66j4-ghjf (low): the server accepts a publickey authentication whose signature uses a different algorithm than the request names. Fixed in 0.64.0.

The fix moves the pin from 0.63.2 to 0.64.1, with the same features (flate2, ring, no defaults), so aws-lc stays out of the graph. Only the russh entry changes in Cargo.lock, and the cargo vet exemption moves to 0.64.1. No code change was needed.

On MacMini: cargo clippy --workspace --all-targets --all-features -D warnings is clean, cargo test -p geiserx_tailscale --all-features passes (174 tests), cargo deny check all reports advisories ok, and cargo vet --locked passes.

Summary by CodeRabbit

  • Chores
    • Updated the optional SSH support component to version 0.64.1.
    • Updated its supply-chain verification record to match the new version.

GHSA-4wc5-f2rc-q74m (medium): the agent protocol server allocated without bound on crafted
constraint records; fixed in 0.64.1. GHSA-j7h2-66j4-ghjf (low): the server accepted a publickey
signature made with a different algorithm than the request named; fixed in 0.64.0. russh stays on
ring with the same features, so aws-lc stays out of the graph, and its cargo vet exemption moves to
the new version.
@coderabbitai

coderabbitai Bot commented Oct 21, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository: GeiserX/tailscale-rs/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 2f89631c-d8f8-4195-a682-f0692ee78c8f
📥 Commits

Reviewing files that changed from the base of the PR and between c3eb639 and 293efdb.

⛔ Files ignored due to path filters: 1
  • Cargo.lock is excluded by !**/*.lock, !**/Cargo.lock
📒 Files selected for processing: 2
  • Cargo.toml
  • supply-chain/config.toml

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.

📝 Walkthrough

The optional russh dependency and its cargo-vet exemption were updated to version 0.64.1. The dependency's feature settings and the exemption criterion remain unchanged.

Changes: russh Version Update

Layer / File(s) Summary
Update russh version
Cargo.toml, supply-chain/config.toml
The optional dependency version changed from 0.63.2 to 0.64.1. The cargo-vet exemption version changed from 0.63.3 to 0.64.1.

Priority: ➖ Normal

Estimated code review effort: 2 (Simple) | ~5 minutes

Change: Bug fix

Merge Risk: ⚪ Minimal · up to 293ef

The dependency update is internally consistent and ready to merge.

Pre-merge checks: Passed 5
Check name Status Explanation
Title check Passed The title clearly states the dependency update and its security purpose. It identifies the affected package and target version.
Description check Passed The description explains the advisories, dependency change, preserved features, affected files, and validation results. It is sufficiently complete, although it does not explicitly state whether AI to…
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Description check

Explanation

The description explains the advisories, dependency change, preserved features, affected files, and validation results. It is sufficiently complete, although it does not explicitly state whether AI tools were used or link to tracking issues.

Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (2 skipped: 2 unsupported.)

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@GeiserX
GeiserX merged commit 4a74801 into main Oct 21, 2026
19 checks passed
@GeiserX
GeiserX deleted the fix/russh-0.64.1 branch October 21, 2026 11:40
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