다음을 통해 공유


EFI_RNG_PROTOCOL. GetInfo

EFI_RNG_PROTOCOL 구현하는 드라이버에서 지원하는 RNG 알고리즘에 대한 정보를 반환합니다.

구문

typedef
EFI_STATUS
(EFIAPI *EFI_RNG_GET_INFO) (
    IN  struct _EFI_RNG_PROTOCOL    *This,
    IN  OUT UINTN                   *RNGAlgorithmListSize,
    OUT EFI_RNG_ALGORITHM           *RNGAlgorithmList
    );

매개 변수

This
[in] EFI_RNG_PROTOCOL instance 대한 포인터입니다.

RNGAlgorithmListSize
[in, out] RNGAlgorithmList의 알고리즘 수입니다.

RNGAlgorithmList
[out] RNG 알고리즘을 나타내는 EFI_RNG_ALGORITHM 값 목록에 대한 포인터입니다. 각 알고리즘은 바이트 길이입니다 sizeof(EFI_GUID) .

설명

EFI_RNG_PROTOCOL 구현하는 드라이버는 하나 이상의 RNG 알고리즘을 지원할 수 있습니다.

RNGAlgorithmList 매개 변수에서 반환된 값은 동일한 드라이버에 대한 여러 호출에서 변경되지 않아야 합니다. 목록의 첫 번째 알고리즘은 드라이버의 기본 알고리즘입니다.

알고리즘 목록은 EFI_BOOT_SERVICES-AllocatePool()을 사용하여 이 함수에 의해 할당되며 EFI_BOOT_SERVICES-FreePool>>()을 사용하여 이 목록을 해제하는 것은 호출자의 책임입니다.

반환 값

다음 상태 코드 중 하나를 반환합니다.

상태 코드 Description
EFI_SUCCESS 함수가 RNG 알고리즘 목록을 성공적으로 검색했습니다.
EFI_UNSUPPORTED 서비스는 이 드라이버에서 지원되지 않습니다.
EFI_DEVICE_ERROR 하드웨어 또는 펌웨어 오류로 인해 RNG 알고리즘 목록을 검색할 수 없습니다.
EFI_OUT_OF_RESOURCES 드라이버가 RNGAlgorithmList 매개 변수에 대한 메모리를 할당할 수 없습니다.

요구 사항

헤더: 생성된 사용자