MCUX CLNS
MCUX Crypto Library Normal Secure
Loading...
Searching...
No Matches
mcuxClRsa_Types.h
Go to the documentation of this file.
1/*--------------------------------------------------------------------------*/
2/* Copyright 2020-2026 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#ifndef MCUXCLRSA_TYPES_H_
40#define MCUXCLRSA_TYPES_H_
41
42#include <stdint.h>
43#include <stddef.h>
44#include <stdbool.h>
45#include <mcuxClConfig.h> // Exported features flags header
46#include <mcuxClSession.h>
49
50/***********************************************************
51 * MACROS
52 **********************************************************/
53
60
61/***********************************************************
62 * MACROS RELATED TO FUNCTION STATUS
63 **********************************************************/
64
71#define MCUXCLRSA_STATUS_SIGN_OK ((mcuxClRsa_Status_t) 0x0FF62E07U )
72#define MCUXCLRSA_STATUS_VERIFY_OK ((mcuxClRsa_Status_t) 0x0FF62E03U )
73#define MCUXCLRSA_STATUS_OK ((mcuxClRsa_Status_t) 0x0FF62E17U )
74#define MCUXCLRSA_STATUS_ERROR ((mcuxClRsa_Status_t) 0x0FF65330U )
75#define MCUXCLRSA_STATUS_INVALID_INPUT ((mcuxClRsa_Status_t) 0x0FF653F8U )
76#define MCUXCLRSA_STATUS_VERIFY_FAILED ((mcuxClRsa_Status_t) 0x0FF68930U )
77#define MCUXCLRSA_STATUS_FAULT_ATTACK ((mcuxClRsa_Status_t) 0x0FF6F0F0U )
78#define MCUXCLRSA_STATUS_KEYGENERATION_OK ((mcuxClRsa_Status_t) 0x0FF62E0FU )
79
81
82
83/***********************************************************
84 * MACROS RELATED TO PUBLIC FUNCTIONS' OPTIONS
85 **********************************************************/
96
97/**********************************************
98 * TYPEDEFS
99 **********************************************/
106
107/***********************************************************
108 * TYPES RELATED TO FUNCTION STATUS
109 **********************************************************/
110
114typedef uint32_t mcuxClRsa_Status_t;
115
116/***********************************************************
117 * TYPES RELATED TO RSA KEY
118 **********************************************************/
122/* Struct is packed to prevent compiler optimizations (e.g., LDR.D) on unaligned data. */
123typedef struct
124{
125 uint8_t* pKeyEntryData;
126 uint32_t keyEntryLength;
127} __attribute__ ((packed)) mcuxClRsa_KeyEntry_t;
128
132
133
134#endif /* MCUXCLRSA_TYPES_H_ */
135
Definition of function identifiers for the flow protection mechanism.
Top-level include file for the mcuxClSession component.
Provides the API for the CSSL flow protection mechanism.
uint32_t mcuxClRsa_Status_t
Type for RSA status codes.
Definition mcuxClRsa_Types.h:114
Structure type for Rsa key entries, specifying key entry length and data.
Definition mcuxClRsa_Types.h:124
uint8_t * pKeyEntryData
Pointer to buffer containing the key entry data in big-endian byte order.
Definition mcuxClRsa_Types.h:125
uint32_t keyEntryLength
Byte-length of the buffer pointed to by pKeyEntryData.
Definition mcuxClRsa_Types.h:126