Merge pull request #705 from JOE1994/0023-convec

convec::ConVec<T> unconditionally implements Send/Sync
This commit is contained in:
Sergey "Shnatsel" Davidoff
2021-01-30 19:05:27 +01:00
committed by GitHub

View File

@@ -0,0 +1,19 @@
```toml
[advisory]
id = "RUSTSEC-0000-0000"
package = "convec"
date = "2020-11-24"
url = "https://github.com/krl/convec/issues/2"
categories = ["memory-corruption", "thread-safety"]
[versions]
patched = []
```
# convec::ConVec<T> unconditionally implements Send/Sync
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<_>>` or `Rc<_>` as `T` in `ConVec<T>`. It is also possible to create data races by using types like `Cell<_>` or `RefCell<_>` as `T` (types that are `Send` but not `Sync`).
Such data races can lead to memory corruption.