X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=CryptoPkg%2FCryptoPkg.dec;h=4d1a1368a8d44bf1ebe1c67c0b9f3d73a406e3b1;hp=00148835f47c18900e70b8973ea711862dd219a9;hb=HEAD;hpb=94d67262d891271c5b01eb12b20ef33cbd5ae5e6
diff --git a/CryptoPkg/CryptoPkg.dec b/CryptoPkg/CryptoPkg.dec
index 00148835f4..e20a5e9c38 100644
--- a/CryptoPkg/CryptoPkg.dec
+++ b/CryptoPkg/CryptoPkg.dec
@@ -4,14 +4,8 @@
# This Package provides cryptographic-related libraries for UEFI security modules.
# It also provides a test application to test libraries.
#
-# Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.
-# This program and the accompanying materials
-# are licensed and made available under the terms and conditions of the BSD License
-# which accompanies this distribution. The full text of the license may be found at
-# http://opensource.org/licenses/bsd-license.php
-#
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+# Copyright (c) 2009 - 2020, Intel Corporation. All rights reserved.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##
@@ -26,9 +20,9 @@
Include
[Includes.Common.Private]
+ Private
Library/Include
Library/OpensslLib/openssl/include
- Library/OpensslLib/openssl/crypto/include
[LibraryClasses]
## @libraryclass Provides basic library functions for cryptographic primitives.
@@ -39,5 +33,62 @@
##
TlsLib|Include/Library/TlsLib.h
+ ## @libraryclass Provides Unified API for different hash implementations.
+ #
+ HashApiLib|Include/Library/HashApiLib.h
+
+[LibraryClasses.common.Private]
+ ## @libraryclass Provides library functions from the openssl project.
+ #
+ OpensslLib|Private/Library/OpensslLib.h
+
+ ## @libraryclass Provides compiler intrinsic functions required to link openssl project.
+ #
+ InstrinsicLib|Private/Library/IntrinsicLib.h
+
+[Protocols]
+ ## EDK II Crypto DXE protocol
+ # 2C2275C9-3A7B-426F-BE54-2D22BD9D1092
+ gEdkiiCryptoProtocolGuid = { 0x2C2275C9, 0x3A7B, 0x426F, { 0xBE, 0x54, 0x2D, 0x22, 0xBD, 0x9D, 0x10, 0x92 }}
+
+ ## EDK II Crypto SMM protocol
+ # F46B2EB2-E0D7-4C96-A3B1-CB7C572EB300
+ gEdkiiSmmCryptoProtocolGuid = { 0xF46B2EB2, 0xE0D7, 0x4C96, { 0xA3, 0xB1, 0xc, 0x61, 0xbb, 0x24, 0x5c, 0x42 }}
+
+[Ppis]
+ ## EDK II Crypto PPI
+ # 7DCE671B-C223-446A-A705-ED637AAF6771
+ gEdkiiCryptoPpiGuid = { 0x7DCE671B, 0xC223, 0x446A, { 0xA7, 0x05, 0xED, 0x63, 0x7A, 0xAF, 0x67, 0x71 }}
+
+[Guids]
+ ## Crypto package token space guid.
+ gEfiCryptoPkgTokenSpaceGuid = { 0x6bd7de60, 0x9ef7, 0x4899, { 0x97, 0xd0, 0xab, 0xff, 0xfd, 0xe9, 0x70, 0xf2 } }
+
+[PcdsFixedAtBuild]
+ ## Enable/Disable the families and individual services produced by the
+ # EDK II Crypto Protocols/PPIs. The default is all services disabled.
+ # This Structured PCD is associated with PCD_CRYPTO_SERVICE_FAMILY_ENABLE
+ # structure that is defined in Include/Pcd/PcdCryptoServiceFamilyEnable.h.
+ # @Prompt Enable/Disable EDK II Crypto Protocol/PPI services
+ gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable|{0x00}|PCD_CRYPTO_SERVICE_FAMILY_ENABLE|0x00000002 {
+
+ CryptoPkg/CryptoPkg.dec
+
+ Pcd/PcdCryptoServiceFamilyEnable.h
+ }
+
+ ## This PCD indicates the HASH algorithm to calculate hash of data
+ # Based on the value set, the required algorithm is chosen to calculate
+ # the hash of data.
+ # The default hashing algorithm for BaseHashApiLib is set to SHA256.
+ # 0x00000001 - HASH_ALG_SHA1.
+ # 0x00000002 - HASH_ALG_SHA256.
+ # 0x00000004 - HASH_ALG_SHA384.
+ # 0x00000008 - HASH_ALG_SHA512.
+ # 0x00000010 - HASH_ALG_SM3_256.
+ # @Prompt Set policy for hashing unsigned image for Secure Boot.
+ # @ValidList 0x80000001 | 0x00000001, 0x00000002, 0x00000004, 0x00000008, 0x00000010
+ gEfiCryptoPkgTokenSpaceGuid.PcdHashApiLibPolicy|0x00000002|UINT32|0x00000001
+
[UserExtensions.TianoCore."ExtraFiles"]
CryptoPkgExtra.uni