Home | History | Annotate | Download | only in BaseCryptLib
      1 ## @file

      2 #  Cryptographic Library Instance for DXE_RUNTIME_DRIVER.

      3 #

      4 #  Caution: This module requires additional review when modified.

      5 #  This library will have external input - signature.

      6 #  This external input must be validated carefully to avoid security issues such as

      7 #  buffer overflow or integer overflow.

      8 #

      9 #  Note: MD4 Digest functions, SHA-384 Digest functions, SHA-512 Digest functions,

     10 #  HMAC-MD5 functions, HMAC-SHA1/SHA256 functions, AES/TDES/ARC4 functions, RSA external

     11 #  functions, PKCS#7 SignedData sign functions, Diffie-Hellman functions, and 

     12 #  authenticode signature verification functions are not supported in this instance.

     13 #

     14 #  Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved.<BR>

     15 #  This program and the accompanying materials

     16 #  are licensed and made available under the terms and conditions of the BSD License

     17 #  which accompanies this distribution.  The full text of the license may be found at

     18 #  http://opensource.org/licenses/bsd-license.php

     19 #

     20 #  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,

     21 #  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

     22 #

     23 ##

     24 
     25 [Defines]
     26   INF_VERSION                    = 0x00010005
     27   BASE_NAME                      = RuntimeCryptLib
     28   MODULE_UNI_FILE                = RuntimeCryptLib.uni
     29   FILE_GUID                      = 78189cc0-727d-46a4-84ea-f7dd860de64a
     30   MODULE_TYPE                    = DXE_RUNTIME_DRIVER
     31   VERSION_STRING                 = 1.0
     32   LIBRARY_CLASS                  = BaseCryptLib|DXE_RUNTIME_DRIVER
     33   CONSTRUCTOR                    = RuntimeCryptLibConstructor
     34 
     35 #

     36 # The following information is for reference only and not required by the build tools.

     37 #

     38 #  VALID_ARCHITECTURES           = IA32 X64 IPF ARM AARCH64

     39 #

     40 
     41 [Sources]
     42   Hash/CryptMd4Null.c
     43   Hash/CryptMd5.c
     44   Hash/CryptSha1.c
     45   Hash/CryptSha256.c
     46   Hash/CryptSha512Null.c
     47   Hmac/CryptHmacMd5Null.c
     48   Hmac/CryptHmacSha1Null.c
     49   Hmac/CryptHmacSha256Null.c
     50   Cipher/CryptAesNull.c
     51   Cipher/CryptTdesNull.c
     52   Cipher/CryptArc4Null.c
     53   Pk/CryptRsaBasic.c
     54   Pk/CryptRsaExtNull.c
     55   Pk/CryptPkcs5Pbkdf2Null.c
     56   Pk/CryptPkcs7SignNull.c
     57   Pk/CryptPkcs7Verify.c
     58   Pk/CryptDhNull.c
     59   Pk/CryptX509.c
     60   Pk/CryptAuthenticodeNull.c
     61   Pk/CryptTsNull.c
     62   Pem/CryptPem.c
     63 
     64   SysCall/CrtWrapper.c
     65   SysCall/TimerWrapper.c
     66   SysCall/RuntimeMemAllocation.c
     67 
     68 [Sources.Ia32]
     69   Rand/CryptRandTsc.c
     70 
     71 [Sources.X64]
     72   Rand/CryptRandTsc.c
     73 
     74 [Sources.IPF]
     75   Rand/CryptRandItc.c
     76 
     77 [Sources.ARM]
     78   Rand/CryptRand.c
     79 
     80 [Sources.AARCH64]
     81   Rand/CryptRand.c
     82 
     83 [Packages]
     84   MdePkg/MdePkg.dec
     85   CryptoPkg/CryptoPkg.dec
     86 
     87 [LibraryClasses]
     88   BaseLib
     89   BaseMemoryLib
     90   MemoryAllocationLib
     91   UefiBootServicesTableLib
     92   UefiRuntimeServicesTableLib
     93   DebugLib
     94   OpensslLib
     95   IntrinsicLib
     96   PrintLib
     97 
     98 #

     99 # Remove these [BuildOptions] after this library is cleaned up

    100 #

    101 [BuildOptions]
    102   GCC:*_GCC44_IA32_CC_FLAGS = "-D__cdecl=__attribute__((cdecl))" "-D__declspec(t)=__attribute__((t))"
    103 
    104   # -JCryptoPkg/Include : To disable the use of the system includes provided by RVCT

    105   # --diag_remark=1     : Reduce severity of "#1-D: last line of file ends without a newline"

    106   RVCT:*_*_ARM_CC_FLAGS = -JCryptoPkg/Include --diag_remark=1
    107