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
{
"cwe_ids": [
"CWE-119",
"CWE-362"
],
"severity": "HIGH",
"nvd_published_at": "2021-08-08T06:15:00Z",
"github_reviewed": true,
"github_reviewed_at": "2021-08-09T21:44:31Z"
}