ARefss<'a, V> is a type that is assumed to contain objects that are Send + Sync.
In the affected versions of this crate, Send/Sync traits are unconditionally implemented for ARefss<'a, V>.
By using the ARefss::map() API, we can insert a !Send or !Sync object into ARefss<'a, V>. After that, it is possible to create a data race to the inner object of ARefss<'a, V>, which can lead to undefined behavior & memory corruption.
The flaw was corrected in commit 6dd7ca0
by adding trait bound V: Send + Sync to ARefss::map() API.
{ "nvd_published_at": null, "cwe_ids": [ "CWE-362", "CWE-787" ], "severity": "MODERATE", "github_reviewed": true, "github_reviewed_at": "2021-08-19T18:49:46Z" }