\r
**/\r
\r
-#include <PiDxe.h>\r
-#include <Library/BaseLib.h>\r
-#include <Library/DebugLib.h>\r
-#include <Library/BaseMemoryLib.h>\r
-#include <Library/MemoryAllocationLib.h>\r
-#include <Library/UefiBootServicesTableLib.h>\r
-#include <Library/UefiRuntimeServicesTableLib.h>\r
-#include <Library/UefiLib.h>\r
-#include <Library/PrintLib.h>\r
-#include <Library/FileHandleLib.h>\r
-#include <Library/SortLib.h>\r
-#include <Library/UefiBootManagerLib.h>\r
-#include <Library/DevicePathLib.h>\r
-#include <Protocol/FirmwareManagement.h>\r
-#include <Protocol/SimpleFileSystem.h>\r
-#include <Protocol/Shell.h>\r
-#include <Guid/ImageAuthentication.h>\r
-#include <Guid/CapsuleReport.h>\r
-#include <Guid/SystemResourceTable.h>\r
-#include <Guid/FmpCapsule.h>\r
-#include <Guid/CapsuleVendor.h>\r
-#include <IndustryStandard/WindowsUxCapsule.h>\r
-\r
-//\r
-// (20 * (6+5+2))+1) unicode characters from EFI FAT spec (doubled for bytes)\r
-//\r
-#define MAX_FILE_NAME_SIZE 522\r
-#define MAX_FILE_NAME_LEN (MAX_FILE_NAME_SIZE / sizeof(CHAR16))\r
-\r
-/**\r
- Read a file.\r
-\r
- @param[in] FileName The file to be read.\r
- @param[out] BufferSize The file buffer size\r
- @param[out] Buffer The file buffer\r
-\r
- @retval EFI_SUCCESS Read file successfully\r
- @retval EFI_NOT_FOUND File not found\r
-**/\r
-EFI_STATUS\r
-ReadFileToBuffer (\r
- IN CHAR16 *FileName,\r
- OUT UINTN *BufferSize,\r
- OUT VOID **Buffer\r
- );\r
-\r
-/**\r
- Write a file.\r
-\r
- @param[in] FileName The file to be written.\r
- @param[in] BufferSize The file buffer size\r
- @param[in] Buffer The file buffer\r
-\r
- @retval EFI_SUCCESS Write file successfully\r
-**/\r
-EFI_STATUS\r
-WriteFileFromBuffer (\r
- IN CHAR16 *FileName,\r
- IN UINTN BufferSize,\r
- IN VOID *Buffer\r
- );\r
-\r
-/**\r
- Get shell protocol.\r
-\r
- @return Pointer to shell protocol.\r
-\r
-**/\r
-EFI_SHELL_PROTOCOL *\r
-GetShellProtocol (\r
- VOID\r
- );\r
-\r
-/**\r
- Get SimpleFileSystem from boot option file path.\r
-\r
- @param[in] DevicePath The file path of boot option\r
- @param[out] FullPath The full device path of boot device\r
- @param[out] Fs The file system within EfiSysPartition\r
-\r
- @retval EFI_SUCCESS Get file system successfully\r
- @retval EFI_NOT_FOUND No valid file system found\r
- @retval others Get file system failed\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-GetEfiSysPartitionFromBootOptionFilePath (\r
- IN EFI_DEVICE_PATH_PROTOCOL *DevicePath,\r
- OUT EFI_DEVICE_PATH_PROTOCOL **FullPath,\r
- OUT EFI_SIMPLE_FILE_SYSTEM_PROTOCOL **Fs\r
- );\r
+#include "CapsuleApp.h"\r
\r
/**\r
Validate if it is valid capsule header\r
\r
**/\r
INTN\r
-EFIAPI\r
CompareFileNameInAlphabet (\r
IN VOID *Left,\r
IN VOID *Right\r
//\r
// Get file count first\r
//\r
+ Status = FileHandleFindFirstFile (DirHandle, &FileInfo);\r
do {\r
- Status = FileHandleFindFirstFile (DirHandle, &FileInfo);\r
if (EFI_ERROR (Status) || FileInfo == NULL) {\r
Print (L"Get File Info Fail. Status = %r\n", Status);\r
goto Done;\r
//\r
// Get all file info\r
//\r
+ Status = FileHandleFindFirstFile (DirHandle, &FileInfo);\r
do {\r
- Status = FileHandleFindFirstFile (DirHandle, &FileInfo);\r
if (EFI_ERROR (Status) || FileInfo == NULL) {\r
Print (L"Get File Info Fail. Status = %r\n", Status);\r
goto Done;\r