/** @file\r
Internal header file for Extended SAL variable service module.\r
\r
-Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2009 - 2015, 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
#include <Guid/EventGroup.h>\r
\r
#include <Library/PcdLib.h>\r
+#include <Library/HobLib.h>\r
#include <Library/UefiDriverEntryPoint.h>\r
#include <Library/DxeServicesTableLib.h>\r
#include <Library/UefiRuntimeLib.h>\r
/// The maximum size of the public key database, restricted by maximum individal EFI \r
/// varible size, and excluding the variable header and name size.\r
///\r
-#define MAX_KEYDB_SIZE (FixedPcdGet32 (PcdMaxVariableSize) - sizeof (VARIABLE_HEADER) - AUTHVAR_KEYDB_NAME_SIZE)\r
+#define MAX_KEYDB_SIZE (FixedPcdGet32 (PcdMaxVariableSize) - sizeof (AUTHENTICATED_VARIABLE_HEADER) - AUTHVAR_KEYDB_NAME_SIZE)\r
#define MAX_KEY_NUM (MAX_KEYDB_SIZE / EFI_CERT_TYPE_RSA2048_SIZE)\r
\r
///\r
**/\r
UINTN\r
DataSizeOfVariable (\r
- IN VARIABLE_HEADER *Variable\r
+ IN AUTHENTICATED_VARIABLE_HEADER *Variable\r
);\r
\r
/**\r
FALSE - Variable is non-volatile.\r
@param[in] Global Pointer to VARAIBLE_GLOBAL structure.\r
@param[in] Instance Instance of FV Block services.\r
- @param[out] VariableHeader Pointer to VARIABLE_HEADER for output.\r
+ @param[out] VariableHeader Pointer to AUTHENTICATED_VARIABLE_HEADER for output.\r
\r
@retval TRUE Variable header is valid.\r
@retval FALSE Variable header is not valid.\r
**/\r
BOOLEAN\r
IsValidVariableHeader (\r
- IN EFI_PHYSICAL_ADDRESS VariableAddress,\r
- IN BOOLEAN Volatile,\r
- IN VARIABLE_GLOBAL *Global,\r
- IN UINTN Instance,\r
- OUT VARIABLE_HEADER *VariableHeader OPTIONAL\r
+ IN EFI_PHYSICAL_ADDRESS VariableAddress,\r
+ IN BOOLEAN Volatile,\r
+ IN VARIABLE_GLOBAL *Global,\r
+ IN UINTN Instance,\r
+ OUT AUTHENTICATED_VARIABLE_HEADER *VariableHeader OPTIONAL\r
+ );\r
+\r
+/**\r
+ Flush the HOB variable to NV variable storage.\r
+**/\r
+VOID\r
+FlushHob2Nv (\r
+ VOID\r
);\r
\r
#endif\r