RUSTSEC-2020-0138
Dashboard / Vulnerabilities / RUSTSEC-2020-0138
RUSTSEC-2020-0138
Summary: ReaderResult should be bounded by Sync
Details: Affected versions of this crate implements `Sync` for `ReaderResult<T, E>` with the trait bound `T: Send, E: Send`. Since matching on the public enum `ReaderResult<T, E>` provides access to `&T` & `&E`, allowing data race to a non-Sync type `T` or `E`. This can result in a memory corruption when multiple threads concurrently access `&T` or `&E`. Suggested fix for the bug is change the trait bounds imposed on `T` & `E` to be `T: Sync, E: Sync`.
References: https://crates.io/crates/lexer, https://rustsec.org/advisories/RUSTSEC-2020-0138.html, https://gitlab.com/nathanfaucett/rs-lexer/-/issues/2
Affected packages
Package
Name: lexer
Purl: pkg:cargo/lexer
Affected ranges
Type: SEMVER
Events:
