rustic
rustic copied to clipboard
RUSTSEC-2025-0023: Broadcast channel calls clone in parallel, but does not require `Sync`
Broadcast channel calls clone in parallel, but does not require
Sync
| Details | |
|---|---|
| Status | unsound |
| Package | tokio |
| Version | 1.41.1 |
| URL | https://github.com/tokio-rs/tokio/pull/7232 |
| Date | 2025-04-07 |
The broadcast channel internally calls clone on the stored value when
receiving it, and only requires T:Send. This means that using the broadcast
channel with values that are Send but not Sync can trigger unsoundness if
the clone implementation makes use of the value being !Sync.
Thank you to Austin Bonander for finding and reporting this issue.
See advisory page for additional details.