From 248c60a672faacd5e3adb4df5204ff9d97e55b3d Mon Sep 17 00:00:00 2001 From: Richard Spiegel Date: Tue, 7 Aug 2018 09:24:14 -0700 Subject: [PATCH] security/tpm: Report tpm_unmarshal_response warning In procedure tpm_unmarshal_response(), variable "rc" is used early to decide if it should return NULL. Later however, the code proceeds to its end even if one subroutine reports error. If "rc" is not 0, report that there was a partial error in the procedure. BUG=b:112253891 TEST=Build and boot grunt. Change-Id: I7575bc75104fd97f138224aa57561e68f6548e58 Signed-off-by: Richard Spiegel Reviewed-on: https://review.coreboot.org/27931 Reviewed-by: Martin Roth Reviewed-by: Marshall Dawson Reviewed-by: Philipp Deppenwiese Tested-by: build bot (Jenkins) --- src/security/tpm/tss/tcg-2.0/tss_marshaling.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/security/tpm/tss/tcg-2.0/tss_marshaling.c b/src/security/tpm/tss/tcg-2.0/tss_marshaling.c index 86f2231c3f..94bfbcfb10 100644 --- a/src/security/tpm/tss/tcg-2.0/tss_marshaling.c +++ b/src/security/tpm/tss/tcg-2.0/tss_marshaling.c @@ -554,6 +554,9 @@ struct tpm2_response *tpm_unmarshal_response(TPM_CC command, struct ibuf *ib) command, ibuf_remaining(ib)); return NULL; } + if (rc) + printk(BIOS_WARNING, "Warning: %s had one or more failures.\n", + __func__); /* The entire message have been parsed. */ return tpm2_resp;