OSV 1.4.0 · github-reviewed · 修改于 2023-06-14 05:01
发布时间
2021-08-26 05:00
GitHub 审查时间
2021-08-07 02:04
NVD 发布时间
—
源文件
advisories/github-reviewed/2021/08/GHSA-8892-84wf-cg8f/GHSA-8892-84wf-cg8f.json
Affected versions of this crate unconditionally implement Send/Sync for SyncChannel<T>. SyncChannel<T> 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<T> allows to unlock a mutex from a thread that didn't lock the mutex.