Update Rust crate rtrb to v0.3.5 [SECURITY] #4

Open
renovate-bot wants to merge 1 commit from renovate/crate-rtrb-vulnerability into main
Member

This PR contains the following updates:

Package Type Update Change
rtrb dependencies patch 0.3.3 → 0.3.5

⚠️ Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Double free / use-after-free in ReadChunk::commit when an element's Drop panics

RUSTSEC-2026-0274

More information

Details

ReadChunk::commit and ReadChunk::commit_all drop the committed elements
before advancing the consumer head. If an element's Drop panics during the
drop loop, head is never advanced, so the ring buffer still treats those slots
as holding live elements. When the RingBuffer is later dropped (it walks
head..tail and drops each slot), or a subsequent read_chunk() / commit()
touches the same slots, the already-dropped elements are dropped a second time —
a double free (CWE-415) / use-after-free (CWE-416) reachable from safe Rust.

Mitigation

Update to 0.3.5 (0.3.x line) or 0.4.0. Note that 0.4.0 contains a behavior
change in is_abandoned(), so users on 0.3.x should prefer 0.3.5.

Severity

Unknown

References

This data is provided by OSV and the Rust Advisory Database (CC0 1.0).


Configuration

📅 Schedule: (in timezone Europe/Prague)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate CLI.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [rtrb](https://github.com/mgeier/rtrb) | dependencies | patch | `0.3.3` → `0.3.5` | --- > ⚠️ **Warning** > > Some dependencies could not be looked up. Check the [Dependency Dashboard](issues/7) for more information. --- ### Double free / use-after-free in `ReadChunk::commit` when an element's `Drop` panics [RUSTSEC-2026-0274](https://rustsec.org/advisories/RUSTSEC-2026-0274.html) <details> <summary>More information</summary> #### Details `ReadChunk::commit` and `ReadChunk::commit_all` drop the committed elements before advancing the consumer head. If an element's `Drop` panics during the drop loop, `head` is never advanced, so the ring buffer still treats those slots as holding live elements. When the `RingBuffer` is later dropped (it walks `head..tail` and drops each slot), or a subsequent `read_chunk()` / `commit()` touches the same slots, the already-dropped elements are dropped a second time — a double free (CWE-415) / use-after-free (CWE-416) reachable from safe Rust. ##### Mitigation Update to 0.3.5 (0.3.x line) or 0.4.0. Note that 0.4.0 contains a behavior change in `is_abandoned()`, so users on 0.3.x should prefer 0.3.5. #### Severity Unknown #### References - [https://crates.io/crates/rtrb](https://crates.io/crates/rtrb) - [https://rustsec.org/advisories/RUSTSEC-2026-0274.html](https://rustsec.org/advisories/RUSTSEC-2026-0274.html) - [https://github.com/mgeier/rtrb/issues/185](https://github.com/mgeier/rtrb/issues/185) This data is provided by [OSV](https://osv.dev/vulnerability/RUSTSEC-2026-0274) and the [Rust Advisory Database](https://github.com/RustSec/advisory-db) ([CC0 1.0](https://github.com/rustsec/advisory-db/blob/main/LICENSE.txt)). </details> --- ### Configuration 📅 **Schedule**: (in timezone Europe/Prague) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xNjYuMCIsInVwZGF0ZWRJblZlciI6IjQ0LjE2Ni4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJzZWN1cml0eSJdfQ==-->
Update Rust crate rtrb to v0.3.5 [SECURITY]
Some checks failed
uniffi-swift.yml / Update Rust crate rtrb to v0.3.5 [SECURITY] (pull_request) Failing after 0s
uniffi-swift.yml / Update Rust crate rtrb to v0.3.5 [SECURITY] (push) Failing after 0s
Builds / Build (aarch64-pc-windows-msvc) (pull_request) Failing after 18s
Builds / Build (x86_64-pc-windows-msvc) (pull_request) Failing after 19s
Tests / Test (x86_64-pc-windows-msvc) (pull_request) Failing after 19s
Builds / Build (aarch64-apple-darwin) (pull_request) Failing after 10s
Builds / Build (aarch64-apple-ios-sim) (pull_request) Failing after 9s
Builds / Build (aarch64-apple-ios) (pull_request) Failing after 9s
Builds / Build (x86_64-apple-darwin) (pull_request) Failing after 9s
Tests / Test (aarch64-apple-darwin) (pull_request) Failing after 41s
Builds / Build (aarch64-linux-android) (pull_request) Failing after 20s
Builds / Build (armv7-linux-androideabi) (pull_request) Failing after 20s
Changeset Check / Check for changeset (pull_request) Failing after 4s
Builds / Build (x86_64-unknown-linux-gnu) (pull_request) Failing after 9s
Builds / Build (x86_64-linux-android) (pull_request) Failing after 14s
Generate FFI Proto (Node) / Generating protobuf (pull_request) Failing after 9s
License Check / License Check (pull_request) Successful in 10s
Rust Formatting / Check Formatting (pull_request) Successful in 16s
Tests / Test (x86_64-unknown-linux-gnu) (pull_request) Failing after 23s
Test API / failover (pull_request) Failing after 26s
Builds / Build (aarch64-unknown-linux-gnu) (pull_request) Has been cancelled
25ccb6f209
Generated by renovateBot
Some checks failed
uniffi-swift.yml / Update Rust crate rtrb to v0.3.5 [SECURITY] (pull_request) Failing after 0s
uniffi-swift.yml / Update Rust crate rtrb to v0.3.5 [SECURITY] (push) Failing after 0s
Builds / Build (aarch64-pc-windows-msvc) (pull_request) Failing after 18s
Builds / Build (x86_64-pc-windows-msvc) (pull_request) Failing after 19s
Tests / Test (x86_64-pc-windows-msvc) (pull_request) Failing after 19s
Builds / Build (aarch64-apple-darwin) (pull_request) Failing after 10s
Builds / Build (aarch64-apple-ios-sim) (pull_request) Failing after 9s
Builds / Build (aarch64-apple-ios) (pull_request) Failing after 9s
Builds / Build (x86_64-apple-darwin) (pull_request) Failing after 9s
Tests / Test (aarch64-apple-darwin) (pull_request) Failing after 41s
Builds / Build (aarch64-linux-android) (pull_request) Failing after 20s
Builds / Build (armv7-linux-androideabi) (pull_request) Failing after 20s
Changeset Check / Check for changeset (pull_request) Failing after 4s
Builds / Build (x86_64-unknown-linux-gnu) (pull_request) Failing after 9s
Builds / Build (x86_64-linux-android) (pull_request) Failing after 14s
Generate FFI Proto (Node) / Generating protobuf (pull_request) Failing after 9s
License Check / License Check (pull_request) Successful in 10s
Rust Formatting / Check Formatting (pull_request) Successful in 16s
Tests / Test (x86_64-unknown-linux-gnu) (pull_request) Failing after 23s
Test API / failover (pull_request) Failing after 26s
Builds / Build (aarch64-unknown-linux-gnu) (pull_request) Has been cancelled
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/crate-rtrb-vulnerability:renovate/crate-rtrb-vulnerability
git switch renovate/crate-rtrb-vulnerability

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff renovate/crate-rtrb-vulnerability
git switch renovate/crate-rtrb-vulnerability
git rebase main
git switch main
git merge --ff-only renovate/crate-rtrb-vulnerability
git switch renovate/crate-rtrb-vulnerability
git rebase main
git switch main
git merge --no-ff renovate/crate-rtrb-vulnerability
git switch main
git merge --squash renovate/crate-rtrb-vulnerability
git switch main
git merge --ff-only renovate/crate-rtrb-vulnerability
git switch main
git merge renovate/crate-rtrb-vulnerability
git push origin main
Sign in to join this conversation.
No description provided.