CryptoPkg: Add HMAC-SHA256 cipher support
[mirror_edk2.git] / CryptoPkg / Library / BaseCryptLib / RuntimeCryptLib.inf
1 ## @file\r
2 #  Cryptographic Library Instance for DXE_RUNTIME_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/SHA256 functions, AES/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) 2009 - 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                      = RuntimeCryptLib\r
28   MODULE_UNI_FILE                = RuntimeCryptLib.uni\r
29   FILE_GUID                      = 78189cc0-727d-46a4-84ea-f7dd860de64a\r
30   MODULE_TYPE                    = DXE_RUNTIME_DRIVER\r
31   VERSION_STRING                 = 1.0\r
32   LIBRARY_CLASS                  = BaseCryptLib|DXE_RUNTIME_DRIVER\r
33   CONSTRUCTOR                    = RuntimeCryptLibConstructor\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 IPF 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   Hmac/CryptHmacSha256Null.c\r
50   Cipher/CryptAesNull.c\r
51   Cipher/CryptTdesNull.c\r
52   Cipher/CryptArc4Null.c\r
53   Pk/CryptRsaBasic.c\r
54   Pk/CryptRsaExtNull.c\r
55   Pk/CryptPkcs7SignNull.c\r
56   Pk/CryptPkcs7Verify.c\r
57   Pk/CryptDhNull.c\r
58   Pk/CryptX509.c\r
59   Pk/CryptAuthenticodeNull.c\r
60   Pk/CryptTsNull.c\r
61   Pem/CryptPem.c\r
62 \r
63   SysCall/CrtWrapper.c\r
64   SysCall/TimerWrapper.c\r
65   SysCall/RuntimeMemAllocation.c\r
66 \r
67 [Sources.Ia32]\r
68   Rand/CryptRandTsc.c\r
69 \r
70 [Sources.X64]\r
71   Rand/CryptRandTsc.c\r
72 \r
73 [Sources.IPF]\r
74   Rand/CryptRandItc.c\r
75 \r
76 [Sources.ARM]\r
77   Rand/CryptRand.c\r
78 \r
79 [Sources.AARCH64]\r
80   Rand/CryptRand.c\r
81 \r
82 [Packages]\r
83   MdePkg/MdePkg.dec\r
84   CryptoPkg/CryptoPkg.dec\r
85 \r
86 [LibraryClasses]\r
87   BaseLib\r
88   BaseMemoryLib\r
89   MemoryAllocationLib\r
90   UefiBootServicesTableLib\r
91   UefiRuntimeServicesTableLib\r
92   DebugLib\r
93   OpensslLib\r
94   IntrinsicLib\r
95   PrintLib\r
96 \r
97 #\r
98 # Remove these [BuildOptions] after this library is cleaned up\r
99 #\r
100 [BuildOptions]\r
101   GCC:*_GCC44_IA32_CC_FLAGS = "-D__cdecl=__attribute__((cdecl))" "-D__declspec(t)=__attribute__((t))"\r
102 \r
103   # -JCryptoPkg/Include : To disable the use of the system includes provided by RVCT\r
104   # --diag_remark=1     : Reduce severity of "#1-D: last line of file ends without a newline"\r
105   RVCT:*_*_ARM_CC_FLAGS = -JCryptoPkg/Include --diag_remark=1\r