Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ruft einen RNG-Wert (Random Number Generation) ab.
Syntax
typedef EFI_STATUS (EFIAPI *EFI_RNG_GET_RNG) (
IN struct _EFI_RNG_PROTOCOL *This,
IN EFI_RNG_ALGORITHM *RNGAlgorithm, OPTIONAL
IN UINTN RNGValueLength,
OUT UINT8 *RNGValue
);
Parameter
Dieser
[in] Ein Zeiger auf die EFI_RNG_PROTOCOL instance.
RNGAlgorithm
[in] Ein Zeiger auf den EFI_RNG_ALGORITHM, der den zu verwendenden RNG-Algorithmus identifiziert. Wenn dieser Parameter NULL ist, wird der vom Treiber unterstützte Standardalgorithmus verwendet.
RNGValueLength
[in] Die Länge des von RNGValue zurückgegebenen Puffers in Bytes.
RNGValue
[in] Zeiger auf einen Puffer, der den RNG-Wert enthält. Der Wert wird von dieser Funktion mithilfe von EFI_BOOT_SERVICES-AllocatePool>() zugewiesen, und es liegt in der Verantwortung des Aufrufers, diesen Arbeitsspeicher mithilfe von EFI_BOOT_SERVICES-FreePool>() freizugeben.
Bemerkungen
Die Mindestgröße von RNGValue beträgt 32 Bytes.
Rückgabewert
Gibt einen der folgenden status-Codes zurück.
| Statuscode | Beschreibung |
|---|---|
| EFI_SUCCESS | Die Funktion hat erfolgreich einen RNG-Wert zurückgegeben. |
| EFI_INVALID_PARAMETER | RNGAlgorithm ist NULL, wenn mehrere Algorithmen möglich sind. |
| EFI_UNSUPPORTED | Der von RNGAlgorithm angegebene Algorithmus wird von diesem Treiber nicht unterstützt. |
| EFI_DEVICE_ERROR | Ein RNG-Wert konnte aufgrund eines Hardware- oder Firmwarefehlers nicht abgerufen werden. |
| EFI_NOT_READY | Es sind nicht genügend Entropiedaten verfügbar. |
| EFI_OUT_OF_RESOURCES | Der Treiber kann keinen Arbeitsspeicher für den RNG-Wert zuweisen. |
Anforderungen
Header: Benutzer generiert