mirror of
				https://git.proxmox.com/git/mirror_edk2
				synced 2025-11-04 02:40:26 +00:00 
			
		
		
		
	For TianoCore BZ#1734, StdLib has been moved from the edk2 project to the
edk2-libc project, in commit 964f432b9b ("edk2: Remove AppPkg, StdLib,
StdLibPrivateInternalFiles", 2019-04-29).
We'd like to use the inet_pton() function in CryptoPkg. Resurrect the
"inet_pton.c" file from just before the StdLib removal, as follows:
  $ git show \
      964f432b9b0a^:StdLib/BsdSocketLib/inet_pton.c \
      > CryptoPkg/Library/BaseCryptLib/SysCall/inet_pton.c
The inet_pton() function is only intended for the DXE phase at this time,
therefore only the "BaseCryptLib" instance INF file receives the new file.
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Jiaxin Wu <jiaxin.wu@intel.com>
Cc: Sivaraman Nainar <sivaramann@amiindia.co.in>
Cc: Xiaoyu Lu <xiaoyux.lu@intel.com>
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=960
CVE: CVE-2019-14553
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jian J Wang <jian.j.wang@intel.com>
Reviewed-by: Jiaxin Wu <jiaxin.wu@intel.com>
		
	
			
		
			
				
	
	
		
			108 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			INI
		
	
	
	
	
	
			
		
		
	
	
			108 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			INI
		
	
	
	
	
	
## @file
 | 
						|
#  Cryptographic Library Instance for DXE_DRIVER.
 | 
						|
#
 | 
						|
#  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 - 2019, Intel Corporation. All rights reserved.<BR>
 | 
						|
#  SPDX-License-Identifier: BSD-2-Clause-Patent
 | 
						|
#
 | 
						|
##
 | 
						|
 | 
						|
[Defines]
 | 
						|
  INF_VERSION                    = 0x00010005
 | 
						|
  BASE_NAME                      = BaseCryptLib
 | 
						|
  MODULE_UNI_FILE                = BaseCryptLib.uni
 | 
						|
  FILE_GUID                      = be3bb803-91b6-4da0-bd91-a8b21c18ca5d
 | 
						|
  MODULE_TYPE                    = DXE_DRIVER
 | 
						|
  VERSION_STRING                 = 1.0
 | 
						|
  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 ARM AARCH64
 | 
						|
#
 | 
						|
 | 
						|
[Sources]
 | 
						|
  InternalCryptLib.h
 | 
						|
  Hash/CryptMd4.c
 | 
						|
  Hash/CryptMd5.c
 | 
						|
  Hash/CryptSha1.c
 | 
						|
  Hash/CryptSha256.c
 | 
						|
  Hash/CryptSha512.c
 | 
						|
  Hash/CryptSm3.c
 | 
						|
  Hmac/CryptHmacMd5.c
 | 
						|
  Hmac/CryptHmacSha1.c
 | 
						|
  Hmac/CryptHmacSha256.c
 | 
						|
  Kdf/CryptHkdf.c
 | 
						|
  Cipher/CryptAes.c
 | 
						|
  Cipher/CryptTdes.c
 | 
						|
  Cipher/CryptArc4.c
 | 
						|
  Pk/CryptRsaBasic.c
 | 
						|
  Pk/CryptRsaExt.c
 | 
						|
  Pk/CryptPkcs1Oaep.c
 | 
						|
  Pk/CryptPkcs5Pbkdf2.c
 | 
						|
  Pk/CryptPkcs7Sign.c
 | 
						|
  Pk/CryptPkcs7VerifyCommon.c
 | 
						|
  Pk/CryptPkcs7VerifyBase.c
 | 
						|
  Pk/CryptPkcs7VerifyEku.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
 | 
						|
  SysCall/inet_pton.c
 | 
						|
 | 
						|
[Sources.Ia32]
 | 
						|
  Rand/CryptRandTsc.c
 | 
						|
 | 
						|
[Sources.X64]
 | 
						|
  Rand/CryptRandTsc.c
 | 
						|
 | 
						|
[Sources.ARM]
 | 
						|
  Rand/CryptRand.c
 | 
						|
 | 
						|
[Sources.AARCH64]
 | 
						|
  Rand/CryptRand.c
 | 
						|
 | 
						|
[Packages]
 | 
						|
  MdePkg/MdePkg.dec
 | 
						|
  CryptoPkg/CryptoPkg.dec
 | 
						|
 | 
						|
[LibraryClasses]
 | 
						|
  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:
 | 
						|
  # C4090: 'function' : different 'const' qualifiers
 | 
						|
  #
 | 
						|
  MSFT:*_*_*_CC_FLAGS = /wd4090
 | 
						|
 | 
						|
  # -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
 | 
						|
 | 
						|
  GCC:*_CLANG35_*_CC_FLAGS = -std=c99
 | 
						|
  GCC:*_CLANG38_*_CC_FLAGS = -std=c99
 | 
						|
  GCC:*_CLANG9_*_CC_FLAGS = -std=c99 -Wno-error=incompatible-pointer-types
 | 
						|
 | 
						|
  XCODE:*_*_*_CC_FLAGS = -std=c99
 |