FreeBSD Bugzilla – Attachment 211171 Details for
Bug 243708
net-im/fractal: unbreak with LibreSSL 3.0.x
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
fractal-4.2.2-libressl3.0.x.patch
fractal-4.2.2-libressl3.0.x.patch (text/plain), 7.78 KB, created by
Charlie Li
on 2020-01-29 16:43:38 UTC
(
hide
)
Description:
fractal-4.2.2-libressl3.0.x.patch
Filename:
MIME Type:
Creator:
Charlie Li
Created:
2020-01-29 16:43:38 UTC
Size:
7.78 KB
patch
obsolete
>diff -r 5897b3ba019e net-im/fractal/Makefile >--- net-im/fractal/Makefile Wed Jan 29 03:37:58 2020 +0000 >+++ net-im/fractal/Makefile Wed Jan 29 11:29:03 2020 -0500 >@@ -3,7 +3,7 @@ > PORTNAME= fractal > DISTVERSION= 4.2.2 > CATEGORIES= net-im >-MASTER_SITES= https://gitlab.gnome.org/World/fractal/uploads/${GL_HASH}/ >+MASTER_SITES= https://gitlab.gnome.org/GNOME/fractal/uploads/${GL_HASH}/ > > MAINTAINER= greg@unrelenting.technology > COMMENT= GTK+ Matrix IM client >@@ -17,12 +17,11 @@ > LIB_DEPENDS= libdbus-1.so:devel/dbus \ > libgmp.so:math/gmp \ > libgspell-1.so:textproc/gspell \ >- libges-1.0.so:multimedia/gstreamer1-editing-services \ > libhandy-0.0.so:x11-toolkits/libhandy > > USES= gettext gnome meson pkgconfig python:3.5+,build ssl tar:xz > USE_GNOME= cairo gtk30 gtksourceview4 >-USE_GSTREAMER1= bad >+USE_GSTREAMER1= bad editing-services > > GL_HASH= 9f2b34d98cfe3c002f3afbfcbf14bc7c > BINARY_ALIAS= python3=${PYTHON_CMD} >diff -r 5897b3ba019e net-im/fractal/files/patch-vendor_openssl-sys_build_main.rs >--- /dev/null Thu Jan 01 00:00:00 1970 +0000 >+++ net-im/fractal/files/patch-vendor_openssl-sys_build_main.rs Wed Jan 29 11:29:03 2020 -0500 >@@ -0,0 +1,69 @@ >+--- vendor/openssl-sys/build/main.rs.orig 2019-11-30 10:09:17 UTC >++++ vendor/openssl-sys/build/main.rs >+@@ -183,28 +183,32 @@ See rust-openssl README for more information: >+ if let Some(libressl_version) = libressl_version { >+ println!("cargo:libressl_version_number={:x}", libressl_version); >+ >++ let major = (libressl_version >> 28) as u8; >+ let minor = (libressl_version >> 20) as u8; >+ let fix = (libressl_version >> 12) as u8; >+- let (minor, fix) = match (minor, fix) { >+- (5, 0) => ('5', '0'), >+- (5, 1) => ('5', '1'), >+- (5, 2) => ('5', '2'), >+- (5, _) => ('5', 'x'), >+- (6, 0) => ('6', '0'), >+- (6, 1) => ('6', '1'), >+- (6, 2) => ('6', '2'), >+- (6, _) => ('6', 'x'), >+- (7, _) => ('7', 'x'), >+- (8, 0) => ('8', '0'), >+- (8, 1) => ('8', '1'), >+- (8, _) => ('8', 'x'), >+- (9, 0) => ('9', '0'), >+- (9, _) => ('9', 'x'), >++ let (major, minor, fix) = match (major, minor, fix) { >++ (2, 5, 0) => ('2', '5', '0'), >++ (2, 5, 1) => ('2', '5', '1'), >++ (2, 5, 2) => ('2', '5', '2'), >++ (2, 5, _) => ('2', '5', 'x'), >++ (2, 6, 0) => ('2', '6', '0'), >++ (2, 6, 1) => ('2', '6', '1'), >++ (2, 6, 2) => ('2', '6', '2'), >++ (2, 6, _) => ('2', '6', 'x'), >++ (2, 7, _) => ('2', '7', 'x'), >++ (2, 8, 0) => ('2', '8', '0'), >++ (2, 8, 1) => ('2', '8', '1'), >++ (2, 8, _) => ('2', '8', 'x'), >++ (2, 9, 0) => ('2', '9', '0'), >++ (2, 9, _) => ('2', '9', 'x'), >++ (3, 0, 0) => ('3', '0', '0'), >++ (3, 0, 1) => ('3', '0', '1'), >++ (3, 0, _) => ('3', '0', 'x'), >+ _ => version_error(), >+ }; >+ >+ println!("cargo:libressl=true"); >+- println!("cargo:libressl_version=2{}{}", minor, fix); >++ println!("cargo:libressl_version={}{}{}", major, minor, fix); >+ println!("cargo:version=101"); >+ Version::Libressl >+ } else { >+@@ -240,7 +244,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.x, but a different version of OpenSSL was found. The build is now aborting >++through 3.0.x, but a different version of OpenSSL was found. The build is now aborting >+ due to this version mismatch. >+ >+ " >+@@ -256,7 +260,7 @@ fn parse_version(version: &str) -> u64 { >+ >+ // and the type specifier suffix >+ let version = version.trim_right_matches(|c: char| match c { >+- '0'...'9' | 'a'...'f' | 'A'...'F' => false, >++ '0'..='9' | 'a'..='f' | 'A'..='F' => false, >+ _ => true, >+ }); >+ >diff -r 5897b3ba019e net-im/fractal/files/patch-vendor_openssl-sys_src_crypto.rs >--- /dev/null Thu Jan 01 00:00:00 1970 +0000 >+++ net-im/fractal/files/patch-vendor_openssl-sys_src_crypto.rs Wed Jan 29 11:29:03 2020 -0500 >@@ -0,0 +1,11 @@ >+--- vendor/openssl-sys/src/crypto.rs.orig 2019-11-30 10:09:17 UTC >++++ vendor/openssl-sys/src/crypto.rs >+@@ -5,6 +5,8 @@ use *; >+ #[cfg(not(ossl110))] >+ pub const CRYPTO_LOCK_X509: c_int = 3; >+ #[cfg(not(ossl110))] >++pub const CRYPTO_LOCK_EVP_PKEY: c_int = 10; >++#[cfg(not(ossl110))] >+ pub const CRYPTO_LOCK_SSL_CTX: c_int = 12; >+ #[cfg(not(ossl110))] >+ pub const CRYPTO_LOCK_SSL_SESSION: c_int = 14; >diff -r 5897b3ba019e net-im/fractal/files/patch-vendor_openssl-sys_src_evp.rs >--- /dev/null Thu Jan 01 00:00:00 1970 +0000 >+++ net-im/fractal/files/patch-vendor_openssl-sys_src_evp.rs Wed Jan 29 11:29:03 2020 -0500 >@@ -0,0 +1,50 @@ >+--- vendor/openssl-sys/src/evp.rs.orig 2019-11-30 10:09:17 UTC >++++ vendor/openssl-sys/src/evp.rs >+@@ -10,6 +10,10 @@ pub const EVP_PKEY_RSA: c_int = NID_rsaEncryption; >+ pub const EVP_PKEY_DSA: c_int = NID_dsa; >+ pub const EVP_PKEY_DH: c_int = NID_dhKeyAgreement; >+ pub const EVP_PKEY_EC: c_int = NID_X9_62_id_ecPublicKey; >++#[cfg(ossl111)] >++pub const EVP_PKEY_ED25519: c_int = NID_ED25519; >++#[cfg(ossl111)] >++pub const EVP_PKEY_ED448: c_int = NID_ED448; >+ pub const EVP_PKEY_HMAC: c_int = NID_hmac; >+ pub const EVP_PKEY_CMAC: c_int = NID_cmac; >+ >+@@ -154,6 +158,27 @@ cfg_if! { >+ } >+ } >+ cfg_if! { >++ if #[cfg(ossl111)] { >++ extern "C" { >++ pub fn EVP_DigestSign( >++ ctx: *mut EVP_MD_CTX, >++ sigret: *mut c_uchar, >++ siglen: *mut size_t, >++ tbs: *const c_uchar, >++ tbslen: size_t >++ ) -> c_int; >++ >++ pub fn EVP_DigestVerify( >++ ctx: *mut EVP_MD_CTX, >++ sigret: *const c_uchar, >++ siglen: size_t, >++ tbs: *const c_uchar, >++ tbslen: size_t >++ ) -> c_int; >++ } >++ } >++} >++cfg_if! { >+ if #[cfg(any(ossl102, libressl280))] { >+ extern "C" { >+ pub fn EVP_DigestVerifyFinal( >+@@ -279,6 +304,8 @@ extern "C" { >+ >+ pub fn EVP_PKEY_new() -> *mut EVP_PKEY; >+ pub fn EVP_PKEY_free(k: *mut EVP_PKEY); >++ #[cfg(any(ossl110, libressl270))] >++ pub fn EVP_PKEY_up_ref(pkey: *mut EVP_PKEY) -> c_int; >+ >+ pub fn d2i_AutoPrivateKey( >+ a: *mut *mut EVP_PKEY, >diff -r 5897b3ba019e net-im/fractal/files/patch-vendor_openssl-sys_src_lib.rs >--- /dev/null Thu Jan 01 00:00:00 1970 +0000 >+++ net-im/fractal/files/patch-vendor_openssl-sys_src_lib.rs Wed Jan 29 11:29:03 2020 -0500 >@@ -0,0 +1,15 @@ >+--- vendor/openssl-sys/src/lib.rs.orig 2019-11-30 10:09:17 UTC >++++ vendor/openssl-sys/src/lib.rs >+@@ -88,10 +88,10 @@ pub type PasswordCallback = unsafe extern "C" fn( >+ #[cfg(ossl110)] >+ pub fn init() { >+ use std::ptr; >+- use std::sync::{Once, ONCE_INIT}; >++ use std::sync::Once; >+ >+ // explicitly initialize to work around https://github.com/openssl/openssl/issues/3505 >+- static INIT: Once = ONCE_INIT; >++ static INIT: Once = Once::new(); >+ >+ INIT.call_once(|| unsafe { >+ OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS, ptr::null_mut()); >diff -r 5897b3ba019e net-im/fractal/files/patch-vendor_openssl-sys_src_obj__mac.rs >--- /dev/null Thu Jan 01 00:00:00 1970 +0000 >+++ net-im/fractal/files/patch-vendor_openssl-sys_src_obj__mac.rs Wed Jan 29 11:29:03 2020 -0500 >@@ -0,0 +1,10 @@ >+--- vendor/openssl-sys/src/obj_mac.rs.orig 2019-11-30 10:09:17 UTC >++++ vendor/openssl-sys/src/obj_mac.rs >+@@ -912,3 +912,7 @@ pub const NID_rc4_hmac_md5: c_int = 915; >+ pub const NID_aes_128_cbc_hmac_sha1: c_int = 916; >+ pub const NID_aes_192_cbc_hmac_sha1: c_int = 917; >+ pub const NID_aes_256_cbc_hmac_sha1: c_int = 918; >++#[cfg(ossl111)] >++pub const NID_ED25519: c_int = 1087; >++#[cfg(ossl111)] >++pub const NID_ED448: c_int = 1088;
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
fuz
:
maintainer-approval?
(
vishwin
)
Actions:
View
|
Diff
Attachments on
bug 243708
: 211171