1 | ## @file
|
---|
2 | # Cryptographic Library Instance for SMM 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 functions, 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) 2010 - 2017, 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 = SmmCryptLib
|
---|
28 | MODULE_UNI_FILE = SmmCryptLib.uni
|
---|
29 | FILE_GUID = 028080a3-8958-4a62-a1a8-0fa1da162007
|
---|
30 | MODULE_TYPE = DXE_SMM_DRIVER
|
---|
31 | VERSION_STRING = 1.0
|
---|
32 | PI_SPECIFICATION_VERSION = 0x0001000A
|
---|
33 | LIBRARY_CLASS = BaseCryptLib|DXE_SMM_DRIVER SMM_CORE
|
---|
34 |
|
---|
35 | #
|
---|
36 | # The following information is for reference only and not required by the build tools.
|
---|
37 | #
|
---|
38 | # VALID_ARCHITECTURES = IA32 X64 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/CryptHmacSha256.c
|
---|
50 | Cipher/CryptAes.c
|
---|
51 | Cipher/CryptTdesNull.c
|
---|
52 | Cipher/CryptArc4Null.c
|
---|
53 | Pk/CryptRsaBasic.c
|
---|
54 | Pk/CryptRsaExtNull.c
|
---|
55 | Pk/CryptPkcs5Pbkdf2.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/ConstantTimeClock.c
|
---|
66 | SysCall/BaseMemAllocation.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 | IoLib
|
---|
90 | BaseMemoryLib
|
---|
91 | MemoryAllocationLib
|
---|
92 | OpensslLib
|
---|
93 | IntrinsicLib
|
---|
94 | PrintLib
|
---|
95 |
|
---|
96 | #
|
---|
97 | # Remove these [BuildOptions] after this library is cleaned up
|
---|
98 | #
|
---|
99 | [BuildOptions]
|
---|
100 | #
|
---|
101 | # suppress the following warnings so we do not break the build with warnings-as-errors:
|
---|
102 | # C4090: 'function' : different 'const' qualifiers
|
---|
103 | #
|
---|
104 | MSFT:*_*_*_CC_FLAGS = /wd4090
|
---|
105 |
|
---|
106 | GCC:*_GCC44_IA32_CC_FLAGS = "-D__cdecl=__attribute__((cdecl))" "-D__declspec(t)=__attribute__((t))"
|
---|
107 | XCODE:*_*_*_CC_FLAGS = -mmmx -msse
|
---|