~ / search / GHSA-368f-29c3-4f2r

GHSA-368f-29c3-4f2r

Data race in conqueue

Source: GitHub Advisory Database (reviewed) High CVE-2020-36437

Packages

EcosystemPackageAffectedFixed in
crates.io conqueue < 0.4.0 0.4.0

Details

As written in the advisory (Markdown source, shown as plain text).

Affected versions of this crate unconditionally implemented `Send`/`Sync` for `QueueSender<T>`, allowing to send non-Send `T` to other threads by invoking `(&QueueSender<T>).send()`. This fails to prevent users from creating data races by sending types like `Rc<T>` or `Arc<Cell<T>>` to other threads, which can lead to memory corruption. The flaw was corrected in commit `1e462c3` by imposing `T: Send` to both `Send`/`Sync` impls for `QueueSender<T>`/`QueueReceiver<T>`.

References

External links from the advisory. They lead to third-party sites.