Kenji Arai / mbed-os_TYBLE16

Dependents:   TYBLE16_simple_data_logger TYBLE16_MP3_Air

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers crys_dh_error.h Source File

crys_dh_error.h

Go to the documentation of this file.
00001 /**************************************************************************************
00002 * Copyright (c) 2016-2017, ARM Limited or its affiliates. All rights reserved         *
00003 *                                                                                     *
00004 * This file and the related binary are licensed under the following license:          *
00005 *                                                                                     *
00006 * ARM Object Code and Header Files License, v1.0 Redistribution.                      *
00007 *                                                                                     *
00008 * Redistribution and use of object code, header files, and documentation, without     *
00009 * modification, are permitted provided that the following conditions are met:         *
00010 *                                                                                     *
00011 * 1) Redistributions must reproduce the above copyright notice and the                *
00012 *    following disclaimer in the documentation and/or other materials                 *
00013 *    provided with the distribution.                                                  *
00014 *                                                                                     *
00015 * 2) Unless to the extent explicitly permitted by law, no reverse                     *
00016 *    engineering, decompilation, or disassembly of is permitted.                      *
00017 *                                                                                     *
00018 * 3) Redistribution and use is permitted solely for the purpose of                    *
00019 *    developing or executing applications that are targeted for use                   *
00020 *    on an ARM-based product.                                                         *
00021 *                                                                                     *
00022 * DISCLAIMER. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND                  *
00023 * CONTRIBUTORS "AS IS." ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT             *
00024 * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT,        *
00025 * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE          *
00026 * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,   *
00027 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED            *
00028 * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR              *
00029 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF              *
00030 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING                *
00031 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS                  *
00032 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.                        *
00033 **************************************************************************************/
00034 
00035 
00036 
00037 #ifndef CRYS_DH_ERROR_H
00038 #define CRYS_DH_ERROR_H
00039 
00040 
00041 #include "crys_error.h"
00042 
00043 
00044 #ifdef __cplusplus
00045 extern "C"
00046 {
00047 #endif
00048 
00049 /*!
00050 @file
00051 @brief This file contains error codes definitions for CRYS DH module.
00052 @defgroup crys_dh_error CryptoCell DH specific errors
00053 @{
00054 @ingroup crys_dh
00055 */
00056 /************************ Defines ******************************/
00057 /* DH module on the CRYS layer base address - 0x00F00500 */
00058 /*! The CRYS DH module errors */
00059 /*! Illegal input pointer.*/
00060 #define CRYS_DH_INVALID_ARGUMENT_POINTER_ERROR          (CRYS_DH_MODULE_ERROR_BASE + 0x0UL)
00061 /*! Illegal input size.*/
00062 #define CRYS_DH_INVALID_ARGUMENT_SIZE_ERROR         (CRYS_DH_MODULE_ERROR_BASE + 0x1UL)
00063 /*! Illegal operation mode.*/
00064 #define CRYS_DH_INVALID_ARGUMENT_OPERATION_MODE_ERROR       (CRYS_DH_MODULE_ERROR_BASE + 0x2UL)
00065 /*! Illegal hash mode.*/
00066 #define CRYS_DH_INVALID_ARGUMENT_HASH_MODE_ERROR        (CRYS_DH_MODULE_ERROR_BASE + 0x3UL)
00067 
00068 /*! Illegal secret key data size. */
00069 #define CRYS_DH_SECRET_KEYING_DATA_SIZE_ILLEGAL_ERROR       (CRYS_DH_MODULE_ERROR_BASE + 0x4UL)
00070 /*! Illegal L input. */
00071 #define CRYS_DH_INVALID_L_ARGUMENT_ERROR            (CRYS_DH_MODULE_ERROR_BASE + 0x5UL)
00072 /*! Prime is smaller than generator. */
00073 #define CRYS_DH_ARGUMENT_PRIME_SMALLER_THAN_GENERATOR_ERROR (CRYS_DH_MODULE_ERROR_BASE + 0x6UL)
00074 /*! Generator is smaller than zero. */
00075 #define CRYS_DH_ARGUMENT_GENERATOR_SMALLER_THAN_ZERO_ERROR      (CRYS_DH_MODULE_ERROR_BASE + 0x7UL)
00076 /*! Illegal private key size. */
00077 #define CRYS_DH_ARGUMENT_PRV_SIZE_ERROR             (CRYS_DH_MODULE_ERROR_BASE + 0x8UL)
00078 /*! Illegal buffer size. */
00079 #define CRYS_DH_ARGUMENT_BUFFER_SIZE_ERROR          (CRYS_DH_MODULE_ERROR_BASE + 0x9UL)
00080 /*! Invalid shared secret value. */
00081 #define CRYS_DH_INVALID_SHARED_SECRET_VALUE_ERROR       (CRYS_DH_MODULE_ERROR_BASE + 0xAUL)
00082 /*! DH is not supported. */
00083 #define CRYS_DH_IS_NOT_SUPPORTED                (CRYS_DH_MODULE_ERROR_BASE + 0xFUL)
00084 /*! Illegal X942 hybrid buffer size.*/
00085 #define CRYS_DH_X942_HYBRID_SIZE1_BUFFER_ERROR          (CRYS_DH_MODULE_ERROR_BASE + 0x15UL)
00086 
00087 /*The requested derived secret key size is invalid*/
00088 /*! Illegal secret key size .*/
00089 #define CRYS_DH_SECRET_KEY_SIZE_NEEDED_ERROR            (CRYS_DH_MODULE_ERROR_BASE + 0x16UL)
00090 /*! Illegal output secret key size .*/
00091 #define CRYS_DH_SECRET_KEY_SIZE_OUTPUT_ERROR            (CRYS_DH_MODULE_ERROR_BASE + 0x17UL)
00092 /*! Illegal otherInfo size .*/
00093 #define CRYS_DH_OTHERINFO_SIZE_ERROR                            (CRYS_DH_MODULE_ERROR_BASE + 0x18UL)
00094 
00095 /* DH domain and key generation and checking errors */
00096 /*! Illegal modulus size. */
00097 #define CRYS_DH_INVALID_MODULUS_SIZE_ERROR          (CRYS_DH_MODULE_ERROR_BASE + 0x20UL)
00098 /*! Illegal order size. */
00099 #define CRYS_DH_INVALID_ORDER_SIZE_ERROR            (CRYS_DH_MODULE_ERROR_BASE + 0x21UL)
00100 /*! Illegal seed size. */
00101 #define CRYS_DH_INVALID_SEED_SIZE_ERROR             (CRYS_DH_MODULE_ERROR_BASE + 0x22UL)
00102 /*! Illegal J factor pointer size. */
00103 #define CRYS_DH_INVALID_J_FACTOR_PTR_OR_SIZE_ERROR      (CRYS_DH_MODULE_ERROR_BASE + 0x23UL)
00104 /*! Illegal generator pointer or size. */
00105 #define CRYS_DH_INVALID_GENERATOR_PTR_OR_SIZE_ERROR         (CRYS_DH_MODULE_ERROR_BASE + 0x24UL)
00106 
00107 /*! Illegal domain primes. */
00108 #define CRYS_DH_CHECK_DOMAIN_PRIMES_NOT_VALID_ERROR             (CRYS_DH_MODULE_ERROR_BASE + 0x25UL)
00109 /*! Illegal domain generator. */
00110 #define CRYS_DH_CHECK_DOMAIN_GENERATOR_NOT_VALID_ERROR          (CRYS_DH_MODULE_ERROR_BASE + 0x26UL)
00111 /*! Illegal public key size. */
00112 #define CRYS_DH_INVALID_PUBLIC_KEY_SIZE_ERROR                   (CRYS_DH_MODULE_ERROR_BASE + 0x27UL)
00113 /*! Illegal public key. */
00114 #define CRYS_DH_CHECK_PUB_KEY_NOT_VALID_ERROR                   (CRYS_DH_MODULE_ERROR_BASE + 0x28UL)
00115 /*! Illegal generator size or pointer. */
00116 #define CRYS_DH_CHECK_GENERATOR_SIZE_OR_PTR_NOT_VALID_ERROR     (CRYS_DH_MODULE_ERROR_BASE + 0x29UL)
00117 /*! Illegal seed size or pointer. */
00118 #define CRYS_DH_CHECK_SEED_SIZE_OR_PTR_NOT_VALID_ERROR          (CRYS_DH_MODULE_ERROR_BASE + 0x2AUL)
00119 /*! Illegal generator. */
00120 #define CRYS_DH_CHECK_GENERATOR_NOT_VALID_ERROR                 (CRYS_DH_MODULE_ERROR_BASE + 0x2BUL)
00121 /*! Prime generation failed. */
00122 #define CRYS_DH_PRIME_P_GENERATION_FAILURE_ERROR                (CRYS_DH_MODULE_ERROR_BASE + 0x2CUL)
00123 /*! Illegal public key. */
00124 #define CRYS_DH_INVALID_PUBLIC_KEY_ERROR                        (CRYS_DH_MODULE_ERROR_BASE + 0x2DUL)
00125 /*! Illegal seed. */
00126 #define CRYS_DH_PASSED_INVALID_SEED_ERROR                   (CRYS_DH_MODULE_ERROR_BASE + 0x2EUL)
00127 /*! Prime generation failed. */
00128 #define CRYS_DH_PRIME_Q_GENERATION_FAILURE_ERROR            (CRYS_DH_MODULE_ERROR_BASE + 0x2FUL)
00129 /*! Internal PKI error */
00130 #define CRYS_DH_PKI_INTERNAL_ERROR                              (CRYS_DH_MODULE_ERROR_BASE + 0x30UL)
00131 
00132 
00133 
00134 /************************ Enums ********************************/
00135 
00136 
00137 /************************ Typedefs  ****************************/
00138 
00139 
00140 /************************ Structs  ******************************/
00141 
00142 
00143 /************************ Public Variables **********************/
00144 
00145 
00146 /************************ Public Functions **********************/
00147 
00148 
00149 
00150 
00151 #ifdef __cplusplus
00152 }
00153 #endif
00154 /**
00155 @}
00156  */
00157 #endif
00158