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