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.

Crate async_executors

Dependencies

(13 total, 2 outdated, 2 possibly insecure)

CrateRequiredLatestStatus
 async-global-executor^22.4.1up to date
 async-std^1.61.12.0up to date
 blanket^0.20.4.0out of date
 futures-core^0.30.3.30up to date
 futures-executor^0.30.3.30up to date
 futures-task ⚠️^0.30.3.30maybe insecure
 futures-timer^33.0.3up to date
 futures-util^0.30.3.30up to date
 glommio^0.40.9.0out of date
 pin-project^11.1.5up to date
 tokio ⚠️^11.37.0maybe insecure
 tracing-futures^0.20.2.5up to date
 wasm-bindgen-futures^0.40.4.42up to date

Dev dependencies

(8 total, 2 outdated, 1 possibly insecure)

CrateRequiredLatestStatus
 futures^0.30.3.30up to date
 futures-timer^33.0.3up to date
 static_assertions^11.1.0up to date
 tokio ⚠️^11.37.0maybe insecure
 tracing-subscriber^0.20.3.18out of date
 tracing^0.10.1.40up to date
 trait-set^0.20.3.0out of date
 wasm-bindgen-test^0.30.3.42up to date

Security Vulnerabilities

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

RUSTSEC-2020-0060

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.

tokio: reject_remote_clients Configuration corruption

RUSTSEC-2023-0001

On Windows, configuring a named pipe server with pipe_mode will force ServerOptions::reject_remote_clients as false.

This drops any intended explicit configuration for the reject_remote_clients that may have been set as true previously.

The default setting of reject_remote_clients is normally true meaning the default is also overridden as false.

Workarounds

Ensure that pipe_mode is set first after initializing a ServerOptions. For example:

let mut opts = ServerOptions::new();
opts.pipe_mode(PipeMode::Message);
opts.reject_remote_clients(true);