In the affected versions of the crate, AtomicBucket<T> unconditionally implements Send/Sync traits. Therefore, users can create a data race to the inner T: !Sync by using the AtomicBucket::data_with() API. Such data races can potentially cause memory corruption or other undefined behavior.
The flaw was fixed in commit 8e6daab by adding appropriate Send/Sync bounds to the Send/Sync impl of struct Block<T> (which is a data type contained inside AtomicBucket<T>).
{ "nvd_published_at": "2021-12-27T00:15:00Z", "cwe_ids": [ "CWE-362", "CWE-787" ], "severity": "HIGH", "github_reviewed": true, "github_reviewed_at": "2022-01-05T23:21:30Z" }