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/* The following lines are auto generated by the script mkerr.pl. Any changes 64 * made after this point may be overwritten when the script is next run. 65 */ 66static void ERR_load_CAPI_strings(void); 67static void ERR_unload_CAPI_strings(void); 68static void ERR_CAPI_error(int function, int reason, char *file, int line); 69#define CAPIerr(f,r) ERR_CAPI_error((f),(r),__FILE__,__LINE__) 70 71/* Error codes for the CAPI functions. */ 72 73/* Function codes. */ 74#define CAPI_F_CAPI_CERT_GET_FNAME 99 75#define CAPI_F_CAPI_CTRL 100 76#define CAPI_F_CAPI_CTX_NEW 101 77#define CAPI_F_CAPI_CTX_SET_PROVNAME 102 78#define CAPI_F_CAPI_DSA_DO_SIGN 114 79#define CAPI_F_CAPI_GET_KEY 103 80#define CAPI_F_CAPI_GET_PKEY 115 81#define CAPI_F_CAPI_GET_PROVNAME 104 82#define CAPI_F_CAPI_GET_PROV_INFO 105 83#define CAPI_F_CAPI_INIT 106 84#define CAPI_F_CAPI_LIST_CONTAINERS 107 85#define CAPI_F_CAPI_LOAD_PRIVKEY 108 86#define CAPI_F_CAPI_OPEN_STORE 109 87#define CAPI_F_CAPI_RSA_PRIV_DEC 110 88#define CAPI_F_CAPI_RSA_PRIV_ENC 111 89#define CAPI_F_CAPI_RSA_SIGN 112 90#define CAPI_F_CERT_SELECT_DIALOG 117 91#define CAPI_F_CLIENT_CERT_SELECT 116 92#define CAPI_F_WIDE_TO_ASC 113 93 94/* Reason codes. */ 95#define CAPI_R_CANT_CREATE_HASH_OBJECT 99 96#define CAPI_R_CANT_FIND_CAPI_CONTEXT 100 97#define CAPI_R_CANT_GET_KEY 101 98#define CAPI_R_CANT_SET_HASH_VALUE 102 99#define CAPI_R_CRYPTACQUIRECONTEXT_ERROR 103 100#define CAPI_R_CRYPTENUMPROVIDERS_ERROR 104 101#define CAPI_R_DECRYPT_ERROR 105 102#define CAPI_R_ENGINE_NOT_INITIALIZED 106 103#define CAPI_R_ENUMCONTAINERS_ERROR 107 104#define CAPI_R_ERROR_ADDING_CERT 125 105#define CAPI_R_ERROR_CREATING_STORE 126 106#define CAPI_R_ERROR_GETTING_FRIENDLY_NAME 108 107#define CAPI_R_ERROR_GETTING_KEY_PROVIDER_INFO 109 108#define CAPI_R_ERROR_OPENING_STORE 110 109#define CAPI_R_ERROR_SIGNING_HASH 111 110#define CAPI_R_FUNCTION_NOT_SUPPORTED 112 111#define CAPI_R_GETUSERKEY_ERROR 113 112#define CAPI_R_INVALID_DIGEST_LENGTH 124 113#define CAPI_R_INVALID_DSA_PUBLIC_KEY_BLOB_MAGIC_NUMBER 122 114#define CAPI_R_INVALID_LOOKUP_METHOD 114 115#define CAPI_R_INVALID_PUBLIC_KEY_BLOB 115 116#define CAPI_R_INVALID_RSA_PUBLIC_KEY_BLOB_MAGIC_NUMBER 123 117#define CAPI_R_PUBKEY_EXPORT_ERROR 116 118#define CAPI_R_PUBKEY_EXPORT_LENGTH_ERROR 117 119#define CAPI_R_UNKNOWN_COMMAND 118 120#define CAPI_R_UNSUPPORTED_ALGORITHM_NID 119 121#define CAPI_R_UNSUPPORTED_PADDING 120 122#define CAPI_R_UNSUPPORTED_PUBLIC_KEY_ALGORITHM 121 123#define CAPI_R_WIN32_ERROR 127 124 125#ifdef __cplusplus 126} 127#endif 128#endif 129