## @file
#  Provides authenticated variable services.
#
#  Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>
#
#  This program and the accompanying materials
#  are licensed and made available under the terms and conditions
#  of the BSD License which accompanies this distribution.  The
#  full text of the license may be found at
#  http://opensource.org/licenses/bsd-license.php
#
#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = AuthVariableLib
  MODULE_UNI_FILE                = AuthVariableLib.uni
  FILE_GUID                      = B23CF5FB-6FCC-4422-B145-D855DBC05457
  MODULE_TYPE                    = DXE_RUNTIME_DRIVER
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = AuthVariableLib|DXE_RUNTIME_DRIVER DXE_SMM_DRIVER

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64
#

[Sources]
  AuthVariableLib.c
  AuthService.c
  AuthServiceInternal.h

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  SecurityPkg/SecurityPkg.dec
  CryptoPkg/CryptoPkg.dec

[LibraryClasses]
  BaseLib
  BaseMemoryLib
  DebugLib
  MemoryAllocationLib
  BaseCryptLib
  PlatformSecureLib

[Guids]
  ## CONSUMES            ## Variable:L"SetupMode"
  ## PRODUCES            ## Variable:L"SetupMode"
  ## SOMETIMES_CONSUMES  ## Variable:L"PK"
  ## SOMETIMES_CONSUMES  ## Variable:L"KEK"
  ## CONSUMES            ## Variable:L"SecureBoot"
  ## PRODUCES            ## Variable:L"SecureBoot"
  ## CONSUMES            ## Variable:L"SignatureSupport"
  ## PRODUCES            ## Variable:L"SignatureSupport"
  ## PRODUCES            ## Variable:L"VendorKeys"
  gEfiGlobalVariableGuid

  ## SOMETIMES_CONSUMES  ## Variable:L"DB"
  ## SOMETIMES_CONSUMES  ## Variable:L"DBX"
  ## SOMETIMES_CONSUMES  ## Variable:L"DBT"
  gEfiImageSecurityDatabaseGuid

  ## CONSUMES            ## Variable:L"SecureBootEnable"
  ## PRODUCES            ## Variable:L"SecureBootEnable"
  gEfiSecureBootEnableDisableGuid

  ## CONSUMES            ## Variable:L"CustomMode"
  ## PRODUCES            ## Variable:L"CustomMode"
  gEfiCustomModeEnableGuid

  ## CONSUMES            ## Variable:L"certdb"
  ## CONSUMES            ## Variable:L"certdbv"
  ## PRODUCES            ## Variable:L"certdb"
  ## PRODUCES            ## Variable:L"certdbv"
  gEfiCertDbGuid

  ## CONSUMES            ## Variable:L"VendorKeysNv"
  ## PRODUCES            ## Variable:L"VendorKeysNv"
  gEfiVendorKeysNvGuid

  ## CONSUMES            ## Variable:L"AuthVarKeyDatabase"
  ## PRODUCES            ## Variable:L"AuthVarKeyDatabase"
  gEfiAuthenticatedVariableGuid

  gEfiCertTypeRsa2048Sha256Guid  ## SOMETIMES_CONSUMES   ## GUID  # Unique ID for the type of the certificate.
  gEfiCertPkcs7Guid              ## SOMETIMES_CONSUMES   ## GUID  # Unique ID for the type of the certificate.
  gEfiCertX509Guid               ## SOMETIMES_CONSUMES   ## GUID  # Unique ID for the type of the signature.