From cc220abe014c58a207eebc913a14ca0c45d95f51 Mon Sep 17 00:00:00 2001 From: Simon Pichugin Date: Mon, 24 May 2021 17:42:49 +0200 Subject: [PATCH] Initial support for OpenSSL 3.0.0-alpha16 Resolves: Bug 1953509 - 389-ds-base: Port to OpenSSL 3.0 --- .gitignore | 1 + 389-ds-base-rust-openssl-300.patch | 30 ++++++++++++++++++++++++++++++ 389-ds-base.spec | 22 +++++++++++++++++++++- sources | 1 + 4 files changed, 53 insertions(+), 1 deletion(-) create mode 100644 389-ds-base-rust-openssl-300.patch diff --git a/.gitignore b/.gitignore index b272f37..bc4b42f 100644 --- a/.gitignore +++ b/.gitignore @@ -201,3 +201,4 @@ /389-ds-base-2.0.1.tar.bz2 /389-ds-base-2.0.2.tar.bz2 /389-ds-base-2.0.3.tar.bz2 +/rust-openssl-770ba32702abd2b4cab80727958c27ac3043c3ec.tar.gz diff --git a/389-ds-base-rust-openssl-300.patch b/389-ds-base-rust-openssl-300.patch new file mode 100644 index 0000000..21ef371 --- /dev/null +++ b/389-ds-base-rust-openssl-300.patch @@ -0,0 +1,30 @@ +diff --git a/src/Cargo.lock b/src/Cargo.lock +index 56097be..fd177d4 100644 +--- a/src/Cargo.lock ++++ b/src/Cargo.lock +@@ -449,21 +449,21 @@ checksum = "13bd41f508810a131401606d54ac32a467c97172d74ba7662562ebba5ad07fa0" + + [[package]] + name = "openssl" +-version = "0.10.32" ++version = "0.10.33" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "038d43985d1ddca7a9900630d8cd031b56e4794eecc2e9ea39dd17aa04399a70" + dependencies = [ + "bitflags", +- "cfg-if", ++ "cfg-if 1.0.0", + "foreign-types", +- "lazy_static", + "libc", ++ "once_cell", + "openssl-sys", + ] + + [[package]] + name = "openssl-sys" +-version = "0.9.60" ++version = "0.9.61" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "921fc71883267538946025deffb622905ecad223c28efbfdef9bb59a0175f3e6" + dependencies = [ diff --git a/389-ds-base.spec b/389-ds-base.spec index 0a6065a..116199c 100644 --- a/389-ds-base.spec +++ b/389-ds-base.spec @@ -47,7 +47,7 @@ ExcludeArch: i686 Summary: 389 Directory Server (base) Name: 389-ds-base Version: 2.0.3 -Release: %{?relprefix}3%{?prerel}%{?dist}.1 +Release: %{?relprefix}4%{?prerel}%{?dist} License: GPLv3+ URL: https://www.port389.org Conflicts: selinux-policy-base < 3.9.8 @@ -171,6 +171,13 @@ Source2: %{name}-devel.README Source3: https://github.com/jemalloc/%{jemalloc_name}/releases/download/%{jemalloc_ver}/%{jemalloc_name}-%{jemalloc_ver}.tar.bz2 %endif +# Initial support for OpenSSL 3.0.0-alpha16 +# https://github.com/sfackler/rust-openssl/pull/1264 +%global rust_openssl_commit 770ba32702abd2b4cab80727958c27ac3043c3ec +%global rust_openssl rust-openssl-%{rust_openssl_commit} +Source4: https://github.com/sfackler/rust-openssl/archive/%{rust_openssl_commit}/%{rust_openssl}.tar.gz +Patch0: 389-ds-base-rust-openssl-300.patch + %description 389 Directory Server is an LDAPv3 compliant server. The base package includes the LDAP server and command line utilities for server administration. @@ -277,6 +284,16 @@ A cockpit UI Plugin for configuring and administering the 389 Directory Server cp %{SOURCE2} README.devel +rm -rf vendor/openssl{,-sys}/* +tar -xf %{SOURCE4} -C vendor/ --strip-components=1 %{rust_openssl}/openssl{,-sys}/ +%patch0 -p1 + +# The configure macro will modify some autoconf-related files, which upsets +# cargo when it tries to verify checksums in those files. If we just truncate +# that file list, cargo won't have anything to complain about. +find vendor -name .cargo-checksum.json \ + -exec sed -i.uncheck -e 's/"files":{[^}]*}/"files":{ }/' '{}' '+' + %build OPENLDAP_FLAG="--with-openldap" @@ -614,6 +631,9 @@ exit 0 %endif %changelog +* Mon May 24 2021 Simon Pichugin - 2.0.3-4 +- Initial support for OpenSSL 3.0.0-alpha16 + * Thu Apr 15 2021 Mohan Boddu - 2.0.3-3.1 - Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 diff --git a/sources b/sources index 64df1ed..f5274f7 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ SHA512 (389-ds-base-2.0.3.tar.bz2) = 48f0dcd7e4853646ea9bb38ec742f2b421b7bd6477d33070a8c97a764021ab7fa6fc005cb75ea87860b7b70998dc4df87790cf1c2bda3e6c0a9f08d39b00f6d2 SHA512 (jemalloc-5.2.1.tar.bz2) = 0bbb77564d767cef0c6fe1b97b705d368ddb360d55596945aea8c3ba5889fbce10479d85ad492c91d987caacdbbdccc706aa3688e321460069f00c05814fae02 +SHA512 (rust-openssl-770ba32702abd2b4cab80727958c27ac3043c3ec.tar.gz) = 82888c18beafae8cd8122fe91d00fd32c60ab1ed47db4da691ca762b5102eee4cbfcd6f333fcb1769ba1b65b655f726050b1deccdfdf7ec7b21728c51cd2c750