From 1606e551ff4ace23da8a372ebb1147da36566372 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Storsj=C3=B6?= Date: Sun, 6 Feb 2011 00:06:49 +0100 Subject: [PATCH] avformat: Initialize gnutls in ff_tls_init() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Martin Storsjö --- libavformat/network.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/libavformat/network.c b/libavformat/network.c index 6ef609f2ed..d50e1e70f8 100644 --- a/libavformat/network.c +++ b/libavformat/network.c @@ -53,6 +53,16 @@ static unsigned long openssl_thread_id(void) #endif #endif #endif +#if CONFIG_GNUTLS +#include +#if THREADS && GNUTLS_VERSION_NUMBER <= 0x020b00 +#include +#include +#undef malloc +#undef free +GCRY_THREAD_OPTION_PTHREAD_IMPL; +#endif +#endif void ff_tls_init(void) { @@ -75,6 +85,13 @@ void ff_tls_init(void) #endif } openssl_init++; +#endif +#if CONFIG_GNUTLS +#if THREADS && GNUTLS_VERSION_NUMBER < 0x020b00 + if (gcry_control(GCRYCTL_ANY_INITIALIZATION_P) == 0) + gcry_control(GCRYCTL_SET_THREAD_CBS, &gcry_threads_pthread); +#endif + gnutls_global_init(); #endif avpriv_unlock_avformat(); } @@ -95,6 +112,9 @@ void ff_tls_deinit(void) } #endif } +#endif +#if CONFIG_GNUTLS + gnutls_global_deinit(); #endif avpriv_unlock_avformat(); }