## @file
# Implements the BaseCryptLib and TlsLib using the services of the EDK II Crypto
# SMM Protocol.
#
# Copyright (C) Microsoft Corporation. All rights reserved.
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x0001001B
  BASE_NAME                      = SmmCryptLib
  MODULE_UNI_FILE                = CryptLib.uni
  FILE_GUID                      = 5CC6ECC9-E961-46A9-8D5C-6581A060DC0D
  VERSION_STRING                 = 1.0
  MODULE_TYPE                    = DXE_SMM_DRIVER
  LIBRARY_CLASS                  = BaseCryptLib | DXE_SMM_DRIVER
  LIBRARY_CLASS                  = TlsLib       | DXE_SMM_DRIVER
  CONSTRUCTOR                    = SmmCryptLibConstructor

[Packages]
  MdePkg/MdePkg.dec
  CryptoPkg/CryptoPkg.dec

[LibraryClasses]
  BaseLib
  DebugLib
  SmmServicesTableLib

[Sources]
  SmmCryptLib.c
  CryptLib.c

[Protocols]
  gEdkiiSmmCryptoProtocolGuid  ## CONSUMES

[Depex]
  gEdkiiSmmCryptoProtocolGuid
