From f8e6bcb6e7c350eb7be887dfdb5aad43cd6373af Mon Sep 17 00:00:00 2001 From: Bret Barkelew Date: Sat, 10 Apr 2021 02:25:11 +0800 Subject: [PATCH] MdeModulePkg: Initialize temp variable in VarCheckPolicyLib DumpVariablePolicy() will return EFI_INVALID_PARAMETER if the Buffer pointer is NULL and the indirect Size is anything but 0. Since this TempSize was not being initialized it is very likely that this sequence would not return the total buffer size as expected. Bugzilla: https://bugzilla.tianocore.org/show_bug.cgi?id=3310 Cc: Jian J Wang Cc: Hao A Wu Signed-off-by: Bret Barkelew Reviewed-by: Hao A Wu Reviewed-by: Liming Gao --- MdeModulePkg/Library/VarCheckPolicyLib/VarCheckPolicyLib.c | 1 + 1 file changed, 1 insertion(+) diff --git a/MdeModulePkg/Library/VarCheckPolicyLib/VarCheckPolicyLib.c b/MdeModulePkg/Library/VarCheckPolicyLib/VarCheckPolicyLib.c index 14e1904e96..e50edb4ffc 100644 --- a/MdeModulePkg/Library/VarCheckPolicyLib/VarCheckPolicyLib.c +++ b/MdeModulePkg/Library/VarCheckPolicyLib/VarCheckPolicyLib.c @@ -216,6 +216,7 @@ VarCheckPolicyLibMmiHandler ( DumpParamsOut->TotalSize = 0; DumpParamsOut->PageSize = 0; DumpParamsOut->HasMore = FALSE; + TempSize = 0; SubCommandStatus = DumpVariablePolicy (NULL, &TempSize); if (SubCommandStatus == EFI_BUFFER_TOO_SMALL && TempSize > 0) { mCurrentPaginationCommand = VAR_CHECK_POLICY_COMMAND_DUMP; -- 2.39.2