Repository navigation
fix(deps): update tokio and crypto-bigint security patches - #4924
Merged
Merged
Conversation
Signed-off-by: Simon Scatton <sscatton@nvidia.com>
Signed-off-by: Simon Scatton <sscatton@nvidia.com>
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
SDAChess
marked this pull request as ready for review
October 26, 2026 12:47
Signed-off-by: Simon Scatton <sscatton@nvidia.com>
Signed-off-by: Simon Scatton <sscatton@nvidia.com>
alangou
approved these changes
Oct 26, 2026
6 tasks done
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Update Tokio to 1.53.3 and migrate owned PTY and VSOCK descriptors to its explicit unsafe registration API for RUSTSEC-2026-0386. Update the workspace's crypto-bigint 0.7.5 to 0.7.10, including ctutils 0.4.6, for RUSTSEC-2026-0387.
Temporarily acknowledge the remaining crypto-bigint 0.5.5 finding in deny.toml while its upstream dependency chain is updated. SPIFFE and crypto backend feature selection remain unchanged.
Related Issue
No separate issue. This addresses the reported dependency-audit failures for Tokio and crypto-bigint 0.7.5.
Changes
AsyncFd::registerAPI.AsyncFd::newcalls withunsaferegistration, documenting owned-descriptor lifetime guarantees and allowing unsafe code only on the registration statements. Change the sandbox backend's crate-level lint fromforbid(unsafe_code)todeny(unsafe_code)to permit its local exception.tokio::task::block_in_placeso SQLx can return the fixture's single connection while writers synchronize.The remaining dependency chain is
spiffe -> jsonwebtoken -> p256/p384 -> elliptic-curve -> crypto-bigint 0.5.5. The elliptic-curve 0.13 stack requires crypto-bigint 0.5, so a lockfile update cannot move this chain to a patched version. Keats/jsonwebtoken#536 upgrades the coordinated RustCrypto stack, including p256/p384 to 0.14. Remove the exception once compatible upstream releases let us resolve the remaining chain to crypto-bigint >=0.7.6.The exception acknowledges timing-side-channel risk; this PR does not establish application-level exploitability. cargo-deny 0.20.2 ignores advisory IDs globally, so this exception cannot be restricted to version 0.5.5 in configuration. The separate crypto-bigint 0.7 dependency is still upgraded to 0.7.10.
Release Notes
Testing
cargo clippy --workspace --all-targets --locked --offline -- -D warningspasses.cargo test --locked --offline -p openshell-sandbox --lib main_session::testspasses: 24 tests, including PTY input/output.cargo test --locked --offline -p openshell-sandbox-backend --libpasses: 80 tests. Tests run outside the restricted sandbox so loopback and Unix-socket fixtures can operate.CARGO_NET_OFFLINE=true tasks/scripts/check-cargo-lockfiles.shvalidates all tracked lockfiles.cargo fmt --all -- --checkandgit diff --checkpass.cargo test --locked --offline -p openshell-server --features test-support --lib grpc::sandbox::tests::server_managed_sandbox_cas_retries_concurrent_updates -- --exactpasses. The compiled test also passed 25 consecutive standalone runs, each bounded by an external 10-second timeout.persistence::tests::cas_tests pass.cargo clippy --locked --offline -p openshell-server --features test-support --all-targets -- -D warningspasses.cargo deny --locked --offline check --hide-inclusion-graphpasses all four checks with the temporary exception. Before adding the exception, the only remaining error was RUSTSEC-2026-0387 for crypto-bigint 0.5.5.Checklist