typedef struct {\r
UINT32 BinaryLength;\r
EFI_HII_PACKAGE_HEADER PackageHeader;\r
- } TIANO_AUTOGEN_PACKAGES_HEADER;\r
+ } EDKII_AUTOGEN_PACKAGES_HEADER;\r
#pragma pack (pop)\r
\r
If there is not enough resource for the new package list,\r
return Status;\r
}\r
\r
+/**\r
+ \r
+ This function returns a list of the package handles of the \r
+ specified type that are currently active in the HII database. The \r
+ pseudo-type EFI_HII_PACKAGE_TYPE_ALL will cause all package \r
+ handles to be listed.\r
\r
+ If HandleBufferLength is NULL, then ASSERT.\r
+ If HandleBuffer is NULL, the ASSERT.\r
+ If PackageType is EFI_HII_PACKAGE_TYPE_GUID and PackageGuid is\r
+ NULL, then ASSERT.\r
+ If PackageType is not EFI_HII_PACKAGE_TYPE_GUID and PackageGuid is not\r
+ NULL, then ASSERT.\r
+ \r
+ \r
+ @param PackageType Specifies the package type of the packages\r
+ to list or EFI_HII_PACKAGE_TYPE_ALL for\r
+ all packages to be listed.\r
+ \r
+ @param PackageGuid If PackageType is\r
+ EFI_HII_PACKAGE_TYPE_GUID, then this is\r
+ the pointer to the GUID which must match\r
+ the Guid field of\r
+ EFI_HII_PACKAGE_GUID_HEADER. Otherwise, it\r
+ must be NULL.\r
+ \r
+ @param HandleBufferLength On output, the length of the handle buffer\r
+ that is required for the handles found.\r
+\r
+ @param HandleBuffer On output, an array of EFI_HII_HANDLE instances returned.\r
+ The caller is responcible to free this pointer allocated.\r
+\r
+ @retval EFI_SUCCESS The matching handles are outputed successfully.\r
+ HandleBufferLength is updated with the actual length.\r
+ @retval EFI_OUT_OF_RESOURCES Not enough resource to complete the operation.\r
+ @retval EFI_NOT_FOUND No matching handle could not be found in database.\r
+**/\r
EFI_STATUS\r
EFIAPI\r
HiiLibListPackageLists (\r
IN UINT8 PackageType,\r
IN CONST EFI_GUID *PackageGuid,\r
- IN OUT UINTN *HandleBufferLength,\r
+ OUT UINTN *HandleBufferLength,\r
OUT EFI_HII_HANDLE **HandleBuffer\r
)\r
{\r
*HandleBufferLength = 0;\r
*HandleBuffer = NULL;\r
\r
+ if (PackageType == EFI_HII_PACKAGE_TYPE_GUID) {\r
+ ASSERT (PackageGuid != NULL);\r
+ } else {\r
+ ASSERT (PackageGuid == NULL);\r
+ }\r
+\r
Status = mHiiDatabaseProt->ListPackageLists (\r
mHiiDatabaseProt,\r
PackageType,\r
);\r
if (EFI_ERROR (Status) && (Status != EFI_BUFFER_TOO_SMALL)) {\r
//\r
- // No packages is registered to UEFI HII Database, just return EFI_SUCCESS.\r
+ // No packages is registered to UEFI HII Database, just return.\r
// \r
//\r
return Status;\r