34UINTN mAvailableAlgoArrayCount;
70 if (EFI_ERROR (Status)) {
74 if (mAvailableAlgoArrayCount == 0) {
82 Status =
gBS->InstallMultipleProtocolInterfaces (
88 if (EFI_ERROR (Status)) {
134 OUT UINT8 *RandBuffer
143 return EFI_NOT_READY;
146 if (Length >=
sizeof (TempRand)) {
148 RandBuffer +=
sizeof (UINT64);
150 RandBuffer +=
sizeof (UINT64);
151 Length -=
sizeof (TempRand);
153 CopyMem (RandBuffer, TempRand, Length);
UINT64 EFIAPI WriteUnaligned64(OUT UINT64 *Buffer, IN UINT64 Value)
VOID *EFIAPI CopyMem(OUT VOID *DestinationBuffer, IN CONST VOID *SourceBuffer, IN UINTN Length)
BOOLEAN EFIAPI GetRandomNumber128(OUT UINT64 *Rand)
#define EFI_REQUEST_UNLOAD_IMAGE
EFI_STATUS EFIAPI GetAvailableAlgorithms(VOID)
VOID EFIAPI FreeAvailableAlgorithms(VOID)
EFI_STATUS EFIAPI RngGetInfo(IN EFI_RNG_PROTOCOL *This, IN OUT UINTN *RNGAlgorithmListSize, OUT EFI_RNG_ALGORITHM *RNGAlgorithmList)
EFI_STATUS EFIAPI RngGetRNG(IN EFI_RNG_PROTOCOL *This, IN EFI_RNG_ALGORITHM *RNGAlgorithm OPTIONAL, IN UINTN RNGValueLength, OUT UINT8 *RNGValue)
EFI_STATUS EFIAPI RngDriverUnLoad(IN EFI_HANDLE ImageHandle)
EFI_STATUS EFIAPI RngDriverEntry(IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)
EFI_STATUS EFIAPI RngGetBytes(IN UINTN Length, OUT UINT8 *RandBuffer)