NetSight
high8.1

CVE-2020-36437

Data race in conqueue

Impact

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>`.

Affected packages

EcosystemPackageAffectedFixed in
rustconqueue< 0.4.00.4.0

Affected products

VendorProductAffected versions
Conqueue ProjectConqueue
before 0.4.0

Weakness classification

References