app-crypt/tpm-emulator: fix incorrect memcpy
authorAlon Bar-Lev <alonbl@gentoo.org>
Sun, 9 Sep 2018 08:14:32 +0000 (11:14 +0300)
committerAlon Bar-Lev <alonbl@gentoo.org>
Sun, 9 Sep 2018 08:15:58 +0000 (11:15 +0300)
Closes: https://bugs.gentoo.org/show_bug.cgi?id=664198
Package-Manager: Portage-2.3.40, Repoman-2.3.9

app-crypt/tpm-emulator/files/tpm-emulator-0.7.4-build.patch [new file with mode: 0644]
app-crypt/tpm-emulator/tpm-emulator-0.7.4-r1.ebuild

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
new file mode 100644 (file)
index 0000000..7a299a1
--- /dev/null
@@ -0,0 +1,31 @@
+From ca99fe81c8aee204c1a8b7f3ca264130e54d9418 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sat, 1 Sep 2018 21:32:07 +0300
+Subject: [PATCH] tpm: tpm_deprecated.c fix compare
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+tpm/tpm_deprecated.c:437:7: error: ‘__builtin_memcmp_eq’ reading 20 bytes from a region of size 8 [-Werror=stringop-overflow=]
+   if (memcmp(&b1, &newAuthLink, sizeof(TPM_HMAC))) {
+       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+cc1: all warnings being treated as errors
+
+Bug: https://bugs.gentoo.org/show_bug.cgi?id=664198
+---
+ tpm/tpm_deprecated.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tpm/tpm_deprecated.c b/tpm/tpm_deprecated.c
+index c362b56..4c49f54 100644
+--- a/tpm/tpm_deprecated.c
++++ b/tpm/tpm_deprecated.c
+@@ -434,7 +434,7 @@ TPM_RESULT TPM_ChangeAuthAsymFinish(TPM_KEY_HANDLE parentHandle,
+   tpm_hmac_final(&hmac_ctx, b1.digest);
+   /* 6. The TPM SHALL compare b1 with newAuthLink. The TPM SHALL
+         indicate a failure if the values do not match. */
+-  if (memcmp(&b1, &newAuthLink, sizeof(TPM_HMAC))) {
++  if (memcmp(&b1, newAuthLink, sizeof(TPM_HMAC))) {
+     debug("TPM_ChangeAuthAsymFinish(): newAuthLink value does not match.");
+     return TPM_FAIL;
+   }
index 0192de92e2f6f118ccff22e0352b9b8ceca11006..6fc770390fcf1486414499647a1a3ac0511466d9 100644 (file)
@@ -24,6 +24,10 @@ DEPEND="${RDEPEND}
 
 S=${WORKDIR}/${P/-/_}
 
+PATCHES=(
+       "${FILESDIR}/${P}-build.patch"
+)
+
 pkg_setup() {
        enewgroup tss
        enewuser tss -1 -1 /var/lib/tpm tss