Date: Sun, 30 Jun 2019 20:03:06 +0000 (UTC) From: Steve Wills <swills@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r505465 - head/net-im/fractal/files Message-ID: <201906302003.x5UK364O004593@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: swills Date: Sun Jun 30 20:03:06 2019 New Revision: 505465 URL: https://svnweb.freebsd.org/changeset/ports/505465 Log: net-im/fractal: unbreak with LibreSSL 2.9.1+ PR: 238536 Submitted by: Charlie Li <ml+freebsd@vishwin.info> Approved by: maintainer timeout (greg@unrelenting.technology, >2 weeks) Added: head/net-im/fractal/files/patch-vendor_openssl-sys_build_cfgs.rs (contents, props changed) head/net-im/fractal/files/patch-vendor_openssl-sys_build_main.rs (contents, props changed) head/net-im/fractal/files/patch-vendor_openssl-sys_src_crypto.rs (contents, props changed) head/net-im/fractal/files/patch-vendor_openssl-sys_src_ssl.rs (contents, props changed) head/net-im/fractal/files/patch-vendor_openssl_build.rs (contents, props changed) head/net-im/fractal/files/patch-vendor_openssl_src_ssl_mod.rs (contents, props changed) head/net-im/fractal/files/patch-vendor_openssl_src_version.rs (contents, props changed) Added: head/net-im/fractal/files/patch-vendor_openssl-sys_build_cfgs.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/fractal/files/patch-vendor_openssl-sys_build_cfgs.rs Sun Jun 30 20:03:06 2019 (r505465) @@ -0,0 +1,22 @@ +--- vendor/openssl-sys/build/cfgs.rs.orig 2018-12-22 10:43:42 UTC ++++ vendor/openssl-sys/build/cfgs.rs +@@ -13,6 +13,9 @@ pub fn get(openssl_version: Option<u64>, libressl_vers + 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"); + } +@@ -21,6 +24,9 @@ pub fn get(openssl_version: Option<u64>, libressl_vers + } + 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(); Added: head/net-im/fractal/files/patch-vendor_openssl-sys_build_main.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/fractal/files/patch-vendor_openssl-sys_build_main.rs Sun Jun 30 20:03:06 2019 (r505465) @@ -0,0 +1,19 @@ +--- vendor/openssl-sys/build/main.rs.orig 2018-12-22 10:43:42 UTC ++++ vendor/openssl-sys/build/main.rs +@@ -505,6 +505,7 @@ See rust-openssl README for more information: + (8, 1) => ('8', '1'), + (8, _) => ('8', 'x'), + (9, 0) => ('9', '0'), ++ (9, _) => ('9', 'x'), + _ => version_error(), + }; + +@@ -545,7 +546,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. + + " Added: head/net-im/fractal/files/patch-vendor_openssl-sys_src_crypto.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/fractal/files/patch-vendor_openssl-sys_src_crypto.rs Sun Jun 30 20:03:06 2019 (r505465) @@ -0,0 +1,26 @@ +--- vendor/openssl-sys/src/crypto.rs.orig 2018-12-22 10:43:42 UTC ++++ vendor/openssl-sys/src/crypto.rs +@@ -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, Added: head/net-im/fractal/files/patch-vendor_openssl-sys_src_ssl.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/fractal/files/patch-vendor_openssl-sys_src_ssl.rs Sun Jun 30 20:03:06 2019 (r505465) @@ -0,0 +1,11 @@ +--- vendor/openssl-sys/src/ssl.rs.orig 2018-12-22 10:43:42 UTC ++++ vendor/openssl-sys/src/ssl.rs +@@ -1032,7 +1032,7 @@ extern "C" { + } + + cfg_if! { +- if #[cfg(ossl110)] { ++ if #[cfg(any(ossl110, libressl291))] { + extern "C" { + pub fn TLS_method() -> *const SSL_METHOD; + Added: head/net-im/fractal/files/patch-vendor_openssl_build.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/fractal/files/patch-vendor_openssl_build.rs Sun Jun 30 20:03:06 2019 (r505465) @@ -0,0 +1,23 @@ +--- vendor/openssl/build.rs.orig 2018-12-22 10:43:42 UTC ++++ vendor/openssl/build.rs +@@ -46,12 +46,20 @@ fn main() { + println!("cargo:rustc-cfg=libressl270"); + } + ++ if version >= 0x2_07_01_00_0 { ++ println!("cargo:rustc-cfg=libressl271"); ++ } ++ + if version >= 0x2_07_03_00_0 { + println!("cargo:rustc-cfg=libressl273"); + } + + if version >= 0x2_08_00_00_0 { + println!("cargo:rustc-cfg=libressl280"); ++ } ++ ++ if version >= 0x2_09_01_00_0 { ++ println!("cargo:rustc-cfg=libressl291"); + } + } + } Added: head/net-im/fractal/files/patch-vendor_openssl_src_ssl_mod.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/fractal/files/patch-vendor_openssl_src_ssl_mod.rs Sun Jun 30 20:03:06 2019 (r505465) @@ -0,0 +1,28 @@ +--- vendor/openssl/src/ssl/mod.rs.orig 2018-12-22 10:43:42 UTC ++++ vendor/openssl/src/ssl/mod.rs +@@ -3690,9 +3690,14 @@ cfg_if! { + } + + cfg_if! { +- if #[cfg(ossl110)] { ++ if #[cfg(any(ossl110, libressl291))] { + use ffi::{TLS_method, DTLS_method}; +- ++ } else { ++ use ffi::{SSLv23_method as TLS_method, DTLSv1_method as DTLS_method}; ++ } ++} ++cfg_if! { ++ if #[cfg(ossl110)] { + unsafe fn get_new_idx(f: ffi::CRYPTO_EX_free) -> c_int { + ffi::CRYPTO_get_ex_new_index( + ffi::CRYPTO_EX_INDEX_SSL_CTX, +@@ -3715,8 +3720,6 @@ cfg_if! { + ) + } + } else { +- use ffi::{SSLv23_method as TLS_method, DTLSv1_method as DTLS_method}; +- + unsafe fn get_new_idx(f: ffi::CRYPTO_EX_free) -> c_int { + ffi::SSL_CTX_get_ex_new_index(0, ptr::null_mut(), None, None, Some(f)) + } Added: head/net-im/fractal/files/patch-vendor_openssl_src_version.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/fractal/files/patch-vendor_openssl_src_version.rs Sun Jun 30 20:03:06 2019 (r505465) @@ -0,0 +1,11 @@ +--- vendor/openssl/src/version.rs.orig 2018-12-22 10:43:42 UTC ++++ vendor/openssl/src/version.rs +@@ -14,7 +14,7 @@ + use std::ffi::CStr; + + cfg_if! { +- if #[cfg(ossl110)] { ++ if #[cfg(any(ossl110, libressl271))] { + use ffi::{ + OPENSSL_VERSION, OPENSSL_CFLAGS, OPENSSL_BUILT_ON, OPENSSL_PLATFORM, OPENSSL_DIR, + OpenSSL_version_num, OpenSSL_version,
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201906302003.x5UK364O004593>