]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/FirmwareVolume/Crc32SectionExtractDxe/Crc32SectionExtract.h
Adjust directory structures.
[mirror_edk2.git] / MdeModulePkg / Universal / FirmwareVolume / Crc32SectionExtractDxe / Crc32SectionExtract.h
diff --git a/MdeModulePkg/Universal/FirmwareVolume/Crc32SectionExtractDxe/Crc32SectionExtract.h b/MdeModulePkg/Universal/FirmwareVolume/Crc32SectionExtractDxe/Crc32SectionExtract.h
new file mode 100644 (file)
index 0000000..e7bf276
--- /dev/null
@@ -0,0 +1,105 @@
+/*++\r
+\r
+Copyright (c) 2006 - 2007, Intel Corporation                                                         \r
+All rights reserved. This program and the accompanying materials                          \r
+are licensed and made available under the terms and conditions of the BSD License         \r
+which accompanies this distribution.  The full text of the license may be found at        \r
+http://opensource.org/licenses/bsd-license.php                                            \r
+                                                                                          \r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
+\r
+Module Name:\r
+\r
+  Crc32SectionExtract.h\r
+  \r
+Abstract:\r
+\r
+  Header file for Crc32SectionExtract.c\r
+  Please refer to the Framewokr Firmware Volume Specification 0.9.\r
+\r
+--*/\r
+\r
+#ifndef _CRC32_GUIDED_SECTION_EXTRACTION_H\r
+#define _CRC32_GUIDED_SECTION_EXTRACTION_H\r
+\r
+#include <PiDxe.h>\r
+#include <Protocol/SecurityPolicy.h>\r
+#include <Protocol/Crc32GuidedSectionExtraction.h>\r
+#include <Library/MemoryAllocationLib.h>\r
+#include <Library/DebugLib.h>\r
+#include <Library/UefiDriverEntryPoint.h>\r
+#include <Library/BaseMemoryLib.h>\r
+#include <Library/UefiBootServicesTableLib.h>\r
+\r
+\r
+\r
+typedef struct {\r
+  EFI_GUID_DEFINED_SECTION  GuidedSectionHeader;\r
+  UINT32                    CRC32Checksum;\r
+} CRC32_SECTION_HEADER;\r
+\r
+//\r
+// Function prototype declarations\r
+//\r
+STATIC\r
+EFI_STATUS\r
+EFIAPI\r
+Crc32ExtractSection (\r
+  IN  EFI_GUIDED_SECTION_EXTRACTION_PROTOCOL  *This,\r
+  IN  VOID                                    *InputSection,\r
+  OUT VOID                                    **OutputBuffer,\r
+  OUT UINTN                                   *OutputSize,\r
+  OUT UINT32                                  *AuthenticationStatus\r
+  )\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  TODO: Add function description\r
+\r
+Arguments:\r
+\r
+  This                  - TODO: add argument description\r
+  InputSection          - TODO: add argument description\r
+  OutputBuffer          - TODO: add argument description\r
+  OutputSize            - TODO: add argument description\r
+  AuthenticationStatus  - TODO: add argument description\r
+\r
+Returns:\r
+\r
+  TODO: add return values\r
+\r
+--*/\r
+;\r
+\r
+EFI_STATUS\r
+EFIAPI\r
+InitializeCrc32GuidedSectionExtractionProtocol (\r
+  IN EFI_HANDLE                   ImageHandle,\r
+  IN EFI_SYSTEM_TABLE             *SystemTable\r
+  )\r
+/*++\r
+\r
+Routine Description: \r
+\r
+  Entry point of the CRC32 GUIDed section extraction protocol. \r
+  Creates and initializes an instance of the GUIDed section \r
+  extraction protocol with CRC32 GUID.\r
+\r
+Arguments:  \r
+\r
+  ImageHandle   EFI_HANDLE: A handle for the image that is initializing \r
+                this driver\r
+  SystemTable   EFI_SYSTEM_TABLE: A pointer to the EFI system table        \r
+\r
+Returns:  \r
+\r
+  EFI_SUCCESS:          Driver initialized successfully\r
+  EFI_LOAD_ERROR:       Failed to Initialize or has been loaded \r
+  EFI_OUT_OF_RESOURCES: Could not allocate needed resources\r
+\r
+--*/\r
+;\r
+\r
+#endif\r