File openssl-3-livepatches.spec of Package openssl-3-livepatches.35335

#
# spec file for package openssl-3-livepatches
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#

%define bname openssl-3-livepatches

Name:           %{bname}
Version:        0.2
Release:        0
Summary:        Livepatches for OpenSSL-3
License:        OpenSSL
Group:          Productivity/Networking/Security

URL:            https://www.suse.com/products/live-patching
Source:         %{bname}-%{version}.tar.xz

BuildRequires:  ulp-macros
BuildRequires:  libopenssl3
BuildRequires:  libpulp-tools
BuildRequires:  libpulp0
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

# Only available for these architectures.
%if 0%{?sle_version} < 150700
ExclusiveArch:  x86_64
%else
ExclusiveArch:  x86_64 ppc64le
%endif

# Make sure we pull the latest openssl-3
BuildRequires:            libopenssl3
%requires_ge_with_release libopenssl3

Requires: libpulp-tools >= 0.3.16
Requires: coreutils

%description
Live patching enables userland processes to be fixed without a restart cycle.
This package provides live patches for the libraries provided by openssl.
Applying a live patch requires libpulp-tools.

%prep
tar -xvf %{_sourcedir}/%{name}-%{version}.tar.xz

%build
make %{?_smp_mflags}

# Some patches do not have a test program.
# make check

%install
%make_install

%post

FILES=(
#/usr/lib64/engines-3/capi.so
#/usr/lib64/engines-3/loader_attic.so
#/usr/lib64/engines-3/padlock.so
/usr/lib64/libcrypto.so.3
/usr/lib64/libcrypto.so.3.1.4
/usr/lib64/libssl.so.3
/usr/lib64/libssl.so.3.1.4
#/usr/lib64/ossl-modules/legacy.so
#/usr/lib64/ossl-modules/fips.so
#/usr/lib64/libcrypto.so
#/usr/lib64/libssl.so
)

# Move the libs to /var/livepatches on sle-micro
%{ulp_post_move_libs %{bname} %{version} ${FILES[@]}}

# Call the ulp post hook, which will trigger the update.
%{ulp_post_hook %{bname} %{version}}

%postun

%{ulp_post_remove_libs %{bname} %{version}}

%files
/usr/lib64/%{bname}/

%changelog
openSUSE Build Service is sponsored by