From 5884481e2a2613ae5f3b9c1dab0671acd88ca961 Mon Sep 17 00:00:00 2001 From: Heinrich Schuchardt Date: Thu, 11 Apr 2024 00:50:43 +0200 Subject: [PATCH] efi_loader: sanitize efi_tcg2_final_events_table definition The length of the variable name typically is not 1. Neither the length of the variable name nor the size of the appended data is known in the include. * Define the size of element variable_name as variable. * Remove the unusable element variable_data. Addresses-Coverity-ID: 467400 Out-of-bounds read Signed-off-by: Heinrich Schuchardt Reviewed-by: Ilias Apalodimas --- include/efi_tcg2.h | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/include/efi_tcg2.h b/include/efi_tcg2.h index b21c5cb3dd..a75b5a35b6 100644 --- a/include/efi_tcg2.h +++ b/include/efi_tcg2.h @@ -150,16 +150,14 @@ struct efi_tcg2_final_events_table { * the variable. * @variable_data_length: The size of the variable data. * @unicode_name: The CHAR16 unicode name of the variable - * without NULL-terminator. - * @variable_data: The data parameter of the efi variable - * in the GetVariable() API. + * without NULL-terminator followed by data. */ struct efi_tcg2_uefi_variable_data { efi_guid_t variable_name; u64 unicode_name_length; u64 variable_data_length; - u16 unicode_name[1]; - u8 variable_data[1]; + u16 unicode_name[]; + // u8 variable_data[]; }; /** -- 2.39.5