Unverified Commit a9b9f818 authored by Steven Fackler's avatar Steven Fackler Committed by GitHub
Browse files

Merge pull request #1097 from vishwin/master

Support LibreSSL 2.9.1
parents 2f5ecb42 801a2364
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -291,7 +291,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:
+6 −0
Original line number Diff line number Diff line
@@ -13,6 +13,9 @@ pub fn get(openssl_version: Option<u64>, libressl_version: Option<u64>) -> Vec<&
        if libressl_version >= 0x2_07_00_00_0 {
            cfgs.push("libressl270");
        }
        if libressl_version >= 0x2_07_01_00_0 {
            cfgs.push("libressl271");
        }
        if libressl_version >= 0x2_07_03_00_0 {
            cfgs.push("libressl273");
        }
@@ -22,6 +25,9 @@ pub fn get(openssl_version: Option<u64>, libressl_version: Option<u64>) -> 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();

+2 −1
Original line number Diff line number Diff line
@@ -199,6 +199,7 @@ See rust-openssl README for more information:
            (8, 1) => ('8', '1'),
            (8, _) => ('8', 'x'),
            (9, 0) => ('9', '0'),
            (9, _) => ('9', 'x'),
            _ => 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.x, but a different version of OpenSSL was found. The build is now aborting
due to this version mismatch.

"
+8 −2
Original line number Diff line number Diff line
@@ -15,7 +15,13 @@ cfg_if! {
    if #[cfg(ossl110)] {
        pub const CRYPTO_EX_INDEX_SSL: c_int = 0;
        pub const CRYPTO_EX_INDEX_SSL_CTX: c_int = 1;

    } else if #[cfg(libressl)] {
        pub const CRYPTO_EX_INDEX_SSL: c_int = 1;
        pub const CRYPTO_EX_INDEX_SSL_CTX: c_int = 2;
    }
}
cfg_if! {
    if #[cfg(any(ossl110, libressl271))] {
        extern "C" {
            pub fn OpenSSL_version_num() -> c_ulong;
            pub fn OpenSSL_version(key: c_int) -> *const c_char;
@@ -64,7 +70,7 @@ pub type CRYPTO_EX_free = unsafe extern "C" fn(
    argp: *mut c_void,
);
extern "C" {
    #[cfg(ossl110)]
    #[cfg(any(ossl110, libressl))]
    pub fn CRYPTO_get_ex_new_index(
        class_index: c_int,
        argl: c_long,
+1 −1
Original line number Diff line number Diff line
@@ -1057,7 +1057,7 @@ extern "C" {
}

cfg_if! {
    if #[cfg(ossl110)] {
    if #[cfg(any(ossl110, libressl291))] {
        extern "C" {
            pub fn TLS_method() -> *const SSL_METHOD;

Loading