static void ssl_locking_function(int mode, int n, UNUSED char const *file, UNUSED int line)
{
+ rad_assert(ssl_mutexes[n] != NULL);
+
if (mode & CRYPTO_LOCK) {
- pthread_mutex_lock(&(ssl_mutexes[n]));
+ pthread_mutex_lock(&ssl_mutexes[n]);
} else {
- pthread_mutex_unlock(&(ssl_mutexes[n]));
+ pthread_mutex_unlock(&ssl_mutexes[n]);
}
}
#endif
#ifdef HAVE_CRYPTO_SET_LOCKING_CALLBACK
int i, num;
+ rad_assert(ssl_mutexes == NULL);
+
num = CRYPTO_num_locks();
ssl_mutexes = rad_malloc(num * sizeof(pthread_mutex_t));
}
for (i = 0; i < num; i++) {
- pthread_mutex_init(&(ssl_mutexes[i]), NULL);
+ pthread_mutex_init(&ssl_mutexes[i], NULL);
}
CRYPTO_set_locking_callback(ssl_locking_function);
#ifdef HAVE_CRYPTO_SET_LOCKING_CALLBACK
int i, num;
+ rad_assert(ssl_mutexes != NULL);
+
num = CRYPTO_num_locks();
for (i = 0; i < num; i++) {