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 tower-lsp

Dependencies

(16 total, 5 outdated, 1 possibly insecure)

CrateRequiredLatestStatus
 async-codec-lite^0.00.0.2up to date
 async-trait^0.10.1.88up to date
 auto_impl^0.51.3.0out of date
 bytes^1.01.10.1up to date
 dashmap^5.16.1.0out of date
 futures^0.30.3.31up to date
 httparse^1.3.51.10.1up to date
 log^0.40.4.27up to date
 lsp-types^0.930.97.0out of date
 memchr^2.4.12.7.5up to date
 serde^1.01.0.219up to date
 serde_json^1.01.0.140up to date
 tokio ⚠️^1.171.46.1maybe insecure
 tokio-util^0.70.7.15up to date
 tower^0.4.120.5.2out of date
 tower-lsp-macros^0.60.9.0out of date

Dev dependencies

(5 total, 3 outdated, 1 possibly insecure)

CrateRequiredLatestStatus
 async-tungstenite^0.160.29.1out of date
 env_logger^0.90.11.8out of date
 tokio ⚠️^1.171.46.1maybe insecure
 tokio-util^0.70.7.15up to date
 ws_stream_tungstenite^0.70.15.0out of date

Security Vulnerabilities

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);