Affected versions of this crate allowed unsoundly extending
lifetimes using arr!
macro. This may result in a variety of
memory corruption scenarios, most likely use-after-free.
lsm303c 0.1.5
This project might be open to known security vulnerabilities, which can be prevented by tightening the version range of affected dependencies. Find detailed information at the bottom.
lsm303c
(4 total, 4 outdated, 2 possibly insecure)
Crate | Required | Latest | Status |
---|---|---|---|
cast | ^0.2.2 | 0.3.0 | out of date |
embedded-hal | ^0.2.1 | 1.0.0 | out of date |
generic-array ⚠️ | ^0.12.0 | 1.0.0 | out of date |
nalgebra ⚠️ | ^0.16.4 | 0.32.5 | out of date |
generic-array
: arr! macro erases lifetimesAffected versions of this crate allowed unsoundly extending
lifetimes using arr!
macro. This may result in a variety of
memory corruption scenarios, most likely use-after-free.
nalgebra
: VecStorage Deserialize Allows Violation of Length InvariantThe Deserialize
implementation for VecStorage
did not maintain the invariant that the number of elements must equal nrows * ncols
. Deserialization of specially crafted inputs could allow memory access beyond allocation of the vector.
This flaw was introduced in v0.11.0 (086e6e
) due to the addition of an automatically derived implementation of Deserialize
for MatrixVec
. MatrixVec
was later renamed to VecStorage
in v0.16.13 (0f66403
) and continued to use the automatically derived implementation of Deserialize
.
This flaw was corrected in commit 5bff536
by returning an error during deserialization if the number of elements does not exactly match the expected size.