1/* ==================================================================== 2 * Copyright (c) 2001-2008 The OpenSSL Project. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 11 * 2. Redistributions in binary form must reproduce the above copyright 12 * notice, this list of conditions and the following disclaimer in 13 * the documentation and/or other materials provided with the 14 * distribution. 15 * 16 * 3. All advertising materials mentioning features or use of this 17 * software must display the following acknowledgment: 18 * "This product includes software developed by the OpenSSL Project 19 * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" 20 * 21 * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to 22 * endorse or promote products derived from this software without 23 * prior written permission. For written permission, please contact 24 * openssl-core@openssl.org. 25 * 26 * 5. Products derived from this software may not be called "OpenSSL" 27 * nor may "OpenSSL" appear in their names without prior written 28 * permission of the OpenSSL Project. 29 * 30 * 6. Redistributions of any form whatsoever must retain the following 31 * acknowledgment: 32 * "This product includes software developed by the OpenSSL Project 33 * for use in the OpenSSL Toolkit (http://www.openssl.org/)" 34 * 35 * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY 36 * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 37 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 38 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR 39 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 40 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 41 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 42 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 43 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 44 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 45 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 46 * OF THE POSSIBILITY OF SUCH DAMAGE. 47 * ==================================================================== 48 * 49 * This product includes cryptographic software written by Eric Young 50 * (eay@cryptsoft.com). This product includes software written by Tim 51 * Hudson (tjh@cryptsoft.com). 52 * 53 */ 54 55#ifndef HEADER_CAPI_ERR_H 56# define HEADER_CAPI_ERR_H 57 58#ifdef __cplusplus 59extern "C" { 60#endif 61 62/* BEGIN ERROR CODES */ 63/* 64 * The following lines are auto generated by the script mkerr.pl. Any changes 65 * made after this point may be overwritten when the script is next run. 66 */ 67static void ERR_load_CAPI_strings(void); 68static void ERR_unload_CAPI_strings(void); 69static void ERR_CAPI_error(int function, int reason, char *file, int line); 70# define CAPIerr(f,r) ERR_CAPI_error((f),(r),__FILE__,__LINE__) 71 72/* Error codes for the CAPI functions. */ 73 74/* Function codes. */ 75# define CAPI_F_CAPI_CERT_GET_FNAME 99 76# define CAPI_F_CAPI_CTRL 100 77# define CAPI_F_CAPI_CTX_NEW 101 78# define CAPI_F_CAPI_CTX_SET_PROVNAME 102 79# define CAPI_F_CAPI_DSA_DO_SIGN 114 80# define CAPI_F_CAPI_GET_KEY 103 81# define CAPI_F_CAPI_GET_PKEY 115 82# define CAPI_F_CAPI_GET_PROVNAME 104 83# define CAPI_F_CAPI_GET_PROV_INFO 105 84# define CAPI_F_CAPI_INIT 106 85# define CAPI_F_CAPI_LIST_CONTAINERS 107 86# define CAPI_F_CAPI_LOAD_PRIVKEY 108 87# define CAPI_F_CAPI_OPEN_STORE 109 88# define CAPI_F_CAPI_RSA_PRIV_DEC 110 89# define CAPI_F_CAPI_RSA_PRIV_ENC 111 90# define CAPI_F_CAPI_RSA_SIGN 112 91# define CAPI_F_CERT_SELECT_DIALOG 117 92# define CAPI_F_CLIENT_CERT_SELECT 116 93# define CAPI_F_WIDE_TO_ASC 113 94 95/* Reason codes. */ 96# define CAPI_R_CANT_CREATE_HASH_OBJECT 99 97# define CAPI_R_CANT_FIND_CAPI_CONTEXT 100 98# define CAPI_R_CANT_GET_KEY 101 99# define CAPI_R_CANT_SET_HASH_VALUE 102 100# define CAPI_R_CRYPTACQUIRECONTEXT_ERROR 103 101# define CAPI_R_CRYPTENUMPROVIDERS_ERROR 104 102# define CAPI_R_DECRYPT_ERROR 105 103# define CAPI_R_ENGINE_NOT_INITIALIZED 106 104# define CAPI_R_ENUMCONTAINERS_ERROR 107 105# define CAPI_R_ERROR_ADDING_CERT 125 106# define CAPI_R_ERROR_CREATING_STORE 126 107# define CAPI_R_ERROR_GETTING_FRIENDLY_NAME 108 108# define CAPI_R_ERROR_GETTING_KEY_PROVIDER_INFO 109 109# define CAPI_R_ERROR_OPENING_STORE 110 110# define CAPI_R_ERROR_SIGNING_HASH 111 111# define CAPI_R_FUNCTION_NOT_SUPPORTED 112 112# define CAPI_R_GETUSERKEY_ERROR 113 113# define CAPI_R_INVALID_DIGEST_LENGTH 124 114# define CAPI_R_INVALID_DSA_PUBLIC_KEY_BLOB_MAGIC_NUMBER 122 115# define CAPI_R_INVALID_LOOKUP_METHOD 114 116# define CAPI_R_INVALID_PUBLIC_KEY_BLOB 115 117# define CAPI_R_INVALID_RSA_PUBLIC_KEY_BLOB_MAGIC_NUMBER 123 118# define CAPI_R_PUBKEY_EXPORT_ERROR 116 119# define CAPI_R_PUBKEY_EXPORT_LENGTH_ERROR 117 120# define CAPI_R_UNKNOWN_COMMAND 118 121# define CAPI_R_UNSUPPORTED_ALGORITHM_NID 119 122# define CAPI_R_UNSUPPORTED_PADDING 120 123# define CAPI_R_UNSUPPORTED_PUBLIC_KEY_ALGORITHM 121 124# define CAPI_R_WIN32_ERROR 127 125 126#ifdef __cplusplus 127} 128#endif 129#endif 130