75f8e6e5f06dbb37683d80ba579bf62f9efe86f5
[mirror_edk2.git] / CryptoPkg / Library / BaseCryptLib / PeiCryptLib.inf
1 ## @file\r
2 #  Cryptographic Library Instance for PEIM.\r
3 #\r
4 #  Caution: This module requires additional review when modified.\r
5 #  This library will have external input - signature.\r
6 #  This external input must be validated carefully to avoid security issues such as\r
7 #  buffer overflow or integer overflow.\r
8 #\r
9 #  Note: MD4 Digest functions, SHA-384 Digest functions, SHA-512 Digest functions,\r
10 #  HMAC-MD5 functions, HMAC-SHA1 functions, AES/TDES/ARC4 functions, RSA external \r
11 #  functions, PKCS#7 SignedData sign functions, Diffie-Hellman functions, X.509 \r
12 #  certificate handler functions, authenticode signature verification functions, \r
13 #  PEM handler functions, and pseudorandom number generator functions are not \r
14 #  supported in this instance.\r
15 #\r
16 #  Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.<BR>\r
17 #  This program and the accompanying materials\r
18 #  are licensed and made available under the terms and conditions of the BSD License\r
19 #  which accompanies this distribution.  The full text of the license may be found at\r
20 #  http://opensource.org/licenses/bsd-license.php\r
21 #\r
22 #  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
23 #  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
24 #\r
25 ##\r
26 \r
27 [Defines]\r
28   INF_VERSION                    = 0x00010005\r
29   BASE_NAME                      = PeiCryptLib\r
30   MODULE_UNI_FILE                = PeiCryptLib.uni\r
31   FILE_GUID                      = 9a2a4375-194c-4e97-9f67-547ec98d96ca\r
32   MODULE_TYPE                    = PEIM\r
33   VERSION_STRING                 = 1.0\r
34   LIBRARY_CLASS                  = BaseCryptLib|PEIM PEI_CORE\r
35 \r
36 #\r
37 # The following information is for reference only and not required by the build tools.\r
38 #\r
39 #  VALID_ARCHITECTURES           = IA32 X64\r
40 #\r
41 \r
42 [Sources]\r
43   Hash/CryptMd4Null.c\r
44   Hash/CryptMd5.c\r
45   Hash/CryptSha1.c\r
46   Hash/CryptSha256.c\r
47   Hash/CryptSha512Null.c\r
48   Hmac/CryptHmacMd5Null.c\r
49   Hmac/CryptHmacSha1Null.c\r
50   Cipher/CryptAesNull.c\r
51   Cipher/CryptTdesNull.c\r
52   Cipher/CryptArc4Null.c\r
53 \r
54   Pk/CryptRsaBasic.c\r
55   Pk/CryptRsaExtNull.c\r
56   Pk/CryptPkcs7SignNull.c\r
57   Pk/CryptPkcs7Verify.c\r
58 \r
59   Pk/CryptDhNull.c\r
60   Pk/CryptX509Null.c\r
61   Pk/CryptAuthenticodeNull.c\r
62   Pk/CryptTsNull.c\r
63   Pem/CryptPemNull.c\r
64 \r
65   Rand/CryptRandNull.c\r
66 \r
67   SysCall/CrtWrapper.c\r
68   SysCall/ConstantTimeClock.c\r
69   SysCall/BaseMemAllocation.c\r
70 \r
71 [Packages]\r
72   MdePkg/MdePkg.dec\r
73   CryptoPkg/CryptoPkg.dec\r
74 \r
75 [LibraryClasses]\r
76   BaseLib\r
77   BaseMemoryLib\r
78   MemoryAllocationLib\r
79   DebugLib\r
80   OpensslLib\r
81   IntrinsicLib\r
82 \r
83 #\r
84 # Remove these [BuildOptions] after this library is cleaned up\r
85 #\r
86 [BuildOptions]\r
87   GCC:*_GCC44_IA32_CC_FLAGS = "-D__cdecl=__attribute__((cdecl))" "-D__declspec(t)=__attribute__((t))"\r
88 \r
89   # -JCryptoPkg/Include : To disable the use of the system includes provided by RVCT\r
90   # --diag_remark=1     : Reduce severity of "#1-D: last line of file ends without a newline"\r
91   RVCT:*_*_ARM_CC_FLAGS = -JCryptoPkg/Include --diag_remark=1\r