X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=CryptoPkg%2FLibrary%2FBaseCryptLib%2FSmmCryptLib.inf;h=e00a230cbcfa353e3ad70ab126d0b57c04147598;hp=a6eea164a149c73aab6553e17aa9cb570436a65d;hb=7e1bc8cdb387430de34cf46a3da14b09dd2e84e2;hpb=e8b4eb041777a361c2fb81b34c8ab65951ff8c46 diff --git a/CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf b/CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf index a6eea164a1..e00a230cbc 100644 --- a/CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf +++ b/CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf @@ -1,20 +1,31 @@ ## @file # Cryptographic Library Instance for SMM driver. # -# Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.
+# 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 issues such as +# buffer overflow or integer overflow. +# +# Note: MD4 Digest functions, SHA-384 Digest functions, SHA-512 Digest functions, +# HMAC-MD5 functions, HMAC-SHA1/SHA256 functions, TDES/ARC4 functions, RSA external +# functions, PKCS#7 SignedData sign functions, Diffie-Hellman functions, and +# authenticode signature verification functions are not supported in this instance. +# +# Copyright (c) 2010 - 2017, 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 + MODULE_UNI_FILE = SmmCryptLib.uni FILE_GUID = 028080a3-8958-4a62-a1a8-0fa1da162007 MODULE_TYPE = DXE_SMM_DRIVER VERSION_STRING = 1.0 @@ -24,41 +35,50 @@ # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 +# VALID_ARCHITECTURES = IA32 X64 ARM AARCH64 # [Sources] + Hash/CryptMd4Null.c Hash/CryptMd5.c Hash/CryptSha1.c Hash/CryptSha256.c - Rand/CryptRand.c - Pk/CryptRsa.c - Pk/CryptPkcs7.c + Hash/CryptSha512Null.c + Hmac/CryptHmacMd5Null.c + Hmac/CryptHmacSha1Null.c + Hmac/CryptHmacSha256Null.c + Cipher/CryptAes.c + Cipher/CryptTdesNull.c + Cipher/CryptArc4Null.c + Pk/CryptRsaBasic.c + Pk/CryptRsaExtNull.c + Pk/CryptPkcs5Pbkdf2.c + Pk/CryptPkcs7SignNull.c + Pk/CryptPkcs7Verify.c + Pk/CryptDhNull.c Pk/CryptX509.c + Pk/CryptAuthenticodeNull.c + Pk/CryptTsNull.c Pem/CryptPem.c SysCall/CrtWrapper.c - SysCall/RealTimeClock.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 + Rand/CryptRandTsc.c - 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 +[Sources.X64] + Rand/CryptRandTsc.c - 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 +[Sources.IPF] + Rand/CryptRandItc.c + +[Sources.ARM] + Rand/CryptRand.c + +[Sources.AARCH64] + Rand/CryptRand.c [Packages] MdePkg/MdePkg.dec @@ -71,10 +91,11 @@ 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))" - + XCODE:*_*_*_CC_FLAGS = -mmmx -msse