Data races in convec
High severity
GitHub Reviewed
Published
Aug 25, 2021
to the GitHub Advisory Database
•
Updated Jan 27, 2023
Description
Published by the National Vulnerability Database
Aug 8, 2021
Reviewed
Aug 9, 2021
Published to the GitHub Advisory Database
Aug 25, 2021
Last updated
Jan 27, 2023
Affected versions of this crate unconditionally implement Send/Sync for
ConVec<T>
.This allows users to insert
T
that is not Send or not Sync.This allows users to create data races by using non-Send types like
Arc<Cell<_>>
orRc<_>
asT
inConVec<T>
. It is also possible to create data races by using types likeCell<_>
orRefCell<_>
asT
(types that areSend
but notSync
).Such data races can lead to memory corruption.
References