Accessor functions for app_data in ECDSA_METHOD
[oweals/openssl.git] / crypto / dso / dso.h
index c1d0dfeebbdc65190f8d95391abb7eca5e6917b8..23a35e1354d5644f4a243e885a85f1e320249a46 100644 (file)
@@ -109,14 +109,14 @@ typedef struct dso_st DSO;
 
 /* The function prototype used for method functions (or caller-provided
  * callbacks) that transform filenames. They are passed a DSO structure pointer
- * (or NULL if they are to be used independantly of a DSO object) and a
+ * (or NULL if they are to be used independently of a DSO object) and a
  * filename to transform. They should either return NULL (if there is an error
  * condition) or a newly allocated string containing the transformed form that
  * the caller will need to free with OPENSSL_free() when done. */
 typedef char* (*DSO_NAME_CONVERTER_FUNC)(DSO *, const char *);
 /* The function prototype used for method functions (or caller-provided
  * callbacks) that merge two file specifications. They are passed a
- * DSO structure pointer (or NULL if they are to be used independantly of
+ * DSO structure pointer (or NULL if they are to be used independently of
  * a DSO object) and two file specifications to merge. They should
  * either return NULL (if there is an error condition) or a newly allocated
  * string containing the result of merging that the caller will need
@@ -188,7 +188,7 @@ struct dso_st
         * for use in the dso_bind handler. All in all, let each
         * method control its own destiny. "Handles" and such go in
         * a STACK. */
-       STACK *meth_data;
+       STACK_OF(void) *meth_data;
        int references;
        int flags;
        /* For use by applications etc ... use this for your bits'n'pieces,
@@ -202,7 +202,7 @@ struct dso_st
         * be used in DSO_load() in place of meth->dso_merger. NB: This
         * should normally set using DSO_set_merger(). */
        DSO_MERGER_FUNC merger;
-       /* This is populated with (a copy of) the platform-independant
+       /* This is populated with (a copy of) the platform-independent
         * filename used for this DSO. */
        char *filename;
        /* This is populated with (a copy of) the translated filename by which
@@ -231,7 +231,7 @@ long        DSO_ctrl(DSO *dso, int cmd, long larg, void *parg);
  * replaced. Return value is non-zero for success. */
 int    DSO_set_name_converter(DSO *dso, DSO_NAME_CONVERTER_FUNC cb,
                                DSO_NAME_CONVERTER_FUNC *oldcb);
-/* These functions can be used to get/set the platform-independant filename
+/* These functions can be used to get/set the platform-independent filename
  * used for a DSO. NB: set will fail if the DSO is already loaded. */
 const char *DSO_get_filename(DSO *dso);
 int    DSO_set_filename(DSO *dso, const char *filename);
@@ -322,6 +322,9 @@ int DSO_pathbyaddr(void *addr,char *path,int sz);
  * itself or libsocket. */
 void *DSO_global_lookup(const char *name);
 
+/* If BeOS is defined, use shared images. If not, return NULL. */
+DSO_METHOD *DSO_METHOD_beos(void);
+
 /* BEGIN ERROR CODES */
 /* The following lines are auto generated by the script mkerr.pl. Any changes
  * made after this point may be overwritten when the script is next run.
@@ -331,6 +334,11 @@ void ERR_load_DSO_strings(void);
 /* Error codes for the DSO functions. */
 
 /* Function codes. */
+#define DSO_F_BEOS_BIND_FUNC                            144
+#define DSO_F_BEOS_BIND_VAR                             145
+#define DSO_F_BEOS_LOAD                                         146
+#define DSO_F_BEOS_NAME_CONVERTER                       147
+#define DSO_F_BEOS_UNLOAD                               148
 #define DSO_F_DLFCN_BIND_FUNC                           100
 #define DSO_F_DLFCN_BIND_VAR                            101
 #define DSO_F_DLFCN_LOAD                                102
@@ -350,26 +358,31 @@ void ERR_load_DSO_strings(void);
 #define DSO_F_DSO_FREE                                  111
 #define DSO_F_DSO_GET_FILENAME                          127
 #define DSO_F_DSO_GET_LOADED_FILENAME                   128
+#define DSO_F_DSO_GLOBAL_LOOKUP                                 139
 #define DSO_F_DSO_LOAD                                  112
 #define DSO_F_DSO_MERGE                                         132
 #define DSO_F_DSO_NEW_METHOD                            113
+#define DSO_F_DSO_PATHBYADDR                            140
 #define DSO_F_DSO_SET_FILENAME                          129
 #define DSO_F_DSO_SET_NAME_CONVERTER                    122
 #define DSO_F_DSO_UP_REF                                114
+#define DSO_F_GLOBAL_LOOKUP_FUNC                        138
+#define DSO_F_PATHBYADDR                                137
 #define DSO_F_VMS_BIND_SYM                              115
 #define DSO_F_VMS_LOAD                                  116
 #define DSO_F_VMS_MERGER                                133
 #define DSO_F_VMS_UNLOAD                                117
 #define DSO_F_WIN32_BIND_FUNC                           118
 #define DSO_F_WIN32_BIND_VAR                            119
+#define DSO_F_WIN32_GLOBALLOOKUP                        142
+#define DSO_F_WIN32_GLOBALLOOKUP_FUNC                   143
 #define DSO_F_WIN32_JOINER                              135
 #define DSO_F_WIN32_LOAD                                120
 #define DSO_F_WIN32_MERGER                              134
 #define DSO_F_WIN32_NAME_CONVERTER                      125
+#define DSO_F_WIN32_PATHBYADDR                          141
 #define DSO_F_WIN32_SPLITTER                            136
 #define DSO_F_WIN32_UNLOAD                              121
-#define DSO_F_PATHBYADDR                                137
-#define DSO_F_GLOBAL_LOOKUP_FUNC                        138
 
 /* Reason codes. */
 #define DSO_R_CTRL_FAILED                               100