Skip to content

← Public intelligence

crates.io package

futures-util

Open actionable advisories and recorded vendor fixes. This public package view has no inventory attached and cannot establish whether your deployment is affected. A vendor fix never resolves your finding; verify your installed version and the source guidance.

Open advisories

2 actionable advisories, newest first. Withdrawn advisories and news are excluded. Coverage is partial.

  1. Medium, CVSS 4.7crates.ioPublished

    MutexGuard::map can cause a data race in safe code

    CVE-2020-35905 · GHSA-rh4w-94hh-9943

    Affected
    • crates.io futures-util >= 0.3.2, < 0.3.7
    Fixed in
    0.3.7· Vendor fix available
    Issue
    Affected versions of the crate had a Send/Sync implementation for MappedMutexGuard that only considered variance on T, while MappedMutexGuard dereferenced to U. This could of led to data races in safe Rust code when a closure used in MutexGuard::map() returns U that is unrelated to T. The issue was fixed by fixing Send and Sync implementations, and by adding a PhantomData<&'a mut U marker to the MappedMutexGuard type to tell the compiler that the guard is over U too.

    Recommended action: Upgrade to 0.3.7 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  2. Medium, CVSS 5.5crates.ioPublished

    Improper Sync implementation on FuturesUnordered in futures-utils can cause data corruption

    CVE-2020-35908 · GHSA-5r9g-j7jj-hw6c

    Affected
    • crates.io futures-util >= 0.3.0, < 0.3.2
    Fixed in
    0.3.2· Vendor fix available
    Issue
    An issue was discovered in the futures-util crate before 0.3.2 for Rust. FuturesUnordered can lead to data corruption because Sync is mishandled.

    Recommended action: Upgrade to 0.3.2 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →