public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: app-crypt/tpm-emulator/files/, app-crypt/tpm-emulator/
@ 2018-09-11 15:03 Alon Bar-Lev
  0 siblings, 0 replies; 3+ messages in thread
From: Alon Bar-Lev @ 2018-09-11 15:03 UTC (permalink / raw
  To: gentoo-commits

commit:     18779e114fbfcb80dc83b228b0581dd75f855a7f
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 11 14:02:39 2018 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Tue Sep 11 15:03:35 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=18779e11

app-crypt/tpm-emulator: massive cleanup

Kernel module is optional now, no need to enforce it.

Fix libdir issue.

Support MTM emulator.

Properly enable/disable openssl.

Properly build kernel module.

Rewrite of init.d scripts.

Probably more.

Closes: https://bugs.gentoo.org/show_bug.cgi?id=640734
Bug: https://bugs.gentoo.org/show_bug.cgi?id=540384
Package-Manager: Portage-2.3.40, Repoman-2.3.9

 .../files/tpm-emulator-0.7.4-build.patch           |  69 ++++++++++++
 .../files/tpm-emulator-0.7.4-cmake.patch           | 120 +++++++++++++++++++++
 app-crypt/tpm-emulator/files/tpm-emulator.confd-r2 |   1 +
 app-crypt/tpm-emulator/files/tpm-emulator.initd-r2 |  46 ++++++++
 app-crypt/tpm-emulator/metadata.xml                |   3 +
 .../tpm-emulator/tpm-emulator-0.7.4-r2.ebuild      |  85 +++++++++++++++
 6 files changed, 324 insertions(+)

diff --git a/app-crypt/tpm-emulator/files/tpm-emulator-0.7.4-build.patch b/app-crypt/tpm-emulator/files/tpm-emulator-0.7.4-build.patch
index 7a299a15fbf..ada748f7129 100644
--- a/app-crypt/tpm-emulator/files/tpm-emulator-0.7.4-build.patch
+++ b/app-crypt/tpm-emulator/files/tpm-emulator-0.7.4-build.patch
@@ -29,3 +29,72 @@ index c362b56..4c49f54 100644
      debug("TPM_ChangeAuthAsymFinish(): newAuthLink value does not match.");
      return TPM_FAIL;
    }
+From 035af1df2b18afd695150c6f9e426133b775c0a1 Mon Sep 17 00:00:00 2001
+From: Florian Larysch <fl@n621.de>
+Date: Tue, 24 Oct 2017 19:33:00 +0200
+Subject: [PATCH] tpm_command_handler: fix switch fallthrough
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Compiling with a recent GCC fails as follows:
+
+  tpm-emulator/tpm/tpm_cmd_handler.c: In function ‘tpm_setup_rsp_auth’:
+  tpm-emulator/tpm/tpm_cmd_handler.c:3332:7: error: this statement may fall through [-Werror=implicit-fallthrough=]
+         tpm_hmac_final(&hmac, rsp->auth2->auth);
+         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+  tpm-emulator/tpm/tpm_cmd_handler.c:3333:5: note: here
+       case TPM_TAG_RSP_AUTH1_COMMAND:
+
+Looking at the code, this does indeed seem unintentional. Add a break
+state in the appropriate place.
+---
+ tpm/tpm_cmd_handler.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/tpm/tpm_cmd_handler.c b/tpm/tpm_cmd_handler.c
+index 288d1ce..5aea4e7 100644
+--- a/tpm/tpm_cmd_handler.c
++++ b/tpm/tpm_cmd_handler.c
+@@ -3330,6 +3330,7 @@ static void tpm_setup_rsp_auth(TPM_COMMAND_CODE ordinal, TPM_RESPONSE *rsp)
+                   sizeof(rsp->auth2->nonceOdd.nonce));
+       tpm_hmac_update(&hmac, (BYTE*)&rsp->auth2->continueAuthSession, 1);
+       tpm_hmac_final(&hmac, rsp->auth2->auth);
++      break;
+     case TPM_TAG_RSP_AUTH1_COMMAND:
+       tpm_hmac_init(&hmac, rsp->auth1->secret, sizeof(rsp->auth1->secret));
+       tpm_hmac_update(&hmac, rsp->auth1->digest, sizeof(rsp->auth1->digest));
+-- 
+2.16.4
+
+From 0f4579e913aeb3a893631a3caee420a0e9803683 Mon Sep 17 00:00:00 2001
+From: Peter Huewe <peterhuewe@gmx.de>
+Date: Mon, 26 Jun 2017 00:25:43 +0200
+Subject: [PATCH] Workaround wrong fallthrough case by returning TPM_FAIL
+
+The spec says that the number of verified PCRs should be returned - which it currently does not and breaks compilation with gcc7
+See #26
+Since this code is probably unused anyway, we now simply return TPM_FAIL until someone comes up with a solution.
+
+Spec:
+https://www.trustedcomputinggroup.org/wp-content/uploads/Revision_7.02-_29April2010-tcg-mobile-trusted-module-1.0.pdf
+---
+ mtm/mtm_capability.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/mtm/mtm_capability.c b/mtm/mtm_capability.c
+index a09b116..4046de5 100644
+--- a/mtm/mtm_capability.c
++++ b/mtm/mtm_capability.c
+@@ -87,6 +87,8 @@ static TPM_RESULT cap_mtm_permanent_data(UINT32 subCapSize, BYTE *subCap,
+         tpm_free(*resp);
+         return TPM_FAIL;
+       }
++      error("[TPM_CAP_MTM_PERMANENT_DATA] SubCap 2 not Implemented");
++      return TPM_FAIL; // TODO not implemented.
+ 
+     case 3:
+       return return_UINT32(respSize, resp,
+-- 
+2.16.4
+

diff --git a/app-crypt/tpm-emulator/files/tpm-emulator-0.7.4-cmake.patch b/app-crypt/tpm-emulator/files/tpm-emulator-0.7.4-cmake.patch
new file mode 100644
index 00000000000..7fd775139b2
--- /dev/null
+++ b/app-crypt/tpm-emulator/files/tpm-emulator-0.7.4-cmake.patch
@@ -0,0 +1,120 @@
+
+Pull request:
+https://github.com/PeterHuewe/tpm-emulator/pull/37
+
+
+From 694b7c24ac09e0ec1e54ab71eb9c82a8d4f41d33 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Tue, 11 Sep 2018 14:08:49 +0300
+Subject: [PATCH 1/3] build: use GNUInstallDirs to allow override install
+ directories
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ CMakeLists.txt           | 1 +
+ tddl/CMakeLists.txt      | 6 +++---
+ tpmd/unix/CMakeLists.txt | 2 +-
+ 3 files changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f362298..d047ce3 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,6 +6,7 @@
+ project(TPM_Emulator C)
+ 
+ cmake_minimum_required(VERSION 2.4)
++include(GNUInstallDirs)
+ set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS true)
+ if(COMMAND cmake_policy)
+ cmake_policy(SET CMP0003 NEW)
+diff --git a/tddl/CMakeLists.txt b/tddl/CMakeLists.txt
+index 0be3281..6cc63b3 100644
+--- a/tddl/CMakeLists.txt
++++ b/tddl/CMakeLists.txt
+@@ -15,9 +15,9 @@ elseif(WIN32)
+   set_target_properties(tddl PROPERTIES PREFIX "")
+ endif()
+ 
+-install(TARGETS tddl DESTINATION lib)
+-install(TARGETS tddl_static DESTINATION lib)
+-install(FILES "tddl.h" DESTINATION include)
++install(TARGETS tddl DESTINATION ${CMAKE_INSTALL_LIBDIR})
++install(TARGETS tddl_static DESTINATION ${CMAKE_INSTALL_LIBDIR})
++install(FILES "tddl.h" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+ 
+ include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+ add_executable(test_tddl test_tddl.c)
+diff --git a/tpmd/unix/CMakeLists.txt b/tpmd/unix/CMakeLists.txt
+index 40c436b..c5c394a 100644
+--- a/tpmd/unix/CMakeLists.txt
++++ b/tpmd/unix/CMakeLists.txt
+@@ -13,5 +13,5 @@ target_link_libraries(tpmd mtm tpm tpm_crypto)
+ else()
+ target_link_libraries(tpmd tpm tpm_crypto)
+ endif()
+-install(TARGETS tpmd RUNTIME DESTINATION bin)
++install(TARGETS tpmd RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ 
+-- 
+2.16.4
+
+From 89bf733368dda265040cf44ff8be69a15ab66712 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Tue, 11 Sep 2018 16:36:12 +0300
+Subject: [PATCH 2/3] build: do not build mtm unless enabled
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ CMakeLists.txt | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index d047ce3..b8b68a3 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -67,7 +67,9 @@ include_directories(${CMAKE_BINARY_DIR})
+ 
+ # add internal libraries
+ add_subdirectory(tpm)
+-add_subdirectory(mtm)
++if(MTM_EMULATOR)
++    add_subdirectory(mtm)
++endif()
+ add_subdirectory(crypto)
+ 
+ # add TDDL
+-- 
+2.16.4
+
+From 24bbf683de0b0b24f0ec81d093c03e1f6a9570f2 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Tue, 11 Sep 2018 14:20:19 +0300
+Subject: [PATCH 3/3] build: support BUILD_DEV to disable device build
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ CMakeLists.txt | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b8b68a3..9ae6562 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -76,7 +76,12 @@ add_subdirectory(crypto)
+ add_subdirectory(tddl)
+ 
+ # add kernel modules
+-add_subdirectory(tpmd_dev)
++if(NOT DEFINED BUILD_DEV)
++    set(BUILD_DEV ON)
++endif()
++if(BUILD_DEV)
++    add_subdirectory(tpmd_dev)
++endif()
+ 
+ # add executables
+ add_subdirectory(tpmd)
+-- 
+2.16.4
+

diff --git a/app-crypt/tpm-emulator/files/tpm-emulator.confd-r2 b/app-crypt/tpm-emulator/files/tpm-emulator.confd-r2
new file mode 100644
index 00000000000..985fa4e774c
--- /dev/null
+++ b/app-crypt/tpm-emulator/files/tpm-emulator.confd-r2
@@ -0,0 +1 @@
+STARTUP_MODE="save"

diff --git a/app-crypt/tpm-emulator/files/tpm-emulator.initd-r2 b/app-crypt/tpm-emulator/files/tpm-emulator.initd-r2
new file mode 100644
index 00000000000..abfbef900d0
--- /dev/null
+++ b/app-crypt/tpm-emulator/files/tpm-emulator.initd-r2
@@ -0,0 +1,46 @@
+#!/sbin/openrc-run
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+
+STARTUP_MODE="${STARTUP_MODE:-save}";
+
+extra_started_commands="clear save deactivated"
+description="TPM emulator"
+command="/usr/bin/tpmd"
+my_command_args="-f"
+command_background=1
+command_user="tss:tss"
+pidfile="/var/run/${RC_SVCNAME}.pid"
+
+depend() {
+	use logger
+	after coldplug
+}
+
+start_pre() {
+	checkpath -d -m 0775 -o tss /var/run/tpm
+	service_set_value STARTUP_MODE "${STARTUP_MODE}"
+}
+
+start() {
+	command_args="${my_command_args} $(service_get_value STARTUP_MODE)"
+	default_start
+}
+
+_doit() {
+	service_set_value STARTUP_MODE "$1"
+	stop
+	start
+}
+
+clear() {
+	_doit clear
+}
+
+save() {
+	_doit save
+}
+
+deactivated() {
+	_doit deactivated
+}

diff --git a/app-crypt/tpm-emulator/metadata.xml b/app-crypt/tpm-emulator/metadata.xml
index e3da9602970..401103a0692 100644
--- a/app-crypt/tpm-emulator/metadata.xml
+++ b/app-crypt/tpm-emulator/metadata.xml
@@ -8,4 +8,7 @@
 	<upstream>
 		<remote-id type="sourceforge">tpm-emulator</remote-id>
 	</upstream>
+	<use>
+		<flag name="mtm-emulator">Build the MTM emulator</flag>
+	</use>
 </pkgmetadata>

diff --git a/app-crypt/tpm-emulator/tpm-emulator-0.7.4-r2.ebuild b/app-crypt/tpm-emulator/tpm-emulator-0.7.4-r2.ebuild
new file mode 100644
index 00000000000..9c7003c115f
--- /dev/null
+++ b/app-crypt/tpm-emulator/tpm-emulator-0.7.4-r2.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+MODULES_OPTIONAL_USE="modules"
+inherit flag-o-matic user linux-mod cmake-utils udev
+
+MY_P=${P/-/_}
+DESCRIPTION="Emulator driver for tpm"
+HOMEPAGE="https://sourceforge.net/projects/tpm-emulator.berlios/"
+SRC_URI="mirror://sourceforge/tpm-emulator/${MY_P}.tar.gz"
+LICENSE="GPL-2"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="libressl mtm-emulator ssl"
+RDEPEND="ssl? (
+		!libressl? ( dev-libs/openssl:0= )
+		libressl? ( dev-libs/libressl:0= )
+	)"
+DEPEND="${RDEPEND}
+	!ssl? ( dev-libs/gmp )"
+
+S=${WORKDIR}/${P/-/_}
+
+PATCHES=(
+	"${FILESDIR}/${P}-build.patch"
+	"${FILESDIR}/${P}-cmake.patch"
+)
+
+pkg_setup() {
+	enewgroup tss
+	enewuser tss -1 -1 /var/lib/tpm tss
+	if use modules; then
+		CONFIG_CHECK="MODULES"
+		MODULE_NAMES="tpmd_dev(extra:tpmd_dev/linux:)"
+		BUILD_TARGETS="all tpmd_dev.rules"
+		BUILD_PARAMS="KERNEL_BUILD=${KERNEL_DIR}"
+		linux-mod_pkg_setup
+	fi
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DUSE_OPENSSL=$(usex ssl ON OFF)
+		-DMTM_EMULATOR=$(usex mtm-emulator ON OFF)
+		-DBUILD_DEV=OFF
+	)
+	cmake-utils_src_configure
+
+	use modules && ln -s "${BUILD_DIR}/config.h" tpmd_dev/linux
+}
+
+src_compile() {
+	cmake-utils_src_compile
+	use modules && linux-mod_src_compile
+}
+
+src_install() {
+	cmake-utils_src_install
+	if use modules; then
+		linux-mod_src_install
+		udev_newrules "tpmd_dev/linux/tpmd_dev.rules" 60-tpmd_dev.rules
+	fi
+
+	newinitd "${FILESDIR}/${PN}.initd-r2" "${PN}"
+	newconfd "${FILESDIR}/${PN}.confd-r2" "${PN}"
+
+	keepdir /var/log/tpm
+	fowners tss:tss /var/log/tpm
+}
+
+pkg_postinst() {
+	if use modules; then
+		linux-mod_pkg_postinst
+
+		ewarn ""
+		ewarn "The new init.d script does not load the tpmd_dev any more as it is optional."
+		ewarn "If you use the tpmd_dev, please load it explicitly in /etc/conf.d/modules"
+		ewarn ""
+	fi
+
+	einfo "tpmd socket is located at /var/run/tpm/tpmd_socket:0"
+}


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-crypt/tpm-emulator/files/, app-crypt/tpm-emulator/
@ 2021-01-20 10:13 David Seifert
  0 siblings, 0 replies; 3+ messages in thread
From: David Seifert @ 2021-01-20 10:13 UTC (permalink / raw
  To: gentoo-commits

commit:     f216135855afdeff7e1f106470b846e253936573
Author:     Jakov Smolic <jakov.smolic <AT> sartura <DOT> hr>
AuthorDate: Wed Jan 20 10:12:45 2021 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Wed Jan 20 10:12:45 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f2161358

app-crypt/tpm-emulator: Port to EAPI 7 and GLEP 81

* Fix build with gcc-10
* Disable static-libs

Closes: https://github.com/gentoo/gentoo/pull/19113
Closes: https://bugs.gentoo.org/726492
Closes: https://bugs.gentoo.org/707256
Signed-off-by: Jakov Smolic <jakov.smolic <AT> sartura.hr>
Signed-off-by: David Seifert <soap <AT> gentoo.org>

 .../files/tpm-emulator-0.7.5-fno-common.patch      | 48 ++++++++++++++++++++++
 .../files/tpm-emulator-0.7.5-static-libs.patch     | 26 ++++++++++++
 ....7.5-r2.ebuild => tpm-emulator-0.7.5-r3.ebuild} | 32 +++++++++------
 3 files changed, 93 insertions(+), 13 deletions(-)

diff --git a/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-fno-common.patch b/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-fno-common.patch
new file mode 100644
index 00000000000..88bfb33433c
--- /dev/null
+++ b/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-fno-common.patch
@@ -0,0 +1,48 @@
+https://bugs.gentoo.org/707256
+--- a/tpm/tpm_emulator_extern.h
++++ b/tpm/tpm_emulator_extern.h
+@@ -29,7 +29,7 @@ enum {
+   TPM_LOG_ERROR
+ };
+ 
+-void (*tpm_log)(int priority, const char *fmt, ...);
++extern void (*tpm_log)(int priority, const char *fmt, ...);
+ 
+ #if defined(_WIN32) || defined(_WIN64)
+ #define __BFILE__ ((strrchr(__FILE__, '\\') ? : __FILE__ - 1) + 1)
+@@ -44,27 +44,27 @@ void (*tpm_log)(int priority, const char *fmt, ...);
+ #define error(fmt, ...) tpm_log(TPM_LOG_ERROR, "%s:%d: Error: " fmt "\n", \
+                                 __BFILE__, __LINE__, ## __VA_ARGS__)
+ /* initialization */
+-int (*tpm_extern_init)(void);
+-void (*tpm_extern_release)(void);
++extern int (*tpm_extern_init)(void);
++extern void (*tpm_extern_release)(void);
+ 
+ /* memory allocation */
+ 
+-void* (*tpm_malloc)(size_t size);
++extern void* (*tpm_malloc)(size_t size);
+ 
+-void (*tpm_free)(/*const*/ void *ptr);
++extern void (*tpm_free)(/*const*/ void *ptr);
+ 
+ /* random numbers */
+ 
+-void (*tpm_get_extern_random_bytes)(void *buf, size_t nbytes);
++extern void (*tpm_get_extern_random_bytes)(void *buf, size_t nbytes);
+ 
+ /* usec since last call */
+ 
+-uint64_t (*tpm_get_ticks)(void);
++extern uint64_t (*tpm_get_ticks)(void);
+ 
+ /* file handling */
+ 
+-int (*tpm_write_to_storage)(uint8_t *data, size_t data_length);
+-int (*tpm_read_from_storage)(uint8_t **data, size_t *data_length);
++extern int (*tpm_write_to_storage)(uint8_t *data, size_t data_length);
++extern int (*tpm_read_from_storage)(uint8_t **data, size_t *data_length);
+ 
+ #endif /* _TPM_EMULATOR_EXTERN_H_ */
+ 

diff --git a/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-static-libs.patch b/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-static-libs.patch
new file mode 100644
index 00000000000..845229bd767
--- /dev/null
+++ b/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-static-libs.patch
@@ -0,0 +1,26 @@
+https://bugs.gentoo.org/726492
+--- a/tddl/CMakeLists.txt
++++ b/tddl/CMakeLists.txt
+@@ -5,21 +5,18 @@
+ 
+ set(tddl-tpm-emulator_SRCS "tddl.c" "tddl-tpm-emulator.h")
+ add_library(tddl-tpm-emulator SHARED ${tddl-tpm-emulator_SRCS})
+-add_library(tddl-tpm-emulator_static STATIC ${tddl-tpm-emulator_SRCS})
+ if(UNIX)
+   set_target_properties(tddl-tpm-emulator PROPERTIES SOVERSION "1.2"
+     VERSION "1.2.${${PROJECT_NAME}_VERSION_MAJOR}.${${PROJECT_NAME}_VERSION_MINOR}")
+-  set_target_properties(tddl-tpm-emulator_static PROPERTIES OUTPUT_NAME tddl-tpm-emulator)
+ elseif(WIN32)
+   set_target_properties(tddl-tpm-emulator PROPERTIES OUTPUT_NAME ifxtpm)
+   set_target_properties(tddl-tpm-emulator PROPERTIES PREFIX "")
+ endif()
+ 
+ install(TARGETS tddl-tpm-emulator DESTINATION ${CMAKE_INSTALL_LIBDIR})
+-install(TARGETS tddl-tpm-emulator_static DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ install(FILES "tddl-tpm-emulator.h" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+ 
+ include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+ add_executable(test_tddl test_tddl.c)
+-target_link_libraries(test_tddl tddl-tpm-emulator_static)
++target_link_libraries(test_tddl tddl-tpm-emulator)
+ 

diff --git a/app-crypt/tpm-emulator/tpm-emulator-0.7.5-r2.ebuild b/app-crypt/tpm-emulator/tpm-emulator-0.7.5-r3.ebuild
similarity index 78%
rename from app-crypt/tpm-emulator/tpm-emulator-0.7.5-r2.ebuild
rename to app-crypt/tpm-emulator/tpm-emulator-0.7.5-r3.ebuild
index 9323c1f7edc..38a0d018270 100644
--- a/app-crypt/tpm-emulator/tpm-emulator-0.7.5-r2.ebuild
+++ b/app-crypt/tpm-emulator/tpm-emulator-0.7.5-r3.ebuild
@@ -1,30 +1,34 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=6
+EAPI=7
+
 MODULES_OPTIONAL_USE="modules"
-inherit user linux-mod cmake-utils udev
+inherit cmake linux-mod udev
 
 MY_P=${P/-/_}
 DESCRIPTION="Emulator driver for tpm"
 HOMEPAGE="https://github.com/PeterHuewe/tpm-emulator"
 SRC_URI="https://github.com/PeterHuewe/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="GPL-2"
 
+LICENSE="GPL-2"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-
 IUSE="mtm-emulator"
-RDEPEND="dev-libs/gmp:="
+
+RDEPEND="
+	acct-group/tpm
+	acct-user/tpm
+	dev-libs/gmp:="
 DEPEND="${RDEPEND}"
 
 PATCHES=(
-	"${FILESDIR}/${P}-build.patch"
+	"${FILESDIR}"/${P}-build.patch
+	"${FILESDIR}"/${P}-fno-common.patch
+	"${FILESDIR}"/${P}-static-libs.patch
 )
 
 pkg_setup() {
-	enewgroup tss
-	enewuser tss -1 -1 /var/lib/tpm tss
 	if use modules; then
 		CONFIG_CHECK="MODULES"
 		MODULE_NAMES="tpmd_dev(extra:tpmd_dev/linux:)"
@@ -39,18 +43,20 @@ src_configure() {
 		-DMTM_EMULATOR=$(usex mtm-emulator ON OFF)
 		-DBUILD_DEV=OFF
 	)
-	cmake-utils_src_configure
+	cmake_src_configure
 
-	use modules && ln -s "${BUILD_DIR}/config.h" tpmd_dev/linux
+	if use modules; then
+		ln -s "${BUILD_DIR}/config.h" tpmd_dev/linux || die
+	fi
 }
 
 src_compile() {
-	cmake-utils_src_compile
+	cmake_src_compile
 	use modules && linux-mod_src_compile
 }
 
 src_install() {
-	cmake-utils_src_install
+	cmake_src_install
 	if use modules; then
 		linux-mod_src_install
 		udev_newrules "tpmd_dev/linux/tpmd_dev.rules" 60-tpmd_dev.rules


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-crypt/tpm-emulator/files/, app-crypt/tpm-emulator/
@ 2023-07-18 16:51 Mike Pagano
  0 siblings, 0 replies; 3+ messages in thread
From: Mike Pagano @ 2023-07-18 16:51 UTC (permalink / raw
  To: gentoo-commits

commit:     f803931e1ee3b76d3234f3704f9b660eeb0339b5
Author:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 18 16:50:10 2023 +0000
Commit:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
CommitDate: Tue Jul 18 16:51:25 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f803931e

app-crypt/tpm-emulator: Remove last rited packaged

Closes: https://bugs.gentoo.org/768960
Closes: https://bugs.gentoo.org/794547

Signed-off-by: Mike Pagano <mpagano <AT> gentoo.org>

 app-crypt/tpm-emulator/Manifest                    |  1 -
 .../files/tpm-emulator-0.7.5-build.patch           | 33 ---------
 .../files/tpm-emulator-0.7.5-fno-common.patch      | 48 -------------
 .../files/tpm-emulator-0.7.5-static-libs.patch     | 26 -------
 app-crypt/tpm-emulator/files/tpm-emulator.confd    |  1 -
 app-crypt/tpm-emulator/files/tpm-emulator.initd    | 46 ------------
 app-crypt/tpm-emulator/metadata.xml                | 12 ----
 .../tpm-emulator/tpm-emulator-0.7.5-r3.ebuild      | 83 ----------------------
 8 files changed, 250 deletions(-)

diff --git a/app-crypt/tpm-emulator/Manifest b/app-crypt/tpm-emulator/Manifest
deleted file mode 100644
index 695694052456..000000000000
--- a/app-crypt/tpm-emulator/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tpm-emulator-0.7.5.tar.gz 222341 BLAKE2B c6dc7494800f4c6d1f5e622c6a47fdd5487e0f2cbc34173d9039d6eb5fd7541dd2c1f514efbf220c605424059844e18650b31ee9934eda6626427b915fd6bc53 SHA512 24c16ec36ca92c484d6e8dfa53c8ca00dbc5b58d78d7166041db1e9ae277d763f0fc0a6b0cbd7e62fcf4671f6ad2d8df1213256be0a4200b79b6ee61ab73b2ef

diff --git a/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-build.patch b/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-build.patch
deleted file mode 100644
index 3f96bdd3e68f..000000000000
--- a/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-build.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 78f018a79243b8aa3c2a8e8aa87245c58c731278 Mon Sep 17 00:00:00 2001
-From: Alon Bar-Lev <alon.barlev@gmail.com>
-Date: Sun, 16 Sep 2018 13:29:59 +0300
-Subject: [PATCH] tpmd_dev: fix strncpy bound
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-tpmd_dev/linux/tpmd_dev.c:88:3: error: ‘strncpy’ specified bound 108 equals destination size [-Werror=stringop-truncation]
-
-Bug: https://github.com/PeterHuewe/tpm-emulator/pull/43
-
-Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
----
- tpmd_dev/linux/tpmd_dev.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tpmd_dev/linux/tpmd_dev.c b/tpmd_dev/linux/tpmd_dev.c
-index 2b24bd7..72583f4 100644
---- a/tpmd_dev/linux/tpmd_dev.c
-+++ b/tpmd_dev/linux/tpmd_dev.c
-@@ -85,7 +85,7 @@ static int tpmd_connect(char *socket_name)
-     return res;
-   }
-   addr.sun_family = AF_UNIX;
--  strncpy(addr.sun_path, socket_name, sizeof(addr.sun_path));
-+  strncpy(addr.sun_path, socket_name, sizeof(addr.sun_path)-1);
-   res = tpmd_sock->ops->connect(tpmd_sock,
-     (struct sockaddr*)&addr, sizeof(struct sockaddr_un), 0);
-   if (res != 0) {
--- 
-2.16.4
-

diff --git a/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-fno-common.patch b/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-fno-common.patch
deleted file mode 100644
index 88bfb33433c1..000000000000
--- a/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-fno-common.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-https://bugs.gentoo.org/707256
---- a/tpm/tpm_emulator_extern.h
-+++ b/tpm/tpm_emulator_extern.h
-@@ -29,7 +29,7 @@ enum {
-   TPM_LOG_ERROR
- };
- 
--void (*tpm_log)(int priority, const char *fmt, ...);
-+extern void (*tpm_log)(int priority, const char *fmt, ...);
- 
- #if defined(_WIN32) || defined(_WIN64)
- #define __BFILE__ ((strrchr(__FILE__, '\\') ? : __FILE__ - 1) + 1)
-@@ -44,27 +44,27 @@ void (*tpm_log)(int priority, const char *fmt, ...);
- #define error(fmt, ...) tpm_log(TPM_LOG_ERROR, "%s:%d: Error: " fmt "\n", \
-                                 __BFILE__, __LINE__, ## __VA_ARGS__)
- /* initialization */
--int (*tpm_extern_init)(void);
--void (*tpm_extern_release)(void);
-+extern int (*tpm_extern_init)(void);
-+extern void (*tpm_extern_release)(void);
- 
- /* memory allocation */
- 
--void* (*tpm_malloc)(size_t size);
-+extern void* (*tpm_malloc)(size_t size);
- 
--void (*tpm_free)(/*const*/ void *ptr);
-+extern void (*tpm_free)(/*const*/ void *ptr);
- 
- /* random numbers */
- 
--void (*tpm_get_extern_random_bytes)(void *buf, size_t nbytes);
-+extern void (*tpm_get_extern_random_bytes)(void *buf, size_t nbytes);
- 
- /* usec since last call */
- 
--uint64_t (*tpm_get_ticks)(void);
-+extern uint64_t (*tpm_get_ticks)(void);
- 
- /* file handling */
- 
--int (*tpm_write_to_storage)(uint8_t *data, size_t data_length);
--int (*tpm_read_from_storage)(uint8_t **data, size_t *data_length);
-+extern int (*tpm_write_to_storage)(uint8_t *data, size_t data_length);
-+extern int (*tpm_read_from_storage)(uint8_t **data, size_t *data_length);
- 
- #endif /* _TPM_EMULATOR_EXTERN_H_ */
- 

diff --git a/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-static-libs.patch b/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-static-libs.patch
deleted file mode 100644
index 845229bd7670..000000000000
--- a/app-crypt/tpm-emulator/files/tpm-emulator-0.7.5-static-libs.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-https://bugs.gentoo.org/726492
---- a/tddl/CMakeLists.txt
-+++ b/tddl/CMakeLists.txt
-@@ -5,21 +5,18 @@
- 
- set(tddl-tpm-emulator_SRCS "tddl.c" "tddl-tpm-emulator.h")
- add_library(tddl-tpm-emulator SHARED ${tddl-tpm-emulator_SRCS})
--add_library(tddl-tpm-emulator_static STATIC ${tddl-tpm-emulator_SRCS})
- if(UNIX)
-   set_target_properties(tddl-tpm-emulator PROPERTIES SOVERSION "1.2"
-     VERSION "1.2.${${PROJECT_NAME}_VERSION_MAJOR}.${${PROJECT_NAME}_VERSION_MINOR}")
--  set_target_properties(tddl-tpm-emulator_static PROPERTIES OUTPUT_NAME tddl-tpm-emulator)
- elseif(WIN32)
-   set_target_properties(tddl-tpm-emulator PROPERTIES OUTPUT_NAME ifxtpm)
-   set_target_properties(tddl-tpm-emulator PROPERTIES PREFIX "")
- endif()
- 
- install(TARGETS tddl-tpm-emulator DESTINATION ${CMAKE_INSTALL_LIBDIR})
--install(TARGETS tddl-tpm-emulator_static DESTINATION ${CMAKE_INSTALL_LIBDIR})
- install(FILES "tddl-tpm-emulator.h" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
- 
- include_directories(${CMAKE_CURRENT_SOURCE_DIR})
- add_executable(test_tddl test_tddl.c)
--target_link_libraries(test_tddl tddl-tpm-emulator_static)
-+target_link_libraries(test_tddl tddl-tpm-emulator)
- 

diff --git a/app-crypt/tpm-emulator/files/tpm-emulator.confd b/app-crypt/tpm-emulator/files/tpm-emulator.confd
deleted file mode 100644
index 985fa4e774ca..000000000000
--- a/app-crypt/tpm-emulator/files/tpm-emulator.confd
+++ /dev/null
@@ -1 +0,0 @@
-STARTUP_MODE="save"

diff --git a/app-crypt/tpm-emulator/files/tpm-emulator.initd b/app-crypt/tpm-emulator/files/tpm-emulator.initd
deleted file mode 100644
index abfbef900d00..000000000000
--- a/app-crypt/tpm-emulator/files/tpm-emulator.initd
+++ /dev/null
@@ -1,46 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License, v2 or later
-
-STARTUP_MODE="${STARTUP_MODE:-save}";
-
-extra_started_commands="clear save deactivated"
-description="TPM emulator"
-command="/usr/bin/tpmd"
-my_command_args="-f"
-command_background=1
-command_user="tss:tss"
-pidfile="/var/run/${RC_SVCNAME}.pid"
-
-depend() {
-	use logger
-	after coldplug
-}
-
-start_pre() {
-	checkpath -d -m 0775 -o tss /var/run/tpm
-	service_set_value STARTUP_MODE "${STARTUP_MODE}"
-}
-
-start() {
-	command_args="${my_command_args} $(service_get_value STARTUP_MODE)"
-	default_start
-}
-
-_doit() {
-	service_set_value STARTUP_MODE "$1"
-	stop
-	start
-}
-
-clear() {
-	_doit clear
-}
-
-save() {
-	_doit save
-}
-
-deactivated() {
-	_doit deactivated
-}

diff --git a/app-crypt/tpm-emulator/metadata.xml b/app-crypt/tpm-emulator/metadata.xml
deleted file mode 100644
index fdd2723e0b5e..000000000000
--- a/app-crypt/tpm-emulator/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-	<!-- maintainer-needed -->
-	<use>
-		<flag name="mtm-emulator">Build the MTM emulator</flag>
-	</use>
-	<upstream>
-		<remote-id type="sourceforge">tpm-emulator</remote-id>
-		<remote-id type="github">PeterHuewe/tpm-emulator</remote-id>
-	</upstream>
-</pkgmetadata>

diff --git a/app-crypt/tpm-emulator/tpm-emulator-0.7.5-r3.ebuild b/app-crypt/tpm-emulator/tpm-emulator-0.7.5-r3.ebuild
deleted file mode 100644
index 38a0d0182708..000000000000
--- a/app-crypt/tpm-emulator/tpm-emulator-0.7.5-r3.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MODULES_OPTIONAL_USE="modules"
-inherit cmake linux-mod udev
-
-MY_P=${P/-/_}
-DESCRIPTION="Emulator driver for tpm"
-HOMEPAGE="https://github.com/PeterHuewe/tpm-emulator"
-SRC_URI="https://github.com/PeterHuewe/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="mtm-emulator"
-
-RDEPEND="
-	acct-group/tpm
-	acct-user/tpm
-	dev-libs/gmp:="
-DEPEND="${RDEPEND}"
-
-PATCHES=(
-	"${FILESDIR}"/${P}-build.patch
-	"${FILESDIR}"/${P}-fno-common.patch
-	"${FILESDIR}"/${P}-static-libs.patch
-)
-
-pkg_setup() {
-	if use modules; then
-		CONFIG_CHECK="MODULES"
-		MODULE_NAMES="tpmd_dev(extra:tpmd_dev/linux:)"
-		BUILD_TARGETS="all tpmd_dev.rules"
-		BUILD_PARAMS="KERNEL_BUILD=${KERNEL_DIR}"
-		linux-mod_pkg_setup
-	fi
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DMTM_EMULATOR=$(usex mtm-emulator ON OFF)
-		-DBUILD_DEV=OFF
-	)
-	cmake_src_configure
-
-	if use modules; then
-		ln -s "${BUILD_DIR}/config.h" tpmd_dev/linux || die
-	fi
-}
-
-src_compile() {
-	cmake_src_compile
-	use modules && linux-mod_src_compile
-}
-
-src_install() {
-	cmake_src_install
-	if use modules; then
-		linux-mod_src_install
-		udev_newrules "tpmd_dev/linux/tpmd_dev.rules" 60-tpmd_dev.rules
-	fi
-
-	newinitd "${FILESDIR}/${PN}.initd" "${PN}"
-	newconfd "${FILESDIR}/${PN}.confd" "${PN}"
-
-	keepdir /var/log/tpm
-	fowners tss:tss /var/log/tpm
-}
-
-pkg_postinst() {
-	if use modules; then
-		linux-mod_pkg_postinst
-
-		ewarn ""
-		ewarn "The new init.d script does not load the tpmd_dev any more as it is optional."
-		ewarn "If you use the tpmd_dev, please load it explicitly in /etc/conf.d/modules"
-		ewarn ""
-	fi
-
-	einfo "tpmd socket is located at /var/run/tpm/tpmd_socket:0"
-}


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-07-18 16:51 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-18 16:51 [gentoo-commits] repo/gentoo:master commit in: app-crypt/tpm-emulator/files/, app-crypt/tpm-emulator/ Mike Pagano
  -- strict thread matches above, loose matches on Subject: below --
2021-01-20 10:13 David Seifert
2018-09-11 15:03 Alon Bar-Lev

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox