Files
system76-edk2/MdeModulePkg/Library/BaseRngLibTimerLib/BaseRngLibTimerLib.inf
Pierre Gondois 2f981bddcb MdeModulePkg: Duplicate BaseRngLibTimerLib to MdeModulePkg
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=4504

The BaseRngLibTimerLib allows to generate number based on a timer.
This mechanism allows to have a basic non-secure implementation
for non-production platforms.
To bind and identify Random Number Generators implementations with
a GUID, an unsafe GUID should be added. This GUID cannot be added
to the MdePkg unless it is also added to a specification.

To keep the MdePkg self-contained, copy the BaseRngLibTimerLib to
the MdeModulePkg. This will allow to define an unsafe Rng GUID
in a later patch in the MdeModulePkg.

The MdePkg implementation will be removed later. This allows to give
some time to platform owners to switch to the MdeModulePkg
implementation.

Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Tested-by: Kun Qin <kun.qin@microsoft.com>
2023-09-08 09:48:55 +00:00

37 lines
1.1 KiB
INI

## @file
# Instance of RNG (Random Number Generator) Library.
#
# BaseRng Library that uses the TimerLib to provide reasonably random numbers.
# Do NOT use this on a production system as this uses the system performance
# counter rather than a true source of random in addition to having a weak
# random algorithm. This is provided primarily as a source of entropy for
# OpenSSL for platforms that do not have a good built in RngLib as this
# emulates what was done before (though it isn't perfect).
#
# Copyright (c) Microsoft Corporation. All rights reserved.<BR>
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
#
##
[Defines]
INF_VERSION = 1.27
BASE_NAME = BaseRngLibTimerLib
MODULE_UNI_FILE = BaseRngLibTimerLib.uni
FILE_GUID = 74950C45-10FC-4AB5-B114-49C87C17409B
MODULE_TYPE = BASE
VERSION_STRING = 1.0
LIBRARY_CLASS = RngLib
[Sources]
RngLibTimer.c
[Packages]
MdePkg/MdePkg.dec
[LibraryClasses]
BaseLib
DebugLib
TimerLib