summaryrefslogtreecommitdiff
path: root/app-crypt/tpm2-tools
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-01-20 20:08:51 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-01-20 20:08:51 +0000
commitd3419aa304ff2564036398be5e8ed4bdeaeaa007 (patch)
tree40ed2d4f8dd5f80c5647645dc91bb22deb7c4d8a /app-crypt/tpm2-tools
parent6aa0d33a65c735f3148967b62316c2e71f43589a (diff)
gentoo auto-resync : 20:01:2024 - 20:08:51
Diffstat (limited to 'app-crypt/tpm2-tools')
-rw-r--r--app-crypt/tpm2-tools/Manifest5
-rw-r--r--app-crypt/tpm2-tools/files/tpm2-tools-5.6-Makefile-am-Dont-require-pandoc-for-tests.patch15
-rw-r--r--app-crypt/tpm2-tools/files/tpm2-tools-5.6-test-eventlog-fix-check-eventlog.sh-if-efivar.h-exis.patch123
-rw-r--r--app-crypt/tpm2-tools/tpm2-tools-5.6.ebuild78
4 files changed, 221 insertions, 0 deletions
diff --git a/app-crypt/tpm2-tools/Manifest b/app-crypt/tpm2-tools/Manifest
index 74b5c34d4393..584d0168d050 100644
--- a/app-crypt/tpm2-tools/Manifest
+++ b/app-crypt/tpm2-tools/Manifest
@@ -1,3 +1,8 @@
+AUX tpm2-tools-5.6-Makefile-am-Dont-require-pandoc-for-tests.patch 408 BLAKE2B a0d042d7a1beeba1b671c130179f416aa53c1d59a66787fde69bbf9c9a6ce1d8e8aa4f074e2c2304160bcd3725287e78671c62d9a5ef348fb172bbad17e4fd8a SHA512 c9e3035a413540a373fb8de4bb5f0f18347c836ed338bc2d2dacbdfc0274aa5087786b894ca2d484038dd90499e97618039ac88743fb5e466e4b42fa522dc99e
+AUX tpm2-tools-5.6-test-eventlog-fix-check-eventlog.sh-if-efivar.h-exis.patch 4136 BLAKE2B c7531d8425ac1df9610c8371a3a01a4cf68c224ca5bf2d8d5f68187c6013ab16d8c16ad261c53319caae04769421398bbbaa0710d95b202c43f62722b631f1d6 SHA512 8f3c38417d546beb8cf7e3410a5d91af59893eb7b08ee0060c5c5363f316490ae904a456009a2643e95e4db3fefc85795884fc91c2fb492e8911d92c97e6aba5
DIST tpm2-tools-5.5.tar.gz 1241390 BLAKE2B 2225f9e0835988351f84ed06f914616e25fd65bacaa93b51d0bb04185314efb9a6f60eb3539b250f54b2c2ba590f1b76594df3e625e45c8d37e38d13371bea26 SHA512 24f72a3e9840d531d900e96771a863baae1c71a76fcad0fda8020dff06acd8e3b65b86401ace21f034766403caf9ae97ce710ff6013bb7ed25657a6ecf325470
+DIST tpm2-tools-5.6-tpm2_eventlog-Create-raw-and-pretty-print-format-for.patch.xz 47916 BLAKE2B 1bbc84f58ad46507417c89be1b4ce2450fb33cf3abe8f080c23890d96be85379f135ef1dbf4b580e1a386fa6d5ebc4fbaab351b5238bbf1011bb97b0f49a847b SHA512 3db0daa39a8dc756d7cb25e3673149dc3eeafd7410f2c6537464431b501e3704a886d9b7a9acd71440d6d419649dd471fd6f9247d593c89a30b05774a8d1b3de
+DIST tpm2-tools-5.6.tar.gz 1266731 BLAKE2B fe88722c26d62128cd6dfbdd8ef2568656a75fe27b1443fed28387d0db1f50b7d0651819d34dfa98acde785b4cfb4e7c11420b110bb5333ed2bb6b67cdd4fc70 SHA512 14216f29ed3ecca5fbe356ed3744c8b6b25a62ff11b2aed596d11101328c8bfd29a02f6ca5a218f9a4477a5e9648c50f0ae96e71de0b4ff5ea1f98ebeeb73cd7
EBUILD tpm2-tools-5.5.ebuild 1643 BLAKE2B 5029ad3299b8db9d0005866660db88884833619fade7131a6b4b7b42f1ce62a2fe8eb94ad175b889bd2d9c2b6d4bf5d91d2455bd0ea0a9ad8e0c59565c73b1e2 SHA512 195dc492373400638ec7baa5c191e7eeea646523f296ff16422ae56d7347e5e6fdea12d199e8d32bc700790f9a206b5e84b0e52348f67b4ad681e6889cf1703e
+EBUILD tpm2-tools-5.6.ebuild 2097 BLAKE2B b20ad171d741a4bc8064cceca1714363d358c159dae897cc3d988e5c1f2dd1bdc5e732a9e3649b156b0dd1dc44f4b13da3153033b0a7be42d2bdfc469aa95654 SHA512 97649e27d64614efffa45574067dd9aa2ae7f3ed29d606980afd1df5b7369c107a4b74a4c05ab3edaed772dc33757bd36db6b67a7785bb7aea10036ff6c713f5
MISC metadata.xml 560 BLAKE2B fe8daaba2a7586247537f8ed7b92769676b20f2c1377f7bb582dff49e06cf3f9beba4f79e28f10ea76d67d089eb152b060b091414dd9b47c5694ca153211421f SHA512 a744fcc50c7e44b1939190150404aee9054eab8e921e6f63cafa58dc80be5f20692632509de85399b6a9633701da72fd951e8bcfbe9e5177f315fa1dcbcc9ee5
diff --git a/app-crypt/tpm2-tools/files/tpm2-tools-5.6-Makefile-am-Dont-require-pandoc-for-tests.patch b/app-crypt/tpm2-tools/files/tpm2-tools-5.6-Makefile-am-Dont-require-pandoc-for-tests.patch
new file mode 100644
index 000000000000..7b6fc8821940
--- /dev/null
+++ b/app-crypt/tpm2-tools/files/tpm2-tools-5.6-Makefile-am-Dont-require-pandoc-for-tests.patch
@@ -0,0 +1,15 @@
+diff --git a/Makefile.am b/Makefile.am
+index 627983ca..d32f109c 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -659,10 +659,3 @@ else
+ endif
+
+ check: prepare-check
+-
+-if !HAVE_PANDOC
+-# If pandoc is not enabled, we want to complain that you need pandoc for make dist,
+-# so hook the target and complain.
+- @(>&2 echo "You do not have pandoc, a requirement for the distribution of manpages")
+- @exit 1
+-endif
diff --git a/app-crypt/tpm2-tools/files/tpm2-tools-5.6-test-eventlog-fix-check-eventlog.sh-if-efivar.h-exis.patch b/app-crypt/tpm2-tools/files/tpm2-tools-5.6-test-eventlog-fix-check-eventlog.sh-if-efivar.h-exis.patch
new file mode 100644
index 000000000000..f24cf50aff5c
--- /dev/null
+++ b/app-crypt/tpm2-tools/files/tpm2-tools-5.6-test-eventlog-fix-check-eventlog.sh-if-efivar.h-exis.patch
@@ -0,0 +1,123 @@
+From 9cd74df24dbeee81b408e12ac10a98a088008d07 Mon Sep 17 00:00:00 2001
+From: Juergen Repp <juergen_repp@web.de>
+Date: Mon, 20 Nov 2023 13:55:36 +0100
+Subject: [PATCH] test eventlog: fix check eventlog.sh if efivar.h exists
+
+If efivar.h exist a pretty print function for the DevicePath
+is executed. Therefore two yaml test files are needed for
+the bin test file uefiservices.
+Fixes #3302.
+
+Signed-off-by: Juergen Repp <juergen_repp@web.de>
+---
+ Makefile.am | 13 ++++++
+ configure.ac | 3 ++
+ .../event-uefiservices.bin.yaml.pretty | 45 +++++++++++++++++++
+ ...n.yaml => event-uefiservices.bin.yaml.raw} | 0
+ 4 files changed, 61 insertions(+)
+ create mode 100644 test/integration/fixtures/event-uefiservices.bin.yaml.pretty
+ rename test/integration/fixtures/{event-uefiservices.bin.yaml => event-uefiservices.bin.yaml.raw} (100%)
+
+diff --git a/Makefile.am b/Makefile.am
+index 413345cd..ef76dca8 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -352,6 +352,7 @@ TEST_EXTENSIONS = .sh
+
+ check-hook:
+ rm -rf .lock_file
++ rm -f $(abs_top_srcdir)/test/integration/fixtures/event-uefiservices.bin.yaml
+
+ EXTRA_DIST_IGNORE = \
+ .gitignore \
+@@ -647,6 +648,18 @@ dist-hook:
+ for f in $(EXTRA_DIST_IGNORE); do \
+ rm -rf `find $(distdir) -name $$f`; \
+ done;
++
++prepare-check:
++if HAVE_EFIVAR_H
++ cp $(abs_top_srcdir)/test/integration/fixtures/event-uefiservices.bin.yaml.pretty \
++ $(abs_top_srcdir)/test/integration/fixtures/event-uefiservices.bin.yaml
++else
++ cp $(abs_top_srcdir)/test/integration/fixtures/event-uefiservices.bin.yaml.raw \
++ $(abs_top_srcdir)/test/integration/fixtures/event-uefiservices.bin.yaml
++endif
++
++check: prepare-check
++
+ if !HAVE_PANDOC
+ # If pandoc is not enabled, we want to complain that you need pandoc for make dist,
+ # so hook the target and complain.
+diff --git a/configure.ac b/configure.ac
+index 362ae0aa..54224048 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -97,6 +97,9 @@ AS_IF([test "x$with_efivar" == "xauto"],
+ [PKG_CHECK_MODULES([EFIVAR], [efivar], [AC_CHECK_HEADERS([efivar/efivar.h])])],
+ )
+
++AC_CHECK_HEADERS([efivar/efivar.h],[efivar_h=yes ], [efivar = no ])
++AM_CONDITIONAL([HAVE_EFIVAR_H], [test "$efivar_h" = yes])
++
+ # backwards compat with older pkg-config
+ # - pull in AC_DEFUN from pkg.m4
+ m4_ifndef([PKG_CHECK_VAR], [
+diff --git a/test/integration/fixtures/event-uefiservices.bin.yaml.pretty b/test/integration/fixtures/event-uefiservices.bin.yaml.pretty
+new file mode 100644
+index 00000000..f0819f70
+--- /dev/null
++++ b/test/integration/fixtures/event-uefiservices.bin.yaml.pretty
+@@ -0,0 +1,45 @@
++---
++version: 1
++events:
++- EventNum: 0
++ PCRIndex: 0
++ EventType: EV_NO_ACTION
++ Digest: "0000000000000000000000000000000000000000"
++ EventSize: 37
++ SpecID:
++ - Signature: Spec ID Event03
++ platformClass: 0
++ specVersionMinor: 0
++ specVersionMajor: 2
++ specErrata: 0
++ uintnSize: 2
++ numberOfAlgorithms: 2
++ Algorithms:
++ - Algorithm[0]:
++ algorithmId: sha1
++ digestSize: 20
++ - Algorithm[1]:
++ algorithmId: sha256
++ digestSize: 32
++ vendorInfoSize: 0
++- EventNum: 1
++ PCRIndex: 2
++ EventType: EV_EFI_BOOT_SERVICES_DRIVER
++ DigestCount: 2
++ Digests:
++ - AlgorithmId: sha1
++ Digest: "855685b4dbd4b67d50e0594571055054cfe2b1e9"
++ - AlgorithmId: sha256
++ Digest: "dd8576b4ff346c19c56c3e4f97ce55c5afa646f9c669be0a7cdd05057a0ecdf3"
++ EventSize: 84
++ Event:
++ ImageLocationInMemory: 0x7dcf6018
++ ImageLengthInMemory: 171464
++ ImageLinkTimeAddress: 0x0
++ LengthOfDevicePath: 52
++ DevicePath1: 'PciRoot(0x0)/Pci(0x2,0x0)/Pci(0x0,0x0)/Offset(0x12600,0x3c3ff)'
++pcrs:
++ sha1:
++ 2 : 0x5b5f4d5c31664f01670a98a5796a36473671befc
++ sha256:
++ 2 : 0x35fcf9d737c52c971f7c74058d36937dbd7824177fa0f1de3eba3934fcb83b9d
+diff --git a/test/integration/fixtures/event-uefiservices.bin.yaml b/test/integration/fixtures/event-uefiservices.bin.yaml.raw
+similarity index 100%
+rename from test/integration/fixtures/event-uefiservices.bin.yaml
+rename to test/integration/fixtures/event-uefiservices.bin.yaml.raw
+--
+2.41.0
+
diff --git a/app-crypt/tpm2-tools/tpm2-tools-5.6.ebuild b/app-crypt/tpm2-tools/tpm2-tools-5.6.ebuild
new file mode 100644
index 000000000000..3eb1badf0637
--- /dev/null
+++ b/app-crypt/tpm2-tools/tpm2-tools-5.6.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit autotools bash-completion-r1 flag-o-matic python-any-r1
+
+DESCRIPTION="Tools for the TPM 2.0 TSS"
+HOMEPAGE="https://github.com/tpm2-software/tpm2-tools"
+SRC_URI="https://github.com/tpm2-software/tpm2-tools/releases/download/${PV}/${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/tpm2-tools-5.6-tpm2_eventlog-Create-raw-and-pretty-print-format-for.patch.xz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE="+fapi test"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND=">=app-crypt/tpm2-tss-3.0.1:=[fapi?]
+ dev-libs/openssl:=
+ net-misc/curl
+ sys-libs/efivar:="
+DEPEND="${RDEPEND}
+ test? (
+ app-crypt/swtpm
+ app-crypt/tpm2-abrmd
+ dev-util/cmocka
+ )"
+BDEPEND="virtual/pkgconfig
+ dev-build/autoconf-archive
+ test? (
+ app-editors/vim-core
+ dev-tcltk/expect
+ $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]')
+ )
+ ${PYTHON_DEPS}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.6-test-eventlog-fix-check-eventlog.sh-if-efivar.h-exis.patch"
+ "${WORKDIR}/${PN}-5.6-tpm2_eventlog-Create-raw-and-pretty-print-format-for.patch"
+ "${FILESDIR}/${PN}-5.6-Makefile-am-Dont-require-pandoc-for-tests.patch"
+)
+
+python_check_deps() {
+ python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ # tests fail with LTO enabbled. See bug 865275 and 865277
+ filter-lto
+ econf \
+ $(use_enable fapi) \
+ $(use_enable test unit) \
+ --with-bashcompdir=$(get_bashcompdir) \
+ --enable-hardening
+}
+
+src_install() {
+ default
+ mv "${ED}"/$(get_bashcompdir)/tpm2{_completion.bash,} || die
+ local utils=( "${ED}"/usr/bin/tpm2_* )
+ utils=("${utils[@]##*/}")
+ # these utiltites don't have bash completions
+ local nobashcomp=( tpm2_encodeobject tpm2_getpolicydigest tpm2_sessionconfig )
+ mapfile -d $'\0' -t utils < <(printf '%s\0' "${utils[@]}" | grep -Ezvw "${nobashcomp[@]/#/-e}")
+ bashcomp_alias tpm2 "${utils[@]}"
+}