1 /* $OpenBSD: cms_err.c,v 1.4 2014/07/10 22:45:56 jsing Exp $ */ 2 /* ==================================================================== 3 * Copyright (c) 1999-2009 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/cms.h> 66 #include <openssl/err.h> 67 68 /* BEGIN ERROR CODES */ 69 #ifndef OPENSSL_NO_ERR 70 71 #define ERR_FUNC(func) ERR_PACK(ERR_LIB_CMS,func,0) 72 #define ERR_REASON(reason) ERR_PACK(ERR_LIB_CMS,0,reason) 73 74 static ERR_STRING_DATA CMS_str_functs[]= { 75 {ERR_FUNC(CMS_F_CHECK_CONTENT), "CHECK_CONTENT"}, 76 {ERR_FUNC(CMS_F_CMS_ADD0_CERT), "CMS_add0_cert"}, 77 {ERR_FUNC(CMS_F_CMS_ADD0_RECIPIENT_KEY), "CMS_add0_recipient_key"}, 78 {ERR_FUNC(CMS_F_CMS_ADD0_RECIPIENT_PASSWORD), "CMS_add0_recipient_password"}, 79 {ERR_FUNC(CMS_F_CMS_ADD1_RECEIPTREQUEST), "CMS_add1_ReceiptRequest"}, 80 {ERR_FUNC(CMS_F_CMS_ADD1_RECIPIENT_CERT), "CMS_add1_recipient_cert"}, 81 {ERR_FUNC(CMS_F_CMS_ADD1_SIGNER), "CMS_add1_signer"}, 82 {ERR_FUNC(CMS_F_CMS_ADD1_SIGNINGTIME), "CMS_ADD1_SIGNINGTIME"}, 83 {ERR_FUNC(CMS_F_CMS_COMPRESS), "CMS_compress"}, 84 {ERR_FUNC(CMS_F_CMS_COMPRESSEDDATA_CREATE), "cms_CompressedData_create"}, 85 {ERR_FUNC(CMS_F_CMS_COMPRESSEDDATA_INIT_BIO), "cms_CompressedData_init_bio"}, 86 {ERR_FUNC(CMS_F_CMS_COPY_CONTENT), "CMS_COPY_CONTENT"}, 87 {ERR_FUNC(CMS_F_CMS_COPY_MESSAGEDIGEST), "CMS_COPY_MESSAGEDIGEST"}, 88 {ERR_FUNC(CMS_F_CMS_DATA), "CMS_data"}, 89 {ERR_FUNC(CMS_F_CMS_DATAFINAL), "CMS_dataFinal"}, 90 {ERR_FUNC(CMS_F_CMS_DATAINIT), "CMS_dataInit"}, 91 {ERR_FUNC(CMS_F_CMS_DECRYPT), "CMS_decrypt"}, 92 {ERR_FUNC(CMS_F_CMS_DECRYPT_SET1_KEY), "CMS_decrypt_set1_key"}, 93 {ERR_FUNC(CMS_F_CMS_DECRYPT_SET1_PASSWORD), "CMS_decrypt_set1_password"}, 94 {ERR_FUNC(CMS_F_CMS_DECRYPT_SET1_PKEY), "CMS_decrypt_set1_pkey"}, 95 {ERR_FUNC(CMS_F_CMS_DIGESTALGORITHM_FIND_CTX), "cms_DigestAlgorithm_find_ctx"}, 96 {ERR_FUNC(CMS_F_CMS_DIGESTALGORITHM_INIT_BIO), "cms_DigestAlgorithm_init_bio"}, 97 {ERR_FUNC(CMS_F_CMS_DIGESTEDDATA_DO_FINAL), "cms_DigestedData_do_final"}, 98 {ERR_FUNC(CMS_F_CMS_DIGEST_VERIFY), "CMS_digest_verify"}, 99 {ERR_FUNC(CMS_F_CMS_ENCODE_RECEIPT), "cms_encode_Receipt"}, 100 {ERR_FUNC(CMS_F_CMS_ENCRYPT), "CMS_encrypt"}, 101 {ERR_FUNC(CMS_F_CMS_ENCRYPTEDCONTENT_INIT_BIO), "cms_EncryptedContent_init_bio"}, 102 {ERR_FUNC(CMS_F_CMS_ENCRYPTEDDATA_DECRYPT), "CMS_EncryptedData_decrypt"}, 103 {ERR_FUNC(CMS_F_CMS_ENCRYPTEDDATA_ENCRYPT), "CMS_EncryptedData_encrypt"}, 104 {ERR_FUNC(CMS_F_CMS_ENCRYPTEDDATA_SET1_KEY), "CMS_EncryptedData_set1_key"}, 105 {ERR_FUNC(CMS_F_CMS_ENVELOPEDDATA_CREATE), "CMS_EnvelopedData_create"}, 106 {ERR_FUNC(CMS_F_CMS_ENVELOPEDDATA_INIT_BIO), "cms_EnvelopedData_init_bio"}, 107 {ERR_FUNC(CMS_F_CMS_ENVELOPED_DATA_INIT), "CMS_ENVELOPED_DATA_INIT"}, 108 {ERR_FUNC(CMS_F_CMS_FINAL), "CMS_final"}, 109 {ERR_FUNC(CMS_F_CMS_GET0_CERTIFICATE_CHOICES), "CMS_GET0_CERTIFICATE_CHOICES"}, 110 {ERR_FUNC(CMS_F_CMS_GET0_CONTENT), "CMS_get0_content"}, 111 {ERR_FUNC(CMS_F_CMS_GET0_ECONTENT_TYPE), "CMS_GET0_ECONTENT_TYPE"}, 112 {ERR_FUNC(CMS_F_CMS_GET0_ENVELOPED), "cms_get0_enveloped"}, 113 {ERR_FUNC(CMS_F_CMS_GET0_REVOCATION_CHOICES), "CMS_GET0_REVOCATION_CHOICES"}, 114 {ERR_FUNC(CMS_F_CMS_GET0_SIGNED), "CMS_GET0_SIGNED"}, 115 {ERR_FUNC(CMS_F_CMS_MSGSIGDIGEST_ADD1), "cms_msgSigDigest_add1"}, 116 {ERR_FUNC(CMS_F_CMS_RECEIPTREQUEST_CREATE0), "CMS_ReceiptRequest_create0"}, 117 {ERR_FUNC(CMS_F_CMS_RECEIPT_VERIFY), "cms_Receipt_verify"}, 118 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_DECRYPT), "CMS_RecipientInfo_decrypt"}, 119 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_KEKRI_DECRYPT), "CMS_RECIPIENTINFO_KEKRI_DECRYPT"}, 120 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_KEKRI_ENCRYPT), "CMS_RECIPIENTINFO_KEKRI_ENCRYPT"}, 121 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_KEKRI_GET0_ID), "CMS_RecipientInfo_kekri_get0_id"}, 122 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_KEKRI_ID_CMP), "CMS_RecipientInfo_kekri_id_cmp"}, 123 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_KTRI_CERT_CMP), "CMS_RecipientInfo_ktri_cert_cmp"}, 124 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_KTRI_DECRYPT), "CMS_RECIPIENTINFO_KTRI_DECRYPT"}, 125 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_KTRI_ENCRYPT), "CMS_RECIPIENTINFO_KTRI_ENCRYPT"}, 126 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_KTRI_GET0_ALGS), "CMS_RecipientInfo_ktri_get0_algs"}, 127 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_KTRI_GET0_SIGNER_ID), "CMS_RecipientInfo_ktri_get0_signer_id"}, 128 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_PWRI_CRYPT), "cms_RecipientInfo_pwri_crypt"}, 129 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_SET0_KEY), "CMS_RecipientInfo_set0_key"}, 130 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_SET0_PASSWORD), "CMS_RecipientInfo_set0_password"}, 131 {ERR_FUNC(CMS_F_CMS_RECIPIENTINFO_SET0_PKEY), "CMS_RecipientInfo_set0_pkey"}, 132 {ERR_FUNC(CMS_F_CMS_SET1_SIGNERIDENTIFIER), "cms_set1_SignerIdentifier"}, 133 {ERR_FUNC(CMS_F_CMS_SET_DETACHED), "CMS_set_detached"}, 134 {ERR_FUNC(CMS_F_CMS_SIGN), "CMS_sign"}, 135 {ERR_FUNC(CMS_F_CMS_SIGNED_DATA_INIT), "CMS_SIGNED_DATA_INIT"}, 136 {ERR_FUNC(CMS_F_CMS_SIGNERINFO_CONTENT_SIGN), "CMS_SIGNERINFO_CONTENT_SIGN"}, 137 {ERR_FUNC(CMS_F_CMS_SIGNERINFO_SIGN), "CMS_SignerInfo_sign"}, 138 {ERR_FUNC(CMS_F_CMS_SIGNERINFO_VERIFY), "CMS_SignerInfo_verify"}, 139 {ERR_FUNC(CMS_F_CMS_SIGNERINFO_VERIFY_CERT), "CMS_SIGNERINFO_VERIFY_CERT"}, 140 {ERR_FUNC(CMS_F_CMS_SIGNERINFO_VERIFY_CONTENT), "CMS_SignerInfo_verify_content"}, 141 {ERR_FUNC(CMS_F_CMS_SIGN_RECEIPT), "CMS_sign_receipt"}, 142 {ERR_FUNC(CMS_F_CMS_STREAM), "CMS_stream"}, 143 {ERR_FUNC(CMS_F_CMS_UNCOMPRESS), "CMS_uncompress"}, 144 {ERR_FUNC(CMS_F_CMS_VERIFY), "CMS_verify"}, 145 {0, NULL} 146 }; 147 148 static ERR_STRING_DATA CMS_str_reasons[]= { 149 {ERR_REASON(CMS_R_ADD_SIGNER_ERROR) , "add signer error"}, 150 {ERR_REASON(CMS_R_CERTIFICATE_ALREADY_PRESENT), "certificate already present"}, 151 {ERR_REASON(CMS_R_CERTIFICATE_HAS_NO_KEYID), "certificate has no keyid"}, 152 {ERR_REASON(CMS_R_CERTIFICATE_VERIFY_ERROR), "certificate verify error"}, 153 {ERR_REASON(CMS_R_CIPHER_INITIALISATION_ERROR), "cipher initialisation error"}, 154 {ERR_REASON(CMS_R_CIPHER_PARAMETER_INITIALISATION_ERROR), "cipher parameter initialisation error"}, 155 {ERR_REASON(CMS_R_CMS_DATAFINAL_ERROR) , "cms datafinal error"}, 156 {ERR_REASON(CMS_R_CMS_LIB) , "cms lib"}, 157 {ERR_REASON(CMS_R_CONTENTIDENTIFIER_MISMATCH), "contentidentifier mismatch"}, 158 {ERR_REASON(CMS_R_CONTENT_NOT_FOUND) , "content not found"}, 159 {ERR_REASON(CMS_R_CONTENT_TYPE_MISMATCH) , "content type mismatch"}, 160 {ERR_REASON(CMS_R_CONTENT_TYPE_NOT_COMPRESSED_DATA), "content type not compressed data"}, 161 {ERR_REASON(CMS_R_CONTENT_TYPE_NOT_ENVELOPED_DATA), "content type not enveloped data"}, 162 {ERR_REASON(CMS_R_CONTENT_TYPE_NOT_SIGNED_DATA), "content type not signed data"}, 163 {ERR_REASON(CMS_R_CONTENT_VERIFY_ERROR) , "content verify error"}, 164 {ERR_REASON(CMS_R_CTRL_ERROR) , "ctrl error"}, 165 {ERR_REASON(CMS_R_CTRL_FAILURE) , "ctrl failure"}, 166 {ERR_REASON(CMS_R_DECRYPT_ERROR) , "decrypt error"}, 167 {ERR_REASON(CMS_R_DIGEST_ERROR) , "digest error"}, 168 {ERR_REASON(CMS_R_ERROR_GETTING_PUBLIC_KEY), "error getting public key"}, 169 {ERR_REASON(CMS_R_ERROR_READING_MESSAGEDIGEST_ATTRIBUTE), "error reading messagedigest attribute"}, 170 {ERR_REASON(CMS_R_ERROR_SETTING_KEY) , "error setting key"}, 171 {ERR_REASON(CMS_R_ERROR_SETTING_RECIPIENTINFO), "error setting recipientinfo"}, 172 {ERR_REASON(CMS_R_INVALID_ENCRYPTED_KEY_LENGTH), "invalid encrypted key length"}, 173 {ERR_REASON(CMS_R_INVALID_KEY_ENCRYPTION_PARAMETER), "invalid key encryption parameter"}, 174 {ERR_REASON(CMS_R_INVALID_KEY_LENGTH) , "invalid key length"}, 175 {ERR_REASON(CMS_R_MD_BIO_INIT_ERROR) , "md bio init error"}, 176 {ERR_REASON(CMS_R_MESSAGEDIGEST_ATTRIBUTE_WRONG_LENGTH), "messagedigest attribute wrong length"}, 177 {ERR_REASON(CMS_R_MESSAGEDIGEST_WRONG_LENGTH), "messagedigest wrong length"}, 178 {ERR_REASON(CMS_R_MSGSIGDIGEST_ERROR) , "msgsigdigest error"}, 179 {ERR_REASON(CMS_R_MSGSIGDIGEST_VERIFICATION_FAILURE), "msgsigdigest verification failure"}, 180 {ERR_REASON(CMS_R_MSGSIGDIGEST_WRONG_LENGTH), "msgsigdigest wrong length"}, 181 {ERR_REASON(CMS_R_NEED_ONE_SIGNER) , "need one signer"}, 182 {ERR_REASON(CMS_R_NOT_A_SIGNED_RECEIPT) , "not a signed receipt"}, 183 {ERR_REASON(CMS_R_NOT_ENCRYPTED_DATA) , "not encrypted data"}, 184 {ERR_REASON(CMS_R_NOT_KEK) , "not kek"}, 185 {ERR_REASON(CMS_R_NOT_KEY_TRANSPORT) , "not key transport"}, 186 {ERR_REASON(CMS_R_NOT_PWRI) , "not pwri"}, 187 {ERR_REASON(CMS_R_NOT_SUPPORTED_FOR_THIS_KEY_TYPE), "not supported for this key type"}, 188 {ERR_REASON(CMS_R_NO_CIPHER) , "no cipher"}, 189 {ERR_REASON(CMS_R_NO_CONTENT) , "no content"}, 190 {ERR_REASON(CMS_R_NO_CONTENT_TYPE) , "no content type"}, 191 {ERR_REASON(CMS_R_NO_DEFAULT_DIGEST) , "no default digest"}, 192 {ERR_REASON(CMS_R_NO_DIGEST_SET) , "no digest set"}, 193 {ERR_REASON(CMS_R_NO_KEY) , "no key"}, 194 {ERR_REASON(CMS_R_NO_KEY_OR_CERT) , "no key or cert"}, 195 {ERR_REASON(CMS_R_NO_MATCHING_DIGEST) , "no matching digest"}, 196 {ERR_REASON(CMS_R_NO_MATCHING_RECIPIENT) , "no matching recipient"}, 197 {ERR_REASON(CMS_R_NO_MATCHING_SIGNATURE) , "no matching signature"}, 198 {ERR_REASON(CMS_R_NO_MSGSIGDIGEST) , "no msgsigdigest"}, 199 {ERR_REASON(CMS_R_NO_PASSWORD) , "no password"}, 200 {ERR_REASON(CMS_R_NO_PRIVATE_KEY) , "no private key"}, 201 {ERR_REASON(CMS_R_NO_PUBLIC_KEY) , "no public key"}, 202 {ERR_REASON(CMS_R_NO_RECEIPT_REQUEST) , "no receipt request"}, 203 {ERR_REASON(CMS_R_NO_SIGNERS) , "no signers"}, 204 {ERR_REASON(CMS_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE), "private key does not match certificate"}, 205 {ERR_REASON(CMS_R_RECEIPT_DECODE_ERROR) , "receipt decode error"}, 206 {ERR_REASON(CMS_R_RECIPIENT_ERROR) , "recipient error"}, 207 {ERR_REASON(CMS_R_SIGNER_CERTIFICATE_NOT_FOUND), "signer certificate not found"}, 208 {ERR_REASON(CMS_R_SIGNFINAL_ERROR) , "signfinal error"}, 209 {ERR_REASON(CMS_R_SMIME_TEXT_ERROR) , "smime text error"}, 210 {ERR_REASON(CMS_R_STORE_INIT_ERROR) , "store init error"}, 211 {ERR_REASON(CMS_R_TYPE_NOT_COMPRESSED_DATA), "type not compressed data"}, 212 {ERR_REASON(CMS_R_TYPE_NOT_DATA) , "type not data"}, 213 {ERR_REASON(CMS_R_TYPE_NOT_DIGESTED_DATA), "type not digested data"}, 214 {ERR_REASON(CMS_R_TYPE_NOT_ENCRYPTED_DATA), "type not encrypted data"}, 215 {ERR_REASON(CMS_R_TYPE_NOT_ENVELOPED_DATA), "type not enveloped data"}, 216 {ERR_REASON(CMS_R_UNABLE_TO_FINALIZE_CONTEXT), "unable to finalize context"}, 217 {ERR_REASON(CMS_R_UNKNOWN_CIPHER) , "unknown cipher"}, 218 {ERR_REASON(CMS_R_UNKNOWN_DIGEST_ALGORIHM), "unknown digest algorihm"}, 219 {ERR_REASON(CMS_R_UNKNOWN_ID) , "unknown id"}, 220 {ERR_REASON(CMS_R_UNSUPPORTED_COMPRESSION_ALGORITHM), "unsupported compression algorithm"}, 221 {ERR_REASON(CMS_R_UNSUPPORTED_CONTENT_TYPE), "unsupported content type"}, 222 {ERR_REASON(CMS_R_UNSUPPORTED_KEK_ALGORITHM), "unsupported kek algorithm"}, 223 {ERR_REASON(CMS_R_UNSUPPORTED_KEY_ENCRYPTION_ALGORITHM), "unsupported key encryption algorithm"}, 224 {ERR_REASON(CMS_R_UNSUPPORTED_RECIPIENT_TYPE), "unsupported recipient type"}, 225 {ERR_REASON(CMS_R_UNSUPPORTED_RECPIENTINFO_TYPE), "unsupported recpientinfo type"}, 226 {ERR_REASON(CMS_R_UNSUPPORTED_TYPE) , "unsupported type"}, 227 {ERR_REASON(CMS_R_UNWRAP_ERROR) , "unwrap error"}, 228 {ERR_REASON(CMS_R_UNWRAP_FAILURE) , "unwrap failure"}, 229 {ERR_REASON(CMS_R_VERIFICATION_FAILURE) , "verification failure"}, 230 {ERR_REASON(CMS_R_WRAP_ERROR) , "wrap error"}, 231 {0, NULL} 232 }; 233 234 #endif 235 236 void 237 ERR_load_CMS_strings(void) 238 { 239 #ifndef OPENSSL_NO_ERR 240 if (ERR_func_error_string(CMS_str_functs[0].error) == NULL) { 241 ERR_load_strings(0, CMS_str_functs); 242 ERR_load_strings(0, CMS_str_reasons); 243 } 244 #endif 245 } 246