From 8c7e6552742d11b13bc381fb39c00f9d57ce70ba Mon Sep 17 00:00:00 2001 From: Felix Geyer Date: Sun, 12 Jan 2014 12:39:39 +0100 Subject: [PATCH] Add compatibility with libgcrypt 1.6. Closes #129 --- src/crypto/Crypto.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/crypto/Crypto.cpp b/src/crypto/Crypto.cpp index 6ad7fb0f2..1e28002b6 100644 --- a/src/crypto/Crypto.cpp +++ b/src/crypto/Crypto.cpp @@ -23,6 +23,7 @@ bool Crypto::m_initalized(false); +#if !defined(GCRYPT_VERSION_NUMBER) || (GCRYPT_VERSION_NUMBER < 0x010600) static int gcry_qt_mutex_init(void** p_sys) { *p_sys = new QMutex(); @@ -57,6 +58,7 @@ static const struct gcry_thread_cbs gcry_threads_qt = gcry_qt_mutex_unlock, 0, 0, 0, 0, 0, 0, 0, 0 }; +#endif Crypto::Crypto() { @@ -69,7 +71,10 @@ void Crypto::init() return; } + // libgcrypt >= 1.6 doesn't allow custom thread callbacks anymore. +#if !defined(GCRYPT_VERSION_NUMBER) || (GCRYPT_VERSION_NUMBER < 0x010600) gcry_control(GCRYCTL_SET_THREAD_CBS, &gcry_threads_qt); +#endif gcry_check_version(0); gcry_control(GCRYCTL_INITIALIZATION_FINISHED, 0);