Add a flag for OpenVMS.
[openssl.git] / crypto / crypto.h
index 846be386c181616d61915915c6e347581c83a191..df6ccaff6d6b2af35001dadb4b46dad36993ca8a 100644 (file)
 #include <openssl/ebcdic.h>
 #endif
 
-#if defined(VMS) || defined(__VMS)
-#include "vms_idhacks.h"
-#endif
-
+/* Resolve problems on some operating systems with symbol names that clash
+   one way or another */
+#include <openssl/symhacks.h>
 
 #ifdef  __cplusplus
 extern "C" {
@@ -243,11 +242,11 @@ DECLARE_STACK_OF(CRYPTO_EX_DATA_FUNCS)
  * unless CRYPTO_MDEBUG is defined) */
 #define CRYPTO_malloc_debug_init()     do {\
        CRYPTO_set_mem_debug_functions(\
-               (void (*)())CRYPTO_dbg_malloc,\
-               (void (*)())CRYPTO_dbg_realloc,\
-               (void (*)())CRYPTO_dbg_free,\
-               (void (*)())CRYPTO_dbg_set_options,\
-               (long (*)())CRYPTO_dbg_get_options);\
+               CRYPTO_dbg_malloc,\
+               CRYPTO_dbg_realloc,\
+               CRYPTO_dbg_free,\
+               CRYPTO_dbg_set_options,\
+               CRYPTO_dbg_get_options);\
        } while(0)
 
 int CRYPTO_mem_ctrl(int mode);
@@ -275,12 +274,6 @@ int CRYPTO_is_mem_check_on(void);
 #define OPENSSL_free_locked(addr) CRYPTO_free_locked(addr)
 
 
-/* Case insensiteve linking causes problems.... */
-#if defined(WIN16) || defined(VMS)
-#define ERR_load_CRYPTO_strings        ERR_load_CRYPTOlib_strings
-#endif
-
-
 const char *SSLeay_version(int type);
 unsigned long SSLeay(void);
 
@@ -311,17 +304,16 @@ unsigned long CRYPTO_thread_id(void);
 const char *CRYPTO_get_lock_name(int type);
 int CRYPTO_add_lock(int *pointer,int amount,int type, const char *file,
                    int line);
-void CRYPTO_set_dynlock_create_callback(struct CRYPTO_dynlock_value *(*dyn_create_function)
-       (char *file, int line));
-void CRYPTO_set_dynlock_lock_callback(void (*dyn_lock_function)
-       (int mode, struct CRYPTO_dynlock_value *l,
-               const char *file, int line));
-void CRYPTO_set_dynlock_destroy_callback(void (*dyn_destroy_function)
-       (struct CRYPTO_dynlock_value *l, const char *file, int line));
-void CRYPTO_set_dynlock_size(int dynlock_size);
+
 int CRYPTO_get_new_dynlockid(void);
 void CRYPTO_destroy_dynlockid(int i);
 struct CRYPTO_dynlock_value *CRYPTO_get_dynlock_value(int i);
+void CRYPTO_set_dynlock_create_callback(struct CRYPTO_dynlock_value *(*dyn_create_function)(const char *file, int line));
+void CRYPTO_set_dynlock_lock_callback(void (*dyn_lock_function)(int mode, struct CRYPTO_dynlock_value *l, const char *file, int line));
+void CRYPTO_set_dynlock_destroy_callback(void (*dyn_destroy_function)(struct CRYPTO_dynlock_value *l, const char *file, int line));
+struct CRYPTO_dynlock_value *(*CRYPTO_get_dynlock_create_callback(void))(const char *file,int line);
+void (*CRYPTO_get_dynlock_lock_callback(void))(int mode, struct CRYPTO_dynlock_value *l, const char *file,int line);
+void (*CRYPTO_get_dynlock_destroy_callback(void))(struct CRYPTO_dynlock_value *l, const char *file,int line);
 
 /* CRYPTO_set_mem_functions includes CRYPTO_set_locked_mem_functions --
  * call the latter last if you need different functions */