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, 2025 NXP */
3/* */
4/* SPDX-License-Identifier: BSD-3-Clause */
5/* */
6/* Redistribution and use in source and binary forms, with or without */
7/* modification, are permitted provided that the following conditions are */
8/* met: */
9/* */
10/* 1. Redistributions of source code must retain the above copyright */
11/* notice, this list of conditions and the following disclaimer. */
12/* */
13/* 2. Redistributions in binary form must reproduce the above copyright */
14/* notice, this list of conditions and the following disclaimer in the */
15/* documentation and/or other materials provided with the distribution. */
16/* */
17/* 3. Neither the name of the copyright holder nor the names of its */
18/* contributors may be used to endorse or promote products derived from */
19/* this software without specific prior written permission. */
20/* */
21/* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS */
22/* IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED */
23/* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A */
24/* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */
25/* HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */
26/* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED */
27/* TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR */
28/* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF */
29/* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING */
30/* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS */
31/* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */
32/*--------------------------------------------------------------------------*/
33
38
39
40#ifndef MCUXCLRANDOM_TYPES_H_
41#define MCUXCLRANDOM_TYPES_H_
42
43#include <mcuxClConfig.h> // Exported features flags header
44
45#include <mcuxClCore_Platform.h>
46#include <mcuxClBuffer.h>
47
48#ifdef __cplusplus
49extern "C" {
50#endif
51
52/**********************************************************/
53/* Types of mcuxClRandom */
54/**********************************************************/
61
68typedef uint32_t mcuxClRandom_Status_t;
69
76struct mcuxClRandom_Context;
77
84typedef struct mcuxClRandom_Context mcuxClRandom_ContextDescriptor_t;
85
92
99struct mcuxClRandom_ModeDescriptor;
100
107typedef struct mcuxClRandom_ModeDescriptor mcuxClRandom_ModeDescriptor_t;
108
115
120 void *pCustomPrngState,
121 mcuxCl_Buffer_t pOut,
122 uint32_t outLength
123);
124
136
143 /* mcuxClRandom_Types */
147
148#ifdef __cplusplus
149} /* extern "C" */
150#endif
151
152#endif /* MCUXCLRANDOM_TYPES_H_ */
Top-level include file for the mcuxClBuffer component.
uint8_t * mcuxCl_Buffer_t
Input/output buffer type.
Definition mcuxClBuffer_Pointer.h:67
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:119
const mcuxClRandom_ModeDescriptor_t * mcuxClRandom_Mode_t
Random data generation mode/algorithm type.
Definition mcuxClRandom_Types.h:114
uint32_t mcuxClRandom_Status_t
Type for status codes of mcuxClRandom component functions.
Definition mcuxClRandom_Types.h:68
struct mcuxClRandom_Context mcuxClRandom_ContextDescriptor_t
Random context type.
Definition mcuxClRandom_Types.h:84
mcuxClRandom_ContextDescriptor_t * mcuxClRandom_Context_t
Random context type.
Definition mcuxClRandom_Types.h:91
struct mcuxClRandom_ModeDescriptor mcuxClRandom_ModeDescriptor_t
Random data generation mode/algorithm descriptor type.
Definition mcuxClRandom_Types.h:107
struct mcuxClRandom_Config mcuxClRandom_Config_t
Random config type.
Definition mcuxClRandom_Types.h:142
Random config structure.
Definition mcuxClRandom_Types.h:130
mcuxClRandom_Context_t ctx
Context for the Rng.
Definition mcuxClRandom_Types.h:132
void * pCustomPrngState
User-maintained state for a custom PRNG function.
Definition mcuxClRandom_Types.h:134
mcuxClRandom_Mode_t mode
Random data generation mode/algorithm.
Definition mcuxClRandom_Types.h:131
mcuxClRandom_CustomNcGenerateAlgorithm_t prngPatchFunction
Function pointer to a custom PRNG function.
Definition mcuxClRandom_Types.h:133