-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
CryptoPkg/OpensslLib: Create SM3-only version of the library
Create a special OpensslLib implementation that only exposes the SM3 routines that MbedTlsLib borrows from OpensslLib, to avoid having to pull in other parts of OpenSSL that are not needed (e.g., via the library constructor) Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
- Loading branch information
1 parent
1815f35
commit 1a89c69
Showing
3 changed files
with
51 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
## @file | ||
# Minimal OpensslLib implementation that only provides SM3 and nothing else. | ||
# Needed by MbedTlsLib. | ||
# | ||
# Copyright (c) 2024, Google LLC. All rights reserved.<BR> | ||
# | ||
# SPDX-License-Identifier: BSD-2-Clause-Patent | ||
# | ||
## | ||
|
||
[Defines] | ||
INF_VERSION = 1.30 | ||
BASE_NAME = OpensslLibSm3 | ||
FILE_GUID = 96469bab-9c3f-4a60-a583-71a8bda64ec9 | ||
MODULE_TYPE = BASE | ||
VERSION_STRING = 1.0 | ||
LIBRARY_CLASS = OpensslLib | ||
|
||
DEFINE OPENSSL_PATH = openssl | ||
|
||
[Sources] | ||
$(OPENSSL_PATH)/crypto/sm3/sm3.c | ||
OpensslStub/OpensslCleanse.c | ||
|
||
[Packages] | ||
MdePkg/MdePkg.dec | ||
CryptoPkg/CryptoPkg.dec | ||
|
||
[LibraryClasses] | ||
BaseMemoryLib |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
/** @file | ||
Minimal implementation of OPENSSL_cleanse for OpensslLibSm3.inf. | ||
Copyright (c) 2024, Google LLC. All rights reserved.<BR> | ||
SPDX-License-Identifier: BSD-2-Clause-Patent | ||
**/ | ||
|
||
#include <Base.h> | ||
#include <Library/BaseMemoryLib.h> | ||
|
||
VOID | ||
OPENSSL_cleanse ( | ||
VOID *Buffer, | ||
UINTN Size | ||
) | ||
{ | ||
ZeroMem (Buffer, Size); | ||
} |