Name: libwd Summary: User Space Accelerator Development Kit Version: 2.5.0 Release: 5 License: Apache-2.0 Source: %{name}-%{version}.tar.gz Vendor: Huawei Corporation ExclusiveOS: linux URL: https://support.huawei.com BuildRoot: %{_tmppath}/%{name}-%{version}-root Conflicts: %{name} < %{version}-%{release} Provides: %{name} = %{version}-%{release} BuildRequires: numactl-devel, openssl-devel, zlib-devel BuildRequires: automake, autoconf, libtool, chrpath BuildRequires: gcc, make ExclusiveArch: aarch64 Patch0001: 0001-uadk-comp-fix-duplicate-release-of-comp.patch Patch0002: 0002-uadk_tool-use-DT_RUNPATH-instead-of-DT_RPATH.patch Patch0003: 0003-uadk-cipher-fix-wd_cipher_init2-typo.patch Patch0004: 0004-uadk-v1-fix-local-variable-type.patch Patch0005: 0005-drv-qm-fix-memory-leak-in-hisi_qm_create_sglpool.patch Patch0006: 0006-uadk-v1-fix-memory-leak-in-wd_sgl.c.patch Patch0007: 0007-uadk-hisi_comp-free-sgl-when-send-request-error.patch Patch0008: 0008-uadk-hisi_comp-add-output-length-check-for-lz77_zstd.patch Patch0009: 0009-drivers-alloc-and-free-resources-by-themself.patch Patch0010: 0010-uadk-fix-for-get_str_attr.patch Patch0011: 0011-uadk-remove-unused-information.patch Patch0012: 0012-uadk-support-digest-to-parse-private-data.patch Patch0013: 0013-uadk-support-aead-to-parse-user-private-data.patch Patch0014: 0014-uadk-fix-sec-test.patch Patch0015: 0015-sanity_test-fix-to-show-messages-from-testcase.patch Patch0016: 0016-sanity_test-append-run_cmd-for-zip.patch Patch0017: 0017-uadk-fix-hpre-test.patch Patch0018: 0018-uadk-add-the-msg-pool-depth-configuration.patch Patch0019: 0019-uadk-v1-add-the-cookie-depth-configuration.patch Patch0020: 0020-uadk_tool-initialize-cparams-to-0.patch Patch0021: 0021-uadk-add-init-wait-timeout.patch Patch0022: 0022-uadk-fix-key-length-check-error-in-xts-mode.patch Patch0023: 0023-uadk-v1-fix-key-length-check-error-in-xts-mode.patch Patch0024: 0024-uadk-support-loading-alg-lib-from-specified-director.patch Patch0025: 0025-uadk-zlibwrapper-fix-failed-to-create-multiple-z_str.patch Patch0026: 0026-uadk-v1-hisilicon-zip-add-sqe_fill_priv-and-sqe_pars.patch Patch0027: 0027-uadk-v1-modify-the-alignment-size-of-sha384.patch Patch0028: 0028-uadk-digest-optimize-the-zero-byte-packet-checking-f.patch Patch0029: 0029-uadk-v1-cipher-support-aes-cbc-cts-mode.patch Patch0030: 0030-uadk-v1-cipher-support-user-self-defined-data-functi.patch Patch0031: 0031-uadk-cipher-cleaup-judgement-sequence.patch Patch0032: 0032-uadk-fix-for-wd_memset_zero-occupies-high-cpu-usage.patch Patch0033: 0033-uadk-optimize-session-update-for-long-hash-mode.patch Patch0034: 0034-uadk-support-digest-message-carrying-long-data-infor.patch Patch0035: 0035-uadk-add-out_bytes-check-for-long-hash-scene.patch Patch0036: 0036-uadk-bugfix-for-aead-set-decrypt-mac-for-stream-mode.patch Patch0037: 0037-uadk-fix-for-digest-mac-full-length-check.patch Patch0038: 0038-uadk-sec-optimize-the-function-name-and-implement-fo.patch Patch0039: 0039-uadk-cipher-support-sm4-xts-GB-standard.patch Patch0040: 0040-uadk-v1-cipher-support-sm4-xts-GB-standard.patch Patch0041: 0041-uadk-v1-digest-support-new-AES-mode-algs.patch Patch0042: 0042-uadk-v1-fix-long-hash-state-issue.patch %description This package contains the User Space Accelerator Library for hardware accelerator, compress, symmetric encryption and decryption, asymmetric encryption and decryption. %prep %autosetup -n %{name}-%{version} -p1 %build sh autogen.sh ./configure make %install mkdir -p ${RPM_BUILD_ROOT}/usr/lib64 install -b -m755 .libs/libwd.so.%{version} ${RPM_BUILD_ROOT}/usr/lib64 install -b -m755 .libs/libwd_crypto.so.%{version} ${RPM_BUILD_ROOT}/usr/lib64 install -b -m755 .libs/libwd_comp.so.%{version} ${RPM_BUILD_ROOT}/usr/lib64 mkdir -p ${RPM_BUILD_ROOT}/usr/lib64/uadk install -b -m755 .libs/libhisi_sec.so.%{version} ${RPM_BUILD_ROOT}/usr/lib64/uadk install -b -m755 .libs/libhisi_hpre.so.%{version} ${RPM_BUILD_ROOT}/usr/lib64/uadk install -b -m755 .libs/libhisi_zip.so.%{version} ${RPM_BUILD_ROOT}/usr/lib64/uadk chrpath -d ${RPM_BUILD_ROOT}/usr/lib64/libwd_crypto.so.%{version} chrpath -d ${RPM_BUILD_ROOT}/usr/lib64/libwd_comp.so.%{version} chrpath -d ${RPM_BUILD_ROOT}/usr/lib64/uadk/libhisi_sec.so.%{version} chrpath -d ${RPM_BUILD_ROOT}/usr/lib64/uadk/libhisi_hpre.so.%{version} chrpath -d ${RPM_BUILD_ROOT}/usr/lib64/uadk/libhisi_zip.so.%{version} mkdir -p ${RPM_BUILD_ROOT}/usr/include/warpdrive/include cp v1/uacce.h ${RPM_BUILD_ROOT}/usr/include/warpdrive/include cp v1/wd.h ${RPM_BUILD_ROOT}/usr/include/warpdrive cp v1/wd_cipher.h ${RPM_BUILD_ROOT}/usr/include/warpdrive cp v1/wd_comp.h ${RPM_BUILD_ROOT}/usr/include/warpdrive cp v1/wd_dh.h ${RPM_BUILD_ROOT}/usr/include/warpdrive cp v1/wd_digest.h ${RPM_BUILD_ROOT}/usr/include/warpdrive cp v1/wd_rsa.h ${RPM_BUILD_ROOT}/usr/include/warpdrive cp v1/wd_bmm.h ${RPM_BUILD_ROOT}/usr/include/warpdrive mkdir -p ${RPM_BUILD_ROOT}/usr/include/uadk/v1 cp include/uacce.h ${RPM_BUILD_ROOT}/usr/include/uadk cp include/wd.h ${RPM_BUILD_ROOT}/usr/include/uadk cp include/wd_cipher.h ${RPM_BUILD_ROOT}/usr/include/uadk cp include/wd_comp.h ${RPM_BUILD_ROOT}/usr/include/uadk cp include/wd_dh.h ${RPM_BUILD_ROOT}/usr/include/uadk cp include/wd_digest.h ${RPM_BUILD_ROOT}/usr/include/uadk cp include/wd_rsa.h ${RPM_BUILD_ROOT}/usr/include/uadk cp include/wd_aead.h ${RPM_BUILD_ROOT}/usr/include/uadk cp include/wd_ecc.h ${RPM_BUILD_ROOT}/usr/include/uadk cp include/wd_ecc_curve.h ${RPM_BUILD_ROOT}/usr/include/uadk cp include/wd_alg_common.h ${RPM_BUILD_ROOT}/usr/include/uadk cp include/wd_sched.h ${RPM_BUILD_ROOT}/usr/include/uadk cp include/wd_alg.h ${RPM_BUILD_ROOT}/usr/include/uadk cp include/wd_zlibwrapper.h ${RPM_BUILD_ROOT}/usr/include/uadk cp v1/uacce.h ${RPM_BUILD_ROOT}/usr/include/uadk/v1 cp v1/wd.h ${RPM_BUILD_ROOT}/usr/include/uadk/v1 cp v1/wd_cipher.h ${RPM_BUILD_ROOT}/usr/include/uadk/v1 cp v1/wd_comp.h ${RPM_BUILD_ROOT}/usr/include/uadk/v1 cp v1/wd_dh.h ${RPM_BUILD_ROOT}/usr/include/uadk/v1 cp v1/wd_digest.h ${RPM_BUILD_ROOT}/usr/include/uadk/v1 cp v1/wd_rsa.h ${RPM_BUILD_ROOT}/usr/include/uadk/v1 cp v1/wd_bmm.h ${RPM_BUILD_ROOT}/usr/include/uadk/v1 mkdir -p ${RPM_BUILD_ROOT}/usr/lib64/pkgconfig cp lib/libwd.pc ${RPM_BUILD_ROOT}/usr/lib64/pkgconfig cp lib/libwd_crypto.pc ${RPM_BUILD_ROOT}/usr/lib64/pkgconfig cp lib/libwd_comp.pc ${RPM_BUILD_ROOT}/usr/lib64/pkgconfig %clean rm -rf ${RPM_BUILD_ROOT} %files %defattr(755,root,root) /usr/lib64/libwd.so.%{version} /usr/lib64/libwd_crypto.so.%{version} /usr/lib64/libwd_comp.so.%{version} /usr/lib64/uadk/libhisi_sec.so.%{version} /usr/lib64/uadk/libhisi_hpre.so.%{version} /usr/lib64/uadk/libhisi_zip.so.%{version} %defattr(644,root,root) /usr/include/warpdrive/include/uacce.h /usr/include/warpdrive/wd.h /usr/include/warpdrive/wd_cipher.h /usr/include/warpdrive/wd_comp.h /usr/include/warpdrive/wd_dh.h /usr/include/warpdrive/wd_digest.h /usr/include/warpdrive/wd_rsa.h /usr/include/warpdrive/wd_bmm.h /usr/include/uadk/uacce.h /usr/include/uadk/wd.h /usr/include/uadk/wd_cipher.h /usr/include/uadk/wd_comp.h /usr/include/uadk/wd_dh.h /usr/include/uadk/wd_digest.h /usr/include/uadk/wd_rsa.h /usr/include/uadk/wd_aead.h /usr/include/uadk/wd_ecc.h /usr/include/uadk/wd_ecc_curve.h /usr/include/uadk/wd_alg_common.h /usr/include/uadk/wd_sched.h /usr/include/uadk/wd_alg.h /usr/include/uadk/wd_zlibwrapper.h /usr/include/uadk/v1/uacce.h /usr/include/uadk/v1/wd.h /usr/include/uadk/v1/wd_cipher.h /usr/include/uadk/v1/wd_comp.h /usr/include/uadk/v1/wd_dh.h /usr/include/uadk/v1/wd_digest.h /usr/include/uadk/v1/wd_rsa.h /usr/include/uadk/v1/wd_bmm.h %exclude /usr/lib64/libwd.so.2 %exclude /usr/lib64/libwd_crypto.so.2 %exclude /usr/lib64/libwd_comp.so.2 /usr/lib64/pkgconfig/libwd.pc /usr/lib64/pkgconfig/libwd_crypto.pc /usr/lib64/pkgconfig/libwd_comp.pc %pre if [ "$1" = "2" ] ; then #2: update rm -rf /usr/lib64/libwd.so > /dev/null 2>&1 || true rm -rf /usr/lib64/libwd.so.2 > /dev/null 2>&1 || true rm -rf /usr/lib64/libwd_crypto.so > /dev/null 2>&1 || true rm -rf /usr/lib64/libwd_crypto.so.2 > /dev/null 2>&1 || true rm -rf /usr/lib64/libwd_comp.so > /dev/null 2>&1 || true rm -rf /usr/lib64/libwd_comp.so.2 > /dev/null 2>&1 || true rm -rf /usr/lib64/uadk/libhisi_sec.so > /dev/null 2>&1 || true rm -rf /usr/lib64/uadk/libhisi_sec.so.2 > /dev/null 2>&1 || true rm -rf /usr/lib64/uadk/libhisi_hpre.so > /dev/null 2>&1 || true rm -rf /usr/lib64/uadk/libhisi_hpre.so.2 > /dev/null 2>&1 || true rm -rf /usr/lib64/uadk/libhisi_zip.so > /dev/null 2>&1 || true rm -rf /usr/lib64/uadk/libhisi_zip.so.2 > /dev/null 2>&1 || true fi %post if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update cd /usr/lib64 ln -sf libwd.so.%{version} libwd.so ln -sf libwd.so.%{version} libwd.so.2 ln -sf libwd_crypto.so.%{version} libwd_crypto.so ln -sf libwd_crypto.so.%{version} libwd_crypto.so.2 ln -sf libwd_comp.so.%{version} libwd_comp.so ln -sf libwd_comp.so.%{version} libwd_comp.so.2 cd /usr/lib64/uadk ln -sf libhisi_sec.so.%{version} libhisi_sec.so ln -sf libhisi_sec.so.%{version} libhisi_sec.so.2 ln -sf libhisi_hpre.so.%{version} libhisi_hpre.so ln -sf libhisi_hpre.so.%{version} libhisi_hpre.so.2 ln -sf libhisi_zip.so.%{version} libhisi_zip.so ln -sf libhisi_zip.so.%{version} libhisi_zip.so.2 fi /sbin/ldconfig %preun if [ "$1" = "0" ] ; then #0: uninstall rm -rf /usr/lib64/libwd.so > /dev/null 2>&1 || true rm -rf /usr/lib64/libwd.so.2 > /dev/null 2>&1 || true rm -rf /usr/lib64/libwd_crypto.so > /dev/null 2>&1 || true rm -rf /usr/lib64/libwd_crypto.so.2 > /dev/null 2>&1 || true rm -rf /usr/lib64/libwd_comp.so > /dev/null 2>&1 || true rm -rf /usr/lib64/libwd_comp.so.2 > /dev/null 2>&1 || true rm -rf /usr/lib64/uadk/libhisi_sec.so > /dev/null 2>&1 || true rm -rf /usr/lib64/uadk/libhisi_sec.so.2 > /dev/null 2>&1 || true rm -rf /usr/lib64/uadk/libhisi_hpre.so > /dev/null 2>&1 || true rm -rf /usr/lib64/uadk/libhisi_hpre.so.2 > /dev/null 2>&1 || true rm -rf /usr/lib64/uadk/libhisi_zip.so > /dev/null 2>&1 || true rm -rf /usr/lib64/uadk/libhisi_zip.so.2 > /dev/null 2>&1 || true fi %postun /sbin/ldconfig %changelog * Tue Oct 31 2023 JiangShui Yang 2.5.0-5 - libwd: update the source code * Thu Sep 28 2023 JiangShui Yang 2.5.0-4 - libwd: update the source code * Mon Sep 4 2023 JiangShui Yang 2.5.0-3 - libwd: Deleting rpath information from the dynamic library * Mon Aug 7 2023 JiangShui Yang 2.5.0-2 - libwd: Adding and packing the pkgconfig file * Mon Aug 7 2023 JiangShui Yang 2.5.0-1 - libwd: update the source code to 2.5.0 * Fri Aug 4 2023 JiangShui Yang 2.4.0-2 - libwd: add wd_alg.h for 2.4.0 * Fri May 5 2023 JiangShui Yang 2.4.0-1 - libwd: update the source code to 2.4.0 * Mon Mar 20 2023 JiangShui Yang 2.3.37-4 - libwd: modify the build requirement * Wed Feb 15 2023 Yang Shen 2.3.37-3 - libwd: add build requirement * Thu Dec 15 2022 Yang Shen 2.3.37-2 - libwd: fix a bug for ecc * Mon Oct 10 2022 Yang Shen 2.3.37-1 - libwd: update the source code to 2.3.37 * Tue Jul 26 2022 Yang Shen 2.3.21-6 - libwd: backport the patch of uadk from 2.3.31 to 2.3.36 * Mon Mar 21 2022 Yang Shen 2.3.21-5 - libwd: backport the patch of uadk from 2.3.28 to 2.3.31 * Tue Mar 1 2022 Yang Shen 2.3.21-4 - libwd: backport the patch of uadk from 2.3.27 to 2.3.28 * Mon Feb 21 2022 Yang Shen 2.3.21-3 - libwd: backport the patch of uadk from 2.3.24 to 2.3.27 * Tue Jan 04 2022 Yang Shen 2.3.21-2 - libwd: backport the patch of uadk from 2.3.21 to 2.3.24 * Mon Dec 06 2021 linwenkai 2.3.21-1 - libwd: update uadk from 2.3.20 to 2.3.21 * Wed Nov 24 2021 linwenkai 2.3.20-2 - libwd: add missing head files and fix install path * Mon Nov 22 2021 Yang Shen 2.3.20-1 - libwd: update uadk from 2.3.11 to 2.3.20 * Fri Sep 03 2021 Yang Shen 2.3.11-4 - uadk-access-the-file-isolate-before-read-it.patch * Fri Aug 06 2021 Pengju Jiang 2.3.11-3 - bugfix-of-gcc-10.patch * Wed Jul 21 2021 caodongxia 2.3.11-2 - change uacce.h path. * Tue Jul 06 2021 Hao Fang 2.3.11-1 - update warpdrive to uadk, support kunpeng 920/930. * Sun Mar 15 2020 zhangtao 1.2.10-3 - Specify compilation aarch64 as platform * Tue Mar 03 2020 catastrowings 1.2.10-2 - openEuler init * Tue Jan 07 2020 jinbinhua 1.2.7-1 - First Spec Version Include Warpdrive Code