aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/c
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adam@chlipala.net>2016-02-13 09:32:10 -0500
committerGravatar Adam Chlipala <adam@chlipala.net>2016-02-13 09:32:10 -0500
commitc78853f8d518233bd52a86d35465dfdd56cc69d4 (patch)
tree6d2f33718a49aec985a138825e5f6f353805cacd /src/c
parent7b379c724999c4b415b1c3826db748450c7a6571 (diff)
Add a cast to thread_id(), to support more platforms
Diffstat (limited to 'src/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];