This project contains known security vulnerabilities. Find detailed information at the bottom.

Crate glib


(11 total, 2 outdated, 2 insecure)

 bitflags^ to date
 futures-channel^ to date
 futures-core^ to date
 futures-executor^ to date
 futures-preview^0.3.0-alpha0.2.2up to date
 glib-sys^ of date
 gobject-sys^ of date
 lazy_static^ to date
 libc^ to date

Dev dependencies

(1 total, all up-to-date)

 tempfile^33.2.0up to date

Security Vulnerabilities

futures-util: MutexGuard::map can cause a data race in safe code


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.

futures-task: futures_task::waker may cause a use-after-free if used on a type that isn't 'static


Affected versions of the crate did not properly implement a 'static lifetime bound on the waker function. This resulted in a use-after-free if Waker::wake() is called after original data had been dropped.

The flaw was corrected by adding 'static lifetime bound to the data waker takes.