MCUX CLNS
MCUX Crypto Library Normal Secure
mcuxClRandomModes_Functions_PatchMode.h
1 /*--------------------------------------------------------------------------*/
2 /* Copyright 2021-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 
14 #ifndef MCUXCLRANDOMMODES_FUNCTIONS_PATCHMODE_H_
15 #define MCUXCLRANDOMMODES_FUNCTIONS_PATCHMODE_H_
16 
17 #include <mcuxClConfig.h> // Exported features flags header
18 
19 #include <mcuxClSession.h>
20 #include <mcuxClRandom_Types.h>
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
40 /* Interface definition for a custom RNG function */
41 typedef mcuxClRandom_Status_t (* mcuxClRandomModes_CustomGenerateAlgorithm_t)(
42  mcuxClSession_Handle_t session,
43  mcuxClRandom_Context_t pCustomCtx,
44  uint8_t *pOut,
45  uint32_t outLength
46 );
47 
66 MCUX_CSSL_FP_FUNCTION_DECL(mcuxClRandomModes_createPatchMode)
67 MCUX_CSSL_FP_PROTECTED_TYPE(mcuxClRandom_Status_t) mcuxClRandomModes_createPatchMode(
69  mcuxClRandomModes_CustomGenerateAlgorithm_t customGenerateAlgorithm,
70  mcuxClRandom_Context_t pCustomCtx,
71  uint32_t securityStrength
72 );
73 
74 
75 #ifdef __cplusplus
76 } /* extern "C" */
77 #endif
78 
79 #endif /* MCUXCLRANDOMMODES_FUNCTIONS_PATCHMODE_H_ */
mcuxClSession_Descriptor_t *const mcuxClSession_Handle_t
Type for mcuxClSession Handle.
Definition: mcuxClSession_Types.h:133
Top-level include file for the mcuxClSession component.
mcuxClRandom_ContextDescriptor_t * mcuxClRandom_Context_t
Random context type.
Definition: mcuxClRandom_Types.h:70
#define MCUX_CSSL_FP_FUNCTION_DECL(...)
Declaration of a flow protected function.
Definition: mcuxCsslFlowProtection.h:125
Type definitions of mcuxClRandom component.
#define MCUX_CSSL_FP_PROTECTED_TYPE(resultType)
Based on a given base type, builds a return type with flow protection.
Definition: mcuxCsslFlowProtection.h:81
struct mcuxClRandom_ModeDescriptor mcuxClRandom_ModeDescriptor_t
Random data generation mode/algorithm descriptor type.
Definition: mcuxClRandom_Types.h:86
uint32_t mcuxClRandom_Status_t
Type for status codes of mcuxClRandom component functions.
Definition: mcuxClRandom_Types.h:47