summaryrefslogtreecommitdiff
path: root/src/c/openssl.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/c/openssl.c')
-rw-r--r--src/c/openssl.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/c/openssl.c b/src/c/openssl.c
index 981d48da..15c4de5e 100644
--- a/src/c/openssl.c
+++ b/src/c/openssl.c
@@ -35,14 +35,15 @@ static void random_password() {
// OpenSSL callbacks
#ifdef PTHREAD_T_IS_POINTER
-# define CRYPTO_THREADID_SET CRYPTO_THREADID_set_pointer
+static void thread_id(CRYPTO_THREADID *const result) {
+ CRYPTO_THREADID_set_pointer(result, pthread_self());
+}
#else
-# define CRYPTO_THREADID_SET CRYPTO_THREADID_set_numeric
-#endif
static void thread_id(CRYPTO_THREADID *const result) {
- CRYPTO_THREADID_SET(result, pthread_self());
+ CRYPTO_THREADID_set_numeric(result, (unsigned long)pthread_self());
}
-#undef CRYPTO_THREADID_SET
+#endif
+
static void lock_or_unlock(const int mode, const int type, const char *file,
const int line) {
pthread_mutex_t *const lock = &openssl_locks[type];