From ab298d026477b5b5a07d8c98375ea6e85ddb59da Mon Sep 17 00:00:00 2001 From: Steven Fackler Date: Tue, 26 Feb 2019 20:31:01 -0800 Subject: [PATCH] Fix const changes in 1.1.1b --- openssl-sys/build/cfgs.rs | 3 +++ openssl-sys/src/ssl.rs | 30 ++++++++++++++++++++++++++++-- 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/openssl-sys/build/cfgs.rs b/openssl-sys/build/cfgs.rs index e07be8cf..dc7240e2 100644 --- a/openssl-sys/build/cfgs.rs +++ b/openssl-sys/build/cfgs.rs @@ -49,6 +49,9 @@ pub fn get(openssl_version: Option, libressl_version: Option) -> Vec<& if openssl_version >= 0x1_01_01_00_0 { cfgs.push("ossl111"); } + if openssl_version >= 0x1_01_01_02_0 { + cfgs.push("ossl111b"); + } } cfgs diff --git a/openssl-sys/src/ssl.rs b/openssl-sys/src/ssl.rs index df9f5718..fa7828d9 100644 --- a/openssl-sys/src/ssl.rs +++ b/openssl-sys/src/ssl.rs @@ -1090,9 +1090,21 @@ extern "C" { CAfile: *const c_char, CApath: *const c_char, ) -> c_int; +} - pub fn SSL_get_ssl_method(ssl: *mut SSL) -> *const SSL_METHOD; +cfg_if! { + if #[cfg(ossl111b)] { + extern "C" { + pub fn SSL_get_ssl_method(ssl: *const SSL) -> *const SSL_METHOD; + } + } else { + extern "C" { + pub fn SSL_get_ssl_method(ssl: *mut SSL) -> *const SSL_METHOD; + } + } +} +extern "C" { pub fn SSL_set_connect_state(s: *mut SSL); pub fn SSL_set_accept_state(s: *mut SSL); @@ -1250,11 +1262,25 @@ cfg_if! { if #[cfg(libressl)] { extern "C" { pub fn SSL_get_current_compression(ssl: *mut SSL) -> *const libc::c_void; + } + } else if #[cfg(osslconf = "OPENSSL_NO_COMP")] { + } else if #[cfg(openssl111b)] { + extern "C" { + pub fn SSL_get_current_compression(ssl: *const SSL) -> *const COMP_METHOD; + } + } else { + extern "C" { + pub fn SSL_get_current_compression(ssl: *mut SSL) -> *const COMP_METHOD; + } + } +} +cfg_if! { + if #[cfg(libressl)] { + extern "C" { pub fn SSL_COMP_get_name(comp: *const libc::c_void) -> *const c_char; } } else if #[cfg(not(osslconf = "OPENSSL_NO_COMP"))] { extern "C" { - pub fn SSL_get_current_compression(ssl: *mut SSL) -> *const COMP_METHOD; pub fn SSL_COMP_get_name(comp: *const COMP_METHOD) -> *const c_char; } }