forked from pool/tpm2.0-tools
Matthias Gerstner
b000df49d3
fixed AES key in the context of the tpm2_import command. Fixes CVE-2021-3565 (bsc#1186490). - drop fix_pie_linking.patch: now contained in upstream tarball - drop fix_warnings.patch: now contained in upstream tarball - update to upstream version 5.1: - Minimum tpm2-tss version dependency bumped to 3.1.0 - Minimum tpm2-abrmd version dependency bumped to 2.4.0 - tss2: - Support in tools for PolicyRef inclusion in policy search per latest TSS. - Support to use TPM objects protected by a policy with PolicySigned. - Enable backward compatibility to old Fapi callback API. - Fix PCR selection for tss2 quote. - Support policy signed policies by implementing Fapi_SetSignCB. - Command/ response parameter support for auditing and pHash policies: - lib/tpm2_util.c: Add method to determine hashing alg for cp/rphash - Add support to calculate rphash for tpm2_create, tpm2_activatecredential, tpm2_certify, tpm2_certifycreation, tpm2_changeauth, tpm2_changeeps, tpm2_changepps, tpm2_nvdefine, tpm2_nvextend, tpm2_unseal - Add support to calculate cphash for tpm2_changeeps, tpm2_changepps. - Session-support: - tpm2_sessionconfig: Add tool to display and configure session attributes. - tpm2_getrandom: Fix— session input was hardcoded for audit-only - tpm2_startauthsession: Add option to specify the bind object and its authorization value. - tpm2_startauthsession: support for bounded-only session. - tpm2_startauthsession: support for salted-only session. - tpm2_startauthsession: add option to specify an hmac session type. - Add support for specifying non-authorization sessions for audit and parameter encryption for tpm2_getrandom, tpm2_create, tpm2_nvextend, OBS-URL: https://build.opensuse.org/package/show/security/tpm2.0-tools?expand=0&rev=70
99 lines
3.3 KiB
RPMSpec
99 lines
3.3 KiB
RPMSpec
#
|
|
# spec file for package tpm2.0-tools
|
|
#
|
|
# Copyright (c) 2021 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/
|
|
#
|
|
|
|
|
|
Name: tpm2.0-tools
|
|
Version: 5.1
|
|
Release: 0
|
|
Summary: Trusted Platform Module (TPM) 2.0 administration tools
|
|
License: BSD-3-Clause
|
|
Group: Productivity/Security
|
|
URL: https://github.com/tpm2-software/tpm2-tools/releases
|
|
Source0: https://github.com/tpm2-software/tpm2-tools/releases/download/%{version}/tpm2-tools-%{version}.tar.gz
|
|
Patch0: fix_bogus_warning.patch
|
|
Patch1: 0001-tpm2_import-fix-fixed-AES-key-CVE-2021-3565.patch
|
|
BuildRequires: autoconf-archive
|
|
BuildRequires: automake
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: libcurl-devel
|
|
BuildRequires: libopenssl-devel
|
|
BuildRequires: libtool
|
|
BuildRequires: libuuid-devel
|
|
%if 0%{?is_opensuse}
|
|
# releases prior to 3.0.4 required pandoc for building the man pages. On SLE
|
|
# we don't have pandoc and it requires a complete haskell stack so adding it
|
|
# is out of the question just for man pages.
|
|
#
|
|
# since 3.0.4 the man pages are shipped with the distribution tarball and we
|
|
# don't need to generate them any more. On openSUSE we can still keep this
|
|
# dependency for having fresh builds of the man pages (if that helps
|
|
# anything?).
|
|
#
|
|
# Update: In the 3.1.0 a required patch is still missing and the man pages
|
|
# won't be installed. they're shipped, though. so if pandoc isn't installed we
|
|
# need to install them explicitly.
|
|
BuildRequires: pandoc
|
|
%endif
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: tpm2-0-tss-devel
|
|
BuildRequires: tpm2.0-abrmd-devel
|
|
BuildRequires: unzip
|
|
Recommends: tpm2.0-abrmd
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
|
|
%description
|
|
Trusted Computing is a set of specifications published by the Trusted
|
|
Computing Group (TCG). The Trusted Platform Module (TPM) is the
|
|
hardware component for Trusted Computing. The tpm2.0-tools package
|
|
provides tools for enablement and configuration of the TPM 2.0 and
|
|
associated interfaces.
|
|
|
|
%prep
|
|
%setup -q -n tpm2-tools-%{version}
|
|
%patch0 -p1
|
|
%patch1 -p1
|
|
|
|
%build
|
|
# TODO: remove autoreconf once fix_pie_linking patch is no longer needed
|
|
# until then we need to repair the version specification which configure.ac
|
|
# wants to read from GIT which isn't there.
|
|
sed -i 's/m4_esyscmd_s([^)]\+)/%{version}/g' configure.ac
|
|
autoreconf -fvi
|
|
%configure --disable-static
|
|
make %{?_smp_mflags}
|
|
|
|
%check
|
|
make %{?_smp_mflags} check
|
|
|
|
%install
|
|
make DESTDIR=%{buildroot} install %{?_smp_mflags}
|
|
find %{buildroot} -type f -name "*.la" -delete -print
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%doc README.md doc/CHANGELOG.md
|
|
%license doc/LICENSE
|
|
/usr/bin/tpm2*
|
|
/usr/bin/tss2*
|
|
%{_mandir}/man1/tpm2*
|
|
%{_mandir}/man1/tss2*
|
|
%dir %{_datadir}/bash-completion
|
|
%dir %{_datadir}/bash-completion/completions
|
|
%{_datadir}/bash-completion/completions/*
|
|
|
|
%changelog
|