diff --git a/.circleci/config.yml b/.circleci/config.yml index 4cc7d3f4facff36fc59a33deaa3f3877d40bc91c..d805bb9bc2eb0a3900719bb823718e75c82d9601 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -286,7 +286,7 @@ workflows: name: x86_64-libressl-2.9 target: x86_64-unknown-linux-gnu library: libressl - version: 2.9.0 + version: 2.9.1 - macos: name: macos - macos: diff --git a/openssl-sys/build/cfgs.rs b/openssl-sys/build/cfgs.rs index dc7240e2adb5460ba8e95d6711444444a032e63a..6de8a07829f855afbec20dda5727c37213755add 100644 --- a/openssl-sys/build/cfgs.rs +++ b/openssl-sys/build/cfgs.rs @@ -22,6 +22,9 @@ pub fn get(openssl_version: Option, libressl_version: Option) -> Vec<& if libressl_version >= 0x2_08_01_00_0 { cfgs.push("libressl281"); } + if libressl_version >= 0x2_09_01_00_0 { + cfgs.push("libressl291"); + } } else { let openssl_version = openssl_version.unwrap(); diff --git a/openssl-sys/build/main.rs b/openssl-sys/build/main.rs index 02b93b90a453443b895b24aae3a467d1772d6a22..4fabb6edf031d7efcf08801053e8986a4b1c51e5 100644 --- a/openssl-sys/build/main.rs +++ b/openssl-sys/build/main.rs @@ -199,6 +199,7 @@ See rust-openssl README for more information: (8, 1) => ('8', '1'), (8, _) => ('8', 'x'), (9, 0) => ('9', '0'), + (9, 1) => ('9', '1'), _ => version_error(), }; @@ -239,7 +240,7 @@ fn version_error() -> ! { " This crate is only compatible with OpenSSL 1.0.1 through 1.1.1, or LibreSSL 2.5 -through 2.9.0, but a different version of OpenSSL was found. The build is now aborting +through 2.9.1, but a different version of OpenSSL was found. The build is now aborting due to this version mismatch. " diff --git a/openssl-sys/src/ssl.rs b/openssl-sys/src/ssl.rs index fcbac30064caf4c5d92f26b10e864db0eb55ee21..06a6a5c42a549305ea0a7dfc560c32fee34a4d74 100644 --- a/openssl-sys/src/ssl.rs +++ b/openssl-sys/src/ssl.rs @@ -1057,7 +1057,7 @@ extern "C" { } cfg_if! { - if #[cfg(ossl110)] { + if #[cfg(ossl110, libressl291)] { extern "C" { pub fn TLS_method() -> *const SSL_METHOD; diff --git a/openssl/build.rs b/openssl/build.rs index 99731c57fa3a1359ac58c42154c84081de4026aa..3b3f09d696b2a641b8721e03a45d376942fdbb67 100644 --- a/openssl/build.rs +++ b/openssl/build.rs @@ -53,5 +53,9 @@ fn main() { if version >= 0x2_08_00_00_0 { println!("cargo:rustc-cfg=libressl280"); } + + if version >= 0x2_09_01_00_0 { + println!("cargo:rustc-cfg=libressl291"); + } } } diff --git a/openssl/src/ssl/mod.rs b/openssl/src/ssl/mod.rs index f433f74dc285138b5a96a1d995f27ce8b6e60126..115a385198504cec5bc4088ca68aeb821bf8f943 100644 --- a/openssl/src/ssl/mod.rs +++ b/openssl/src/ssl/mod.rs @@ -3831,7 +3831,7 @@ cfg_if! { } cfg_if! { - if #[cfg(ossl110)] { + if #[cfg(ossl110, libressl291)] { use ffi::{TLS_method, DTLS_method}; unsafe fn get_new_idx(f: ffi::CRYPTO_EX_free) -> c_int {