]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UnixPkg/Library/SecDispatchTableLib/SecDispatchTableLib.c
Finish spliting SecDispatchTableLib into two functions so it can be a BaseLib
[mirror_edk2.git] / UnixPkg / Library / SecDispatchTableLib / SecDispatchTableLib.c
index da3d182f1e6bca5c4efc09135ac8b3bcf149f03d..924547d6b4cb0b1d034d135c5a2c9fe68ee3fffa 100644 (file)
@@ -14,23 +14,48 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 --*/\r
 \r
 #include <PiPei.h>\r
+#include <Library/BaseMemoryLib.h>\r
+#include <Library/SecDispatchTableLib.h>\r
+\r
 \r
 /**\r
-  Allow an override of the Sec PPI Dispatch Table. This table contains PPIs passed\r
-  up from SEC to PEI. This function is responcible for allocating space for the \r
-  overridden table.\r
+  Return the number of bytes that OverrideDispatchTable() will append to\r
+  the dispatch table.\r
 \r
+  @return  Size of table in bytes OverrideDispatchTable() will return\r
 \r
-  @param  OriginalTable  SECs default PPI dispatch table\r
+**/\r
+UINTN\r
+EFIAPI\r
+OverrideDispatchTableExtraSize (\r
+  )\r
+{\r
+  return 0;\r
+}\r
 \r
-  @return OriginalTable or override of the table\r
+\r
+/**\r
+  Allow an override of the Sec PPI Dispatch Table. This table contains PPIs passed\r
+  up from SEC to PEI. \r
+\r
+  @param  OriginalTable         SECs default PPI dispatch table\r
+  @param  OriginalTableSize     Size of SECs default PPI dispatch table\r
+  @param  NewTable              New dispatch table\r
+  @param  NewTableSize          Size of of the NewTable in bytes\r
+\r
+  @return EFI_SUCCESS table was copied\r
 \r
 **/\r
-EFI_PEI_PPI_DESCRIPTOR *\r
+EFI_STATUS\r
 EFIAPI\r
 OverrideDispatchTable (\r
-  IN CONST EFI_PEI_PPI_DESCRIPTOR          *OriginalTable\r
+  IN CONST EFI_PEI_PPI_DESCRIPTOR          *OriginalTable,\r
+  IN       UINTN                           OriginalTableSize,\r
+  IN OUT   EFI_PEI_PPI_DESCRIPTOR          *NewTable,\r
+  IN       UINTN                           NewTableSize\r
   )\r
 {\r
-  return (EFI_PEI_PPI_DESCRIPTOR *)OriginalTable;\r
+  CopyMem (NewTable, OriginalTable, OriginalTableSize);\r
+\r
+  return EFI_SUCCESS;\r
 }\r