]>
Commit | Line | Data |
---|---|---|
d02b48c6 RE |
1 | /* lib/ssl/ssl_err.c */ |
2 | /* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) | |
3 | * All rights reserved. | |
4 | * | |
5 | * This package is an SSL implementation written | |
6 | * by Eric Young (eay@cryptsoft.com). | |
7 | * The implementation was written so as to conform with Netscapes SSL. | |
8 | * | |
9 | * This library is free for commercial and non-commercial use as long as | |
10 | * the following conditions are aheared to. The following conditions | |
11 | * apply to all code found in this distribution, be it the RC4, RSA, | |
12 | * lhash, DES, etc., code; not just the SSL code. The SSL documentation | |
13 | * included with this distribution is covered by the same copyright terms | |
14 | * except that the holder is Tim Hudson (tjh@cryptsoft.com). | |
15 | * | |
16 | * Copyright remains Eric Young's, and as such any Copyright notices in | |
17 | * the code are not to be removed. | |
18 | * If this package is used in a product, Eric Young should be given attribution | |
19 | * as the author of the parts of the library used. | |
20 | * This can be in the form of a textual message at program startup or | |
21 | * in documentation (online or textual) provided with the package. | |
22 | * | |
23 | * Redistribution and use in source and binary forms, with or without | |
24 | * modification, are permitted provided that the following conditions | |
25 | * are met: | |
26 | * 1. Redistributions of source code must retain the copyright | |
27 | * notice, this list of conditions and the following disclaimer. | |
28 | * 2. Redistributions in binary form must reproduce the above copyright | |
29 | * notice, this list of conditions and the following disclaimer in the | |
30 | * documentation and/or other materials provided with the distribution. | |
31 | * 3. All advertising materials mentioning features or use of this software | |
32 | * must display the following acknowledgement: | |
33 | * "This product includes cryptographic software written by | |
34 | * Eric Young (eay@cryptsoft.com)" | |
35 | * The word 'cryptographic' can be left out if the rouines from the library | |
36 | * being used are not cryptographic related :-). | |
37 | * 4. If you include any Windows specific code (or a derivative thereof) from | |
38 | * the apps directory (application code) you must include an acknowledgement: | |
39 | * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" | |
40 | * | |
41 | * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND | |
42 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |
43 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | |
44 | * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | |
45 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |
46 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | |
47 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | |
48 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | |
49 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | |
50 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | |
51 | * SUCH DAMAGE. | |
52 | * | |
53 | * The licence and distribution terms for any publically available version or | |
54 | * derivative of this code cannot be changed. i.e. this code cannot simply be | |
55 | * copied and put under another distribution licence | |
56 | * [including the GNU Public Licence.] | |
57 | */ | |
58 | #include <stdio.h> | |
59 | #include "err.h" | |
60 | #include "ssl.h" | |
61 | ||
62 | /* BEGIN ERROR CODES */ | |
58964a49 | 63 | #ifndef NO_ERR |
d02b48c6 RE |
64 | static ERR_STRING_DATA SSL_str_functs[]= |
65 | { | |
66 | {ERR_PACK(0,SSL_F_CLIENT_CERTIFICATE,0), "CLIENT_CERTIFICATE"}, | |
67 | {ERR_PACK(0,SSL_F_CLIENT_HELLO,0), "CLIENT_HELLO"}, | |
68 | {ERR_PACK(0,SSL_F_CLIENT_MASTER_KEY,0), "CLIENT_MASTER_KEY"}, | |
69 | {ERR_PACK(0,SSL_F_D2I_SSL_SESSION,0), "d2i_SSL_SESSION"}, | |
70 | {ERR_PACK(0,SSL_F_DO_SSL3_WRITE,0), "DO_SSL3_WRITE"}, | |
71 | {ERR_PACK(0,SSL_F_GET_CLIENT_FINISHED,0), "GET_CLIENT_FINISHED"}, | |
72 | {ERR_PACK(0,SSL_F_GET_CLIENT_HELLO,0), "GET_CLIENT_HELLO"}, | |
73 | {ERR_PACK(0,SSL_F_GET_CLIENT_MASTER_KEY,0), "GET_CLIENT_MASTER_KEY"}, | |
74 | {ERR_PACK(0,SSL_F_GET_SERVER_FINISHED,0), "GET_SERVER_FINISHED"}, | |
75 | {ERR_PACK(0,SSL_F_GET_SERVER_HELLO,0), "GET_SERVER_HELLO"}, | |
76 | {ERR_PACK(0,SSL_F_GET_SERVER_VERIFY,0), "GET_SERVER_VERIFY"}, | |
77 | {ERR_PACK(0,SSL_F_I2D_SSL_SESSION,0), "i2d_SSL_SESSION"}, | |
78 | {ERR_PACK(0,SSL_F_READ_N,0), "READ_N"}, | |
79 | {ERR_PACK(0,SSL_F_REQUEST_CERTIFICATE,0), "REQUEST_CERTIFICATE"}, | |
80 | {ERR_PACK(0,SSL_F_SERVER_HELLO,0), "SERVER_HELLO"}, | |
81 | {ERR_PACK(0,SSL_F_SSL23_ACCEPT,0), "SSL23_ACCEPT"}, | |
82 | {ERR_PACK(0,SSL_F_SSL23_CLIENT_HELLO,0), "SSL23_CLIENT_HELLO"}, | |
83 | {ERR_PACK(0,SSL_F_SSL23_CONNECT,0), "SSL23_CONNECT"}, | |
84 | {ERR_PACK(0,SSL_F_SSL23_GET_CLIENT_HELLO,0), "SSL23_GET_CLIENT_HELLO"}, | |
85 | {ERR_PACK(0,SSL_F_SSL23_GET_SERVER_HELLO,0), "SSL23_GET_SERVER_HELLO"}, | |
86 | {ERR_PACK(0,SSL_F_SSL23_READ,0), "SSL23_READ"}, | |
87 | {ERR_PACK(0,SSL_F_SSL23_WRITE,0), "SSL23_WRITE"}, | |
88 | {ERR_PACK(0,SSL_F_SSL2_ACCEPT,0), "SSL2_ACCEPT"}, | |
89 | {ERR_PACK(0,SSL_F_SSL2_CONNECT,0), "SSL2_CONNECT"}, | |
90 | {ERR_PACK(0,SSL_F_SSL2_ENC_INIT,0), "SSL2_ENC_INIT"}, | |
91 | {ERR_PACK(0,SSL_F_SSL2_READ,0), "SSL2_READ"}, | |
92 | {ERR_PACK(0,SSL_F_SSL2_SET_CERTIFICATE,0), "SSL2_SET_CERTIFICATE"}, | |
93 | {ERR_PACK(0,SSL_F_SSL2_WRITE,0), "SSL2_WRITE"}, | |
94 | {ERR_PACK(0,SSL_F_SSL3_ACCEPT,0), "SSL3_ACCEPT"}, | |
95 | {ERR_PACK(0,SSL_F_SSL3_CHANGE_CIPHER_STATE,0), "SSL3_CHANGE_CIPHER_STATE"}, | |
96 | {ERR_PACK(0,SSL_F_SSL3_CHECK_CERT_AND_ALGORITHM,0), "SSL3_CHECK_CERT_AND_ALGORITHM"}, | |
97 | {ERR_PACK(0,SSL_F_SSL3_CLIENT_HELLO,0), "SSL3_CLIENT_HELLO"}, | |
98 | {ERR_PACK(0,SSL_F_SSL3_CONNECT,0), "SSL3_CONNECT"}, | |
99 | {ERR_PACK(0,SSL_F_SSL3_CTX_CTRL,0), "SSL3_CTX_CTRL"}, | |
100 | {ERR_PACK(0,SSL_F_SSL3_ENC,0), "SSL3_ENC"}, | |
101 | {ERR_PACK(0,SSL_F_SSL3_GET_CERTIFICATE_REQUEST,0), "SSL3_GET_CERTIFICATE_REQUEST"}, | |
102 | {ERR_PACK(0,SSL_F_SSL3_GET_CERT_VERIFY,0), "SSL3_GET_CERT_VERIFY"}, | |
103 | {ERR_PACK(0,SSL_F_SSL3_GET_CLIENT_CERTIFICATE,0), "SSL3_GET_CLIENT_CERTIFICATE"}, | |
104 | {ERR_PACK(0,SSL_F_SSL3_GET_CLIENT_HELLO,0), "SSL3_GET_CLIENT_HELLO"}, | |
105 | {ERR_PACK(0,SSL_F_SSL3_GET_CLIENT_KEY_EXCHANGE,0), "SSL3_GET_CLIENT_KEY_EXCHANGE"}, | |
106 | {ERR_PACK(0,SSL_F_SSL3_GET_FINISHED,0), "SSL3_GET_FINISHED"}, | |
107 | {ERR_PACK(0,SSL_F_SSL3_GET_KEY_EXCHANGE,0), "SSL3_GET_KEY_EXCHANGE"}, | |
108 | {ERR_PACK(0,SSL_F_SSL3_GET_MESSAGE,0), "SSL3_GET_MESSAGE"}, | |
109 | {ERR_PACK(0,SSL_F_SSL3_GET_RECORD,0), "SSL3_GET_RECORD"}, | |
110 | {ERR_PACK(0,SSL_F_SSL3_GET_SERVER_CERTIFICATE,0), "SSL3_GET_SERVER_CERTIFICATE"}, | |
111 | {ERR_PACK(0,SSL_F_SSL3_GET_SERVER_DONE,0), "SSL3_GET_SERVER_DONE"}, | |
112 | {ERR_PACK(0,SSL_F_SSL3_GET_SERVER_HELLO,0), "SSL3_GET_SERVER_HELLO"}, | |
113 | {ERR_PACK(0,SSL_F_SSL3_OUTPUT_CERT_CHAIN,0), "SSL3_OUTPUT_CERT_CHAIN"}, | |
114 | {ERR_PACK(0,SSL_F_SSL3_READ_BYTES,0), "SSL3_READ_BYTES"}, | |
115 | {ERR_PACK(0,SSL_F_SSL3_READ_N,0), "SSL3_READ_N"}, | |
116 | {ERR_PACK(0,SSL_F_SSL3_SEND_CERTIFICATE_REQUEST,0), "SSL3_SEND_CERTIFICATE_REQUEST"}, | |
117 | {ERR_PACK(0,SSL_F_SSL3_SEND_CLIENT_CERTIFICATE,0), "SSL3_SEND_CLIENT_CERTIFICATE"}, | |
118 | {ERR_PACK(0,SSL_F_SSL3_SEND_CLIENT_KEY_EXCHANGE,0), "SSL3_SEND_CLIENT_KEY_EXCHANGE"}, | |
119 | {ERR_PACK(0,SSL_F_SSL3_SEND_CLIENT_VERIFY,0), "SSL3_SEND_CLIENT_VERIFY"}, | |
120 | {ERR_PACK(0,SSL_F_SSL3_SEND_SERVER_CERTIFICATE,0), "SSL3_SEND_SERVER_CERTIFICATE"}, | |
121 | {ERR_PACK(0,SSL_F_SSL3_SEND_SERVER_KEY_EXCHANGE,0), "SSL3_SEND_SERVER_KEY_EXCHANGE"}, | |
122 | {ERR_PACK(0,SSL_F_SSL3_SETUP_BUFFERS,0), "SSL3_SETUP_BUFFERS"}, | |
123 | {ERR_PACK(0,SSL_F_SSL3_SETUP_KEY_BLOCK,0), "SSL3_SETUP_KEY_BLOCK"}, | |
124 | {ERR_PACK(0,SSL_F_SSL3_WRITE_BYTES,0), "SSL3_WRITE_BYTES"}, | |
125 | {ERR_PACK(0,SSL_F_SSL3_WRITE_PENDING,0), "SSL3_WRITE_PENDING"}, | |
126 | {ERR_PACK(0,SSL_F_SSL_BAD_METHOD,0), "SSL_BAD_METHOD"}, | |
127 | {ERR_PACK(0,SSL_F_SSL_BYTES_TO_CIPHER_LIST,0), "SSL_BYTES_TO_CIPHER_LIST"}, | |
128 | {ERR_PACK(0,SSL_F_SSL_CERT_NEW,0), "SSL_CERT_NEW"}, | |
129 | {ERR_PACK(0,SSL_F_SSL_CHECK_PRIVATE_KEY,0), "SSL_check_private_key"}, | |
413c4f45 MC |
130 | {ERR_PACK(0,SSL_F_SSL_CLEAR,0), "SSL_clear"}, |
131 | {ERR_PACK(0,SSL_F_SSL_COMP_ADD_COMPRESSION_METHOD,0), "SSL_COMP_add_compression_method"}, | |
d02b48c6 RE |
132 | {ERR_PACK(0,SSL_F_SSL_CREATE_CIPHER_LIST,0), "SSL_CREATE_CIPHER_LIST"}, |
133 | {ERR_PACK(0,SSL_F_SSL_CTX_CHECK_PRIVATE_KEY,0), "SSL_CTX_check_private_key"}, | |
134 | {ERR_PACK(0,SSL_F_SSL_CTX_NEW,0), "SSL_CTX_new"}, | |
135 | {ERR_PACK(0,SSL_F_SSL_CTX_SET_SSL_VERSION,0), "SSL_CTX_set_ssl_version"}, | |
136 | {ERR_PACK(0,SSL_F_SSL_CTX_USE_CERTIFICATE,0), "SSL_CTX_use_certificate"}, | |
137 | {ERR_PACK(0,SSL_F_SSL_CTX_USE_CERTIFICATE_ASN1,0), "SSL_CTX_use_certificate_ASN1"}, | |
138 | {ERR_PACK(0,SSL_F_SSL_CTX_USE_CERTIFICATE_FILE,0), "SSL_CTX_use_certificate_file"}, | |
139 | {ERR_PACK(0,SSL_F_SSL_CTX_USE_PRIVATEKEY,0), "SSL_CTX_use_PrivateKey"}, | |
140 | {ERR_PACK(0,SSL_F_SSL_CTX_USE_PRIVATEKEY_ASN1,0), "SSL_CTX_use_PrivateKey_ASN1"}, | |
141 | {ERR_PACK(0,SSL_F_SSL_CTX_USE_PRIVATEKEY_FILE,0), "SSL_CTX_use_PrivateKey_file"}, | |
142 | {ERR_PACK(0,SSL_F_SSL_CTX_USE_RSAPRIVATEKEY,0), "SSL_CTX_use_RSAPrivateKey"}, | |
143 | {ERR_PACK(0,SSL_F_SSL_CTX_USE_RSAPRIVATEKEY_ASN1,0), "SSL_CTX_use_RSAPrivateKey_ASN1"}, | |
144 | {ERR_PACK(0,SSL_F_SSL_CTX_USE_RSAPRIVATEKEY_FILE,0), "SSL_CTX_use_RSAPrivateKey_file"}, | |
145 | {ERR_PACK(0,SSL_F_SSL_DO_HANDSHAKE,0), "SSL_do_handshake"}, | |
146 | {ERR_PACK(0,SSL_F_SSL_GET_NEW_SESSION,0), "SSL_GET_NEW_SESSION"}, | |
147 | {ERR_PACK(0,SSL_F_SSL_GET_SERVER_SEND_CERT,0), "SSL_GET_SERVER_SEND_CERT"}, | |
148 | {ERR_PACK(0,SSL_F_SSL_GET_SIGN_PKEY,0), "SSL_GET_SIGN_PKEY"}, | |
58964a49 | 149 | {ERR_PACK(0,SSL_F_SSL_INIT_WBIO_BUFFER,0), "SSL_INIT_WBIO_BUFFER"}, |
d02b48c6 RE |
150 | {ERR_PACK(0,SSL_F_SSL_LOAD_CLIENT_CA_FILE,0), "SSL_load_client_CA_file"}, |
151 | {ERR_PACK(0,SSL_F_SSL_NEW,0), "SSL_new"}, | |
152 | {ERR_PACK(0,SSL_F_SSL_RSA_PRIVATE_DECRYPT,0), "SSL_RSA_PRIVATE_DECRYPT"}, | |
153 | {ERR_PACK(0,SSL_F_SSL_RSA_PUBLIC_ENCRYPT,0), "SSL_RSA_PUBLIC_ENCRYPT"}, | |
154 | {ERR_PACK(0,SSL_F_SSL_SESSION_NEW,0), "SSL_SESSION_new"}, | |
155 | {ERR_PACK(0,SSL_F_SSL_SESSION_PRINT_FP,0), "SSL_SESSION_print_fp"}, | |
58964a49 | 156 | {ERR_PACK(0,SSL_F_SSL_SET_CERT,0), "SSL_SET_CERT"}, |
d02b48c6 RE |
157 | {ERR_PACK(0,SSL_F_SSL_SET_FD,0), "SSL_set_fd"}, |
158 | {ERR_PACK(0,SSL_F_SSL_SET_PKEY,0), "SSL_SET_PKEY"}, | |
159 | {ERR_PACK(0,SSL_F_SSL_SET_RFD,0), "SSL_set_rfd"}, | |
160 | {ERR_PACK(0,SSL_F_SSL_SET_SESSION,0), "SSL_set_session"}, | |
161 | {ERR_PACK(0,SSL_F_SSL_SET_WFD,0), "SSL_set_wfd"}, | |
162 | {ERR_PACK(0,SSL_F_SSL_UNDEFINED_FUNCTION,0), "SSL_UNDEFINED_FUNCTION"}, | |
163 | {ERR_PACK(0,SSL_F_SSL_USE_CERTIFICATE,0), "SSL_use_certificate"}, | |
164 | {ERR_PACK(0,SSL_F_SSL_USE_CERTIFICATE_ASN1,0), "SSL_use_certificate_ASN1"}, | |
165 | {ERR_PACK(0,SSL_F_SSL_USE_CERTIFICATE_FILE,0), "SSL_use_certificate_file"}, | |
166 | {ERR_PACK(0,SSL_F_SSL_USE_PRIVATEKEY,0), "SSL_use_PrivateKey"}, | |
167 | {ERR_PACK(0,SSL_F_SSL_USE_PRIVATEKEY_ASN1,0), "SSL_use_PrivateKey_ASN1"}, | |
168 | {ERR_PACK(0,SSL_F_SSL_USE_PRIVATEKEY_FILE,0), "SSL_use_PrivateKey_file"}, | |
169 | {ERR_PACK(0,SSL_F_SSL_USE_RSAPRIVATEKEY,0), "SSL_use_RSAPrivateKey"}, | |
170 | {ERR_PACK(0,SSL_F_SSL_USE_RSAPRIVATEKEY_ASN1,0), "SSL_use_RSAPrivateKey_ASN1"}, | |
171 | {ERR_PACK(0,SSL_F_SSL_USE_RSAPRIVATEKEY_FILE,0), "SSL_use_RSAPrivateKey_file"}, | |
dfeab068 | 172 | {ERR_PACK(0,SSL_F_SSL_VERIFY_CERT_CHAIN,0), "SSL_VERIFY_CERT_CHAIN"}, |
d02b48c6 | 173 | {ERR_PACK(0,SSL_F_SSL_WRITE,0), "SSL_write"}, |
58964a49 RE |
174 | {ERR_PACK(0,SSL_F_TLS1_CHANGE_CIPHER_STATE,0), "TLS1_CHANGE_CIPHER_STATE"}, |
175 | {ERR_PACK(0,SSL_F_TLS1_ENC,0), "TLS1_ENC"}, | |
176 | {ERR_PACK(0,SSL_F_TLS1_SETUP_KEY_BLOCK,0), "TLS1_SETUP_KEY_BLOCK"}, | |
d02b48c6 | 177 | {ERR_PACK(0,SSL_F_WRITE_PENDING,0), "WRITE_PENDING"}, |
15d21c2d RE |
178 | {ERR_PACK(0,SSL_F_SSL3_CTRL,0), "SSL3_CTRL"}, |
179 | {ERR_PACK(0,SSL_F_SSL_CERT_INSTANTIATE,0), "SSL_CERT_INSTANTIATE"}, | |
d02b48c6 RE |
180 | {0,NULL}, |
181 | }; | |
182 | ||
183 | static ERR_STRING_DATA SSL_str_reasons[]= | |
184 | { | |
185 | {SSL_R_APP_DATA_IN_HANDSHAKE ,"app data in handshake"}, | |
186 | {SSL_R_BAD_ALERT_RECORD ,"bad alert record"}, | |
187 | {SSL_R_BAD_AUTHENTICATION_TYPE ,"bad authentication type"}, | |
188 | {SSL_R_BAD_CHANGE_CIPHER_SPEC ,"bad change cipher spec"}, | |
189 | {SSL_R_BAD_CHECKSUM ,"bad checksum"}, | |
190 | {SSL_R_BAD_CLIENT_REQUEST ,"bad client request"}, | |
191 | {SSL_R_BAD_DATA_RETURNED_BY_CALLBACK ,"bad data returned by callback"}, | |
192 | {SSL_R_BAD_DECOMPRESSION ,"bad decompression"}, | |
193 | {SSL_R_BAD_DH_G_LENGTH ,"bad dh g length"}, | |
194 | {SSL_R_BAD_DH_PUB_KEY_LENGTH ,"bad dh pub key length"}, | |
195 | {SSL_R_BAD_DH_P_LENGTH ,"bad dh p length"}, | |
196 | {SSL_R_BAD_DIGEST_LENGTH ,"bad digest length"}, | |
197 | {SSL_R_BAD_DSA_SIGNATURE ,"bad dsa signature"}, | |
198 | {SSL_R_BAD_MAC_DECODE ,"bad mac decode"}, | |
199 | {SSL_R_BAD_MESSAGE_TYPE ,"bad message type"}, | |
200 | {SSL_R_BAD_PACKET_LENGTH ,"bad packet length"}, | |
58964a49 | 201 | {SSL_R_BAD_PROTOCOL_VERSION_NUMBER ,"bad protocol version number"}, |
d02b48c6 RE |
202 | {SSL_R_BAD_RESPONSE_ARGUMENT ,"bad response argument"}, |
203 | {SSL_R_BAD_RSA_DECRYPT ,"bad rsa decrypt"}, | |
204 | {SSL_R_BAD_RSA_ENCRYPT ,"bad rsa encrypt"}, | |
205 | {SSL_R_BAD_RSA_E_LENGTH ,"bad rsa e length"}, | |
206 | {SSL_R_BAD_RSA_MODULUS_LENGTH ,"bad rsa modulus length"}, | |
207 | {SSL_R_BAD_RSA_SIGNATURE ,"bad rsa signature"}, | |
208 | {SSL_R_BAD_SIGNATURE ,"bad signature"}, | |
209 | {SSL_R_BAD_SSL_FILETYPE ,"bad ssl filetype"}, | |
210 | {SSL_R_BAD_SSL_SESSION_ID_LENGTH ,"bad ssl session id length"}, | |
211 | {SSL_R_BAD_STATE ,"bad state"}, | |
212 | {SSL_R_BAD_WRITE_RETRY ,"bad write retry"}, | |
213 | {SSL_R_BIO_NOT_SET ,"bio not set"}, | |
214 | {SSL_R_BLOCK_CIPHER_PAD_IS_WRONG ,"block cipher pad is wrong"}, | |
215 | {SSL_R_BN_LIB ,"bn lib"}, | |
216 | {SSL_R_CA_DN_LENGTH_MISMATCH ,"ca dn length mismatch"}, | |
217 | {SSL_R_CA_DN_TOO_LONG ,"ca dn too long"}, | |
218 | {SSL_R_CCS_RECEIVED_EARLY ,"ccs received early"}, | |
219 | {SSL_R_CERTIFICATE_VERIFY_FAILED ,"certificate verify failed"}, | |
220 | {SSL_R_CERT_LENGTH_MISMATCH ,"cert length mismatch"}, | |
221 | {SSL_R_CHALLENGE_IS_DIFFERENT ,"challenge is different"}, | |
222 | {SSL_R_CIPHER_CODE_WRONG_LENGTH ,"cipher code wrong length"}, | |
223 | {SSL_R_CIPHER_OR_HASH_UNAVAILABLE ,"cipher or hash unavailable"}, | |
224 | {SSL_R_CIPHER_TABLE_SRC_ERROR ,"cipher table src error"}, | |
225 | {SSL_R_COMPRESSED_LENGTH_TOO_LONG ,"compressed length too long"}, | |
226 | {SSL_R_COMPRESSION_FAILURE ,"compression failure"}, | |
dfeab068 | 227 | {SSL_R_COMPRESSION_LIBRARY_ERROR ,"compression library error"}, |
d02b48c6 | 228 | {SSL_R_CONNECTION_ID_IS_DIFFERENT ,"connection id is different"}, |
58964a49 | 229 | {SSL_R_CONNECTION_TYPE_NOT_SET ,"connection type not set"}, |
d02b48c6 RE |
230 | {SSL_R_DATA_BETWEEN_CCS_AND_FINISHED ,"data between ccs and finished"}, |
231 | {SSL_R_DATA_LENGTH_TOO_LONG ,"data length too long"}, | |
58964a49 | 232 | {SSL_R_DECRYPTION_FAILED ,"decryption failed"}, |
d02b48c6 RE |
233 | {SSL_R_DH_PUBLIC_VALUE_LENGTH_IS_WRONG ,"dh public value length is wrong"}, |
234 | {SSL_R_DIGEST_CHECK_FAILED ,"digest check failed"}, | |
235 | {SSL_R_ENCRYPTED_LENGTH_TOO_LONG ,"encrypted length too long"}, | |
236 | {SSL_R_ERROR_IN_RECEIVED_CIPHER_LIST ,"error in received cipher list"}, | |
237 | {SSL_R_EXCESSIVE_MESSAGE_SIZE ,"excessive message size"}, | |
238 | {SSL_R_EXTRA_DATA_IN_MESSAGE ,"extra data in message"}, | |
239 | {SSL_R_GOT_A_FIN_BEFORE_A_CCS ,"got a fin before a ccs"}, | |
58964a49 RE |
240 | {SSL_R_HTTPS_PROXY_REQUEST ,"https proxy request"}, |
241 | {SSL_R_HTTP_REQUEST ,"http request"}, | |
d02b48c6 RE |
242 | {SSL_R_INTERNAL_ERROR ,"internal error"}, |
243 | {SSL_R_INVALID_CHALLENGE_LENGTH ,"invalid challenge length"}, | |
244 | {SSL_R_LENGTH_MISMATCH ,"length mismatch"}, | |
245 | {SSL_R_LENGTH_TOO_SHORT ,"length too short"}, | |
246 | {SSL_R_LIBRARY_HAS_NO_CIPHERS ,"library has no ciphers"}, | |
247 | {SSL_R_MISSING_DH_DSA_CERT ,"missing dh dsa cert"}, | |
248 | {SSL_R_MISSING_DH_KEY ,"missing dh key"}, | |
249 | {SSL_R_MISSING_DH_RSA_CERT ,"missing dh rsa cert"}, | |
250 | {SSL_R_MISSING_DSA_SIGNING_CERT ,"missing dsa signing cert"}, | |
251 | {SSL_R_MISSING_EXPORT_TMP_DH_KEY ,"missing export tmp dh key"}, | |
252 | {SSL_R_MISSING_EXPORT_TMP_RSA_KEY ,"missing export tmp rsa key"}, | |
253 | {SSL_R_MISSING_RSA_CERTIFICATE ,"missing rsa certificate"}, | |
254 | {SSL_R_MISSING_RSA_ENCRYPTING_CERT ,"missing rsa encrypting cert"}, | |
255 | {SSL_R_MISSING_RSA_SIGNING_CERT ,"missing rsa signing cert"}, | |
256 | {SSL_R_MISSING_TMP_DH_KEY ,"missing tmp dh key"}, | |
257 | {SSL_R_MISSING_TMP_RSA_KEY ,"missing tmp rsa key"}, | |
258 | {SSL_R_MISSING_TMP_RSA_PKEY ,"missing tmp rsa pkey"}, | |
259 | {SSL_R_MISSING_VERIFY_MESSAGE ,"missing verify message"}, | |
260 | {SSL_R_NON_SSLV2_INITIAL_PACKET ,"non sslv2 initial packet"}, | |
58964a49 | 261 | {SSL_R_NO_CERTIFICATES_RETURNED ,"no certificates returned"}, |
d02b48c6 RE |
262 | {SSL_R_NO_CERTIFICATE_ASSIGNED ,"no certificate assigned"}, |
263 | {SSL_R_NO_CERTIFICATE_RETURNED ,"no certificate returned"}, | |
264 | {SSL_R_NO_CERTIFICATE_SET ,"no certificate set"}, | |
265 | {SSL_R_NO_CERTIFICATE_SPECIFIED ,"no certificate specified"}, | |
266 | {SSL_R_NO_CIPHERS_AVAILABLE ,"no ciphers available"}, | |
267 | {SSL_R_NO_CIPHERS_PASSED ,"no ciphers passed"}, | |
268 | {SSL_R_NO_CIPHERS_SPECIFIED ,"no ciphers specified"}, | |
269 | {SSL_R_NO_CIPHER_LIST ,"no cipher list"}, | |
270 | {SSL_R_NO_CIPHER_MATCH ,"no cipher match"}, | |
271 | {SSL_R_NO_CLIENT_CERT_RECEIVED ,"no client cert received"}, | |
272 | {SSL_R_NO_COMPRESSION_SPECIFIED ,"no compression specified"}, | |
413c4f45 | 273 | {SSL_R_NO_METHOD_SPECIFIED ,"no method specified"}, |
d02b48c6 RE |
274 | {SSL_R_NO_PRIVATEKEY ,"no privatekey"}, |
275 | {SSL_R_NO_PRIVATE_KEY_ASSIGNED ,"no private key assigned"}, | |
58964a49 | 276 | {SSL_R_NO_PROTOCOLS_AVAILABLE ,"no protocols available"}, |
d02b48c6 RE |
277 | {SSL_R_NO_PUBLICKEY ,"no publickey"}, |
278 | {SSL_R_NO_SHARED_CIPHER ,"no shared cipher"}, | |
dfeab068 | 279 | {SSL_R_NO_VERIFY_CALLBACK ,"no verify callback"}, |
d02b48c6 RE |
280 | {SSL_R_NULL_SSL_CTX ,"null ssl ctx"}, |
281 | {SSL_R_NULL_SSL_METHOD_PASSED ,"null ssl method passed"}, | |
282 | {SSL_R_OLD_SESSION_CIPHER_NOT_RETURNED ,"old session cipher not returned"}, | |
283 | {SSL_R_PACKET_LENGTH_TOO_LONG ,"packet length too long"}, | |
284 | {SSL_R_PEER_DID_NOT_RETURN_A_CERTIFICATE ,"peer did not return a certificate"}, | |
285 | {SSL_R_PEER_ERROR ,"peer error"}, | |
286 | {SSL_R_PEER_ERROR_CERTIFICATE ,"peer error certificate"}, | |
287 | {SSL_R_PEER_ERROR_NO_CERTIFICATE ,"peer error no certificate"}, | |
288 | {SSL_R_PEER_ERROR_NO_CIPHER ,"peer error no cipher"}, | |
289 | {SSL_R_PEER_ERROR_UNSUPPORTED_CERTIFICATE_TYPE,"peer error unsupported certificate type"}, | |
290 | {SSL_R_PRE_MAC_LENGTH_TOO_LONG ,"pre mac length too long"}, | |
291 | {SSL_R_PROBLEMS_MAPPING_CIPHER_FUNCTIONS ,"problems mapping cipher functions"}, | |
292 | {SSL_R_PROTOCOL_IS_SHUTDOWN ,"protocol is shutdown"}, | |
293 | {SSL_R_PUBLIC_KEY_ENCRYPT_ERROR ,"public key encrypt error"}, | |
294 | {SSL_R_PUBLIC_KEY_IS_NOT_RSA ,"public key is not rsa"}, | |
295 | {SSL_R_PUBLIC_KEY_NOT_RSA ,"public key not rsa"}, | |
296 | {SSL_R_READ_BIO_NOT_SET ,"read bio not set"}, | |
297 | {SSL_R_READ_WRONG_PACKET_TYPE ,"read wrong packet type"}, | |
298 | {SSL_R_RECORD_LENGTH_MISMATCH ,"record length mismatch"}, | |
299 | {SSL_R_RECORD_TOO_LARGE ,"record too large"}, | |
300 | {SSL_R_REQUIRED_CIPHER_MISSING ,"required cipher missing"}, | |
301 | {SSL_R_REUSE_CERT_LENGTH_NOT_ZERO ,"reuse cert length not zero"}, | |
302 | {SSL_R_REUSE_CERT_TYPE_NOT_ZERO ,"reuse cert type not zero"}, | |
303 | {SSL_R_REUSE_CIPHER_LIST_NOT_ZERO ,"reuse cipher list not zero"}, | |
304 | {SSL_R_SHORT_READ ,"short read"}, | |
305 | {SSL_R_SIGNATURE_FOR_NON_SIGNING_CERTIFICATE,"signature for non signing certificate"}, | |
413c4f45 | 306 | {SSL_R_SSL23_DOING_SESSION_ID_REUSE ,"ssl23 doing session id reuse"}, |
d02b48c6 RE |
307 | {SSL_R_SSL3_SESSION_ID_TOO_SHORT ,"ssl3 session id too short"}, |
308 | {SSL_R_SSLV3_ALERT_BAD_CERTIFICATE ,"sslv3 alert bad certificate"}, | |
309 | {SSL_R_SSLV3_ALERT_BAD_RECORD_MAC ,"sslv3 alert bad record mac"}, | |
310 | {SSL_R_SSLV3_ALERT_CERTIFICATE_EXPIRED ,"sslv3 alert certificate expired"}, | |
311 | {SSL_R_SSLV3_ALERT_CERTIFICATE_REVOKED ,"sslv3 alert certificate revoked"}, | |
312 | {SSL_R_SSLV3_ALERT_CERTIFICATE_UNKNOWN ,"sslv3 alert certificate unknown"}, | |
313 | {SSL_R_SSLV3_ALERT_DECOMPRESSION_FAILURE ,"sslv3 alert decompression failure"}, | |
314 | {SSL_R_SSLV3_ALERT_HANDSHAKE_FAILURE ,"sslv3 alert handshake failure"}, | |
315 | {SSL_R_SSLV3_ALERT_ILLEGAL_PARAMETER ,"sslv3 alert illegal parameter"}, | |
316 | {SSL_R_SSLV3_ALERT_NO_CERTIFICATE ,"sslv3 alert no certificate"}, | |
317 | {SSL_R_SSLV3_ALERT_PEER_ERROR_CERTIFICATE,"sslv3 alert peer error certificate"}, | |
318 | {SSL_R_SSLV3_ALERT_PEER_ERROR_NO_CERTIFICATE,"sslv3 alert peer error no certificate"}, | |
319 | {SSL_R_SSLV3_ALERT_PEER_ERROR_NO_CIPHER ,"sslv3 alert peer error no cipher"}, | |
320 | {SSL_R_SSLV3_ALERT_PEER_ERROR_UNSUPPORTED_CERTIFICATE_TYPE,"sslv3 alert peer error unsupported certificate type"}, | |
321 | {SSL_R_SSLV3_ALERT_UNEXPECTED_MESSAGE ,"sslv3 alert unexpected message"}, | |
322 | {SSL_R_SSLV3_ALERT_UNKNOWN_REMOTE_ERROR_TYPE,"sslv3 alert unknown remote error type"}, | |
323 | {SSL_R_SSLV3_ALERT_UNSUPPORTED_CERTIFICATE,"sslv3 alert unsupported certificate"}, | |
324 | {SSL_R_SSL_CTX_HAS_NO_DEFAULT_SSL_VERSION,"ssl ctx has no default ssl version"}, | |
325 | {SSL_R_SSL_HANDSHAKE_FAILURE ,"ssl handshake failure"}, | |
326 | {SSL_R_SSL_LIBRARY_HAS_NO_CIPHERS ,"ssl library has no ciphers"}, | |
327 | {SSL_R_SSL_SESSION_ID_IS_DIFFERENT ,"ssl session id is different"}, | |
dfeab068 RE |
328 | {SSL_R_TLSV1_ALERT_ACCESS_DENIED ,"tlsv1 alert access denied"}, |
329 | {SSL_R_TLSV1_ALERT_DECODE_ERROR ,"tlsv1 alert decode error"}, | |
330 | {SSL_R_TLSV1_ALERT_DECRYPTION_FAILED ,"tlsv1 alert decryption failed"}, | |
331 | {SSL_R_TLSV1_ALERT_DECRYPT_ERROR ,"tlsv1 alert decrypt error"}, | |
332 | {SSL_R_TLSV1_ALERT_EXPORT_RESTRICION ,"tlsv1 alert export restricion"}, | |
333 | {SSL_R_TLSV1_ALERT_INSUFFICIENT_SECURITY ,"tlsv1 alert insufficient security"}, | |
334 | {SSL_R_TLSV1_ALERT_INTERNAL_ERROR ,"tlsv1 alert internal error"}, | |
335 | {SSL_R_TLSV1_ALERT_NO_RENEGOTIATION ,"tlsv1 alert no renegotiation"}, | |
336 | {SSL_R_TLSV1_ALERT_PROTOCOL_VERSION ,"tlsv1 alert protocol version"}, | |
337 | {SSL_R_TLSV1_ALERT_RECORD_OVERFLOW ,"tlsv1 alert record overflow"}, | |
338 | {SSL_R_TLSV1_ALERT_UNKNOWN_CA ,"tlsv1 alert unknown ca"}, | |
339 | {SSL_R_TLSV1_ALERT_USER_CANCLED ,"tlsv1 alert user cancled"}, | |
58964a49 RE |
340 | {SSL_R_TLS_CLIENT_CERT_REQ_WITH_ANON_CIPHER,"tls client cert req with anon cipher"}, |
341 | {SSL_R_TLS_PEER_DID_NOT_RESPOND_WITH_CERTIFICATE_LIST,"tls peer did not respond with certificate list"}, | |
342 | {SSL_R_TLS_RSA_ENCRYPTED_VALUE_LENGTH_IS_WRONG,"tls rsa encrypted value length is wrong"}, | |
d02b48c6 RE |
343 | {SSL_R_TRIED_TO_USE_UNSUPPORTED_CIPHER ,"tried to use unsupported cipher"}, |
344 | {SSL_R_UNABLE_TO_DECODE_DH_CERTS ,"unable to decode dh certs"}, | |
345 | {SSL_R_UNABLE_TO_EXTRACT_PUBLIC_KEY ,"unable to extract public key"}, | |
346 | {SSL_R_UNABLE_TO_FIND_DH_PARAMETERS ,"unable to find dh parameters"}, | |
347 | {SSL_R_UNABLE_TO_FIND_PUBLIC_KEY_PARAMETERS,"unable to find public key parameters"}, | |
348 | {SSL_R_UNABLE_TO_FIND_SSL_METHOD ,"unable to find ssl method"}, | |
58964a49 RE |
349 | {SSL_R_UNABLE_TO_LOAD_SSL2_MD5_ROUTINES ,"unable to load ssl2 md5 routines"}, |
350 | {SSL_R_UNABLE_TO_LOAD_SSL3_MD5_ROUTINES ,"unable to load ssl3 md5 routines"}, | |
351 | {SSL_R_UNABLE_TO_LOAD_SSL3_SHA1_ROUTINES ,"unable to load ssl3 sha1 routines"}, | |
d02b48c6 RE |
352 | {SSL_R_UNEXPECTED_MESSAGE ,"unexpected message"}, |
353 | {SSL_R_UNEXPECTED_RECORD ,"unexpected record"}, | |
354 | {SSL_R_UNKNOWN_ALERT_TYPE ,"unknown alert type"}, | |
355 | {SSL_R_UNKNOWN_CERTIFICATE_TYPE ,"unknown certificate type"}, | |
356 | {SSL_R_UNKNOWN_CIPHER_RETURNED ,"unknown cipher returned"}, | |
357 | {SSL_R_UNKNOWN_CIPHER_TYPE ,"unknown cipher type"}, | |
358 | {SSL_R_UNKNOWN_KEY_EXCHANGE_TYPE ,"unknown key exchange type"}, | |
359 | {SSL_R_UNKNOWN_PKEY_TYPE ,"unknown pkey type"}, | |
360 | {SSL_R_UNKNOWN_PROTOCOL ,"unknown protocol"}, | |
361 | {SSL_R_UNKNOWN_REMOTE_ERROR_TYPE ,"unknown remote error type"}, | |
362 | {SSL_R_UNKNOWN_SSL_VERSION ,"unknown ssl version"}, | |
363 | {SSL_R_UNKNOWN_STATE ,"unknown state"}, | |
364 | {SSL_R_UNSUPPORTED_CIPHER ,"unsupported cipher"}, | |
365 | {SSL_R_UNSUPPORTED_COMPRESSION_ALGORITHM ,"unsupported compression algorithm"}, | |
58964a49 | 366 | {SSL_R_UNSUPPORTED_PROTOCOL ,"unsupported protocol"}, |
d02b48c6 RE |
367 | {SSL_R_UNSUPPORTED_SSL_VERSION ,"unsupported ssl version"}, |
368 | {SSL_R_WRITE_BIO_NOT_SET ,"write bio not set"}, | |
369 | {SSL_R_WRONG_CIPHER_RETURNED ,"wrong cipher returned"}, | |
370 | {SSL_R_WRONG_MESSAGE_TYPE ,"wrong message type"}, | |
371 | {SSL_R_WRONG_NUMBER_OF_KEY_BITS ,"wrong number of key bits"}, | |
372 | {SSL_R_WRONG_SIGNATURE_LENGTH ,"wrong signature length"}, | |
373 | {SSL_R_WRONG_SIGNATURE_SIZE ,"wrong signature size"}, | |
374 | {SSL_R_WRONG_SSL_VERSION ,"wrong ssl version"}, | |
375 | {SSL_R_WRONG_VERSION_NUMBER ,"wrong version number"}, | |
376 | {SSL_R_X509_LIB ,"x509 lib"}, | |
dfeab068 | 377 | {SSL_R_X509_VERIFICATION_SETUP_PROBLEMS ,"x509 verification setup problems"}, |
d02b48c6 RE |
378 | {0,NULL}, |
379 | }; | |
380 | ||
58964a49 RE |
381 | #endif |
382 | ||
d02b48c6 RE |
383 | void ERR_load_SSL_strings() |
384 | { | |
385 | static int init=1; | |
386 | ||
dfeab068 RE |
387 | if (init) |
388 | { | |
d02b48c6 | 389 | init=0; |
58964a49 | 390 | #ifndef NO_ERR |
d02b48c6 RE |
391 | ERR_load_strings(ERR_LIB_SSL,SSL_str_functs); |
392 | ERR_load_strings(ERR_LIB_SSL,SSL_str_reasons); | |
58964a49 RE |
393 | #endif |
394 | ||
d02b48c6 RE |
395 | } |
396 | } |