diff --git a/crates/atomic-option/RUSTSEC-0000-0000.md b/crates/atomic-option/RUSTSEC-0000-0000.md new file mode 100644 index 0000000..544a90d --- /dev/null +++ b/crates/atomic-option/RUSTSEC-0000-0000.md @@ -0,0 +1,19 @@ +```toml +[advisory] +id = "RUSTSEC-0000-0000" +package = "atomic-option" +date = "2020-10-31" +url = "https://github.com/reem/rust-atomic-option/issues/4" +categories = ["memory-corruption"] + +[versions] +patched = [] +``` + +# AtomicOption should have Send + Sync bound on its type argument. + +In the affected versions of this crate, +`AtomicOption` unconditionally implements `Sync`. + +This allows programmers to move non-Sync types across thread boundaries (e.g. `Rc`, `Arc>`), which can lead to data races and undefined behavior. +It is also possible to send non-Send types like `std::sync::MutexGuard` to other threads, which can lead to undefined behavior.