This is a port of cyaSSL 2.7.0.
Dependents: CyaSSL_DTLS_Cellular CyaSSL_DTLS_Ethernet
error.c
00001 /* error.c 00002 * 00003 * Copyright (C) 2006-2013 wolfSSL Inc. 00004 * 00005 * This file is part of CyaSSL. 00006 * 00007 * CyaSSL is free software; you can redistribute it and/or modify 00008 * it under the terms of the GNU General Public License as published by 00009 * the Free Software Foundation; either version 2 of the License, or 00010 * (at your option) any later version. 00011 * 00012 * CyaSSL is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 * GNU General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU General Public License 00018 * along with this program; if not, write to the Free Software 00019 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA 00020 */ 00021 00022 #ifdef HAVE_CONFIG_H 00023 #include <config.h> 00024 #endif 00025 00026 #include <cyassl/ctaocrypt/settings.h> 00027 00028 #include <cyassl/ctaocrypt/ctaoerror2.h> 00029 00030 #ifdef _MSC_VER 00031 /* 4996 warning to use MS extensions e.g., strcpy_s instead of XSTRNCPY */ 00032 #pragma warning(disable: 4996) 00033 #endif 00034 00035 00036 void CTaoCryptErrorString(int error, char* buffer) 00037 { 00038 const int max = MAX_ERROR_SZ; /* shorthand */ 00039 00040 #ifdef NO_ERROR_STRINGS 00041 00042 (void)error; 00043 XSTRNCPY(buffer, "no support for error strings built in", max); 00044 00045 #else 00046 00047 switch (error) { 00048 00049 case OPEN_RAN_E : 00050 XSTRNCPY(buffer, "opening random device error", max); 00051 break; 00052 00053 case READ_RAN_E : 00054 XSTRNCPY(buffer, "reading random device error", max); 00055 break; 00056 00057 case WINCRYPT_E : 00058 XSTRNCPY(buffer, "windows crypt init error", max); 00059 break; 00060 00061 case CRYPTGEN_E : 00062 XSTRNCPY(buffer, "windows crypt generation error", max); 00063 break; 00064 00065 case RAN_BLOCK_E : 00066 XSTRNCPY(buffer, "random device read would block error", max); 00067 break; 00068 00069 case MP_INIT_E : 00070 XSTRNCPY(buffer, "mp_init error state", max); 00071 break; 00072 00073 case MP_READ_E : 00074 XSTRNCPY(buffer, "mp_read error state", max); 00075 break; 00076 00077 case MP_EXPTMOD_E : 00078 XSTRNCPY(buffer, "mp_exptmod error state", max); 00079 break; 00080 00081 case MP_TO_E : 00082 XSTRNCPY(buffer, "mp_to_xxx error state, can't convert", max); 00083 break; 00084 00085 case MP_SUB_E : 00086 XSTRNCPY(buffer, "mp_sub error state, can't subtract", max); 00087 break; 00088 00089 case MP_ADD_E : 00090 XSTRNCPY(buffer, "mp_add error state, can't add", max); 00091 break; 00092 00093 case MP_MUL_E : 00094 XSTRNCPY(buffer, "mp_mul error state, can't multiply", max); 00095 break; 00096 00097 case MP_MULMOD_E : 00098 XSTRNCPY(buffer, "mp_mulmod error state, can't multiply mod", max); 00099 break; 00100 00101 case MP_MOD_E : 00102 XSTRNCPY(buffer, "mp_mod error state, can't mod", max); 00103 break; 00104 00105 case MP_INVMOD_E : 00106 XSTRNCPY(buffer, "mp_invmod error state, can't inv mod", max); 00107 break; 00108 00109 case MP_CMP_E : 00110 XSTRNCPY(buffer, "mp_cmp error state", max); 00111 break; 00112 00113 case MP_ZERO_E : 00114 XSTRNCPY(buffer, "mp zero result, not expected", max); 00115 break; 00116 00117 case MEMORY_E : 00118 XSTRNCPY(buffer, "out of memory error", max); 00119 break; 00120 00121 case RSA_WRONG_TYPE_E : 00122 XSTRNCPY(buffer, "RSA wrong block type for RSA function", max); 00123 break; 00124 00125 case RSA_BUFFER_E : 00126 XSTRNCPY(buffer, "RSA buffer error, output too small or input too big", 00127 max); 00128 break; 00129 00130 case BUFFER_E : 00131 XSTRNCPY(buffer, "Buffer error, output too small or input too big",max); 00132 break; 00133 00134 case ALGO_ID_E : 00135 XSTRNCPY(buffer, "Setting Cert AlogID error", max); 00136 break; 00137 00138 case PUBLIC_KEY_E : 00139 XSTRNCPY(buffer, "Setting Cert Public Key error", max); 00140 break; 00141 00142 case DATE_E : 00143 XSTRNCPY(buffer, "Setting Cert Date validity error", max); 00144 break; 00145 00146 case SUBJECT_E : 00147 XSTRNCPY(buffer, "Setting Cert Subject name error", max); 00148 break; 00149 00150 case ISSUER_E : 00151 XSTRNCPY(buffer, "Setting Cert Issuer name error", max); 00152 break; 00153 00154 case CA_TRUE_E : 00155 XSTRNCPY(buffer, "Setting basic constraint CA true error", max); 00156 break; 00157 00158 case EXTENSIONS_E : 00159 XSTRNCPY(buffer, "Setting extensions error", max); 00160 break; 00161 00162 case ASN_PARSE_E : 00163 XSTRNCPY(buffer, "ASN parsing error, invalid input", max); 00164 break; 00165 00166 case ASN_VERSION_E : 00167 XSTRNCPY(buffer, "ASN version error, invalid number", max); 00168 break; 00169 00170 case ASN_GETINT_E : 00171 XSTRNCPY(buffer, "ASN get big int error, invalid data", max); 00172 break; 00173 00174 case ASN_RSA_KEY_E : 00175 XSTRNCPY(buffer, "ASN key init error, invalid input", max); 00176 break; 00177 00178 case ASN_OBJECT_ID_E : 00179 XSTRNCPY(buffer, "ASN object id error, invalid id", max); 00180 break; 00181 00182 case ASN_TAG_NULL_E : 00183 XSTRNCPY(buffer, "ASN tag error, not null", max); 00184 break; 00185 00186 case ASN_EXPECT_0_E : 00187 XSTRNCPY(buffer, "ASN expect error, not zero", max); 00188 break; 00189 00190 case ASN_BITSTR_E : 00191 XSTRNCPY(buffer, "ASN bit string error, wrong id", max); 00192 break; 00193 00194 case ASN_UNKNOWN_OID_E : 00195 XSTRNCPY(buffer, "ASN oid error, unknown sum id", max); 00196 break; 00197 00198 case ASN_DATE_SZ_E : 00199 XSTRNCPY(buffer, "ASN date error, bad size", max); 00200 break; 00201 00202 case ASN_BEFORE_DATE_E : 00203 XSTRNCPY(buffer, "ASN date error, current date before", max); 00204 break; 00205 00206 case ASN_AFTER_DATE_E : 00207 XSTRNCPY(buffer, "ASN date error, current date after", max); 00208 break; 00209 00210 case ASN_SIG_OID_E : 00211 XSTRNCPY(buffer, "ASN signature error, mismatched oid", max); 00212 break; 00213 00214 case ASN_TIME_E : 00215 XSTRNCPY(buffer, "ASN time error, unkown time type", max); 00216 break; 00217 00218 case ASN_INPUT_E : 00219 XSTRNCPY(buffer, "ASN input error, not enough data", max); 00220 break; 00221 00222 case ASN_SIG_CONFIRM_E : 00223 XSTRNCPY(buffer, "ASN sig error, confirm failure", max); 00224 break; 00225 00226 case ASN_SIG_HASH_E : 00227 XSTRNCPY(buffer, "ASN sig error, unsupported hash type", max); 00228 break; 00229 00230 case ASN_SIG_KEY_E : 00231 XSTRNCPY(buffer, "ASN sig error, unsupported key type", max); 00232 break; 00233 00234 case ASN_DH_KEY_E : 00235 XSTRNCPY(buffer, "ASN key init error, invalid input", max); 00236 break; 00237 00238 case ASN_NTRU_KEY_E : 00239 XSTRNCPY(buffer, "ASN NTRU key decode error, invalid input", max); 00240 break; 00241 00242 case ECC_BAD_ARG_E : 00243 XSTRNCPY(buffer, "ECC input argument wrong type, invalid input", max); 00244 break; 00245 00246 case ASN_ECC_KEY_E : 00247 XSTRNCPY(buffer, "ECC ASN1 bad key data, invalid input", max); 00248 break; 00249 00250 case ECC_CURVE_OID_E : 00251 XSTRNCPY(buffer, "ECC curve sum OID unsupported, invalid input", max); 00252 break; 00253 00254 case BAD_FUNC_ARG : 00255 XSTRNCPY(buffer, "Bad function argument", max); 00256 break; 00257 00258 case NOT_COMPILED_IN : 00259 XSTRNCPY(buffer, "Feature not compiled in", max); 00260 break; 00261 00262 case UNICODE_SIZE_E : 00263 XSTRNCPY(buffer, "Unicode password too big", max); 00264 break; 00265 00266 case NO_PASSWORD : 00267 XSTRNCPY(buffer, "No password provided by user", max); 00268 break; 00269 00270 case ALT_NAME_E : 00271 XSTRNCPY(buffer, "Alt Name problem, too big", max); 00272 break; 00273 00274 case AES_GCM_AUTH_E: 00275 XSTRNCPY(buffer, "AES-GCM Authentication check fail", max); 00276 break; 00277 00278 case AES_CCM_AUTH_E: 00279 XSTRNCPY(buffer, "AES-CCM Authentication check fail", max); 00280 break; 00281 00282 case CAVIUM_INIT_E: 00283 XSTRNCPY(buffer, "Cavium Init type error", max); 00284 break; 00285 00286 case COMPRESS_INIT_E: 00287 XSTRNCPY(buffer, "Compress Init error", max); 00288 break; 00289 00290 case COMPRESS_E: 00291 XSTRNCPY(buffer, "Compress error", max); 00292 break; 00293 00294 case DECOMPRESS_INIT_E: 00295 XSTRNCPY(buffer, "DeCompress Init error", max); 00296 break; 00297 00298 case DECOMPRESS_E: 00299 XSTRNCPY(buffer, "DeCompress error", max); 00300 break; 00301 00302 case BAD_ALIGN_E: 00303 XSTRNCPY(buffer, "Bad alignment error, no alloc help", max); 00304 break; 00305 00306 case ASN_NO_SIGNER_E : 00307 XSTRNCPY(buffer, "ASN no signer error to confirm failure", max); 00308 break; 00309 00310 case ASN_CRL_CONFIRM_E : 00311 XSTRNCPY(buffer, "ASN CRL sig error, confirm failure", max); 00312 break; 00313 00314 case ASN_CRL_NO_SIGNER_E : 00315 XSTRNCPY(buffer, "ASN CRL no signer error to confirm failure", max); 00316 break; 00317 00318 case ASN_OCSP_CONFIRM_E : 00319 XSTRNCPY(buffer, "ASN OCSP sig error, confirm failure", max); 00320 break; 00321 00322 default: 00323 XSTRNCPY(buffer, "unknown error number", max); 00324 00325 } 00326 00327 #endif /* NO_ERROR_STRINGS */ 00328 00329 }
Generated on Tue Jul 12 2022 20:44:50 by 1.7.2