1 /* $OpenBSD: asn1_err.c,v 1.22 2020/12/08 15:06:42 tb Exp $ */ 2 /* ==================================================================== 3 * Copyright (c) 1999-2011 The OpenSSL Project. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 9 * 1. Redistributions of source code must retain the above copyright 10 * notice, this list of conditions and the following disclaimer. 11 * 12 * 2. Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in 14 * the documentation and/or other materials provided with the 15 * distribution. 16 * 17 * 3. All advertising materials mentioning features or use of this 18 * software must display the following acknowledgment: 19 * "This product includes software developed by the OpenSSL Project 20 * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" 21 * 22 * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to 23 * endorse or promote products derived from this software without 24 * prior written permission. For written permission, please contact 25 * openssl-core@OpenSSL.org. 26 * 27 * 5. Products derived from this software may not be called "OpenSSL" 28 * nor may "OpenSSL" appear in their names without prior written 29 * permission of the OpenSSL Project. 30 * 31 * 6. Redistributions of any form whatsoever must retain the following 32 * acknowledgment: 33 * "This product includes software developed by the OpenSSL Project 34 * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" 35 * 36 * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY 37 * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 38 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 39 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR 40 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 41 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 42 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 43 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 44 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 45 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 46 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 47 * OF THE POSSIBILITY OF SUCH DAMAGE. 48 * ==================================================================== 49 * 50 * This product includes cryptographic software written by Eric Young 51 * (eay@cryptsoft.com). This product includes software written by Tim 52 * Hudson (tjh@cryptsoft.com). 53 * 54 */ 55 56 /* NOTE: this file was auto generated by the mkerr.pl script: any changes 57 * made to it will be overwritten when the script next updates this file, 58 * only reason strings will be preserved. 59 */ 60 61 #include <stdio.h> 62 63 #include <openssl/opensslconf.h> 64 65 #include <openssl/err.h> 66 #include <openssl/asn1.h> 67 68 /* BEGIN ERROR CODES */ 69 #ifndef OPENSSL_NO_ERR 70 71 #define ERR_FUNC(func) ERR_PACK(ERR_LIB_ASN1,func,0) 72 #define ERR_REASON(reason) ERR_PACK(ERR_LIB_ASN1,0,reason) 73 74 static ERR_STRING_DATA ASN1_str_functs[] = { 75 {ERR_FUNC(0xfff), "CRYPTO_internal"}, 76 {0, NULL} 77 }; 78 79 static ERR_STRING_DATA ASN1_str_reasons[] = { 80 {ERR_REASON(ASN1_R_ADDING_OBJECT) , "adding object"}, 81 {ERR_REASON(ASN1_R_ASN1_PARSE_ERROR) , "asn1 parse error"}, 82 {ERR_REASON(ASN1_R_ASN1_SIG_PARSE_ERROR) , "asn1 sig parse error"}, 83 {ERR_REASON(ASN1_R_AUX_ERROR) , "aux error"}, 84 {ERR_REASON(ASN1_R_BAD_CLASS) , "bad class"}, 85 {ERR_REASON(ASN1_R_BAD_OBJECT_HEADER) , "bad object header"}, 86 {ERR_REASON(ASN1_R_BAD_PASSWORD_READ) , "bad password read"}, 87 {ERR_REASON(ASN1_R_BAD_TAG) , "bad tag"}, 88 {ERR_REASON(ASN1_R_BAD_TEMPLATE) , "bad template"}, 89 {ERR_REASON(ASN1_R_BMPSTRING_IS_WRONG_LENGTH), "bmpstring is wrong length"}, 90 {ERR_REASON(ASN1_R_BN_LIB) , "bn lib"}, 91 {ERR_REASON(ASN1_R_BOOLEAN_IS_WRONG_LENGTH), "boolean is wrong length"}, 92 {ERR_REASON(ASN1_R_BUFFER_TOO_SMALL) , "buffer too small"}, 93 {ERR_REASON(ASN1_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER), "cipher has no object identifier"}, 94 {ERR_REASON(ASN1_R_CONTEXT_NOT_INITIALISED), "context not initialised"}, 95 {ERR_REASON(ASN1_R_DATA_IS_WRONG) , "data is wrong"}, 96 {ERR_REASON(ASN1_R_DECODE_ERROR) , "decode error"}, 97 {ERR_REASON(ASN1_R_DECODING_ERROR) , "decoding error"}, 98 {ERR_REASON(ASN1_R_DEPTH_EXCEEDED) , "depth exceeded"}, 99 {ERR_REASON(ASN1_R_DIGEST_AND_KEY_TYPE_NOT_SUPPORTED), "digest and key type not supported"}, 100 {ERR_REASON(ASN1_R_ENCODE_ERROR) , "encode error"}, 101 {ERR_REASON(ASN1_R_ERROR_GETTING_TIME) , "error getting time"}, 102 {ERR_REASON(ASN1_R_ERROR_LOADING_SECTION), "error loading section"}, 103 {ERR_REASON(ASN1_R_ERROR_PARSING_SET_ELEMENT), "error parsing set element"}, 104 {ERR_REASON(ASN1_R_ERROR_SETTING_CIPHER_PARAMS), "error setting cipher params"}, 105 {ERR_REASON(ASN1_R_EXPECTING_AN_INTEGER) , "expecting an integer"}, 106 {ERR_REASON(ASN1_R_EXPECTING_AN_OBJECT) , "expecting an object"}, 107 {ERR_REASON(ASN1_R_EXPECTING_A_BOOLEAN) , "expecting a boolean"}, 108 {ERR_REASON(ASN1_R_EXPECTING_A_TIME) , "expecting a time"}, 109 {ERR_REASON(ASN1_R_EXPLICIT_LENGTH_MISMATCH), "explicit length mismatch"}, 110 {ERR_REASON(ASN1_R_EXPLICIT_TAG_NOT_CONSTRUCTED), "explicit tag not constructed"}, 111 {ERR_REASON(ASN1_R_FIELD_MISSING) , "field missing"}, 112 {ERR_REASON(ASN1_R_FIRST_NUM_TOO_LARGE) , "first num too large"}, 113 {ERR_REASON(ASN1_R_HEADER_TOO_LONG) , "header too long"}, 114 {ERR_REASON(ASN1_R_ILLEGAL_BITSTRING_FORMAT), "illegal bitstring format"}, 115 {ERR_REASON(ASN1_R_ILLEGAL_BOOLEAN) , "illegal boolean"}, 116 {ERR_REASON(ASN1_R_ILLEGAL_CHARACTERS) , "illegal characters"}, 117 {ERR_REASON(ASN1_R_ILLEGAL_FORMAT) , "illegal format"}, 118 {ERR_REASON(ASN1_R_ILLEGAL_HEX) , "illegal hex"}, 119 {ERR_REASON(ASN1_R_ILLEGAL_IMPLICIT_TAG) , "illegal implicit tag"}, 120 {ERR_REASON(ASN1_R_ILLEGAL_INTEGER) , "illegal integer"}, 121 {ERR_REASON(ASN1_R_ILLEGAL_NESTED_TAGGING), "illegal nested tagging"}, 122 {ERR_REASON(ASN1_R_ILLEGAL_NULL) , "illegal null"}, 123 {ERR_REASON(ASN1_R_ILLEGAL_NULL_VALUE) , "illegal null value"}, 124 {ERR_REASON(ASN1_R_ILLEGAL_OBJECT) , "illegal object"}, 125 {ERR_REASON(ASN1_R_ILLEGAL_OPTIONAL_ANY) , "illegal optional any"}, 126 {ERR_REASON(ASN1_R_ILLEGAL_OPTIONS_ON_ITEM_TEMPLATE), "illegal options on item template"}, 127 {ERR_REASON(ASN1_R_ILLEGAL_TAGGED_ANY) , "illegal tagged any"}, 128 {ERR_REASON(ASN1_R_ILLEGAL_TIME_VALUE) , "illegal time value"}, 129 {ERR_REASON(ASN1_R_INTEGER_NOT_ASCII_FORMAT), "integer not ascii format"}, 130 {ERR_REASON(ASN1_R_INTEGER_TOO_LARGE_FOR_LONG), "integer too large for long"}, 131 {ERR_REASON(ASN1_R_INVALID_BIT_STRING_BITS_LEFT), "invalid bit string bits left"}, 132 {ERR_REASON(ASN1_R_INVALID_BMPSTRING_LENGTH), "invalid bmpstring length"}, 133 {ERR_REASON(ASN1_R_INVALID_DIGIT) , "invalid digit"}, 134 {ERR_REASON(ASN1_R_INVALID_MIME_TYPE) , "invalid mime type"}, 135 {ERR_REASON(ASN1_R_INVALID_MODIFIER) , "invalid modifier"}, 136 {ERR_REASON(ASN1_R_INVALID_NUMBER) , "invalid number"}, 137 {ERR_REASON(ASN1_R_INVALID_OBJECT_ENCODING), "invalid object encoding"}, 138 {ERR_REASON(ASN1_R_INVALID_SEPARATOR) , "invalid separator"}, 139 {ERR_REASON(ASN1_R_INVALID_TIME_FORMAT) , "invalid time format"}, 140 {ERR_REASON(ASN1_R_INVALID_UNIVERSALSTRING_LENGTH), "invalid universalstring length"}, 141 {ERR_REASON(ASN1_R_INVALID_UTF8STRING) , "invalid utf8string"}, 142 {ERR_REASON(ASN1_R_IV_TOO_LARGE) , "iv too large"}, 143 {ERR_REASON(ASN1_R_LENGTH_ERROR) , "length error"}, 144 {ERR_REASON(ASN1_R_LIST_ERROR) , "list error"}, 145 {ERR_REASON(ASN1_R_MIME_NO_CONTENT_TYPE) , "mime no content type"}, 146 {ERR_REASON(ASN1_R_MIME_PARSE_ERROR) , "mime parse error"}, 147 {ERR_REASON(ASN1_R_MIME_SIG_PARSE_ERROR) , "mime sig parse error"}, 148 {ERR_REASON(ASN1_R_MISSING_EOC) , "missing eoc"}, 149 {ERR_REASON(ASN1_R_MISSING_SECOND_NUMBER), "missing second number"}, 150 {ERR_REASON(ASN1_R_MISSING_VALUE) , "missing value"}, 151 {ERR_REASON(ASN1_R_MSTRING_NOT_UNIVERSAL), "mstring not universal"}, 152 {ERR_REASON(ASN1_R_MSTRING_WRONG_TAG) , "mstring wrong tag"}, 153 {ERR_REASON(ASN1_R_NESTED_ASN1_STRING) , "nested asn1 string"}, 154 {ERR_REASON(ASN1_R_NESTED_TOO_DEEP) , "nested too deep"}, 155 {ERR_REASON(ASN1_R_NON_HEX_CHARACTERS) , "non hex characters"}, 156 {ERR_REASON(ASN1_R_NOT_ASCII_FORMAT) , "not ascii format"}, 157 {ERR_REASON(ASN1_R_NOT_ENOUGH_DATA) , "not enough data"}, 158 {ERR_REASON(ASN1_R_NO_CONTENT_TYPE) , "no content type"}, 159 {ERR_REASON(ASN1_R_NO_DEFAULT_DIGEST) , "no default digest"}, 160 {ERR_REASON(ASN1_R_NO_MATCHING_CHOICE_TYPE), "no matching choice type"}, 161 {ERR_REASON(ASN1_R_NO_MULTIPART_BODY_FAILURE), "no multipart body failure"}, 162 {ERR_REASON(ASN1_R_NO_MULTIPART_BOUNDARY), "no multipart boundary"}, 163 {ERR_REASON(ASN1_R_NO_SIG_CONTENT_TYPE) , "no sig content type"}, 164 {ERR_REASON(ASN1_R_NULL_IS_WRONG_LENGTH) , "null is wrong length"}, 165 {ERR_REASON(ASN1_R_OBJECT_NOT_ASCII_FORMAT), "object not ascii format"}, 166 {ERR_REASON(ASN1_R_ODD_NUMBER_OF_CHARS) , "odd number of chars"}, 167 {ERR_REASON(ASN1_R_PRIVATE_KEY_HEADER_MISSING), "private key header missing"}, 168 {ERR_REASON(ASN1_R_SECOND_NUMBER_TOO_LARGE), "second number too large"}, 169 {ERR_REASON(ASN1_R_SEQUENCE_LENGTH_MISMATCH), "sequence length mismatch"}, 170 {ERR_REASON(ASN1_R_SEQUENCE_NOT_CONSTRUCTED), "sequence not constructed"}, 171 {ERR_REASON(ASN1_R_SEQUENCE_OR_SET_NEEDS_CONFIG), "sequence or set needs config"}, 172 {ERR_REASON(ASN1_R_SHORT_LINE) , "short line"}, 173 {ERR_REASON(ASN1_R_SIG_INVALID_MIME_TYPE), "sig invalid mime type"}, 174 {ERR_REASON(ASN1_R_STREAMING_NOT_SUPPORTED), "streaming not supported"}, 175 {ERR_REASON(ASN1_R_STRING_TOO_LONG) , "string too long"}, 176 {ERR_REASON(ASN1_R_STRING_TOO_SHORT) , "string too short"}, 177 {ERR_REASON(ASN1_R_TAG_VALUE_TOO_HIGH) , "tag value too high"}, 178 {ERR_REASON(ASN1_R_THE_ASN1_OBJECT_IDENTIFIER_IS_NOT_KNOWN_FOR_THIS_MD), "the asn1 object identifier is not known for this md"}, 179 {ERR_REASON(ASN1_R_TIME_NOT_ASCII_FORMAT), "time not ascii format"}, 180 {ERR_REASON(ASN1_R_TOO_LONG) , "too long"}, 181 {ERR_REASON(ASN1_R_TYPE_NOT_CONSTRUCTED) , "type not constructed"}, 182 {ERR_REASON(ASN1_R_UNABLE_TO_DECODE_RSA_KEY), "unable to decode rsa key"}, 183 {ERR_REASON(ASN1_R_UNABLE_TO_DECODE_RSA_PRIVATE_KEY), "unable to decode rsa private key"}, 184 {ERR_REASON(ASN1_R_UNEXPECTED_EOC) , "unexpected eoc"}, 185 {ERR_REASON(ASN1_R_UNIVERSALSTRING_IS_WRONG_LENGTH), "universalstring is wrong length"}, 186 {ERR_REASON(ASN1_R_UNKNOWN_FORMAT) , "unknown format"}, 187 {ERR_REASON(ASN1_R_UNKNOWN_MESSAGE_DIGEST_ALGORITHM), "unknown message digest algorithm"}, 188 {ERR_REASON(ASN1_R_UNKNOWN_OBJECT_TYPE) , "unknown object type"}, 189 {ERR_REASON(ASN1_R_UNKNOWN_PUBLIC_KEY_TYPE), "unknown public key type"}, 190 {ERR_REASON(ASN1_R_UNKNOWN_SIGNATURE_ALGORITHM), "unknown signature algorithm"}, 191 {ERR_REASON(ASN1_R_UNKNOWN_TAG) , "unknown tag"}, 192 {ERR_REASON(ASN1_R_UNKOWN_FORMAT) , "unknown format"}, 193 {ERR_REASON(ASN1_R_UNSUPPORTED_ANY_DEFINED_BY_TYPE), "unsupported any defined by type"}, 194 {ERR_REASON(ASN1_R_UNSUPPORTED_CIPHER) , "unsupported cipher"}, 195 {ERR_REASON(ASN1_R_UNSUPPORTED_ENCRYPTION_ALGORITHM), "unsupported encryption algorithm"}, 196 {ERR_REASON(ASN1_R_UNSUPPORTED_PUBLIC_KEY_TYPE), "unsupported public key type"}, 197 {ERR_REASON(ASN1_R_UNSUPPORTED_TYPE) , "unsupported type"}, 198 {ERR_REASON(ASN1_R_WRONG_PUBLIC_KEY_TYPE), "wrong public key type"}, 199 {ERR_REASON(ASN1_R_WRONG_TAG) , "wrong tag"}, 200 {ERR_REASON(ASN1_R_WRONG_TYPE) , "wrong type"}, 201 {0, NULL} 202 }; 203 204 #endif 205 206 void 207 ERR_load_ASN1_strings(void) 208 { 209 #ifndef OPENSSL_NO_ERR 210 if (ERR_func_error_string(ASN1_str_functs[0].error) == NULL) { 211 ERR_load_strings(0, ASN1_str_functs); 212 ERR_load_strings(0, ASN1_str_reasons); 213 } 214 #endif 215 } 216