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 tokio-openssl


(4 total, 2 possibly insecure)

 futures-util^ to date
 openssl ⚠️^0.10.320.10.54maybe insecure
 openssl-sys^ to date
 tokio ⚠️^ insecure

Dev dependencies

(1 total, 1 possibly insecure)

 tokio ⚠️^ insecure

Security Vulnerabilities

tokio: reject_remote_clients Configuration corruption


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.


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

let mut opts = ServerOptions::new();

openssl: `openssl` `X509NameBuilder::build` returned object is not thread safe


OpenSSL has a modified bit that it can set on on X509_NAME objects. If this bit is set then the object is not thread-safe even when it appears the code is not modifying the value.

Thanks to David Benjamin (Google) for reporting this issue.

openssl: `openssl` `SubjectAlternativeName` and `ExtendedKeyUsage::other` allow arbitrary file read


SubjectAlternativeName and ExtendedKeyUsage arguments were parsed using the OpenSSL function X509V3_EXT_nconf. This function parses all input using an OpenSSL mini-language which can perform arbitrary file reads.

Thanks to David Benjamin (Google) for reporting this issue.

openssl: `openssl` `X509Extension::new` and `X509Extension::new_nid` null pointer dereference


These functions would crash when the context argument was None with certain extension types.

Thanks to David Benjamin (Google) for reporting this issue.