GHSA-36cg-4jff-5863HighCVSS 8.1

Data races in signal-simple

Published
August 25, 2021
Last Modified
June 13, 2023

🔗 CVE IDs covered (1)

📋 Description

Affected versions of this crate unconditionally implement Send/Sync for SyncChannel. SyncChannel doesn't provide access to &T but merely serves as a channel that consumes and returns owned T.

Users can create UB in safe Rust by sending T: !Send to other threads with SyncChannel::send/recv APIs. Using T = Arc<Cell<_> allows to create data races (which can lead to memory corruption), and using T = MutexGuard allows to unlock a mutex from a thread that didn't lock the mutex.

🎯 Affected products1

  • rust/signal-simple:<= 0.1.1

🔗 References (5)