mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Gregory Price <gourry@gourry.net>
To: linux-efi@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, ardb@kernel.org, leitao@debian.org,
	usamaarif642@gmail.com,
	sathyanarayanan.kuppuswamy@linux.intel.com,
	ilias.apalodimas@linaro.org
Subject: [PATCH 6/6] libstub,tpm: do not ignore failure case when reading final event log
Date: Fri,  6 Sep 2024 16:27:45 -0400	[thread overview]
Message-ID: <20240906202745.11159-7-gourry@gourry.net> (raw)
In-Reply-To: <20240906202745.11159-1-gourry@gourry.net>

Current code fails to check for an error case when reading events from
final event log to calculate offsets.  Check the error case, report the
error, and break early because all subsequent calls will also fail.

Signed-off-by: Gregory Price <gourry@gourry.net>
---
 drivers/firmware/efi/libstub/tpm.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/firmware/efi/libstub/tpm.c b/drivers/firmware/efi/libstub/tpm.c
index 4f9f0e049a7a..c71b0d3e66d2 100644
--- a/drivers/firmware/efi/libstub/tpm.c
+++ b/drivers/firmware/efi/libstub/tpm.c
@@ -124,6 +124,10 @@ static void efi_retrieve_tcg2_eventlog(int version, efi_physical_addr_t log_loca
 			event_size = __calc_tpm2_event_size(header,
 						   (void *)(long)log_location,
 						   false);
+			if (!event_size) {
+				efi_err("Invalid TPM Final Event Log Entry\n");
+				break;
+			}
 			final_events_size += event_size;
 			i--;
 		}
-- 
2.43.0


  parent reply	other threads:[~2024-09-06 20:28 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-06 20:27 [PATCH 0/6] libstub,tpm: fix small bugs and improve error reporting Gregory Price
2024-09-06 20:27 ` [PATCH 1/6] tpm: fix signed/unsigned bug when checking event logs Gregory Price
2024-09-06 20:27 ` [PATCH 2/6] tpm: do not ignore memblock_reserve return value Gregory Price
2024-09-13  7:02   ` Ilias Apalodimas
2024-09-13 12:58     ` Gregory Price
2024-09-06 20:27 ` [PATCH 3/6] libstub,tpm: provide indication of failure when getting event log Gregory Price
2024-09-13  6:59   ` Ilias Apalodimas
2024-09-13 12:57     ` Gregory Price
2024-09-13 13:10       ` Ilias Apalodimas
2024-09-13 23:06         ` Gregory Price
2024-09-06 20:27 ` [PATCH 4/6] tpm: sanity check the log version before using it Gregory Price
2024-09-13  6:40   ` Ilias Apalodimas
2024-09-13 12:56     ` Gregory Price
2024-09-13 13:39       ` Ilias Apalodimas
2024-09-13 13:44         ` Ard Biesheuvel
2024-09-13 13:47           ` Ard Biesheuvel
2024-09-13 14:03             ` Gregory Price
2024-09-06 20:27 ` [PATCH 5/6] tpm: fix unsigned/signed mismatch errors related to __calc_tpm2_event_size Gregory Price
2024-09-06 20:27 ` Gregory Price [this message]
2024-09-13 15:25   ` [PATCH 6/6] libstub,tpm: do not ignore failure case when reading final event log Ard Biesheuvel
2024-09-13 15:29     ` Gregory Price
2024-09-13 15:59       ` Ard Biesheuvel
2024-09-13 17:36         ` Gregory Price

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240906202745.11159-7-gourry@gourry.net \
    --to=gourry@gourry.net \
    --cc=ardb@kernel.org \
    --cc=ilias.apalodimas@linaro.org \
    --cc=leitao@debian.org \
    --cc=linux-efi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sathyanarayanan.kuppuswamy@linux.intel.com \
    --cc=usamaarif642@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®