2
0

ssl_err.c 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687
  1. /* ssl/ssl_err.c */
  2. /* ====================================================================
  3. * Copyright (c) 1999-2011 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. #include <stdio.h>
  61. #include <openssl/err.h>
  62. #include <openssl/ssl.h>
  63. /* BEGIN ERROR CODES */
  64. #ifndef OPENSSL_NO_ERR
  65. # define ERR_FUNC(func) ERR_PACK(ERR_LIB_SSL,func,0)
  66. # define ERR_REASON(reason) ERR_PACK(ERR_LIB_SSL,0,reason)
  67. static ERR_STRING_DATA SSL_str_functs[] = {
  68. {ERR_FUNC(SSL_F_CLIENT_CERTIFICATE), "CLIENT_CERTIFICATE"},
  69. {ERR_FUNC(SSL_F_CLIENT_FINISHED), "CLIENT_FINISHED"},
  70. {ERR_FUNC(SSL_F_CLIENT_HELLO), "CLIENT_HELLO"},
  71. {ERR_FUNC(SSL_F_CLIENT_MASTER_KEY), "CLIENT_MASTER_KEY"},
  72. {ERR_FUNC(SSL_F_D2I_SSL_SESSION), "d2i_SSL_SESSION"},
  73. {ERR_FUNC(SSL_F_DO_DTLS1_WRITE), "DO_DTLS1_WRITE"},
  74. {ERR_FUNC(SSL_F_DO_SSL3_WRITE), "DO_SSL3_WRITE"},
  75. {ERR_FUNC(SSL_F_DTLS1_ACCEPT), "DTLS1_ACCEPT"},
  76. {ERR_FUNC(SSL_F_DTLS1_ADD_CERT_TO_BUF), "DTLS1_ADD_CERT_TO_BUF"},
  77. {ERR_FUNC(SSL_F_DTLS1_BUFFER_RECORD), "DTLS1_BUFFER_RECORD"},
  78. {ERR_FUNC(SSL_F_DTLS1_CHECK_TIMEOUT_NUM), "DTLS1_CHECK_TIMEOUT_NUM"},
  79. {ERR_FUNC(SSL_F_DTLS1_CLIENT_HELLO), "DTLS1_CLIENT_HELLO"},
  80. {ERR_FUNC(SSL_F_DTLS1_CONNECT), "DTLS1_CONNECT"},
  81. {ERR_FUNC(SSL_F_DTLS1_ENC), "DTLS1_ENC"},
  82. {ERR_FUNC(SSL_F_DTLS1_GET_HELLO_VERIFY), "DTLS1_GET_HELLO_VERIFY"},
  83. {ERR_FUNC(SSL_F_DTLS1_GET_MESSAGE), "DTLS1_GET_MESSAGE"},
  84. {ERR_FUNC(SSL_F_DTLS1_GET_MESSAGE_FRAGMENT),
  85. "DTLS1_GET_MESSAGE_FRAGMENT"},
  86. {ERR_FUNC(SSL_F_DTLS1_GET_RECORD), "DTLS1_GET_RECORD"},
  87. {ERR_FUNC(SSL_F_DTLS1_HANDLE_TIMEOUT), "DTLS1_HANDLE_TIMEOUT"},
  88. {ERR_FUNC(SSL_F_DTLS1_OUTPUT_CERT_CHAIN), "DTLS1_OUTPUT_CERT_CHAIN"},
  89. {ERR_FUNC(SSL_F_DTLS1_PREPROCESS_FRAGMENT), "DTLS1_PREPROCESS_FRAGMENT"},
  90. {ERR_FUNC(SSL_F_DTLS1_PROCESS_OUT_OF_SEQ_MESSAGE),
  91. "DTLS1_PROCESS_OUT_OF_SEQ_MESSAGE"},
  92. {ERR_FUNC(SSL_F_DTLS1_PROCESS_RECORD), "DTLS1_PROCESS_RECORD"},
  93. {ERR_FUNC(SSL_F_DTLS1_READ_BYTES), "DTLS1_READ_BYTES"},
  94. {ERR_FUNC(SSL_F_DTLS1_READ_FAILED), "DTLS1_READ_FAILED"},
  95. {ERR_FUNC(SSL_F_DTLS1_SEND_CERTIFICATE_REQUEST),
  96. "DTLS1_SEND_CERTIFICATE_REQUEST"},
  97. {ERR_FUNC(SSL_F_DTLS1_SEND_CLIENT_CERTIFICATE),
  98. "DTLS1_SEND_CLIENT_CERTIFICATE"},
  99. {ERR_FUNC(SSL_F_DTLS1_SEND_CLIENT_KEY_EXCHANGE),
  100. "DTLS1_SEND_CLIENT_KEY_EXCHANGE"},
  101. {ERR_FUNC(SSL_F_DTLS1_SEND_CLIENT_VERIFY), "DTLS1_SEND_CLIENT_VERIFY"},
  102. {ERR_FUNC(SSL_F_DTLS1_SEND_HELLO_VERIFY_REQUEST),
  103. "DTLS1_SEND_HELLO_VERIFY_REQUEST"},
  104. {ERR_FUNC(SSL_F_DTLS1_SEND_SERVER_CERTIFICATE),
  105. "DTLS1_SEND_SERVER_CERTIFICATE"},
  106. {ERR_FUNC(SSL_F_DTLS1_SEND_SERVER_HELLO), "DTLS1_SEND_SERVER_HELLO"},
  107. {ERR_FUNC(SSL_F_DTLS1_SEND_SERVER_KEY_EXCHANGE),
  108. "DTLS1_SEND_SERVER_KEY_EXCHANGE"},
  109. {ERR_FUNC(SSL_F_DTLS1_WRITE_APP_DATA_BYTES),
  110. "DTLS1_WRITE_APP_DATA_BYTES"},
  111. {ERR_FUNC(SSL_F_GET_CLIENT_FINISHED), "GET_CLIENT_FINISHED"},
  112. {ERR_FUNC(SSL_F_GET_CLIENT_HELLO), "GET_CLIENT_HELLO"},
  113. {ERR_FUNC(SSL_F_GET_CLIENT_MASTER_KEY), "GET_CLIENT_MASTER_KEY"},
  114. {ERR_FUNC(SSL_F_GET_SERVER_FINISHED), "GET_SERVER_FINISHED"},
  115. {ERR_FUNC(SSL_F_GET_SERVER_HELLO), "GET_SERVER_HELLO"},
  116. {ERR_FUNC(SSL_F_GET_SERVER_VERIFY), "GET_SERVER_VERIFY"},
  117. {ERR_FUNC(SSL_F_I2D_SSL_SESSION), "i2d_SSL_SESSION"},
  118. {ERR_FUNC(SSL_F_READ_N), "READ_N"},
  119. {ERR_FUNC(SSL_F_REQUEST_CERTIFICATE), "REQUEST_CERTIFICATE"},
  120. {ERR_FUNC(SSL_F_SERVER_FINISH), "SERVER_FINISH"},
  121. {ERR_FUNC(SSL_F_SERVER_HELLO), "SERVER_HELLO"},
  122. {ERR_FUNC(SSL_F_SERVER_VERIFY), "SERVER_VERIFY"},
  123. {ERR_FUNC(SSL_F_SSL23_ACCEPT), "SSL23_ACCEPT"},
  124. {ERR_FUNC(SSL_F_SSL23_CLIENT_HELLO), "SSL23_CLIENT_HELLO"},
  125. {ERR_FUNC(SSL_F_SSL23_CONNECT), "SSL23_CONNECT"},
  126. {ERR_FUNC(SSL_F_SSL23_GET_CLIENT_HELLO), "SSL23_GET_CLIENT_HELLO"},
  127. {ERR_FUNC(SSL_F_SSL23_GET_SERVER_HELLO), "SSL23_GET_SERVER_HELLO"},
  128. {ERR_FUNC(SSL_F_SSL23_PEEK), "SSL23_PEEK"},
  129. {ERR_FUNC(SSL_F_SSL23_READ), "SSL23_READ"},
  130. {ERR_FUNC(SSL_F_SSL23_WRITE), "SSL23_WRITE"},
  131. {ERR_FUNC(SSL_F_SSL2_ACCEPT), "SSL2_ACCEPT"},
  132. {ERR_FUNC(SSL_F_SSL2_CONNECT), "SSL2_CONNECT"},
  133. {ERR_FUNC(SSL_F_SSL2_ENC_INIT), "SSL2_ENC_INIT"},
  134. {ERR_FUNC(SSL_F_SSL2_GENERATE_KEY_MATERIAL),
  135. "SSL2_GENERATE_KEY_MATERIAL"},
  136. {ERR_FUNC(SSL_F_SSL2_PEEK), "SSL2_PEEK"},
  137. {ERR_FUNC(SSL_F_SSL2_READ), "SSL2_READ"},
  138. {ERR_FUNC(SSL_F_SSL2_READ_INTERNAL), "SSL2_READ_INTERNAL"},
  139. {ERR_FUNC(SSL_F_SSL2_SET_CERTIFICATE), "SSL2_SET_CERTIFICATE"},
  140. {ERR_FUNC(SSL_F_SSL2_WRITE), "SSL2_WRITE"},
  141. {ERR_FUNC(SSL_F_SSL3_ACCEPT), "SSL3_ACCEPT"},
  142. {ERR_FUNC(SSL_F_SSL3_ADD_CERT_TO_BUF), "SSL3_ADD_CERT_TO_BUF"},
  143. {ERR_FUNC(SSL_F_SSL3_CALLBACK_CTRL), "SSL3_CALLBACK_CTRL"},
  144. {ERR_FUNC(SSL_F_SSL3_CHANGE_CIPHER_STATE), "SSL3_CHANGE_CIPHER_STATE"},
  145. {ERR_FUNC(SSL_F_SSL3_CHECK_CERT_AND_ALGORITHM),
  146. "SSL3_CHECK_CERT_AND_ALGORITHM"},
  147. {ERR_FUNC(SSL_F_SSL3_CHECK_CLIENT_HELLO), "SSL3_CHECK_CLIENT_HELLO"},
  148. {ERR_FUNC(SSL_F_SSL3_CLIENT_HELLO), "SSL3_CLIENT_HELLO"},
  149. {ERR_FUNC(SSL_F_SSL3_CONNECT), "SSL3_CONNECT"},
  150. {ERR_FUNC(SSL_F_SSL3_CTRL), "SSL3_CTRL"},
  151. {ERR_FUNC(SSL_F_SSL3_CTX_CTRL), "SSL3_CTX_CTRL"},
  152. {ERR_FUNC(SSL_F_SSL3_DO_CHANGE_CIPHER_SPEC),
  153. "SSL3_DO_CHANGE_CIPHER_SPEC"},
  154. {ERR_FUNC(SSL_F_SSL3_ENC), "SSL3_ENC"},
  155. {ERR_FUNC(SSL_F_SSL3_GENERATE_KEY_BLOCK), "SSL3_GENERATE_KEY_BLOCK"},
  156. {ERR_FUNC(SSL_F_SSL3_GET_CERTIFICATE_REQUEST),
  157. "SSL3_GET_CERTIFICATE_REQUEST"},
  158. {ERR_FUNC(SSL_F_SSL3_GET_CERT_STATUS), "SSL3_GET_CERT_STATUS"},
  159. {ERR_FUNC(SSL_F_SSL3_GET_CERT_VERIFY), "SSL3_GET_CERT_VERIFY"},
  160. {ERR_FUNC(SSL_F_SSL3_GET_CLIENT_CERTIFICATE),
  161. "SSL3_GET_CLIENT_CERTIFICATE"},
  162. {ERR_FUNC(SSL_F_SSL3_GET_CLIENT_HELLO), "SSL3_GET_CLIENT_HELLO"},
  163. {ERR_FUNC(SSL_F_SSL3_GET_CLIENT_KEY_EXCHANGE),
  164. "SSL3_GET_CLIENT_KEY_EXCHANGE"},
  165. {ERR_FUNC(SSL_F_SSL3_GET_FINISHED), "SSL3_GET_FINISHED"},
  166. {ERR_FUNC(SSL_F_SSL3_GET_KEY_EXCHANGE), "SSL3_GET_KEY_EXCHANGE"},
  167. {ERR_FUNC(SSL_F_SSL3_GET_MESSAGE), "SSL3_GET_MESSAGE"},
  168. {ERR_FUNC(SSL_F_SSL3_GET_NEW_SESSION_TICKET),
  169. "SSL3_GET_NEW_SESSION_TICKET"},
  170. {ERR_FUNC(SSL_F_SSL3_GET_RECORD), "SSL3_GET_RECORD"},
  171. {ERR_FUNC(SSL_F_SSL3_GET_SERVER_CERTIFICATE),
  172. "SSL3_GET_SERVER_CERTIFICATE"},
  173. {ERR_FUNC(SSL_F_SSL3_GET_SERVER_DONE), "SSL3_GET_SERVER_DONE"},
  174. {ERR_FUNC(SSL_F_SSL3_GET_SERVER_HELLO), "SSL3_GET_SERVER_HELLO"},
  175. {ERR_FUNC(SSL_F_SSL3_NEW_SESSION_TICKET), "SSL3_NEW_SESSION_TICKET"},
  176. {ERR_FUNC(SSL_F_SSL3_OUTPUT_CERT_CHAIN), "SSL3_OUTPUT_CERT_CHAIN"},
  177. {ERR_FUNC(SSL_F_SSL3_PEEK), "SSL3_PEEK"},
  178. {ERR_FUNC(SSL_F_SSL3_READ_BYTES), "SSL3_READ_BYTES"},
  179. {ERR_FUNC(SSL_F_SSL3_READ_N), "SSL3_READ_N"},
  180. {ERR_FUNC(SSL_F_SSL3_SEND_CERTIFICATE_REQUEST),
  181. "SSL3_SEND_CERTIFICATE_REQUEST"},
  182. {ERR_FUNC(SSL_F_SSL3_SEND_CLIENT_CERTIFICATE),
  183. "SSL3_SEND_CLIENT_CERTIFICATE"},
  184. {ERR_FUNC(SSL_F_SSL3_SEND_CLIENT_KEY_EXCHANGE),
  185. "SSL3_SEND_CLIENT_KEY_EXCHANGE"},
  186. {ERR_FUNC(SSL_F_SSL3_SEND_CLIENT_VERIFY), "SSL3_SEND_CLIENT_VERIFY"},
  187. {ERR_FUNC(SSL_F_SSL3_SEND_SERVER_CERTIFICATE),
  188. "SSL3_SEND_SERVER_CERTIFICATE"},
  189. {ERR_FUNC(SSL_F_SSL3_SEND_SERVER_HELLO), "SSL3_SEND_SERVER_HELLO"},
  190. {ERR_FUNC(SSL_F_SSL3_SEND_SERVER_KEY_EXCHANGE),
  191. "SSL3_SEND_SERVER_KEY_EXCHANGE"},
  192. {ERR_FUNC(SSL_F_SSL3_SETUP_BUFFERS), "SSL3_SETUP_BUFFERS"},
  193. {ERR_FUNC(SSL_F_SSL3_SETUP_KEY_BLOCK), "SSL3_SETUP_KEY_BLOCK"},
  194. {ERR_FUNC(SSL_F_SSL3_WRITE_BYTES), "SSL3_WRITE_BYTES"},
  195. {ERR_FUNC(SSL_F_SSL3_WRITE_PENDING), "SSL3_WRITE_PENDING"},
  196. {ERR_FUNC(SSL_F_SSL_ADD_CLIENTHELLO_RENEGOTIATE_EXT),
  197. "SSL_ADD_CLIENTHELLO_RENEGOTIATE_EXT"},
  198. {ERR_FUNC(SSL_F_SSL_ADD_CLIENTHELLO_TLSEXT),
  199. "SSL_ADD_CLIENTHELLO_TLSEXT"},
  200. {ERR_FUNC(SSL_F_SSL_ADD_DIR_CERT_SUBJECTS_TO_STACK),
  201. "SSL_add_dir_cert_subjects_to_stack"},
  202. {ERR_FUNC(SSL_F_SSL_ADD_FILE_CERT_SUBJECTS_TO_STACK),
  203. "SSL_add_file_cert_subjects_to_stack"},
  204. {ERR_FUNC(SSL_F_SSL_ADD_SERVERHELLO_RENEGOTIATE_EXT),
  205. "SSL_ADD_SERVERHELLO_RENEGOTIATE_EXT"},
  206. {ERR_FUNC(SSL_F_SSL_ADD_SERVERHELLO_TLSEXT),
  207. "SSL_ADD_SERVERHELLO_TLSEXT"},
  208. {ERR_FUNC(SSL_F_SSL_BAD_METHOD), "SSL_BAD_METHOD"},
  209. {ERR_FUNC(SSL_F_SSL_BYTES_TO_CIPHER_LIST), "SSL_BYTES_TO_CIPHER_LIST"},
  210. {ERR_FUNC(SSL_F_SSL_CERT_DUP), "SSL_CERT_DUP"},
  211. {ERR_FUNC(SSL_F_SSL_CERT_INST), "SSL_CERT_INST"},
  212. {ERR_FUNC(SSL_F_SSL_CERT_INSTANTIATE), "SSL_CERT_INSTANTIATE"},
  213. {ERR_FUNC(SSL_F_SSL_CERT_NEW), "SSL_CERT_NEW"},
  214. {ERR_FUNC(SSL_F_SSL_CHECK_PRIVATE_KEY), "SSL_check_private_key"},
  215. {ERR_FUNC(SSL_F_SSL_CHECK_SERVERHELLO_TLSEXT),
  216. "SSL_CHECK_SERVERHELLO_TLSEXT"},
  217. {ERR_FUNC(SSL_F_SSL_CIPHER_PROCESS_RULESTR),
  218. "SSL_CIPHER_PROCESS_RULESTR"},
  219. {ERR_FUNC(SSL_F_SSL_CIPHER_STRENGTH_SORT), "SSL_CIPHER_STRENGTH_SORT"},
  220. {ERR_FUNC(SSL_F_SSL_CLEAR), "SSL_clear"},
  221. {ERR_FUNC(SSL_F_SSL_COMP_ADD_COMPRESSION_METHOD),
  222. "SSL_COMP_add_compression_method"},
  223. {ERR_FUNC(SSL_F_SSL_CREATE_CIPHER_LIST), "SSL_CREATE_CIPHER_LIST"},
  224. {ERR_FUNC(SSL_F_SSL_CTRL), "SSL_ctrl"},
  225. {ERR_FUNC(SSL_F_SSL_CTX_CHECK_PRIVATE_KEY), "SSL_CTX_check_private_key"},
  226. {ERR_FUNC(SSL_F_SSL_CTX_NEW), "SSL_CTX_new"},
  227. {ERR_FUNC(SSL_F_SSL_CTX_SET_CIPHER_LIST), "SSL_CTX_set_cipher_list"},
  228. {ERR_FUNC(SSL_F_SSL_CTX_SET_CLIENT_CERT_ENGINE),
  229. "SSL_CTX_set_client_cert_engine"},
  230. {ERR_FUNC(SSL_F_SSL_CTX_SET_PURPOSE), "SSL_CTX_set_purpose"},
  231. {ERR_FUNC(SSL_F_SSL_CTX_SET_SESSION_ID_CONTEXT),
  232. "SSL_CTX_set_session_id_context"},
  233. {ERR_FUNC(SSL_F_SSL_CTX_SET_SSL_VERSION), "SSL_CTX_set_ssl_version"},
  234. {ERR_FUNC(SSL_F_SSL_CTX_SET_TRUST), "SSL_CTX_set_trust"},
  235. {ERR_FUNC(SSL_F_SSL_CTX_USE_CERTIFICATE), "SSL_CTX_use_certificate"},
  236. {ERR_FUNC(SSL_F_SSL_CTX_USE_CERTIFICATE_ASN1),
  237. "SSL_CTX_use_certificate_ASN1"},
  238. {ERR_FUNC(SSL_F_SSL_CTX_USE_CERTIFICATE_CHAIN_FILE),
  239. "SSL_CTX_use_certificate_chain_file"},
  240. {ERR_FUNC(SSL_F_SSL_CTX_USE_CERTIFICATE_FILE),
  241. "SSL_CTX_use_certificate_file"},
  242. {ERR_FUNC(SSL_F_SSL_CTX_USE_PRIVATEKEY), "SSL_CTX_use_PrivateKey"},
  243. {ERR_FUNC(SSL_F_SSL_CTX_USE_PRIVATEKEY_ASN1),
  244. "SSL_CTX_use_PrivateKey_ASN1"},
  245. {ERR_FUNC(SSL_F_SSL_CTX_USE_PRIVATEKEY_FILE),
  246. "SSL_CTX_use_PrivateKey_file"},
  247. {ERR_FUNC(SSL_F_SSL_CTX_USE_RSAPRIVATEKEY), "SSL_CTX_use_RSAPrivateKey"},
  248. {ERR_FUNC(SSL_F_SSL_CTX_USE_RSAPRIVATEKEY_ASN1),
  249. "SSL_CTX_use_RSAPrivateKey_ASN1"},
  250. {ERR_FUNC(SSL_F_SSL_CTX_USE_RSAPRIVATEKEY_FILE),
  251. "SSL_CTX_use_RSAPrivateKey_file"},
  252. {ERR_FUNC(SSL_F_SSL_DO_HANDSHAKE), "SSL_do_handshake"},
  253. {ERR_FUNC(SSL_F_SSL_GET_NEW_SESSION), "SSL_GET_NEW_SESSION"},
  254. {ERR_FUNC(SSL_F_SSL_GET_PREV_SESSION), "SSL_GET_PREV_SESSION"},
  255. {ERR_FUNC(SSL_F_SSL_GET_SERVER_SEND_CERT), "SSL_GET_SERVER_SEND_CERT"},
  256. {ERR_FUNC(SSL_F_SSL_GET_SERVER_SEND_PKEY), "SSL_GET_SERVER_SEND_PKEY"},
  257. {ERR_FUNC(SSL_F_SSL_GET_SIGN_PKEY), "SSL_GET_SIGN_PKEY"},
  258. {ERR_FUNC(SSL_F_SSL_INIT_WBIO_BUFFER), "SSL_INIT_WBIO_BUFFER"},
  259. {ERR_FUNC(SSL_F_SSL_LOAD_CLIENT_CA_FILE), "SSL_load_client_CA_file"},
  260. {ERR_FUNC(SSL_F_SSL_NEW), "SSL_new"},
  261. {ERR_FUNC(SSL_F_SSL_PARSE_CLIENTHELLO_RENEGOTIATE_EXT),
  262. "SSL_PARSE_CLIENTHELLO_RENEGOTIATE_EXT"},
  263. {ERR_FUNC(SSL_F_SSL_PARSE_CLIENTHELLO_TLSEXT),
  264. "SSL_PARSE_CLIENTHELLO_TLSEXT"},
  265. {ERR_FUNC(SSL_F_SSL_PARSE_SERVERHELLO_RENEGOTIATE_EXT),
  266. "SSL_PARSE_SERVERHELLO_RENEGOTIATE_EXT"},
  267. {ERR_FUNC(SSL_F_SSL_PARSE_SERVERHELLO_TLSEXT),
  268. "SSL_PARSE_SERVERHELLO_TLSEXT"},
  269. {ERR_FUNC(SSL_F_SSL_PEEK), "SSL_peek"},
  270. {ERR_FUNC(SSL_F_SSL_PREPARE_CLIENTHELLO_TLSEXT),
  271. "SSL_PREPARE_CLIENTHELLO_TLSEXT"},
  272. {ERR_FUNC(SSL_F_SSL_PREPARE_SERVERHELLO_TLSEXT),
  273. "SSL_PREPARE_SERVERHELLO_TLSEXT"},
  274. {ERR_FUNC(SSL_F_SSL_READ), "SSL_read"},
  275. {ERR_FUNC(SSL_F_SSL_RSA_PRIVATE_DECRYPT), "SSL_RSA_PRIVATE_DECRYPT"},
  276. {ERR_FUNC(SSL_F_SSL_RSA_PUBLIC_ENCRYPT), "SSL_RSA_PUBLIC_ENCRYPT"},
  277. {ERR_FUNC(SSL_F_SSL_SESSION_DUP), "ssl_session_dup"},
  278. {ERR_FUNC(SSL_F_SSL_SESSION_NEW), "SSL_SESSION_new"},
  279. {ERR_FUNC(SSL_F_SSL_SESSION_PRINT_FP), "SSL_SESSION_print_fp"},
  280. {ERR_FUNC(SSL_F_SSL_SESS_CERT_NEW), "SSL_SESS_CERT_NEW"},
  281. {ERR_FUNC(SSL_F_SSL_SET_CERT), "SSL_SET_CERT"},
  282. {ERR_FUNC(SSL_F_SSL_SET_CIPHER_LIST), "SSL_set_cipher_list"},
  283. {ERR_FUNC(SSL_F_SSL_SET_FD), "SSL_set_fd"},
  284. {ERR_FUNC(SSL_F_SSL_SET_PKEY), "SSL_SET_PKEY"},
  285. {ERR_FUNC(SSL_F_SSL_SET_PURPOSE), "SSL_set_purpose"},
  286. {ERR_FUNC(SSL_F_SSL_SET_RFD), "SSL_set_rfd"},
  287. {ERR_FUNC(SSL_F_SSL_SET_SESSION), "SSL_set_session"},
  288. {ERR_FUNC(SSL_F_SSL_SET_SESSION_ID_CONTEXT),
  289. "SSL_set_session_id_context"},
  290. {ERR_FUNC(SSL_F_SSL_SET_TRUST), "SSL_set_trust"},
  291. {ERR_FUNC(SSL_F_SSL_SET_WFD), "SSL_set_wfd"},
  292. {ERR_FUNC(SSL_F_SSL_SHUTDOWN), "SSL_shutdown"},
  293. {ERR_FUNC(SSL_F_SSL_UNDEFINED_CONST_FUNCTION),
  294. "SSL_UNDEFINED_CONST_FUNCTION"},
  295. {ERR_FUNC(SSL_F_SSL_UNDEFINED_FUNCTION), "SSL_UNDEFINED_FUNCTION"},
  296. {ERR_FUNC(SSL_F_SSL_UNDEFINED_VOID_FUNCTION),
  297. "SSL_UNDEFINED_VOID_FUNCTION"},
  298. {ERR_FUNC(SSL_F_SSL_USE_CERTIFICATE), "SSL_use_certificate"},
  299. {ERR_FUNC(SSL_F_SSL_USE_CERTIFICATE_ASN1), "SSL_use_certificate_ASN1"},
  300. {ERR_FUNC(SSL_F_SSL_USE_CERTIFICATE_FILE), "SSL_use_certificate_file"},
  301. {ERR_FUNC(SSL_F_SSL_USE_PRIVATEKEY), "SSL_use_PrivateKey"},
  302. {ERR_FUNC(SSL_F_SSL_USE_PRIVATEKEY_ASN1), "SSL_use_PrivateKey_ASN1"},
  303. {ERR_FUNC(SSL_F_SSL_USE_PRIVATEKEY_FILE), "SSL_use_PrivateKey_file"},
  304. {ERR_FUNC(SSL_F_SSL_USE_RSAPRIVATEKEY), "SSL_use_RSAPrivateKey"},
  305. {ERR_FUNC(SSL_F_SSL_USE_RSAPRIVATEKEY_ASN1),
  306. "SSL_use_RSAPrivateKey_ASN1"},
  307. {ERR_FUNC(SSL_F_SSL_USE_RSAPRIVATEKEY_FILE),
  308. "SSL_use_RSAPrivateKey_file"},
  309. {ERR_FUNC(SSL_F_SSL_VERIFY_CERT_CHAIN), "SSL_VERIFY_CERT_CHAIN"},
  310. {ERR_FUNC(SSL_F_SSL_WRITE), "SSL_write"},
  311. {ERR_FUNC(SSL_F_TLS1_CHANGE_CIPHER_STATE), "TLS1_CHANGE_CIPHER_STATE"},
  312. {ERR_FUNC(SSL_F_TLS1_ENC), "TLS1_ENC"},
  313. {ERR_FUNC(SSL_F_TLS1_SETUP_KEY_BLOCK), "TLS1_SETUP_KEY_BLOCK"},
  314. {ERR_FUNC(SSL_F_WRITE_PENDING), "WRITE_PENDING"},
  315. {0, NULL}
  316. };
  317. static ERR_STRING_DATA SSL_str_reasons[] = {
  318. {ERR_REASON(SSL_R_APP_DATA_IN_HANDSHAKE), "app data in handshake"},
  319. {ERR_REASON(SSL_R_ATTEMPT_TO_REUSE_SESSION_IN_DIFFERENT_CONTEXT),
  320. "attempt to reuse session in different context"},
  321. {ERR_REASON(SSL_R_BAD_ALERT_RECORD), "bad alert record"},
  322. {ERR_REASON(SSL_R_BAD_AUTHENTICATION_TYPE), "bad authentication type"},
  323. {ERR_REASON(SSL_R_BAD_CHANGE_CIPHER_SPEC), "bad change cipher spec"},
  324. {ERR_REASON(SSL_R_BAD_CHECKSUM), "bad checksum"},
  325. {ERR_REASON(SSL_R_BAD_DATA_RETURNED_BY_CALLBACK),
  326. "bad data returned by callback"},
  327. {ERR_REASON(SSL_R_BAD_DECOMPRESSION), "bad decompression"},
  328. {ERR_REASON(SSL_R_BAD_DH_G_LENGTH), "bad dh g length"},
  329. {ERR_REASON(SSL_R_BAD_DH_PUB_KEY_LENGTH), "bad dh pub key length"},
  330. {ERR_REASON(SSL_R_BAD_DH_P_LENGTH), "bad dh p length"},
  331. {ERR_REASON(SSL_R_BAD_DIGEST_LENGTH), "bad digest length"},
  332. {ERR_REASON(SSL_R_BAD_DSA_SIGNATURE), "bad dsa signature"},
  333. {ERR_REASON(SSL_R_BAD_ECC_CERT), "bad ecc cert"},
  334. {ERR_REASON(SSL_R_BAD_ECDSA_SIGNATURE), "bad ecdsa signature"},
  335. {ERR_REASON(SSL_R_BAD_ECPOINT), "bad ecpoint"},
  336. {ERR_REASON(SSL_R_BAD_HELLO_REQUEST), "bad hello request"},
  337. {ERR_REASON(SSL_R_BAD_LENGTH), "bad length"},
  338. {ERR_REASON(SSL_R_BAD_MAC_DECODE), "bad mac decode"},
  339. {ERR_REASON(SSL_R_BAD_MESSAGE_TYPE), "bad message type"},
  340. {ERR_REASON(SSL_R_BAD_PACKET_LENGTH), "bad packet length"},
  341. {ERR_REASON(SSL_R_BAD_PROTOCOL_VERSION_NUMBER),
  342. "bad protocol version number"},
  343. {ERR_REASON(SSL_R_BAD_RESPONSE_ARGUMENT), "bad response argument"},
  344. {ERR_REASON(SSL_R_BAD_RSA_DECRYPT), "bad rsa decrypt"},
  345. {ERR_REASON(SSL_R_BAD_RSA_ENCRYPT), "bad rsa encrypt"},
  346. {ERR_REASON(SSL_R_BAD_RSA_E_LENGTH), "bad rsa e length"},
  347. {ERR_REASON(SSL_R_BAD_RSA_MODULUS_LENGTH), "bad rsa modulus length"},
  348. {ERR_REASON(SSL_R_BAD_RSA_SIGNATURE), "bad rsa signature"},
  349. {ERR_REASON(SSL_R_BAD_SIGNATURE), "bad signature"},
  350. {ERR_REASON(SSL_R_BAD_SSL_FILETYPE), "bad ssl filetype"},
  351. {ERR_REASON(SSL_R_BAD_SSL_SESSION_ID_LENGTH),
  352. "bad ssl session id length"},
  353. {ERR_REASON(SSL_R_BAD_STATE), "bad state"},
  354. {ERR_REASON(SSL_R_BAD_WRITE_RETRY), "bad write retry"},
  355. {ERR_REASON(SSL_R_BIO_NOT_SET), "bio not set"},
  356. {ERR_REASON(SSL_R_BLOCK_CIPHER_PAD_IS_WRONG),
  357. "block cipher pad is wrong"},
  358. {ERR_REASON(SSL_R_BN_LIB), "bn lib"},
  359. {ERR_REASON(SSL_R_CA_DN_LENGTH_MISMATCH), "ca dn length mismatch"},
  360. {ERR_REASON(SSL_R_CA_DN_TOO_LONG), "ca dn too long"},
  361. {ERR_REASON(SSL_R_CCS_RECEIVED_EARLY), "ccs received early"},
  362. {ERR_REASON(SSL_R_CERTIFICATE_VERIFY_FAILED),
  363. "certificate verify failed"},
  364. {ERR_REASON(SSL_R_CERT_LENGTH_MISMATCH), "cert length mismatch"},
  365. {ERR_REASON(SSL_R_CHALLENGE_IS_DIFFERENT), "challenge is different"},
  366. {ERR_REASON(SSL_R_CIPHER_CODE_WRONG_LENGTH), "cipher code wrong length"},
  367. {ERR_REASON(SSL_R_CIPHER_OR_HASH_UNAVAILABLE),
  368. "cipher or hash unavailable"},
  369. {ERR_REASON(SSL_R_CIPHER_TABLE_SRC_ERROR), "cipher table src error"},
  370. {ERR_REASON(SSL_R_CLIENTHELLO_TLSEXT), "clienthello tlsext"},
  371. {ERR_REASON(SSL_R_COMPRESSED_LENGTH_TOO_LONG),
  372. "compressed length too long"},
  373. {ERR_REASON(SSL_R_COMPRESSION_FAILURE), "compression failure"},
  374. {ERR_REASON(SSL_R_COMPRESSION_ID_NOT_WITHIN_PRIVATE_RANGE),
  375. "compression id not within private range"},
  376. {ERR_REASON(SSL_R_COMPRESSION_LIBRARY_ERROR),
  377. "compression library error"},
  378. {ERR_REASON(SSL_R_CONNECTION_ID_IS_DIFFERENT),
  379. "connection id is different"},
  380. {ERR_REASON(SSL_R_CONNECTION_TYPE_NOT_SET), "connection type not set"},
  381. {ERR_REASON(SSL_R_COOKIE_MISMATCH), "cookie mismatch"},
  382. {ERR_REASON(SSL_R_DATA_BETWEEN_CCS_AND_FINISHED),
  383. "data between ccs and finished"},
  384. {ERR_REASON(SSL_R_DATA_LENGTH_TOO_LONG), "data length too long"},
  385. {ERR_REASON(SSL_R_DECRYPTION_FAILED), "decryption failed"},
  386. {ERR_REASON(SSL_R_DECRYPTION_FAILED_OR_BAD_RECORD_MAC),
  387. "decryption failed or bad record mac"},
  388. {ERR_REASON(SSL_R_DH_PUBLIC_VALUE_LENGTH_IS_WRONG),
  389. "dh public value length is wrong"},
  390. {ERR_REASON(SSL_R_DIGEST_CHECK_FAILED), "digest check failed"},
  391. {ERR_REASON(SSL_R_DTLS_MESSAGE_TOO_BIG), "dtls message too big"},
  392. {ERR_REASON(SSL_R_DUPLICATE_COMPRESSION_ID), "duplicate compression id"},
  393. {ERR_REASON(SSL_R_ECGROUP_TOO_LARGE_FOR_CIPHER),
  394. "ecgroup too large for cipher"},
  395. {ERR_REASON(SSL_R_ENCRYPTED_LENGTH_TOO_LONG),
  396. "encrypted length too long"},
  397. {ERR_REASON(SSL_R_ERROR_GENERATING_TMP_RSA_KEY),
  398. "error generating tmp rsa key"},
  399. {ERR_REASON(SSL_R_ERROR_IN_RECEIVED_CIPHER_LIST),
  400. "error in received cipher list"},
  401. {ERR_REASON(SSL_R_EXCESSIVE_MESSAGE_SIZE), "excessive message size"},
  402. {ERR_REASON(SSL_R_EXTRA_DATA_IN_MESSAGE), "extra data in message"},
  403. {ERR_REASON(SSL_R_GOT_A_FIN_BEFORE_A_CCS), "got a fin before a ccs"},
  404. {ERR_REASON(SSL_R_HTTPS_PROXY_REQUEST), "https proxy request"},
  405. {ERR_REASON(SSL_R_HTTP_REQUEST), "http request"},
  406. {ERR_REASON(SSL_R_ILLEGAL_PADDING), "illegal padding"},
  407. {ERR_REASON(SSL_R_INAPPROPRIATE_FALLBACK), "inappropriate fallback"},
  408. {ERR_REASON(SSL_R_INVALID_CHALLENGE_LENGTH), "invalid challenge length"},
  409. {ERR_REASON(SSL_R_INVALID_COMMAND), "invalid command"},
  410. {ERR_REASON(SSL_R_INVALID_PURPOSE), "invalid purpose"},
  411. {ERR_REASON(SSL_R_INVALID_STATUS_RESPONSE), "invalid status response"},
  412. {ERR_REASON(SSL_R_INVALID_TICKET_KEYS_LENGTH),
  413. "invalid ticket keys length"},
  414. {ERR_REASON(SSL_R_INVALID_TRUST), "invalid trust"},
  415. {ERR_REASON(SSL_R_KEY_ARG_TOO_LONG), "key arg too long"},
  416. {ERR_REASON(SSL_R_KRB5), "krb5"},
  417. {ERR_REASON(SSL_R_KRB5_C_CC_PRINC), "krb5 client cc principal (no tkt?)"},
  418. {ERR_REASON(SSL_R_KRB5_C_GET_CRED), "krb5 client get cred"},
  419. {ERR_REASON(SSL_R_KRB5_C_INIT), "krb5 client init"},
  420. {ERR_REASON(SSL_R_KRB5_C_MK_REQ), "krb5 client mk_req (expired tkt?)"},
  421. {ERR_REASON(SSL_R_KRB5_S_BAD_TICKET), "krb5 server bad ticket"},
  422. {ERR_REASON(SSL_R_KRB5_S_INIT), "krb5 server init"},
  423. {ERR_REASON(SSL_R_KRB5_S_RD_REQ), "krb5 server rd_req (keytab perms?)"},
  424. {ERR_REASON(SSL_R_KRB5_S_TKT_EXPIRED), "krb5 server tkt expired"},
  425. {ERR_REASON(SSL_R_KRB5_S_TKT_NYV), "krb5 server tkt not yet valid"},
  426. {ERR_REASON(SSL_R_KRB5_S_TKT_SKEW), "krb5 server tkt skew"},
  427. {ERR_REASON(SSL_R_LENGTH_MISMATCH), "length mismatch"},
  428. {ERR_REASON(SSL_R_LENGTH_TOO_SHORT), "length too short"},
  429. {ERR_REASON(SSL_R_LIBRARY_BUG), "library bug"},
  430. {ERR_REASON(SSL_R_LIBRARY_HAS_NO_CIPHERS), "library has no ciphers"},
  431. {ERR_REASON(SSL_R_MESSAGE_TOO_LONG), "message too long"},
  432. {ERR_REASON(SSL_R_MISSING_DH_DSA_CERT), "missing dh dsa cert"},
  433. {ERR_REASON(SSL_R_MISSING_DH_KEY), "missing dh key"},
  434. {ERR_REASON(SSL_R_MISSING_DH_RSA_CERT), "missing dh rsa cert"},
  435. {ERR_REASON(SSL_R_MISSING_DSA_SIGNING_CERT), "missing dsa signing cert"},
  436. {ERR_REASON(SSL_R_MISSING_EXPORT_TMP_DH_KEY),
  437. "missing export tmp dh key"},
  438. {ERR_REASON(SSL_R_MISSING_EXPORT_TMP_RSA_KEY),
  439. "missing export tmp rsa key"},
  440. {ERR_REASON(SSL_R_MISSING_RSA_CERTIFICATE), "missing rsa certificate"},
  441. {ERR_REASON(SSL_R_MISSING_RSA_ENCRYPTING_CERT),
  442. "missing rsa encrypting cert"},
  443. {ERR_REASON(SSL_R_MISSING_RSA_SIGNING_CERT), "missing rsa signing cert"},
  444. {ERR_REASON(SSL_R_MISSING_TMP_DH_KEY), "missing tmp dh key"},
  445. {ERR_REASON(SSL_R_MISSING_TMP_ECDH_KEY), "missing tmp ecdh key"},
  446. {ERR_REASON(SSL_R_MISSING_TMP_RSA_KEY), "missing tmp rsa key"},
  447. {ERR_REASON(SSL_R_MISSING_TMP_RSA_PKEY), "missing tmp rsa pkey"},
  448. {ERR_REASON(SSL_R_MISSING_VERIFY_MESSAGE), "missing verify message"},
  449. {ERR_REASON(SSL_R_MULTIPLE_SGC_RESTARTS), "multiple sgc restarts"},
  450. {ERR_REASON(SSL_R_NON_SSLV2_INITIAL_PACKET), "non sslv2 initial packet"},
  451. {ERR_REASON(SSL_R_NO_CERTIFICATES_RETURNED), "no certificates returned"},
  452. {ERR_REASON(SSL_R_NO_CERTIFICATE_ASSIGNED), "no certificate assigned"},
  453. {ERR_REASON(SSL_R_NO_CERTIFICATE_RETURNED), "no certificate returned"},
  454. {ERR_REASON(SSL_R_NO_CERTIFICATE_SET), "no certificate set"},
  455. {ERR_REASON(SSL_R_NO_CERTIFICATE_SPECIFIED), "no certificate specified"},
  456. {ERR_REASON(SSL_R_NO_CIPHERS_AVAILABLE), "no ciphers available"},
  457. {ERR_REASON(SSL_R_NO_CIPHERS_PASSED), "no ciphers passed"},
  458. {ERR_REASON(SSL_R_NO_CIPHERS_SPECIFIED), "no ciphers specified"},
  459. {ERR_REASON(SSL_R_NO_CIPHER_LIST), "no cipher list"},
  460. {ERR_REASON(SSL_R_NO_CIPHER_MATCH), "no cipher match"},
  461. {ERR_REASON(SSL_R_NO_CLIENT_CERT_METHOD), "no client cert method"},
  462. {ERR_REASON(SSL_R_NO_CLIENT_CERT_RECEIVED), "no client cert received"},
  463. {ERR_REASON(SSL_R_NO_COMPRESSION_SPECIFIED), "no compression specified"},
  464. {ERR_REASON(SSL_R_NO_METHOD_SPECIFIED), "no method specified"},
  465. {ERR_REASON(SSL_R_NO_PRIVATEKEY), "no privatekey"},
  466. {ERR_REASON(SSL_R_NO_PRIVATE_KEY_ASSIGNED), "no private key assigned"},
  467. {ERR_REASON(SSL_R_NO_PROTOCOLS_AVAILABLE), "no protocols available"},
  468. {ERR_REASON(SSL_R_NO_PUBLICKEY), "no publickey"},
  469. {ERR_REASON(SSL_R_NO_RENEGOTIATION), "no renegotiation"},
  470. {ERR_REASON(SSL_R_NO_SHARED_CIPHER), "no shared cipher"},
  471. {ERR_REASON(SSL_R_NO_VERIFY_CALLBACK), "no verify callback"},
  472. {ERR_REASON(SSL_R_NULL_SSL_CTX), "null ssl ctx"},
  473. {ERR_REASON(SSL_R_NULL_SSL_METHOD_PASSED), "null ssl method passed"},
  474. {ERR_REASON(SSL_R_OLD_SESSION_CIPHER_NOT_RETURNED),
  475. "old session cipher not returned"},
  476. {ERR_REASON(SSL_R_ONLY_TLS_ALLOWED_IN_FIPS_MODE),
  477. "only tls allowed in fips mode"},
  478. {ERR_REASON(SSL_R_PACKET_LENGTH_TOO_LONG), "packet length too long"},
  479. {ERR_REASON(SSL_R_PARSE_TLSEXT), "parse tlsext"},
  480. {ERR_REASON(SSL_R_PATH_TOO_LONG), "path too long"},
  481. {ERR_REASON(SSL_R_PEER_DID_NOT_RETURN_A_CERTIFICATE),
  482. "peer did not return a certificate"},
  483. {ERR_REASON(SSL_R_PEER_ERROR), "peer error"},
  484. {ERR_REASON(SSL_R_PEER_ERROR_CERTIFICATE), "peer error certificate"},
  485. {ERR_REASON(SSL_R_PEER_ERROR_NO_CERTIFICATE),
  486. "peer error no certificate"},
  487. {ERR_REASON(SSL_R_PEER_ERROR_NO_CIPHER), "peer error no cipher"},
  488. {ERR_REASON(SSL_R_PEER_ERROR_UNSUPPORTED_CERTIFICATE_TYPE),
  489. "peer error unsupported certificate type"},
  490. {ERR_REASON(SSL_R_PRE_MAC_LENGTH_TOO_LONG), "pre mac length too long"},
  491. {ERR_REASON(SSL_R_PROBLEMS_MAPPING_CIPHER_FUNCTIONS),
  492. "problems mapping cipher functions"},
  493. {ERR_REASON(SSL_R_PROTOCOL_IS_SHUTDOWN), "protocol is shutdown"},
  494. {ERR_REASON(SSL_R_PUBLIC_KEY_ENCRYPT_ERROR), "public key encrypt error"},
  495. {ERR_REASON(SSL_R_PUBLIC_KEY_IS_NOT_RSA), "public key is not rsa"},
  496. {ERR_REASON(SSL_R_PUBLIC_KEY_NOT_RSA), "public key not rsa"},
  497. {ERR_REASON(SSL_R_READ_BIO_NOT_SET), "read bio not set"},
  498. {ERR_REASON(SSL_R_READ_TIMEOUT_EXPIRED), "read timeout expired"},
  499. {ERR_REASON(SSL_R_READ_WRONG_PACKET_TYPE), "read wrong packet type"},
  500. {ERR_REASON(SSL_R_RECORD_LENGTH_MISMATCH), "record length mismatch"},
  501. {ERR_REASON(SSL_R_RECORD_TOO_LARGE), "record too large"},
  502. {ERR_REASON(SSL_R_RECORD_TOO_SMALL), "record too small"},
  503. {ERR_REASON(SSL_R_RENEGOTIATE_EXT_TOO_LONG), "renegotiate ext too long"},
  504. {ERR_REASON(SSL_R_RENEGOTIATION_ENCODING_ERR),
  505. "renegotiation encoding err"},
  506. {ERR_REASON(SSL_R_RENEGOTIATION_MISMATCH), "renegotiation mismatch"},
  507. {ERR_REASON(SSL_R_REQUIRED_CIPHER_MISSING), "required cipher missing"},
  508. {ERR_REASON(SSL_R_REUSE_CERT_LENGTH_NOT_ZERO),
  509. "reuse cert length not zero"},
  510. {ERR_REASON(SSL_R_REUSE_CERT_TYPE_NOT_ZERO), "reuse cert type not zero"},
  511. {ERR_REASON(SSL_R_REUSE_CIPHER_LIST_NOT_ZERO),
  512. "reuse cipher list not zero"},
  513. {ERR_REASON(SSL_R_SCSV_RECEIVED_WHEN_RENEGOTIATING),
  514. "scsv received when renegotiating"},
  515. {ERR_REASON(SSL_R_SERVERHELLO_TLSEXT), "serverhello tlsext"},
  516. {ERR_REASON(SSL_R_SESSION_ID_CONTEXT_UNINITIALIZED),
  517. "session id context uninitialized"},
  518. {ERR_REASON(SSL_R_SHORT_READ), "short read"},
  519. {ERR_REASON(SSL_R_SIGNATURE_FOR_NON_SIGNING_CERTIFICATE),
  520. "signature for non signing certificate"},
  521. {ERR_REASON(SSL_R_SSL23_DOING_SESSION_ID_REUSE),
  522. "ssl23 doing session id reuse"},
  523. {ERR_REASON(SSL_R_SSL2_CONNECTION_ID_TOO_LONG),
  524. "ssl2 connection id too long"},
  525. {ERR_REASON(SSL_R_SSL3_EXT_INVALID_SERVERNAME),
  526. "ssl3 ext invalid servername"},
  527. {ERR_REASON(SSL_R_SSL3_EXT_INVALID_SERVERNAME_TYPE),
  528. "ssl3 ext invalid servername type"},
  529. {ERR_REASON(SSL_R_SSL3_SESSION_ID_TOO_LONG), "ssl3 session id too long"},
  530. {ERR_REASON(SSL_R_SSL3_SESSION_ID_TOO_SHORT),
  531. "ssl3 session id too short"},
  532. {ERR_REASON(SSL_R_SSLV3_ALERT_BAD_CERTIFICATE),
  533. "sslv3 alert bad certificate"},
  534. {ERR_REASON(SSL_R_SSLV3_ALERT_BAD_RECORD_MAC),
  535. "sslv3 alert bad record mac"},
  536. {ERR_REASON(SSL_R_SSLV3_ALERT_CERTIFICATE_EXPIRED),
  537. "sslv3 alert certificate expired"},
  538. {ERR_REASON(SSL_R_SSLV3_ALERT_CERTIFICATE_REVOKED),
  539. "sslv3 alert certificate revoked"},
  540. {ERR_REASON(SSL_R_SSLV3_ALERT_CERTIFICATE_UNKNOWN),
  541. "sslv3 alert certificate unknown"},
  542. {ERR_REASON(SSL_R_SSLV3_ALERT_DECOMPRESSION_FAILURE),
  543. "sslv3 alert decompression failure"},
  544. {ERR_REASON(SSL_R_SSLV3_ALERT_HANDSHAKE_FAILURE),
  545. "sslv3 alert handshake failure"},
  546. {ERR_REASON(SSL_R_SSLV3_ALERT_ILLEGAL_PARAMETER),
  547. "sslv3 alert illegal parameter"},
  548. {ERR_REASON(SSL_R_SSLV3_ALERT_NO_CERTIFICATE),
  549. "sslv3 alert no certificate"},
  550. {ERR_REASON(SSL_R_SSLV3_ALERT_UNEXPECTED_MESSAGE),
  551. "sslv3 alert unexpected message"},
  552. {ERR_REASON(SSL_R_SSLV3_ALERT_UNSUPPORTED_CERTIFICATE),
  553. "sslv3 alert unsupported certificate"},
  554. {ERR_REASON(SSL_R_SSL_CTX_HAS_NO_DEFAULT_SSL_VERSION),
  555. "ssl ctx has no default ssl version"},
  556. {ERR_REASON(SSL_R_SSL_HANDSHAKE_FAILURE), "ssl handshake failure"},
  557. {ERR_REASON(SSL_R_SSL_LIBRARY_HAS_NO_CIPHERS),
  558. "ssl library has no ciphers"},
  559. {ERR_REASON(SSL_R_SSL_SESSION_ID_CALLBACK_FAILED),
  560. "ssl session id callback failed"},
  561. {ERR_REASON(SSL_R_SSL_SESSION_ID_CONFLICT), "ssl session id conflict"},
  562. {ERR_REASON(SSL_R_SSL_SESSION_ID_CONTEXT_TOO_LONG),
  563. "ssl session id context too long"},
  564. {ERR_REASON(SSL_R_SSL_SESSION_ID_HAS_BAD_LENGTH),
  565. "ssl session id has bad length"},
  566. {ERR_REASON(SSL_R_SSL_SESSION_ID_IS_DIFFERENT),
  567. "ssl session id is different"},
  568. {ERR_REASON(SSL_R_TLSV1_ALERT_ACCESS_DENIED),
  569. "tlsv1 alert access denied"},
  570. {ERR_REASON(SSL_R_TLSV1_ALERT_DECODE_ERROR), "tlsv1 alert decode error"},
  571. {ERR_REASON(SSL_R_TLSV1_ALERT_DECRYPTION_FAILED),
  572. "tlsv1 alert decryption failed"},
  573. {ERR_REASON(SSL_R_TLSV1_ALERT_DECRYPT_ERROR),
  574. "tlsv1 alert decrypt error"},
  575. {ERR_REASON(SSL_R_TLSV1_ALERT_EXPORT_RESTRICTION),
  576. "tlsv1 alert export restriction"},
  577. {ERR_REASON(SSL_R_TLSV1_ALERT_INAPPROPRIATE_FALLBACK),
  578. "tlsv1 alert inappropriate fallback"},
  579. {ERR_REASON(SSL_R_TLSV1_ALERT_INSUFFICIENT_SECURITY),
  580. "tlsv1 alert insufficient security"},
  581. {ERR_REASON(SSL_R_TLSV1_ALERT_INTERNAL_ERROR),
  582. "tlsv1 alert internal error"},
  583. {ERR_REASON(SSL_R_TLSV1_ALERT_NO_RENEGOTIATION),
  584. "tlsv1 alert no renegotiation"},
  585. {ERR_REASON(SSL_R_TLSV1_ALERT_PROTOCOL_VERSION),
  586. "tlsv1 alert protocol version"},
  587. {ERR_REASON(SSL_R_TLSV1_ALERT_RECORD_OVERFLOW),
  588. "tlsv1 alert record overflow"},
  589. {ERR_REASON(SSL_R_TLSV1_ALERT_UNKNOWN_CA), "tlsv1 alert unknown ca"},
  590. {ERR_REASON(SSL_R_TLSV1_ALERT_USER_CANCELLED),
  591. "tlsv1 alert user cancelled"},
  592. {ERR_REASON(SSL_R_TLSV1_BAD_CERTIFICATE_HASH_VALUE),
  593. "tlsv1 bad certificate hash value"},
  594. {ERR_REASON(SSL_R_TLSV1_BAD_CERTIFICATE_STATUS_RESPONSE),
  595. "tlsv1 bad certificate status response"},
  596. {ERR_REASON(SSL_R_TLSV1_CERTIFICATE_UNOBTAINABLE),
  597. "tlsv1 certificate unobtainable"},
  598. {ERR_REASON(SSL_R_TLSV1_UNRECOGNIZED_NAME), "tlsv1 unrecognized name"},
  599. {ERR_REASON(SSL_R_TLSV1_UNSUPPORTED_EXTENSION),
  600. "tlsv1 unsupported extension"},
  601. {ERR_REASON(SSL_R_TLS_CLIENT_CERT_REQ_WITH_ANON_CIPHER),
  602. "tls client cert req with anon cipher"},
  603. {ERR_REASON(SSL_R_TLS_INVALID_ECPOINTFORMAT_LIST),
  604. "tls invalid ecpointformat list"},
  605. {ERR_REASON(SSL_R_TLS_PEER_DID_NOT_RESPOND_WITH_CERTIFICATE_LIST),
  606. "tls peer did not respond with certificate list"},
  607. {ERR_REASON(SSL_R_TLS_RSA_ENCRYPTED_VALUE_LENGTH_IS_WRONG),
  608. "tls rsa encrypted value length is wrong"},
  609. {ERR_REASON(SSL_R_TRIED_TO_USE_UNSUPPORTED_CIPHER),
  610. "tried to use unsupported cipher"},
  611. {ERR_REASON(SSL_R_UNABLE_TO_DECODE_DH_CERTS),
  612. "unable to decode dh certs"},
  613. {ERR_REASON(SSL_R_UNABLE_TO_DECODE_ECDH_CERTS),
  614. "unable to decode ecdh certs"},
  615. {ERR_REASON(SSL_R_UNABLE_TO_EXTRACT_PUBLIC_KEY),
  616. "unable to extract public key"},
  617. {ERR_REASON(SSL_R_UNABLE_TO_FIND_DH_PARAMETERS),
  618. "unable to find dh parameters"},
  619. {ERR_REASON(SSL_R_UNABLE_TO_FIND_ECDH_PARAMETERS),
  620. "unable to find ecdh parameters"},
  621. {ERR_REASON(SSL_R_UNABLE_TO_FIND_PUBLIC_KEY_PARAMETERS),
  622. "unable to find public key parameters"},
  623. {ERR_REASON(SSL_R_UNABLE_TO_FIND_SSL_METHOD),
  624. "unable to find ssl method"},
  625. {ERR_REASON(SSL_R_UNABLE_TO_LOAD_SSL2_MD5_ROUTINES),
  626. "unable to load ssl2 md5 routines"},
  627. {ERR_REASON(SSL_R_UNABLE_TO_LOAD_SSL3_MD5_ROUTINES),
  628. "unable to load ssl3 md5 routines"},
  629. {ERR_REASON(SSL_R_UNABLE_TO_LOAD_SSL3_SHA1_ROUTINES),
  630. "unable to load ssl3 sha1 routines"},
  631. {ERR_REASON(SSL_R_UNEXPECTED_MESSAGE), "unexpected message"},
  632. {ERR_REASON(SSL_R_UNEXPECTED_RECORD), "unexpected record"},
  633. {ERR_REASON(SSL_R_UNINITIALIZED), "uninitialized"},
  634. {ERR_REASON(SSL_R_UNKNOWN_ALERT_TYPE), "unknown alert type"},
  635. {ERR_REASON(SSL_R_UNKNOWN_CERTIFICATE_TYPE), "unknown certificate type"},
  636. {ERR_REASON(SSL_R_UNKNOWN_CIPHER_RETURNED), "unknown cipher returned"},
  637. {ERR_REASON(SSL_R_UNKNOWN_CIPHER_TYPE), "unknown cipher type"},
  638. {ERR_REASON(SSL_R_UNKNOWN_KEY_EXCHANGE_TYPE),
  639. "unknown key exchange type"},
  640. {ERR_REASON(SSL_R_UNKNOWN_PKEY_TYPE), "unknown pkey type"},
  641. {ERR_REASON(SSL_R_UNKNOWN_PROTOCOL), "unknown protocol"},
  642. {ERR_REASON(SSL_R_UNKNOWN_REMOTE_ERROR_TYPE),
  643. "unknown remote error type"},
  644. {ERR_REASON(SSL_R_UNKNOWN_SSL_VERSION), "unknown ssl version"},
  645. {ERR_REASON(SSL_R_UNKNOWN_STATE), "unknown state"},
  646. {ERR_REASON(SSL_R_UNSAFE_LEGACY_RENEGOTIATION_DISABLED),
  647. "unsafe legacy renegotiation disabled"},
  648. {ERR_REASON(SSL_R_UNSUPPORTED_CIPHER), "unsupported cipher"},
  649. {ERR_REASON(SSL_R_UNSUPPORTED_COMPRESSION_ALGORITHM),
  650. "unsupported compression algorithm"},
  651. {ERR_REASON(SSL_R_UNSUPPORTED_ELLIPTIC_CURVE),
  652. "unsupported elliptic curve"},
  653. {ERR_REASON(SSL_R_UNSUPPORTED_PROTOCOL), "unsupported protocol"},
  654. {ERR_REASON(SSL_R_UNSUPPORTED_SSL_VERSION), "unsupported ssl version"},
  655. {ERR_REASON(SSL_R_UNSUPPORTED_STATUS_TYPE), "unsupported status type"},
  656. {ERR_REASON(SSL_R_WRITE_BIO_NOT_SET), "write bio not set"},
  657. {ERR_REASON(SSL_R_WRONG_CIPHER_RETURNED), "wrong cipher returned"},
  658. {ERR_REASON(SSL_R_WRONG_MESSAGE_TYPE), "wrong message type"},
  659. {ERR_REASON(SSL_R_WRONG_NUMBER_OF_KEY_BITS), "wrong number of key bits"},
  660. {ERR_REASON(SSL_R_WRONG_SIGNATURE_LENGTH), "wrong signature length"},
  661. {ERR_REASON(SSL_R_WRONG_SIGNATURE_SIZE), "wrong signature size"},
  662. {ERR_REASON(SSL_R_WRONG_SSL_VERSION), "wrong ssl version"},
  663. {ERR_REASON(SSL_R_WRONG_VERSION_NUMBER), "wrong version number"},
  664. {ERR_REASON(SSL_R_X509_LIB), "x509 lib"},
  665. {ERR_REASON(SSL_R_X509_VERIFICATION_SETUP_PROBLEMS),
  666. "x509 verification setup problems"},
  667. {0, NULL}
  668. };
  669. #endif
  670. void ERR_load_SSL_strings(void)
  671. {
  672. #ifndef OPENSSL_NO_ERR
  673. if (ERR_func_error_string(SSL_str_functs[0].error) == NULL) {
  674. ERR_load_strings(0, SSL_str_functs);
  675. ERR_load_strings(0, SSL_str_reasons);
  676. }
  677. #endif
  678. }