View | Details | Raw Unified | Return to bug 243708
Collapse All | Expand All

(-)net-im/fractal/Makefile (-3 / +2 lines)
Lines 3-9 Link Here
3
PORTNAME=	fractal
3
PORTNAME=	fractal
4
DISTVERSION=	4.2.2
4
DISTVERSION=	4.2.2
5
CATEGORIES=	net-im
5
CATEGORIES=	net-im
6
MASTER_SITES=	https://gitlab.gnome.org/World/fractal/uploads/${GL_HASH}/
6
MASTER_SITES=	https://gitlab.gnome.org/GNOME/fractal/uploads/${GL_HASH}/
7
7
8
MAINTAINER=	greg@unrelenting.technology
8
MAINTAINER=	greg@unrelenting.technology
9
COMMENT=	GTK+ Matrix IM client
9
COMMENT=	GTK+ Matrix IM client
Lines 17-28 Link Here
17
LIB_DEPENDS=	libdbus-1.so:devel/dbus \
17
LIB_DEPENDS=	libdbus-1.so:devel/dbus \
18
		libgmp.so:math/gmp \
18
		libgmp.so:math/gmp \
19
		libgspell-1.so:textproc/gspell \
19
		libgspell-1.so:textproc/gspell \
20
		libges-1.0.so:multimedia/gstreamer1-editing-services \
21
		libhandy-0.0.so:x11-toolkits/libhandy
20
		libhandy-0.0.so:x11-toolkits/libhandy
22
21
23
USES=		gettext gnome meson pkgconfig python:3.5+,build ssl tar:xz
22
USES=		gettext gnome meson pkgconfig python:3.5+,build ssl tar:xz
24
USE_GNOME=	cairo gtk30 gtksourceview4
23
USE_GNOME=	cairo gtk30 gtksourceview4
25
USE_GSTREAMER1=	bad
24
USE_GSTREAMER1=	bad editing-services
26
25
27
GL_HASH=	9f2b34d98cfe3c002f3afbfcbf14bc7c
26
GL_HASH=	9f2b34d98cfe3c002f3afbfcbf14bc7c
28
BINARY_ALIAS=		python3=${PYTHON_CMD}
27
BINARY_ALIAS=		python3=${PYTHON_CMD}
(-)net-im/fractal/files/patch-vendor_openssl-sys_build_main.rs (+69 lines)
Added Link Here
1
--- vendor/openssl-sys/build/main.rs.orig	2019-11-30 10:09:17 UTC
2
+++ vendor/openssl-sys/build/main.rs
3
@@ -183,28 +183,32 @@ See rust-openssl README for more information:
4
     if let Some(libressl_version) = libressl_version {
5
         println!("cargo:libressl_version_number={:x}", libressl_version);
6
 
7
+        let major = (libressl_version >> 28) as u8;
8
         let minor = (libressl_version >> 20) as u8;
9
         let fix = (libressl_version >> 12) as u8;
10
-        let (minor, fix) = match (minor, fix) {
11
-            (5, 0) => ('5', '0'),
12
-            (5, 1) => ('5', '1'),
13
-            (5, 2) => ('5', '2'),
14
-            (5, _) => ('5', 'x'),
15
-            (6, 0) => ('6', '0'),
16
-            (6, 1) => ('6', '1'),
17
-            (6, 2) => ('6', '2'),
18
-            (6, _) => ('6', 'x'),
19
-            (7, _) => ('7', 'x'),
20
-            (8, 0) => ('8', '0'),
21
-            (8, 1) => ('8', '1'),
22
-            (8, _) => ('8', 'x'),
23
-            (9, 0) => ('9', '0'),
24
-            (9, _) => ('9', 'x'),
25
+        let (major, minor, fix) = match (major, minor, fix) {
26
+            (2, 5, 0) => ('2', '5', '0'),
27
+            (2, 5, 1) => ('2', '5', '1'),
28
+            (2, 5, 2) => ('2', '5', '2'),
29
+            (2, 5, _) => ('2', '5', 'x'),
30
+            (2, 6, 0) => ('2', '6', '0'),
31
+            (2, 6, 1) => ('2', '6', '1'),
32
+            (2, 6, 2) => ('2', '6', '2'),
33
+            (2, 6, _) => ('2', '6', 'x'),
34
+            (2, 7, _) => ('2', '7', 'x'),
35
+            (2, 8, 0) => ('2', '8', '0'),
36
+            (2, 8, 1) => ('2', '8', '1'),
37
+            (2, 8, _) => ('2', '8', 'x'),
38
+            (2, 9, 0) => ('2', '9', '0'),
39
+            (2, 9, _) => ('2', '9', 'x'),
40
+            (3, 0, 0) => ('3', '0', '0'),
41
+            (3, 0, 1) => ('3', '0', '1'),
42
+            (3, 0, _) => ('3', '0', 'x'),
43
             _ => version_error(),
44
         };
45
 
46
         println!("cargo:libressl=true");
47
-        println!("cargo:libressl_version=2{}{}", minor, fix);
48
+        println!("cargo:libressl_version={}{}{}", major, minor, fix);
49
         println!("cargo:version=101");
50
         Version::Libressl
51
     } else {
52
@@ -240,7 +244,7 @@ fn version_error() -> ! {
53
         "
54
 
55
 This crate is only compatible with OpenSSL 1.0.1 through 1.1.1, or LibreSSL 2.5
56
-through 2.9.x, but a different version of OpenSSL was found. The build is now aborting
57
+through 3.0.x, but a different version of OpenSSL was found. The build is now aborting
58
 due to this version mismatch.
59
 
60
 "
61
@@ -256,7 +260,7 @@ fn parse_version(version: &str) -> u64 {
62
 
63
     // and the type specifier suffix
64
     let version = version.trim_right_matches(|c: char| match c {
65
-        '0'...'9' | 'a'...'f' | 'A'...'F' => false,
66
+        '0'..='9' | 'a'..='f' | 'A'..='F' => false,
67
         _ => true,
68
     });
69
 
(-)net-im/fractal/files/patch-vendor_openssl-sys_src_crypto.rs (+11 lines)
Added Link Here
1
--- vendor/openssl-sys/src/crypto.rs.orig	2019-11-30 10:09:17 UTC
2
+++ vendor/openssl-sys/src/crypto.rs
3
@@ -5,6 +5,8 @@ use *;
4
 #[cfg(not(ossl110))]
5
 pub const CRYPTO_LOCK_X509: c_int = 3;
6
 #[cfg(not(ossl110))]
7
+pub const CRYPTO_LOCK_EVP_PKEY: c_int = 10;
8
+#[cfg(not(ossl110))]
9
 pub const CRYPTO_LOCK_SSL_CTX: c_int = 12;
10
 #[cfg(not(ossl110))]
11
 pub const CRYPTO_LOCK_SSL_SESSION: c_int = 14;
(-)net-im/fractal/files/patch-vendor_openssl-sys_src_evp.rs (+50 lines)
Added Link Here
1
--- vendor/openssl-sys/src/evp.rs.orig	2019-11-30 10:09:17 UTC
2
+++ vendor/openssl-sys/src/evp.rs
3
@@ -10,6 +10,10 @@ pub const EVP_PKEY_RSA: c_int = NID_rsaEncryption;
4
 pub const EVP_PKEY_DSA: c_int = NID_dsa;
5
 pub const EVP_PKEY_DH: c_int = NID_dhKeyAgreement;
6
 pub const EVP_PKEY_EC: c_int = NID_X9_62_id_ecPublicKey;
7
+#[cfg(ossl111)]
8
+pub const EVP_PKEY_ED25519: c_int = NID_ED25519;
9
+#[cfg(ossl111)]
10
+pub const EVP_PKEY_ED448: c_int = NID_ED448;
11
 pub const EVP_PKEY_HMAC: c_int = NID_hmac;
12
 pub const EVP_PKEY_CMAC: c_int = NID_cmac;
13
 
14
@@ -154,6 +158,27 @@ cfg_if! {
15
     }
16
 }
17
 cfg_if! {
18
+    if #[cfg(ossl111)] {
19
+        extern "C" {
20
+            pub fn EVP_DigestSign(
21
+                ctx: *mut EVP_MD_CTX,
22
+                sigret: *mut c_uchar,
23
+                siglen: *mut size_t,
24
+                tbs: *const c_uchar,
25
+                tbslen: size_t
26
+            ) -> c_int;
27
+
28
+            pub fn EVP_DigestVerify(
29
+                ctx: *mut EVP_MD_CTX,
30
+                sigret: *const c_uchar,
31
+                siglen: size_t,
32
+                tbs: *const c_uchar,
33
+                tbslen: size_t
34
+            ) -> c_int;
35
+        }
36
+    }
37
+}
38
+cfg_if! {
39
     if #[cfg(any(ossl102, libressl280))] {
40
         extern "C" {
41
             pub fn EVP_DigestVerifyFinal(
42
@@ -279,6 +304,8 @@ extern "C" {
43
 
44
     pub fn EVP_PKEY_new() -> *mut EVP_PKEY;
45
     pub fn EVP_PKEY_free(k: *mut EVP_PKEY);
46
+    #[cfg(any(ossl110, libressl270))]
47
+    pub fn EVP_PKEY_up_ref(pkey: *mut EVP_PKEY) -> c_int;
48
 
49
     pub fn d2i_AutoPrivateKey(
50
         a: *mut *mut EVP_PKEY,
(-)net-im/fractal/files/patch-vendor_openssl-sys_src_lib.rs (+15 lines)
Added Link Here
1
--- vendor/openssl-sys/src/lib.rs.orig	2019-11-30 10:09:17 UTC
2
+++ vendor/openssl-sys/src/lib.rs
3
@@ -88,10 +88,10 @@ pub type PasswordCallback = unsafe extern "C" fn(
4
 #[cfg(ossl110)]
5
 pub fn init() {
6
     use std::ptr;
7
-    use std::sync::{Once, ONCE_INIT};
8
+    use std::sync::Once;
9
 
10
     // explicitly initialize to work around https://github.com/openssl/openssl/issues/3505
11
-    static INIT: Once = ONCE_INIT;
12
+    static INIT: Once = Once::new();
13
 
14
     INIT.call_once(|| unsafe {
15
         OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS, ptr::null_mut());
(-)net-im/fractal/files/patch-vendor_openssl-sys_src_obj__mac.rs (+10 lines)
Added Link Here
1
--- vendor/openssl-sys/src/obj_mac.rs.orig	2019-11-30 10:09:17 UTC
2
+++ vendor/openssl-sys/src/obj_mac.rs
3
@@ -912,3 +912,7 @@ pub const NID_rc4_hmac_md5: c_int = 915;
4
 pub const NID_aes_128_cbc_hmac_sha1: c_int = 916;
5
 pub const NID_aes_192_cbc_hmac_sha1: c_int = 917;
6
 pub const NID_aes_256_cbc_hmac_sha1: c_int = 918;
7
+#[cfg(ossl111)]
8
+pub const NID_ED25519: c_int = 1087;
9
+#[cfg(ossl111)]
10
+pub const NID_ED448: c_int = 1088;

Return to bug 243708