From f9650d8997505796883d0ef61bd8ad2a87c2b36e Mon Sep 17 00:00:00 2001 From: Christopher Clark Date: Tue, 31 Jul 2018 12:35:44 -0700 Subject: tpm-emulator: apply patch to fix memcmp defect found by gcc | tpm_emulator-0.7.4/tpm/tpm_deprecated.c:437:7: | error: 'memcmp' reading 20 bytes from a region of size 8 | [-Werror=stringop-overflow=] | if (memcmp(&b1, &newAuthLink, sizeof(TPM_HMAC))) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Apply patch from Xen: vtpm_TPM_ChangeAuthAsymFinish.patch Signed-off-by: Christopher Clark Signed-off-by: Bruce Ashfield --- .../xen/files/vtpm_TPM_ChangeAuthAsymFinish.patch | 28 ++++++++++++++++++++++ recipes-extended/xen/tpm-emulator_0.7.4.bb | 1 + 2 files changed, 29 insertions(+) create mode 100644 recipes-extended/xen/files/vtpm_TPM_ChangeAuthAsymFinish.patch diff --git a/recipes-extended/xen/files/vtpm_TPM_ChangeAuthAsymFinish.patch b/recipes-extended/xen/files/vtpm_TPM_ChangeAuthAsymFinish.patch new file mode 100644 index 00000000..aefca284 --- /dev/null +++ b/recipes-extended/xen/files/vtpm_TPM_ChangeAuthAsymFinish.patch @@ -0,0 +1,28 @@ +Patch derived from below Xen changeset. +Signed-off-by: Christopher Clark + +commit 22bf5be3237cb482a2ffd772ffd20ce37285eebf +Author: Olaf Hering +Date: Mon Jun 18 14:55:36 2018 +0200 + +stubdom/vtpm: fix memcmp in TPM_ChangeAuthAsymFinish + +gcc8 spotted this error: +error: 'memcmp' reading 20 bytes from a region of size 8 [-Werror=stringop-overflow=] + +Signed-off-by: Olaf Hering +Reviewed-by: Samuel Thibault + +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; + } diff --git a/recipes-extended/xen/tpm-emulator_0.7.4.bb b/recipes-extended/xen/tpm-emulator_0.7.4.bb index f6269297..96a40905 100644 --- a/recipes-extended/xen/tpm-emulator_0.7.4.bb +++ b/recipes-extended/xen/tpm-emulator_0.7.4.bb @@ -16,6 +16,7 @@ SRC_URI = "\ file://vtpm-deepquote-anyloc.patch \ file://vtpm-cmake-Wextra.patch \ file://vtpm-implicit-fallthrough.patch \ + file://vtpm_TPM_ChangeAuthAsymFinish.patch \ " SRC_URI[tpm-emulator.md5sum] = "e26becb8a6a2b6695f6b3e8097593db8" SRC_URI[tpm-emulator.sha256sum] = "4e48ea0d83dd9441cc1af04ab18cd6c961b9fa54d5cbf2c2feee038988dea459" -- cgit v1.2.3-54-g00ecf