dso_err.c revision 296341
1/* crypto/dso/dso_err.c */
2/* ====================================================================
3 * Copyright (c) 1999-2006 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/*
57 * NOTE: this file was auto generated by the mkerr.pl script: any changes
58 * made to it will be overwritten when the script next updates this file,
59 * only reason strings will be preserved.
60 */
61
62#include <stdio.h>
63#include <openssl/err.h>
64#include <openssl/dso.h>
65
66/* BEGIN ERROR CODES */
67#ifndef OPENSSL_NO_ERR
68
69# define ERR_FUNC(func) ERR_PACK(ERR_LIB_DSO,func,0)
70# define ERR_REASON(reason) ERR_PACK(ERR_LIB_DSO,0,reason)
71
72static ERR_STRING_DATA DSO_str_functs[] = {
73    {ERR_FUNC(DSO_F_BEOS_BIND_FUNC), "BEOS_BIND_FUNC"},
74    {ERR_FUNC(DSO_F_BEOS_BIND_VAR), "BEOS_BIND_VAR"},
75    {ERR_FUNC(DSO_F_BEOS_LOAD), "BEOS_LOAD"},
76    {ERR_FUNC(DSO_F_BEOS_NAME_CONVERTER), "BEOS_NAME_CONVERTER"},
77    {ERR_FUNC(DSO_F_BEOS_UNLOAD), "BEOS_UNLOAD"},
78    {ERR_FUNC(DSO_F_DLFCN_BIND_FUNC), "DLFCN_BIND_FUNC"},
79    {ERR_FUNC(DSO_F_DLFCN_BIND_VAR), "DLFCN_BIND_VAR"},
80    {ERR_FUNC(DSO_F_DLFCN_LOAD), "DLFCN_LOAD"},
81    {ERR_FUNC(DSO_F_DLFCN_MERGER), "DLFCN_MERGER"},
82    {ERR_FUNC(DSO_F_DLFCN_NAME_CONVERTER), "DLFCN_NAME_CONVERTER"},
83    {ERR_FUNC(DSO_F_DLFCN_UNLOAD), "DLFCN_UNLOAD"},
84    {ERR_FUNC(DSO_F_DL_BIND_FUNC), "DL_BIND_FUNC"},
85    {ERR_FUNC(DSO_F_DL_BIND_VAR), "DL_BIND_VAR"},
86    {ERR_FUNC(DSO_F_DL_LOAD), "DL_LOAD"},
87    {ERR_FUNC(DSO_F_DL_MERGER), "DL_MERGER"},
88    {ERR_FUNC(DSO_F_DL_NAME_CONVERTER), "DL_NAME_CONVERTER"},
89    {ERR_FUNC(DSO_F_DL_UNLOAD), "DL_UNLOAD"},
90    {ERR_FUNC(DSO_F_DSO_BIND_FUNC), "DSO_bind_func"},
91    {ERR_FUNC(DSO_F_DSO_BIND_VAR), "DSO_bind_var"},
92    {ERR_FUNC(DSO_F_DSO_CONVERT_FILENAME), "DSO_convert_filename"},
93    {ERR_FUNC(DSO_F_DSO_CTRL), "DSO_ctrl"},
94    {ERR_FUNC(DSO_F_DSO_FREE), "DSO_free"},
95    {ERR_FUNC(DSO_F_DSO_GET_FILENAME), "DSO_get_filename"},
96    {ERR_FUNC(DSO_F_DSO_GET_LOADED_FILENAME), "DSO_get_loaded_filename"},
97    {ERR_FUNC(DSO_F_DSO_GLOBAL_LOOKUP), "DSO_global_lookup"},
98    {ERR_FUNC(DSO_F_DSO_LOAD), "DSO_load"},
99    {ERR_FUNC(DSO_F_DSO_MERGE), "DSO_merge"},
100    {ERR_FUNC(DSO_F_DSO_NEW_METHOD), "DSO_new_method"},
101    {ERR_FUNC(DSO_F_DSO_PATHBYADDR), "DSO_pathbyaddr"},
102    {ERR_FUNC(DSO_F_DSO_SET_FILENAME), "DSO_set_filename"},
103    {ERR_FUNC(DSO_F_DSO_SET_NAME_CONVERTER), "DSO_set_name_converter"},
104    {ERR_FUNC(DSO_F_DSO_UP_REF), "DSO_up_ref"},
105    {ERR_FUNC(DSO_F_GLOBAL_LOOKUP_FUNC), "GLOBAL_LOOKUP_FUNC"},
106    {ERR_FUNC(DSO_F_PATHBYADDR), "PATHBYADDR"},
107    {ERR_FUNC(DSO_F_VMS_BIND_SYM), "VMS_BIND_SYM"},
108    {ERR_FUNC(DSO_F_VMS_LOAD), "VMS_LOAD"},
109    {ERR_FUNC(DSO_F_VMS_MERGER), "VMS_MERGER"},
110    {ERR_FUNC(DSO_F_VMS_UNLOAD), "VMS_UNLOAD"},
111    {ERR_FUNC(DSO_F_WIN32_BIND_FUNC), "WIN32_BIND_FUNC"},
112    {ERR_FUNC(DSO_F_WIN32_BIND_VAR), "WIN32_BIND_VAR"},
113    {ERR_FUNC(DSO_F_WIN32_GLOBALLOOKUP), "WIN32_GLOBALLOOKUP"},
114    {ERR_FUNC(DSO_F_WIN32_GLOBALLOOKUP_FUNC), "WIN32_GLOBALLOOKUP_FUNC"},
115    {ERR_FUNC(DSO_F_WIN32_JOINER), "WIN32_JOINER"},
116    {ERR_FUNC(DSO_F_WIN32_LOAD), "WIN32_LOAD"},
117    {ERR_FUNC(DSO_F_WIN32_MERGER), "WIN32_MERGER"},
118    {ERR_FUNC(DSO_F_WIN32_NAME_CONVERTER), "WIN32_NAME_CONVERTER"},
119    {ERR_FUNC(DSO_F_WIN32_PATHBYADDR), "WIN32_PATHBYADDR"},
120    {ERR_FUNC(DSO_F_WIN32_SPLITTER), "WIN32_SPLITTER"},
121    {ERR_FUNC(DSO_F_WIN32_UNLOAD), "WIN32_UNLOAD"},
122    {0, NULL}
123};
124
125static ERR_STRING_DATA DSO_str_reasons[] = {
126    {ERR_REASON(DSO_R_CTRL_FAILED), "control command failed"},
127    {ERR_REASON(DSO_R_DSO_ALREADY_LOADED), "dso already loaded"},
128    {ERR_REASON(DSO_R_EMPTY_FILE_STRUCTURE), "empty file structure"},
129    {ERR_REASON(DSO_R_FAILURE), "failure"},
130    {ERR_REASON(DSO_R_FILENAME_TOO_BIG), "filename too big"},
131    {ERR_REASON(DSO_R_FINISH_FAILED), "cleanup method function failed"},
132    {ERR_REASON(DSO_R_INCORRECT_FILE_SYNTAX), "incorrect file syntax"},
133    {ERR_REASON(DSO_R_LOAD_FAILED), "could not load the shared library"},
134    {ERR_REASON(DSO_R_NAME_TRANSLATION_FAILED), "name translation failed"},
135    {ERR_REASON(DSO_R_NO_FILENAME), "no filename"},
136    {ERR_REASON(DSO_R_NO_FILE_SPECIFICATION), "no file specification"},
137    {ERR_REASON(DSO_R_NULL_HANDLE), "a null shared library handle was used"},
138    {ERR_REASON(DSO_R_SET_FILENAME_FAILED), "set filename failed"},
139    {ERR_REASON(DSO_R_STACK_ERROR), "the meth_data stack is corrupt"},
140    {ERR_REASON(DSO_R_SYM_FAILURE),
141     "could not bind to the requested symbol name"},
142    {ERR_REASON(DSO_R_UNLOAD_FAILED), "could not unload the shared library"},
143    {ERR_REASON(DSO_R_UNSUPPORTED), "functionality not supported"},
144    {0, NULL}
145};
146
147#endif
148
149void ERR_load_DSO_strings(void)
150{
151#ifndef OPENSSL_NO_ERR
152
153    if (ERR_func_error_string(DSO_str_functs[0].error) == NULL) {
154        ERR_load_strings(0, DSO_str_functs);
155        ERR_load_strings(0, DSO_str_reasons);
156    }
157#endif
158}
159