Sync from SUSE:SLFO:Main qca revision 8e9cb64165414347fb836b9f281a8cd1

This commit is contained in:
Adrian Schröter 2024-05-03 23:45:40 +02:00
commit 574c67a838
7 changed files with 563 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

5
_multibuild Normal file
View File

@ -0,0 +1,5 @@
<multibuild>
<flavor>qt5</flavor>
<flavor>qt6</flavor>
</multibuild>

BIN
qca-2.3.7.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

16
qca-2.3.7.tar.xz.sig Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEmUvOVl9TGc6jhe6fuSpfBOyUkSEFAmS+mnwACgkQuSpfBOyU
kSH7hQ//bxgmGoQVbYPr2JzMK9xHoQhikO2gmAqlbVinPts/a7lkw83jnQ78u/qM
PyktQbRAUl46g+LWVsYGcmdt3FcF66sbe0RMk63HJuSew1g8e8qjI2p9xCNkkCHT
oeuojQSaXILaG/tkAe0PshDM6Qh9kTJUmYnzb2ekRYF0u3+EqmbFOmGBbtXFYMfi
18OtcriDucCv0Q59DxHX4VPhFxnJmnbsC58CDSPps3YxYS/EJGtGgnQn2c5fatCy
kCDnKpqwM0hIabCpbozTV7vf/KxEq4Le4NGr8uLS6UbbTtSqIWSzifs4ZTVtboaV
Ub3pBmWsKH180BirSb20n1d54TBB6ZMylDlynbaW+SoziwIM/PaLLpUnqXv+8QLO
QPR3f3jjBhYu70PuHFBrNCbfWeiWRaVcSATYsD0/Q0izDU8WQ+QMHALyxXLpXTsE
ic4YxlLvZk4wiYmiK19Rk+GSTJZ7UvRmUCiilb/YjIZX/Yev9N7/1F4Da4WKH7sn
Wl3HbF64w6mPEdCOZzhcPmBgrHcccxCrWW9FEF5aWakdQn7yEjicKC/7ezFTmVuH
YnOCN17RD29cl1iyYOeSIXJH17UamornyjePi76zYOB+Tp60UWxdGSbYji3u20f0
cN4qXXg475o/B9snjt0+Q3udxcQ35gRZk5fUi8q/4ckB3DXjfh0=
=qAzz
-----END PGP SIGNATURE-----

298
qca.changes Normal file
View File

@ -0,0 +1,298 @@
-------------------------------------------------------------------
Tue Jul 25 08:29:57 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Update to 2.3.7
* OpenSSL3: don't quit if legacy provider is unavailable
-------------------------------------------------------------------
Wed May 3 16:10:27 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Update to 2.3.6. No changelog.
- Drop patches, merged upstream:
* 0001-Remove-test-that-openssl-has-decided-it-s-wrong.patch
* 0001-hashunittest-run-sha384longtest-only-for-providers-t.patch
-------------------------------------------------------------------
Mon Feb 20 13:34:13 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Disable the pgp test. It fails randomly.
-------------------------------------------------------------------
Mon Feb 20 09:47:38 UTC 2023 - Otto Hollmann <otto.hollmann@suse.com>
- Remove test that openssl has decided it's wrong [boo#1208393]
* Add 0001-Remove-test-that-openssl-has-decided-it-s-wrong.patch
-------------------------------------------------------------------
Wed Oct 26 08:54:32 UTC 2022 - Fabian Vogt <fvogt@suse.com>
- BR ca-certificates-mozilla for the testsuite
- Have the devel package require the library
- Drop qca-2.3.0-fixDSA.patch, that was fixed in 2014 already by
just disabling DSA
- Add upstream change:
* 0001-hashunittest-run-sha384longtest-only-for-providers-t.patch
-------------------------------------------------------------------
Wed Oct 19 06:15:22 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 2.3.5
* find dependencies of Qca when the cmake package is used by a
project
* Handle openssl without case5 support
* Update rootcerts.pem
* SafeSocketNotifier: fix socket FD type and remove signal
argument
- Drop patch, merged upstream:
* 0001-Make-filewatchunittest-much-quicker.patch
-------------------------------------------------------------------
Thu Oct 21 13:00:31 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Set LD_LIBRARY_PATH before running tests.
-------------------------------------------------------------------
Tue Sep 14 20:24:59 UTC 2021 - Fabian Vogt <fabian@ritter-vogt.de>
- Run ctest in %check
- Add patch to make %check much quicker:
* 0001-Make-filewatchunittest-much-quicker.patch
-------------------------------------------------------------------
Tue Sep 14 20:09:30 UTC 2021 - Fabian Vogt <fabian@ritter-vogt.de>
- Update to 2.3.4:
* OpenSSL 3 support
* Don't create pkgconfig files for Qt 6 builds
* Minor test fix
-------------------------------------------------------------------
Fri Jun 18 07:52:52 UTC 2021 - Fabian Vogt <fabian@ritter-vogt.de>
- Mention soversion in %files
- Require main plugins from the library (for now, boo#1187447)
- Recommend optional plugins from the library
-------------------------------------------------------------------
Wed Jun 16 06:27:32 UTC 2021 - Wolfgang Bauer <wbauer@tmo.at>
- Recommend the main package in the Qt5 flavor as well
-------------------------------------------------------------------
Fri Jun 4 08:20:14 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Rename libqca-qt5 to qca and use flavors to build Qt5 and Qt6
variants.
-------------------------------------------------------------------
Thu Jun 3 20:15:57 UTC 2021 - Wolfgang Bauer <wbauer@tmo.at>
- Update to 2.3.3:
* Add Qt6 support. Use -DQT6=ON when running cmake
* Minimum Qt5 supported version updated to 5.14
* Minor doc fixes
- Rebase qca-2.3.0-fixDSA.patch
-------------------------------------------------------------------
Thu Feb 11 10:23:07 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Add a keyring file
- Use cmake() syntax for Qt build requirements
-------------------------------------------------------------------
Fri Feb 5 09:00:14 UTC 2021 - Paolo Stivanin <info@paolostivanin.com>
- Update to 2.3.2:
* Add macOS framework major version
* qca-gcrypt: Add support for HKDF
* Minimum Qt updated to 5.9
* Fixed compilation with gcc 11
- Rebase qca-2.3.0-fixDSA.patch
-------------------------------------------------------------------
Mon Jul 6 16:02:52 UTC 2020 - Wolfgang Bauer <wbauer@tmo.at>
- Update to 2.3.1
* fixes memleaks and crashes
-------------------------------------------------------------------
Tue Mar 10 16:50:03 UTC 2020 - Antonio Larrosa <alarrosa@suse.com>
- Remove baselibs.conf
-------------------------------------------------------------------
Wed Feb 26 13:08:04 UTC 2020 - Wolfgang Bauer <wbauer@tmo.at>
- Update to 2.3.0
* Qt5 is the only supported Qt series now
* OpenSSL <= 1.1.0 is no longer supported
* Various botan bugfixes
* More dynamic test coverage of backend capabilities
* no longer tries to setuid when the effective uid is not root
- Rename qca-2.2.1-fixDSA.patch to qca-2.3.0-fixDSA.patch and
rebase it
- Update minimum required Qt5 and cmake versions
-------------------------------------------------------------------
Mon Sep 9 12:17:50 UTC 2019 - Christophe Giboudeaux <christophe@krop.fr>
- Drop the obsolete libqca2 package.
- Run spec-cleaner
-------------------------------------------------------------------
Fri Apr 26 12:49:36 UTC 2019 - Fabian Vogt <fabian@ritter-vogt.de>
- Fix source URL
-------------------------------------------------------------------
Fri Apr 26 07:43:43 UTC 2019 - Wolfgang Bauer <wbauer@tmo.at>
- Update to 2.2.1
* support for openssl 1.1
* support for AES GCM and AES CCM modes
* new base64 convenience functions
* new botan2 support
* new hkdf support
* various build improvements and (deprecation) cleanups
- Drop patches merged upstream:
* 0001-Revert-tlsunittest-disable-some-ciphers.patch
* 0002-Disable-missed-openssl-cipher-suites.patch
* 0003-Add-support-for-OpenSSL-1.1.0.patch
* ansi.diff
- Rename qca-2.1.3-fixDSA.patch to qca-2.2.1-fixDSA.patch and
rebase it
- Re-enable pkcs11, there is no openssl conflict anymore
- Don't hardcode the certstore path anymore, ca-certificates is
BuldRequired so this can be detected automatically
-------------------------------------------------------------------
Thu Oct 25 09:30:30 UTC 2018 - Jason Sikes <jsikes@suse.de>
- Fix segfault when creating DSA keys
* [qca-2.1.3-fixDSA.patch]
* bsc#1108634
-------------------------------------------------------------------
Wed Dec 27 10:57:18 UTC 2017 - jengelh@inai.de
- Diversify subpackage descriptions.
-------------------------------------------------------------------
Wed Dec 20 18:12:13 UTC 2017 - fabian@ritter-vogt.de
- Add patches to support OpenSSL 1.1.0:
* 0001-Revert-tlsunittest-disable-some-ciphers.patch
* 0002-Disable-missed-openssl-cipher-suites.patch
* 0003-Add-support-for-OpenSSL-1.1.0.patch
- Fix provides in main package
-------------------------------------------------------------------
Thu Oct 19 08:53:59 UTC 2017 - meissner@suse.com
- buildignore openssl-1_0_0 to avoid conflicts during the
openssl 1.1 effort.
-------------------------------------------------------------------
Mon Oct 9 11:32:54 UTC 2017 - vcizek@suse.com
- Hardcode certstore path on Tumbleweed, in order to avoid
BuildRequires: ca-certificates, which will create a conflict,
because it requires openssl-1_1_0 (bsc#1055310)
-------------------------------------------------------------------
Sun Oct 1 16:25:59 UTC 2017 - wbauer@tmo.at
- Update to 2.1.3
* No changelog provided
- Drop libqca-qt5-2.1.1-explicit-signed-char.patch, merged upstream
- Update Url
-------------------------------------------------------------------
Fri Sep 29 14:54:39 UTC 2017 - wbauer@tmo.at
- Remove libbotan-devel build requirement, we explicitly disable
building the botan plugin anyway (boo#1055322)
-------------------------------------------------------------------
Fri Aug 25 08:52:31 UTC 2017 - fvogt@suse.com
- Force building against openSSL 1.0 (boo#1055310)
- Disable PKCS11 on TW to avoid openssl conflicts
-------------------------------------------------------------------
Wed May 25 18:17:55 UTC 2016 - antoine.belvire@laposte.net
- Fix build on PowerPC with GCC 6:
* Add libqca-qt5-2.1.1-explicit-signed-char.patch
-------------------------------------------------------------------
Sat Oct 3 09:21:25 UTC 2015 - hrvoje.senjan@gmail.com
- Update to 2.1.1
* No changelog provided
- Drop Use-Q_SLOTS-Q_SIGNALS.patch and 0001-Add-missing-QIODevice-include.patch
-------------------------------------------------------------------
Sat Sep 26 14:13:08 UTC 2015 - hrvoje.senjan@gmail.com
- Added Use-Q_SLOTS-Q_SIGNALS.patch from upstream: allow building
without QT_NO_KEYWORDS define
-------------------------------------------------------------------
Sat Jan 10 06:58:34 UTC 2015 - hrvoje.senjan@gmail.com
- Update to 2.1.0.3
* Allow co-installability with Qt4 build
- Remove conflict with libqca2-devel
- Bump required cmake version to 2.8.12
- Added ansi.diff, rh#1182200
- Added 0001-Add-missing-QIODevice-include.patch, fixes build with
Qt 5.5
-------------------------------------------------------------------
Sat Nov 8 16:01:07 UTC 2014 - hrvoje.senjan@gmail.com
- Update to 2.1.0
* Ported to Qt5 (Qt4 alsa supported)
* New building system. CMake instead of qmake
* Added CTR symetric cipher support to qca core
* Added no padding encryption algorithm to qca core
* qcatool2 renamed to qcatool
* fixed crash in qcatool when only options provided on command
line without any commands
* Use plugins installation path as hard-coded runtime plugins
search path
* Added new functiion pluginPaths
* Added functions to get runtime QCA version
* Fixed 'no watch file' warnings in FileWatch
* Added EME_PKCS1v15_SSL Encryption Algorithm
* New implementation of SafeTimer to prevent crashes
* Updated certificates for unittests
* RSA Keys are permutable, can encrypt with private
and decrypt with public
* Add unloadProvider() function for symmetry
with insertProvider()
* Overloaded "makeKey" to derive a password depending
on a time factor
* Remove pointer to deinit() routine from QCoreApplication
at deinitialization
* Fix a couple of crashes where all plugins
might not be available
* Fix operating on keys with unrelated expired subkeys
* Fixed timers in Synchronizer class
* Dropped randomunittest
* Fixed many unittests
* qca-gnupg: internal refactoring
* qca-gnupg: try both gpg and gpg2 to find gnupg executable
* qca-gnupg: fixed some encodings problem
* qca-ossl: no DSA_* dl groups in FIPS specification
* qca-ossl: added missed signatures to CRLContext
* qca-ossl: fixed certs time zone
* qca-nss: fixed KeyLenght for Cipher
* qca-botan: fixed getting result size for ciphers
-------------------------------------------------------------------
Thu Aug 14 23:19:28 UTC 2014 - hrvoje.senjan@gmail.com
- Activate libqca-qt5 package

BIN
qca.keyring Normal file

Binary file not shown.

218
qca.spec Normal file
View File

@ -0,0 +1,218 @@
#
# spec file for package qca
#
# Copyright (c) 2023 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/
#
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == ""
%define pkgname_suffix %{nil}
ExclusiveArch: do_not_build
%endif
%if "%{flavor}" == "qt5"
%define qt5 1
%define pkgname_suffix -qt5
%define qt_min_version 5.14
%define _plugindir %{_libqt5_plugindir}
%endif
# %%elif requires rpm 4.15...
%if "%{flavor}" == "qt6"
%define qt6 1
%define pkgname_suffix -qt6
%define qt_min_version 6.0
%define _plugindir %{_qt6_pluginsdir}
%endif
#
%define _soversion 2
%bcond_without pkcs11
Name: qca%{pkgname_suffix}
Version: 2.3.7
Release: 0
Summary: Qt Cryptographic Architecture 2
License: LGPL-2.1-or-later
URL: https://userbase.kde.org/QCA
Source0: https://download.kde.org/stable/qca/%{version}/qca-%{version}.tar.xz
Source1: https://download.kde.org/stable/qca/%{version}/qca-%{version}.tar.xz.sig
Source2: qca.keyring
BuildRequires: ca-certificates-mozilla
BuildRequires: cmake
BuildRequires: gpg2
BuildRequires: libgcrypt-devel
BuildRequires: libjpeg-devel
%if %{with pkcs11}
BuildRequires: pkcs11-helper-devel
%endif
BuildRequires: pkgconfig
BuildRequires: update-desktop-files
%if 0%{?qt5}
BuildRequires: cmake(Qt5Core) >= %{qt_min_version}
BuildRequires: cmake(Qt5Network) >= %{qt_min_version}
BuildRequires: cmake(Qt5Test) >= %{qt_min_version}
%endif
%if 0%{?qt6}
BuildRequires: cmake(Qt6Core) >= %{qt_min_version}
BuildRequires: cmake(Qt6Core5Compat) >= %{qt_min_version}
BuildRequires: cmake(Qt6Network) >= %{qt_min_version}
BuildRequires: cmake(Qt6Test) >= %{qt_min_version}
%endif
BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(libsasl2)
BuildRequires: pkgconfig(nss)
BuildRequires: pkgconfig(openssl) >= 1.1.1
Requires: gpg2 >= 2.0.0
%if 0%{?qt5}
# The plugins used to be in the same package as the library
Obsoletes: libqca-qt5 <= 2.3.2
%endif
%description
This package provides a generic Qt cryptographic architecture,
including a library and a plug-in for using all supported capabilities
of openssl, like SSL/TLS, X509, RSA, SHA1, MD5, Blowfish, 3DES, and
AES.
It can be extended by further plug-ins, for example, with qca-sasl for
SASL support.
%package -n libqca-%{flavor}-%{_soversion}
Summary: QCA library
%if 0%{?qt5}
Provides: libqca-qt5 = %{version}
Obsoletes: libqca-qt5 < %{version}
%endif
Requires: %{name} >= %{version}
Recommends: %{name}-plugins
%description -n libqca-%{flavor}-%{_soversion}
The Qt cryptographic library.
%package devel
Summary: Development files for the Qt Cryptographic Architecture 2
Requires: libqca-%{flavor}-%{_soversion} = %{version}
%if 0%{?qt5}
Requires: cmake(Qt5Core) >= %{qt_min_version}
Requires: cmake(Qt5Network) >= %{qt_min_version}
Provides: libqca-qt5-devel = %{version}
Obsoletes: libqca-qt5-devel < %{version}
%endif
%if 0%{?qt6}
Requires: cmake(Qt6Core) >= %{qt_min_version}
Requires: cmake(Qt6Network) >= %{qt_min_version}
%endif
%description devel
This package provides a generic Qt cryptographic architecture,
including a library and a plugin for using all supported capabilities
of openssl, like SSL/TLS, X509, RSA, SHA1, MD5, Blowfish, 3DES and AES.
%package plugins
Summary: Various plugins for the Qt Cryptographic Architecture 2
%if 0%{?qt5}
Provides: libqca-qt5-plugins = %{version}
Obsoletes: libqca-qt5-plugins < %{version}
%endif
%description plugins
This package provides a generic Qt cryptographic architecture,
including a library and a plug-in for using all supported capabilities
of openssl, like SSL/TLS, X509, RSA, SHA1, MD5, Blowfish, 3DES, and
AES.
It can be extended by further plug-ins, for example, with qca-sasl for
SASL support.
%prep
%autosetup -p1 -n qca-%{version}
# Don't build examples
echo > examples/CMakeLists.txt
# The pgp test fails randomly
sed -i '/pgpunittest/d' unittest/CMakeLists.txt
%build
%if 0%{?qt5}
%cmake \
%else
%cmake_qt6 \
-DBUILD_WITH_QT6=ON \
%endif
-DBUILD_TESTS=ON \
-DQCA_INSTALL_IN_QT_PREFIX=ON \
-DQCA_BINARY_INSTALL_DIR:PATH="%{_bindir}" \
-DQCA_MAN_INSTALL_DIR:PATH="%{_mandir}" \
-DWITH_botan_PLUGIN=OFF
%if 0%{?qt5}
%cmake_build
%else
%qt6_build
%endif
%install
%if 0%{?qt5}
%cmake_install
%else
%qt6_install
%endif
%check
export LD_LIBRARY_PATH=%{buildroot}%{_libdir}:$LD_LIBRARY_PATH
%if 0%{?qt5}
export QT_PLUGIN_PATH=%{buildroot}%{_libqt5_plugindir}:%{_libqt5_plugindir}
%else
export QT_PLUGIN_PATH=%{buildroot}%{_qt6_pluginsdir}:%{_qt6_pluginsdir}
%endif
# The 'PGP' test fails randomly
%define _smp_mflags -j1
%ctest
%ldconfig_scriptlets -n libqca-%{flavor}-%{_soversion}
%files
%dir %{_plugindir}/crypto
%{_plugindir}/crypto/libqca-gcrypt.so
%{_plugindir}/crypto/libqca-gnupg.so
%{_plugindir}/crypto/libqca-logger.so
%{_plugindir}/crypto/libqca-ossl.so
%{_plugindir}/crypto/libqca-softstore.so
%files -n libqca-%{flavor}-%{_soversion}
%license COPYING
%doc README
%{_libdir}/libqca-%{flavor}.so.%{_soversion}
%{_libdir}/libqca-%{flavor}.so.%{version}
%files devel
%{_bindir}/mozcerts-%{flavor}
%{_bindir}/qcatool-%{flavor}
%{_includedir}/%{flavor}/Qca-%{flavor}/
%if 0%{?qt5}
%{_libdir}/%{flavor}/mkspecs/features/crypto.prf
%endif
%{_libdir}/cmake/Qca-%{flavor}/
%{_libdir}/libqca-%{flavor}.so
%if 0%{?qt5}
%{_libdir}/pkgconfig/qca2-%{flavor}.pc
%endif
%{_mandir}/man1/qcatool-%{flavor}.1%{?ext_man}
%files plugins
%{_plugindir}/crypto/libqca-cyrus-sasl.so
%{_plugindir}/crypto/libqca-nss.so
%if %{with pkcs11}
%{_plugindir}/crypto/libqca-pkcs11.so
%endif
%changelog