MCUX CLNS
MCUX Crypto Library Normal Secure
 
Loading...
Searching...
No Matches
mcuxClRandom_Types.h
Go to the documentation of this file.
1/*--------------------------------------------------------------------------*/
2/* Copyright 2020-2023 NXP */
3/* */
4/* NXP Confidential. This software is owned or controlled by NXP and may */
5/* only be used strictly in accordance with the applicable license terms. */
6/* By expressly accepting such terms or by downloading, installing, */
7/* activating and/or otherwise using the software, you are agreeing that */
8/* you have read, and that you agree to comply with and are bound by, such */
9/* license terms. If you do not agree to be bound by the applicable license */
10/* terms, then you may not retain, install, activate or otherwise use the */
11/* software. */
12/*--------------------------------------------------------------------------*/
13
20#ifndef MCUXCLRANDOM_TYPES_H_
21#define MCUXCLRANDOM_TYPES_H_
22
23#include <mcuxClConfig.h> // Exported features flags header
24
25#include <mcuxClCore_Platform.h>
26#include <mcuxClBuffer.h>
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32/**********************************************************/
33/* Types of mcuxClRandom */
34/**********************************************************/
48typedef uint32_t mcuxClRandom_Status_t;
49
56struct mcuxClRandom_Context;
57
64typedef struct mcuxClRandom_Context mcuxClRandom_ContextDescriptor_t;
65
72
79struct mcuxClRandom_ModeDescriptor;
80
87typedef struct mcuxClRandom_ModeDescriptor mcuxClRandom_ModeDescriptor_t;
88
95
100 void *pCustomPrngState,
101 mcuxCl_Buffer_t pOut,
102 uint32_t outLength
103);
104
115};
116
123 /* mcuxClRandom_Types */
127
128#ifdef __cplusplus
129} /* extern "C" */
130#endif
131
132#endif /* MCUXCLRANDOM_TYPES_H_ */
Provides the API for the CL buffer types.
uint8_t * mcuxCl_Buffer_t
Input/output buffer type.
Definition mcuxClBuffer_Pointer.h:55
mcuxClRandom_Status_t(* mcuxClRandom_CustomNcGenerateAlgorithm_t)(void *pCustomPrngState, mcuxCl_Buffer_t pOut, uint32_t outLength)
Interface definition for custom PRNG functions to be used by PRNG patch mode.
Definition mcuxClRandom_Types.h:99
const mcuxClRandom_ModeDescriptor_t * mcuxClRandom_Mode_t
Random data generation mode/algorithm type.
Definition mcuxClRandom_Types.h:94
uint32_t mcuxClRandom_Status_t
Type for status codes of mcuxClRandom component functions.
Definition mcuxClRandom_Types.h:48
struct mcuxClRandom_Context mcuxClRandom_ContextDescriptor_t
Random context type.
Definition mcuxClRandom_Types.h:64
mcuxClRandom_ContextDescriptor_t * mcuxClRandom_Context_t
Random context type.
Definition mcuxClRandom_Types.h:71
struct mcuxClRandom_ModeDescriptor mcuxClRandom_ModeDescriptor_t
Random data generation mode/algorithm descriptor type.
Definition mcuxClRandom_Types.h:87
Random config structure.
Definition mcuxClRandom_Types.h:110
mcuxClRandom_Context_t ctx
Context for the Rng.
Definition mcuxClRandom_Types.h:112
void * pCustomPrngState
User-maintained state for a custom PRNG function.
Definition mcuxClRandom_Types.h:114
mcuxClRandom_Mode_t mode
Random data generation mode/algorithm.
Definition mcuxClRandom_Types.h:111
mcuxClRandom_CustomNcGenerateAlgorithm_t prngPatchFunction
Function pointer to a custom PRNG function.
Definition mcuxClRandom_Types.h:113