1 /** @file
2   Include file for Var Check Hii handler and bin.
3 
4 Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>
5 This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution.  The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9 
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12 
13 **/
14 
15 #ifndef _VAR_CHECK_HII_H_
16 #define _VAR_CHECK_HII_H_
17 
18 #include <Library/VarCheckLib.h>
19 #include <Library/BaseLib.h>
20 #include <Library/DebugLib.h>
21 #include <Library/BaseMemoryLib.h>
22 #include <Library/UefiBootServicesTableLib.h>
23 #include <Library/MemoryAllocationLib.h>
24 
25 #include <Protocol/HiiDatabase.h>
26 #include <Protocol/FirmwareVolume2.h>
27 #include <Protocol/FirmwareVolumeBlock.h>
28 
29 #include "InternalVarCheckStructure.h"
30 #include "VarCheckHiiGen.h"
31 
32 //#define DUMP_VAR_CHECK_HII
33 //#define DUMP_HII_DATA
34 
35 typedef struct {
36   UINT8     HiiOpCode;
37   CHAR8     *HiiOpCodeStr;
38 } VAR_CHECK_HII_OPCODE_STRING;
39 
40 typedef struct {
41   UINT8     PackageType;
42   CHAR8     *PackageTypeStr;
43 } VAR_CHECK_HII_PACKAGE_TYPE_STRING;
44 
45 /**
46   Dump Var Check HII.
47 
48   @param[in] VarCheckHiiBin     Pointer to VarCheckHiiBin.
49   @param[in] VarCheckHiiBinSize VarCheckHiiBin size.
50 
51 **/
52 VOID
53 DumpVarCheckHii (
54   IN VOID   *VarCheckHiiBin,
55   IN UINTN  VarCheckHiiBinSize
56   );
57 
58 extern VAR_CHECK_HII_VARIABLE_HEADER    *mVarCheckHiiBin;
59 extern UINTN                            mVarCheckHiiBinSize;
60 
61 #endif
62