X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=CryptoPkg%2FLibrary%2FBaseCryptLib%2FBaseCryptLib.inf;h=31bb5fbe0af7482eeaa79405e612062a0acf21a4;hp=efd28ed12008a20430fb6854e0b0274e7b51989e;hb=72009c626d8b1c237c0de840e9bfe9d23b76b94c;hpb=f754e613fcaff79255104d82f8a5a01dc4c50d49 diff --git a/CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf b/CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf index efd28ed120..31bb5fbe0a 100644 --- a/CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf +++ b/CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf @@ -1,68 +1,78 @@ ## @file # Cryptographic Library Instance for DXE_DRIVER. # -# Copyright (c) 2009 - 2010, 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. +# +# Copyright (c) 2009 - 2016, 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 = BaseCryptLib + MODULE_UNI_FILE = BaseCryptLib.uni FILE_GUID = be3bb803-91b6-4da0-bd91-a8b21c18ca5d - MODULE_TYPE = BASE + MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 - LIBRARY_CLASS = BaseCryptLib + LIBRARY_CLASS = BaseCryptLib|DXE_DRIVER DXE_CORE UEFI_APPLICATION UEFI_DRIVER # # The following information is for reference only and not required by the build tools. # -# VALID_ARCHITECTURES = IA32 X64 IPF +# VALID_ARCHITECTURES = IA32 X64 IPF ARM AARCH64 # [Sources] InternalCryptLib.h + Hash/CryptMd4.c Hash/CryptMd5.c Hash/CryptSha1.c Hash/CryptSha256.c + Hash/CryptSha512.c Hmac/CryptHmacMd5.c Hmac/CryptHmacSha1.c + Hmac/CryptHmacSha256.c Cipher/CryptAes.c Cipher/CryptTdes.c Cipher/CryptArc4.c - Rand/CryptRand.c - Pk/CryptRsa.c - Pk/CryptPkcs7.c + Pk/CryptRsaBasic.c + Pk/CryptRsaExt.c + Pk/CryptPkcs7Sign.c + Pk/CryptPkcs7Verify.c Pk/CryptDh.c + Pk/CryptX509.c + Pk/CryptAuthenticode.c + Pk/CryptTs.c + Pem/CryptPem.c SysCall/CrtWrapper.c SysCall/TimerWrapper.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 @@ -72,12 +82,21 @@ BaseLib BaseMemoryLib MemoryAllocationLib + UefiRuntimeServicesTableLib DebugLib OpensslLib IntrinsicLib + PrintLib # # Remove these [BuildOptions] after this library is cleaned up # [BuildOptions] + # suppress the following warnings so we do not break the build with warnings-as-errors: + # C4305: truncation from type1 to type2 (Introduced by RFC3161 Timestamp ASN.1 declarations) + MSFT:*_*_*_CC_FLAGS = /wd4305 GCC:*_GCC44_IA32_CC_FLAGS = "-D__cdecl=__attribute__((cdecl))" "-D__declspec(t)=__attribute__((t))" + + # -JCryptoPkg/Include : To disable the use of the system includes provided by RVCT + # --diag_remark=1 : Reduce severity of "#1-D: last line of file ends without a newline" + RVCT:*_*_ARM_CC_FLAGS = -JCryptoPkg/Include --diag_remark=1