## @file # Cryptographic Library Instance for SMM driver. # # This library instance uses ConstantTimeClock.c thus does not provide # functionality for following APIs which need system time support: # 1) RsaGenerateKey # 2) RsaCheckKey # 3) RsaPkcs1Sign # 4) Pkcs7Sign # 5) DhGenerateParameter # 6) DhGenerateKey # # Caution: This module requires additional review when modified. # This library will have external input - signature. # This external input must be validated carefully to avoid security issue like # buffer overflow, integer overflow. # # Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.
# 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 = SmmCryptLib FILE_GUID = 028080a3-8958-4a62-a1a8-0fa1da162007 MODULE_TYPE = DXE_SMM_DRIVER VERSION_STRING = 1.0 PI_SPECIFICATION_VERSION = 0x0001000A LIBRARY_CLASS = BaseCryptLib|DXE_SMM_DRIVER SMM_CORE # # The following information is for reference only and not required by the build tools. # # VALID_ARCHITECTURES = IA32 X64 # [Sources] Hash/CryptMd5.c Hash/CryptSha1.c Hash/CryptSha256.c Pk/CryptRsa.c Pk/CryptPkcs7.c Pk/CryptX509.c Pem/CryptPem.c SysCall/CrtWrapper.c SysCall/ConstantTimeClock.c SysCall/BaseMemAllocation.c [Sources.Ia32] SysCall/Ia32/MathMultS64x64.c | MSFT SysCall/Ia32/MathDivU64x64.c | MSFT SysCall/Ia32/MathReminderU64x64.c | MSFT SysCall/Ia32/MathLShiftS64.c | MSFT SysCall/Ia32/MathRShiftU64.c | MSFT SysCall/Ia32/MathMultS64x64.c | INTEL SysCall/Ia32/MathDivU64x64.c | INTEL SysCall/Ia32/MathReminderU64x64.c | INTEL SysCall/Ia32/MathLShiftS64.c | INTEL SysCall/Ia32/MathRShiftU64.c | INTEL SysCall/Ia32/MathMultS64x64.S | GCC SysCall/Ia32/MathDivU64x64.S | GCC SysCall/Ia32/MathReminderU64x64.S | GCC SysCall/Ia32/MathLShiftS64.S | GCC SysCall/Ia32/MathRShiftU64.S | GCC Rand/CryptRandTsc.c [Sources.X64] Rand/CryptRandTsc.c [Sources.IPF] Rand/CryptRandItc.c [Sources.ARM] Rand/CryptRand.c [Packages] MdePkg/MdePkg.dec CryptoPkg/CryptoPkg.dec [LibraryClasses] BaseLib IoLib BaseMemoryLib MemoryAllocationLib OpensslLib IntrinsicLib PrintLib # # Remove these [BuildOptions] after this library is cleaned up # [BuildOptions] GCC:*_GCC44_IA32_CC_FLAGS = "-D__cdecl=__attribute__((cdecl))" "-D__declspec(t)=__attribute__((t))"