EFI_SIGNATURE_LIST *ListWalker;\r
EFI_SIGNATURE_LIST *NewCertList;\r
EFI_SIGNATURE_DATA *DataWalker;\r
- CHAR16 *VariableName;\r
+ CHAR16 VariableName[BUFFER_MAX_SIZE];\r
UINT32 VariableAttr;\r
UINTN VariableDataSize;\r
UINTN RemainingSize;\r
UINT8 *NewVariableData;\r
\r
Status = EFI_SUCCESS;\r
- VariableName = NULL;\r
VariableAttr = 0;\r
VariableDataSize = 0;\r
ListIndex = 0;\r
VariableData = NULL;\r
NewVariableData = NULL;\r
\r
- VariableName = AllocateZeroPool (100);\r
- if (VariableName == NULL) {\r
- Status = EFI_OUT_OF_RESOURCES;\r
- goto ON_EXIT;\r
- }\r
-\r
if (PrivateData->VariableName == Variable_DB) {\r
- UnicodeSPrint (VariableName, 100, EFI_IMAGE_SECURITY_DATABASE);\r
+ UnicodeSPrint (VariableName, sizeof (VariableName), EFI_IMAGE_SECURITY_DATABASE);\r
} else if (PrivateData->VariableName == Variable_DBX) {\r
- UnicodeSPrint (VariableName, 100, EFI_IMAGE_SECURITY_DATABASE1);\r
+ UnicodeSPrint (VariableName, sizeof (VariableName), EFI_IMAGE_SECURITY_DATABASE1);\r
} else if (PrivateData->VariableName == Variable_DBT) {\r
- UnicodeSPrint (VariableName, 100, EFI_IMAGE_SECURITY_DATABASE2);\r
+ UnicodeSPrint (VariableName, sizeof (VariableName), EFI_IMAGE_SECURITY_DATABASE2);\r
} else {\r
goto ON_EXIT;\r
}\r
}\r
\r
ON_EXIT:\r
- SECUREBOOT_FREE_NON_NULL (VariableName);\r
SECUREBOOT_FREE_NON_NULL (VariableData);\r
SECUREBOOT_FREE_NON_NULL (NewVariableData);\r
\r
UINTN RemainingSize;\r
UINT16 Index;\r
UINT8 *VariableData;\r
- CHAR16 *VariableName;\r
- CHAR16 *NameBuffer;\r
- CHAR16 *HelpBuffer;\r
+ CHAR16 VariableName[BUFFER_MAX_SIZE];\r
+ CHAR16 NameBuffer[BUFFER_MAX_SIZE];\r
+ CHAR16 HelpBuffer[BUFFER_MAX_SIZE];\r
\r
Status = EFI_SUCCESS;\r
StartOpCodeHandle = NULL;\r
EndGotoHandle = NULL;\r
Index = 0;\r
VariableData = NULL;\r
- VariableName = NULL;\r
- NameBuffer = NULL;\r
- HelpBuffer = NULL;\r
\r
//\r
// Initialize the container for dynamic opcodes.\r
EndGoto->ExtendOpCode = EFI_IFR_EXTEND_OP_LABEL;\r
EndGoto->Number = LABEL_END;\r
\r
- VariableName = AllocateZeroPool (100);\r
- if (VariableName == NULL) {\r
- Status = EFI_OUT_OF_RESOURCES;\r
- goto ON_EXIT;\r
- }\r
-\r
if (PrivateData->VariableName == Variable_DB) {\r
- UnicodeSPrint (VariableName, 100, EFI_IMAGE_SECURITY_DATABASE);\r
+ UnicodeSPrint (VariableName, sizeof (VariableName), EFI_IMAGE_SECURITY_DATABASE);\r
DstFormId = FORMID_SECURE_BOOT_DB_OPTION_FORM;\r
} else if (PrivateData->VariableName == Variable_DBX) {\r
- UnicodeSPrint (VariableName, 100, EFI_IMAGE_SECURITY_DATABASE1);\r
+ UnicodeSPrint (VariableName, sizeof (VariableName), EFI_IMAGE_SECURITY_DATABASE1);\r
DstFormId = FORMID_SECURE_BOOT_DBX_OPTION_FORM;\r
} else if (PrivateData->VariableName == Variable_DBT) {\r
- UnicodeSPrint (VariableName, 100, EFI_IMAGE_SECURITY_DATABASE2);\r
+ UnicodeSPrint (VariableName, sizeof (VariableName), EFI_IMAGE_SECURITY_DATABASE2);\r
DstFormId = FORMID_SECURE_BOOT_DBT_OPTION_FORM;\r
} else {\r
goto ON_EXIT;\r
goto ON_EXIT;\r
}\r
\r
- NameBuffer = AllocateZeroPool (100);\r
- if (NameBuffer == NULL) {\r
- Status = EFI_OUT_OF_RESOURCES;\r
- goto ON_EXIT;\r
- }\r
-\r
- HelpBuffer = AllocateZeroPool (100);\r
- if (HelpBuffer == NULL) {\r
- Status = EFI_OUT_OF_RESOURCES;\r
- goto ON_EXIT;\r
- }\r
-\r
RemainingSize = DataSize;\r
ListWalker = (EFI_SIGNATURE_LIST *)VariableData;\r
while ((RemainingSize > 0) && (RemainingSize >= ListWalker->SignatureListSize)) {\r
ListType = STRING_TOKEN (STR_LIST_TYPE_UNKNOWN);\r
}\r
\r
+ ZeroMem (NameBuffer, sizeof (NameBuffer));\r
UnicodeSPrint (NameBuffer,\r
- 100,\r
+ sizeof (NameBuffer),\r
HiiGetString (PrivateData->HiiHandle, STRING_TOKEN (STR_SIGNATURE_LIST_NAME_FORMAT), NULL),\r
Index + 1\r
);\r
+\r
+ ZeroMem (HelpBuffer, sizeof (HelpBuffer));\r
UnicodeSPrint (HelpBuffer,\r
- 100,\r
+ sizeof (HelpBuffer),\r
HiiGetString (PrivateData->HiiHandle, STRING_TOKEN (STR_SIGNATURE_LIST_HELP_FORMAT), NULL),\r
HiiGetString (PrivateData->HiiHandle, ListType, NULL),\r
SIGNATURE_DATA_COUNTS (ListWalker)\r
QuestionIdBase + Index++\r
);\r
\r
- ZeroMem (NameBuffer, 100);\r
- ZeroMem (HelpBuffer, 100);\r
-\r
RemainingSize -= ListWalker->SignatureListSize;\r
ListWalker = (EFI_SIGNATURE_LIST *)((UINT8 *)ListWalker + ListWalker->SignatureListSize);\r
}\r
SECUREBOOT_FREE_NON_OPCODE (StartGotoHandle);\r
SECUREBOOT_FREE_NON_OPCODE (EndGotoHandle);\r
\r
- SECUREBOOT_FREE_NON_NULL (VariableName);\r
SECUREBOOT_FREE_NON_NULL (VariableData);\r
- SECUREBOOT_FREE_NON_NULL (NameBuffer);\r
- SECUREBOOT_FREE_NON_NULL (HelpBuffer);\r
\r
PrivateData->ListCount = Index;\r
\r
UINTN DataSize;\r
UINTN HelpInfoIndex;\r
UINTN TotalSize;\r
- CHAR16 *GuidString;\r
+ CHAR16 GuidString[BUFFER_MAX_SIZE];\r
+ CHAR16 TimeString[BUFFER_MAX_SIZE];\r
CHAR16 *DataString;\r
- CHAR16 *TimeString;\r
CHAR16 *HelpInfoString;\r
BOOLEAN IsCert;\r
\r
Status = EFI_SUCCESS;\r
Time = NULL;\r
HelpInfoIndex = 0;\r
- GuidString = NULL;\r
DataString = NULL;\r
- TimeString = NULL;\r
HelpInfoString = NULL;\r
IsCert = FALSE;\r
\r
goto ON_EXIT;\r
}\r
\r
- GuidString = AllocateZeroPool (100);\r
- if (GuidString == NULL) {\r
- Status = EFI_OUT_OF_RESOURCES;\r
- goto ON_EXIT;\r
- }\r
-\r
TotalSize = 1024;\r
HelpInfoString = AllocateZeroPool (TotalSize);\r
if (HelpInfoString == NULL) {\r
//\r
// Format GUID part.\r
//\r
- GuidToString(&DataEntry->SignatureOwner, GuidString, 100);\r
+ ZeroMem (GuidString, sizeof (GuidString));\r
+ GuidToString(&DataEntry->SignatureOwner, GuidString, BUFFER_MAX_SIZE);\r
HelpInfoIndex += UnicodeSPrint (\r
&HelpInfoString[HelpInfoIndex],\r
TotalSize - sizeof(CHAR16) * HelpInfoIndex,\r
// Format revocation time part.\r
//\r
if (Time != NULL) {\r
- TimeString = AllocateZeroPool(100);\r
- if (TimeString == NULL) {\r
- Status = EFI_OUT_OF_RESOURCES;\r
- goto ON_EXIT;\r
- }\r
-\r
+ ZeroMem (TimeString, sizeof (TimeString));\r
UnicodeSPrint (\r
TimeString,\r
- 100,\r
+ sizeof (TimeString),\r
L"%d-%d-%d %d:%d:%d",\r
Time->Year,\r
Time->Month,\r
}\r
\r
*StringId = HiiSetString (PrivateData->HiiHandle, 0, HelpInfoString, NULL);\r
-\r
ON_EXIT:\r
- SECUREBOOT_FREE_NON_NULL (GuidString);\r
SECUREBOOT_FREE_NON_NULL (DataString);\r
- SECUREBOOT_FREE_NON_NULL (TimeString);\r
SECUREBOOT_FREE_NON_NULL (HelpInfoString);\r
\r
return Status;\r
UINTN RemainingSize;\r
UINT16 Index;\r
UINT8 *VariableData;\r
- CHAR16 *VariableName;\r
- CHAR16 *NameBuffer;\r
+ CHAR16 VariableName[BUFFER_MAX_SIZE];\r
+ CHAR16 NameBuffer[BUFFER_MAX_SIZE];\r
\r
Status = EFI_SUCCESS;\r
StartOpCodeHandle = NULL;\r
EndOpCodeHandle = NULL;\r
Index = 0;\r
VariableData = NULL;\r
- VariableName = NULL;\r
- NameBuffer = NULL;\r
\r
//\r
// Initialize the container for dynamic opcodes.\r
EndLabel->ExtendOpCode = EFI_IFR_EXTEND_OP_LABEL;\r
EndLabel->Number = LABEL_END;\r
\r
- VariableName = AllocateZeroPool (100);\r
- if (VariableName == NULL) {\r
- Status = EFI_OUT_OF_RESOURCES;\r
- goto ON_EXIT;\r
- }\r
-\r
if (PrivateData->VariableName == Variable_DB) {\r
- UnicodeSPrint (VariableName, 100, EFI_IMAGE_SECURITY_DATABASE);\r
+ UnicodeSPrint (VariableName, sizeof (VariableName), EFI_IMAGE_SECURITY_DATABASE);\r
} else if (PrivateData->VariableName == Variable_DBX) {\r
- UnicodeSPrint (VariableName, 100, EFI_IMAGE_SECURITY_DATABASE1);\r
+ UnicodeSPrint (VariableName, sizeof (VariableName), EFI_IMAGE_SECURITY_DATABASE1);\r
} else if (PrivateData->VariableName == Variable_DBT) {\r
- UnicodeSPrint (VariableName, 100, EFI_IMAGE_SECURITY_DATABASE2);\r
+ UnicodeSPrint (VariableName, sizeof (VariableName), EFI_IMAGE_SECURITY_DATABASE2);\r
} else {\r
goto ON_EXIT;\r
}\r
goto ON_EXIT;\r
}\r
\r
- NameBuffer = AllocateZeroPool (100);\r
- if (NameBuffer == NULL) {\r
- Status = EFI_OUT_OF_RESOURCES;\r
- goto ON_EXIT;\r
- }\r
-\r
RemainingSize = DataSize;\r
ListWalker = (EFI_SIGNATURE_LIST *)VariableData;\r
\r
//\r
// Format name buffer.\r
//\r
+ ZeroMem (NameBuffer, sizeof (NameBuffer));\r
UnicodeSPrint (NameBuffer,\r
- 100,\r
+ sizeof (NameBuffer),\r
HiiGetString (PrivateData->HiiHandle, STRING_TOKEN (STR_SIGNATURE_DATA_NAME_FORMAT), NULL),\r
Index + 1\r
);\r
// This memory buffer will be freed when exit from the SECUREBOOT_DELETE_SIGNATURE_DATA_FORM form.\r
//\r
PrivateData->CheckArray = AllocateZeroPool (SIGNATURE_DATA_COUNTS (ListWalker) * sizeof (BOOLEAN));\r
-\r
ON_EXIT:\r
HiiUpdateForm (\r
PrivateData->HiiHandle,\r
SECUREBOOT_FREE_NON_OPCODE (StartOpCodeHandle);\r
SECUREBOOT_FREE_NON_OPCODE (EndOpCodeHandle);\r
\r
- SECUREBOOT_FREE_NON_NULL (VariableName);\r
SECUREBOOT_FREE_NON_NULL (VariableData);\r
- SECUREBOOT_FREE_NON_NULL (NameBuffer);\r
\r
return Status;\r
}\r