internal structure and functions used by Ftw module.\r
\r
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
-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
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
\r
#include <Library/UefiDriverEntryPoint.h>\r
#include <Library/BaseMemoryLib.h>\r
#include <Library/MemoryAllocationLib.h>\r
-#include <Library/UefiBootServicesTableLib.h>\r
#include <Library/ReportStatusCodeLib.h>\r
\r
//\r
IN UINT8 *Buffer\r
);\r
\r
+/**\r
+ Internal implementation of CRC32. Depending on the execution context\r
+ (traditional SMM or DXE vs standalone MM), this function is implemented\r
+ via a call to the CalculateCrc32 () boot service, or via a library\r
+ call.\r
+\r
+ If Buffer is NULL, then ASSERT().\r
+ If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT().\r
+\r
+ @param[in] Buffer A pointer to the buffer on which the 32-bit CRC is\r
+ to be computed.\r
+ @param[in] Length The number of bytes in the buffer Data.\r
+\r
+ @retval Crc32 The 32-bit CRC was computed for the data buffer.\r
+\r
+**/\r
+UINT32\r
+FtwCalculateCrc32 (\r
+ IN VOID *Buffer,\r
+ IN UINTN Length\r
+ );\r
+\r
#endif\r