bff7a9e7683c8eb5f033b805966e7f7acd9fd88c
[mirror_edk2.git] / CryptoPkg / Library / BaseCryptLib / SmmCryptLib.inf
1 ## @file\r
2 #  Cryptographic Library Instance for SMM driver.\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, TDES/ARC4 functions, RSA external\r
11 #  functions, PKCS#7 SignedData sign functions, Diffie-Hellman functions, and \r
12 #  authenticode signature verification functions are not supported in this instance.\r
13 #\r
14 #  Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>\r
15 #  This program and the accompanying materials\r
16 #  are licensed and made available under the terms and conditions of the BSD License\r
17 #  which accompanies this distribution.  The full text of the license may be found at\r
18 #  http://opensource.org/licenses/bsd-license.php\r
19 #\r
20 #  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
21 #  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
22 #\r
23 ##\r
24 \r
25 [Defines]\r
26   INF_VERSION                    = 0x00010005\r
27   BASE_NAME                      = SmmCryptLib\r
28   MODULE_UNI_FILE                = SmmCryptLib.uni\r
29   FILE_GUID                      = 028080a3-8958-4a62-a1a8-0fa1da162007\r
30   MODULE_TYPE                    = DXE_SMM_DRIVER\r
31   VERSION_STRING                 = 1.0\r
32   PI_SPECIFICATION_VERSION       = 0x0001000A\r
33   LIBRARY_CLASS                  = BaseCryptLib|DXE_SMM_DRIVER SMM_CORE\r
34 \r
35 #\r
36 # The following information is for reference only and not required by the build tools.\r
37 #\r
38 #  VALID_ARCHITECTURES           = IA32 X64 ARM AARCH64\r
39 #\r
40 \r
41 [Sources]\r
42   Hash/CryptMd4Null.c\r
43   Hash/CryptMd5.c\r
44   Hash/CryptSha1.c\r
45   Hash/CryptSha256.c\r
46   Hash/CryptSha512Null.c\r
47   Hmac/CryptHmacMd5Null.c\r
48   Hmac/CryptHmacSha1Null.c\r
49   Cipher/CryptAes.c\r
50   Cipher/CryptTdesNull.c\r
51   Cipher/CryptArc4Null.c\r
52   Pk/CryptRsaBasic.c\r
53   Pk/CryptRsaExtNull.c\r
54   Pk/CryptPkcs7SignNull.c\r
55   Pk/CryptPkcs7Verify.c\r
56   Pk/CryptDhNull.c\r
57   Pk/CryptX509.c\r
58   Pk/CryptAuthenticodeNull.c\r
59   Pk/CryptTsNull.c\r
60   Pem/CryptPem.c\r
61 \r
62   SysCall/CrtWrapper.c\r
63   SysCall/ConstantTimeClock.c\r
64   SysCall/BaseMemAllocation.c\r
65 \r
66 [Sources.Ia32]\r
67   Rand/CryptRandTsc.c\r
68 \r
69 [Sources.X64]\r
70   Rand/CryptRandTsc.c\r
71 \r
72 [Sources.IPF]\r
73   Rand/CryptRandItc.c\r
74 \r
75 [Sources.ARM]\r
76   Rand/CryptRand.c\r
77 \r
78 [Sources.AARCH64]\r
79   Rand/CryptRand.c\r
80 \r
81 [Packages]\r
82   MdePkg/MdePkg.dec\r
83   CryptoPkg/CryptoPkg.dec\r
84 \r
85 [LibraryClasses]\r
86   BaseLib\r
87   IoLib\r
88   BaseMemoryLib\r
89   MemoryAllocationLib\r
90   OpensslLib\r
91   IntrinsicLib\r
92   PrintLib\r
93 \r
94 #\r
95 # Remove these [BuildOptions] after this library is cleaned up\r
96 #\r
97 [BuildOptions]\r
98   GCC:*_GCC44_IA32_CC_FLAGS = "-D__cdecl=__attribute__((cdecl))" "-D__declspec(t)=__attribute__((t))"\r
99   XCODE:*_*_*_CC_FLAGS = -mmmx -msse\r