[meta-security][PATCH 5/7] tpm2-pkcs11: fix build failure
Scott Murray <[email protected]>
| Newsgroups | org.yoctoproject.lists.yocto-patches |
|---|---|
| Message-ID | <d975a55a6594cabed377a8f61a41f867a7e02405.1776283733.git.scott.murray@konsulko.com> |
From: Peter Marko <[email protected]> Use patch submitted upstream to fix build error: | src/lib/tpm.c: In function ‘tpm_unseal’: | src/lib/tpm.c:1040:16: error: incompatible types when returning type ‘_Bool’ but ‘twist’ {aka ‘const char *’} was expected | 1040 | return false; | | ^~~~~ Signed-off-by: Peter Marko <[email protected]> Signed-off-by: Scott Murray <[email protected]> --- ...eturn-NULL-for-twist-on-auth-failure.patch | 28 +++++++++++++++++++ .../tpm2-pkcs11/tpm2-pkcs11_1.9.1.bb | 1 + 2 files changed, 29 insertions(+) create mode 100644 meta-tpm/recipes-tpm2/tpm2-pkcs11/files/0001-src-lib-tpm-return-NULL-for-twist-on-auth-failure.patch diff --git a/meta-tpm/recipes-tpm2/tpm2-pkcs11/files/0001-src-lib-tpm-return-NULL-for-twist-on-auth-failure.patch b/meta-tpm/recipes-tpm2/tpm2-pkcs11/files/0001-src-lib-tpm-return-NULL-for-twist-on-auth-failure.patch new file mode 100644 index 0000000..2992b11 --- /dev/null +++ b/meta-tpm/recipes-tpm2/tpm2-pkcs11/files/0001-src-lib-tpm-return-NULL-for-twist-on-auth-failure.patch @@ -0,0 +1,28 @@ +From 0db779aecaae93633be963ffb8fdb097c85cc166 Mon Sep 17 00:00:00 2001 +From: Peter Marko <[email protected]> +Date: Thu, 9 Apr 2026 00:00:00 +0000 +Subject: [PATCH] src/lib/tpm: return NULL for twist on auth failure + +`tpm_unseal` returns `twist` (a const char pointer alias). Returning +`false` in the error path is a type mismatch that fails with stricter +compiler settings. Return `NULL` instead. + +Upstream-Status: Submitted [https://github.com/tpm2-software/tpm2-pkcs11/pull/923] +Signed-off-by: Peter Marko <[email protected]> +--- + src/lib/tpm.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/lib/tpm.c b/src/lib/tpm.c +index 5fff5d5..c51d984 100644 +--- a/src/lib/tpm.c ++++ b/src/lib/tpm.c +@@ -1037,7 +1037,7 @@ twist tpm_unseal(tpm_ctx *ctx, uint32_t handle, twist objauth) { + + bool result = set_esys_auth(ctx->esys_ctx, handle, objauth); + if (!result) { +- return false; ++ return NULL; + } + + TPM2B_SENSITIVE_DATA *unsealed_data = NULL; diff --git a/meta-tpm/recipes-tpm2/tpm2-pkcs11/tpm2-pkcs11_1.9.1.bb b/meta-tpm/recipes-tpm2/tpm2-pkcs11/tpm2-pkcs11_1.9.1.bb index 331dc4f..762b82f 100644 --- a/meta-tpm/recipes-tpm2/tpm2-pkcs11/tpm2-pkcs11_1.9.1.bb +++ b/meta-tpm/recipes-tpm2/tpm2-pkcs11/tpm2-pkcs11_1.9.1.bb @@ -7,6 +7,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=0fc19f620a102768d6dbd1e7166e78ab" DEPENDS = "autoconf-archive pkgconfig sqlite3 openssl libtss2-dev tpm2-tools libyaml p11-kit python3-setuptools-native" SRC_URI = "https://github.com/tpm2-software/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.gz" +SRC_URI += "file://0001-src-lib-tpm-return-NULL-for-twist-on-auth-failure.patch" SRC_URI[sha256sum] = "ce24aa5ec2471545576e892b6f64fd873a424371bbf9be4ca3a0e689ea11c9b7" -- 2.53.0