Commit 24612846 authored by Martin Storsjö's avatar Martin Storsjö

openssl: Only use CRYPTO_set_id_callback on OpenSSL < 1.0.0

Since 1.0.0, this function is deprecated. A new function,
CRYPTO_THREADID_set_callback is available, but if not set at all,
it uses the address of errno as thread id, which should be
sufficient for most systems.

On windows, it never was necessary to use this function even
before 1.0.0, it used the right win32 API function for this
by default.
Signed-off-by: 's avatarMartin Storsjö <martin@martin.st>
parent 776f2bb9
......@@ -45,7 +45,7 @@ static void openssl_lock(int mode, int type, const char *file, int line)
else
pthread_mutex_unlock(&openssl_mutexes[type]);
}
#ifndef WIN32
#if !defined(WIN32) && OPENSSL_VERSION_NUMBER < 0x10000000
static unsigned long openssl_thread_id(void)
{
return (intptr_t) pthread_self();
......@@ -78,7 +78,7 @@ void ff_tls_init(void)
for (i = 0; i < CRYPTO_num_locks(); i++)
pthread_mutex_init(&openssl_mutexes[i], NULL);
CRYPTO_set_locking_callback(openssl_lock);
#ifndef WIN32
#if !defined(WIN32) && OPENSSL_VERSION_NUMBER < 0x10000000
CRYPTO_set_id_callback(openssl_thread_id);
#endif
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment