diff --git a/crates/multiqueue2/RUSTSEC-0000-0000.md b/crates/multiqueue2/RUSTSEC-0000-0000.md new file mode 100644 index 0000000..777fcb3 --- /dev/null +++ b/crates/multiqueue2/RUSTSEC-0000-0000.md @@ -0,0 +1,20 @@ +```toml +[advisory] +id = "RUSTSEC-0000-0000" +package = "multiqueue2" +date = "2020-12-19" +url = "https://github.com/abbychau/multiqueue2/issues/10" +categories = ["memory-corruption"] +informational = "unsound" + +[versions] +patched = [">= 0.1.7"] +``` + +# Queues allow non-Send types to be sent to other threads, allowing data races + +Affected versions of this crate unconditionally implemented `Send` for types used in queue implementations (`InnerSend`, `InnerRecv`, `FutInnerSend`, `FutInnerRecv`). + +This allows users to send non-Send types to other threads, which can lead to data race bugs or other undefined behavior. + +The flaw was corrected in v0.1.7 by adding `T: Send` bound to to the `Send` impl of four data types explained above.