#include <openssl/stack.h>
#include <openssl/opensslv.h>
+#ifdef CHARSET_EBCDIC
+#include <openssl/ebcdic.h>
+#endif
+
/* Backward compatibility to SSLeay */
/* This is more to be used to check the correct DLL is being used
* in the MS world. */
#define CRYPTO_LOCK_SSL_CTX 12
#define CRYPTO_LOCK_SSL_CERT 13
#define CRYPTO_LOCK_SSL_SESSION 14
-#define CRYPTO_LOCK_SSL 15
-#define CRYPTO_LOCK_RAND 16
-#define CRYPTO_LOCK_MALLOC 17
-#define CRYPTO_LOCK_BIO 18
-#define CRYPTO_LOCK_BIO_GETHOSTBYNAME 19
-#define CRYPTO_LOCK_RSA_BLINDING 20
-#define CRYPTO_NUM_LOCKS 21
+#define CRYPTO_LOCK_SSL_SESS_CERT 15
+#define CRYPTO_LOCK_SSL 16
+#define CRYPTO_LOCK_RAND 17
+#define CRYPTO_LOCK_MALLOC 18
+#define CRYPTO_LOCK_BIO 19
+#define CRYPTO_LOCK_GETHOSTBYNAME 20
+#define CRYPTO_LOCK_GETSERVBYNAME 21
+#define CRYPTO_LOCK_READDIR 22
+#define CRYPTO_LOCK_RSA_BLINDING 23
+#define CRYPTO_NUM_LOCKS 24
#define CRYPTO_LOCK 1
#define CRYPTO_UNLOCK 2
(char *(*)())realloc,\
(void (*)())free)
+#ifdef CRYPTO_MDEBUG_TIME
+# ifndef CRYPTO_MDEBUG /* avoid duplicate #define */
+# define CRYPTO_MDEBUG
+# endif
+#endif
+
#ifdef CRYPTO_MDEBUG
#define MemCheck_start() CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON)
#define MemCheck_stop() CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_OFF)
#endif /* MDEBUG */
/* Case insensiteve linking causes problems.... */
-#ifdef WIN16
+#if defined(WIN16) || defined(VMS)
#define ERR_load_CRYPTO_strings ERR_load_CRYPTOlib_strings
#endif
int CRYPTO_mem_ctrl(int mode);
int CRYPTO_get_new_lockid(char *name);
+
+int CRYPTO_num_locks(void); /* return CRYPTO_NUM_LOCKS (shared libs!) */
void CRYPTO_lock(int mode, int type,const char *file,int line);
void CRYPTO_set_locking_callback(void (*func)(int mode,int type,
const char *file,int line));