From f48e6ee81d1c71486eaccfa7ac5863c6c6caf105 Mon Sep 17 00:00:00 2001 From: Emil Velikov Date: Sat, 23 Aug 2025 13:06:19 +0100 Subject: [PATCH] Bump required (lib)gcrypt to v1.8.0 Bump the requirement to v1.8.0, which means we can remove ~70% of the ifdef guard. It was released over 8 years ago, with 3 new feature releases since then and dozen of bugfix releases in the 1.8 branch. The oldest distributions we target Ubuntu 20.04 and Debian Bullseye, have 1.8.5 and 1.8.7 respectively. Signed-off-by: Emil Velikov --- CMakeLists.txt | 2 +- src/core/core-crypto.c | 8 -------- tests/unit/core/test-core-crypto.cpp | 14 -------------- 3 files changed, 1 insertion(+), 23 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 4484c71a9..f9d6a77bc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -247,7 +247,7 @@ if(CMAKE_HOST_SOLARIS) endif() # Check for libgcrypt -pkg_check_modules(LIBGCRYPT REQUIRED libgcrypt) +pkg_check_modules(LIBGCRYPT REQUIRED libgcrypt>=1.8.0) include_directories(${LIBGCRYPT_INCLUDE_DIRS}) list(APPEND EXTRA_LIBS ${LIBGCRYPT_LDFLAGS}) diff --git a/src/core/core-crypto.c b/src/core/core-crypto.c index 93d76d22f..ac8449b22 100644 --- a/src/core/core-crypto.c +++ b/src/core/core-crypto.c @@ -65,13 +65,10 @@ char *weecrypto_hash_algo_string[] = { "sha256", "sha384", "sha512", -#if GCRYPT_VERSION_NUMBER >= 0x010700 "sha3-224", "sha3-256", "sha3-384", "sha3-512", -#endif -#if GCRYPT_VERSION_NUMBER >= 0x010800 "blake2b-160", "blake2b-256", "blake2b-384", @@ -80,7 +77,6 @@ char *weecrypto_hash_algo_string[] = { "blake2s-160", "blake2s-224", "blake2s-256", -#endif #if GCRYPT_VERSION_NUMBER >= 0x010904 "sha512-224", "sha512-256", @@ -95,13 +91,10 @@ int weecrypto_hash_algo[] = { GCRY_MD_SHA256, GCRY_MD_SHA384, GCRY_MD_SHA512, -#if GCRYPT_VERSION_NUMBER >= 0x010700 GCRY_MD_SHA3_224, GCRY_MD_SHA3_256, GCRY_MD_SHA3_384, GCRY_MD_SHA3_512, -#endif -#if GCRYPT_VERSION_NUMBER >= 0x010800 GCRY_MD_BLAKE2B_160, GCRY_MD_BLAKE2B_256, GCRY_MD_BLAKE2B_384, @@ -110,7 +103,6 @@ int weecrypto_hash_algo[] = { GCRY_MD_BLAKE2S_160, GCRY_MD_BLAKE2S_224, GCRY_MD_BLAKE2S_256, -#endif #if GCRYPT_VERSION_NUMBER >= 0x010904 GCRY_MD_SHA512_224, GCRY_MD_SHA512_256, diff --git a/tests/unit/core/test-core-crypto.cpp b/tests/unit/core/test-core-crypto.cpp index 0c46033fd..a6fbdd84e 100644 --- a/tests/unit/core/test-core-crypto.cpp +++ b/tests/unit/core/test-core-crypto.cpp @@ -245,13 +245,10 @@ TEST(CoreCrypto, GetHashAlgo) LONGS_EQUAL(GCRY_MD_SHA512_224, weecrypto_get_hash_algo ("sha512-224")); LONGS_EQUAL(GCRY_MD_SHA512_256, weecrypto_get_hash_algo ("sha512-256")); #endif -#if GCRYPT_VERSION_NUMBER >= 0x010700 LONGS_EQUAL(GCRY_MD_SHA3_224, weecrypto_get_hash_algo ("sha3-224")); LONGS_EQUAL(GCRY_MD_SHA3_256, weecrypto_get_hash_algo ("sha3-256")); LONGS_EQUAL(GCRY_MD_SHA3_384, weecrypto_get_hash_algo ("sha3-384")); LONGS_EQUAL(GCRY_MD_SHA3_512, weecrypto_get_hash_algo ("sha3-512")); -#endif -#if GCRYPT_VERSION_NUMBER >= 0x010800 LONGS_EQUAL(GCRY_MD_BLAKE2B_160, weecrypto_get_hash_algo ("blake2b-160")); LONGS_EQUAL(GCRY_MD_BLAKE2B_256, weecrypto_get_hash_algo ("blake2b-256")); LONGS_EQUAL(GCRY_MD_BLAKE2B_384, weecrypto_get_hash_algo ("blake2b-384")); @@ -260,7 +257,6 @@ TEST(CoreCrypto, GetHashAlgo) LONGS_EQUAL(GCRY_MD_BLAKE2S_160, weecrypto_get_hash_algo ("blake2s-160")); LONGS_EQUAL(GCRY_MD_BLAKE2S_224, weecrypto_get_hash_algo ("blake2s-224")); LONGS_EQUAL(GCRY_MD_BLAKE2S_256, weecrypto_get_hash_algo ("blake2s-256")); -#endif } /* @@ -309,13 +305,10 @@ TEST(CoreCrypto, Hash) WEE_CHECK_HASH(1, DATA_HASH_SHA512_224, data, data_size, GCRY_MD_SHA512_224); WEE_CHECK_HASH(1, DATA_HASH_SHA512_256, data, data_size, GCRY_MD_SHA512_256); #endif -#if GCRYPT_VERSION_NUMBER >= 0x010700 WEE_CHECK_HASH(1, DATA_HASH_SHA3_224, data, data_size, GCRY_MD_SHA3_224); WEE_CHECK_HASH(1, DATA_HASH_SHA3_256, data, data_size, GCRY_MD_SHA3_256); WEE_CHECK_HASH(1, DATA_HASH_SHA3_384, data, data_size, GCRY_MD_SHA3_384); WEE_CHECK_HASH(1, DATA_HASH_SHA3_512, data, data_size, GCRY_MD_SHA3_512); -#endif -#if GCRYPT_VERSION_NUMBER >= 0x010800 WEE_CHECK_HASH(1, DATA_HASH_BLAKE2B_160, data, data_size, GCRY_MD_BLAKE2B_160); WEE_CHECK_HASH(1, DATA_HASH_BLAKE2B_256, data, data_size, GCRY_MD_BLAKE2B_256); WEE_CHECK_HASH(1, DATA_HASH_BLAKE2B_384, data, data_size, GCRY_MD_BLAKE2B_384); @@ -324,7 +317,6 @@ TEST(CoreCrypto, Hash) WEE_CHECK_HASH(1, DATA_HASH_BLAKE2S_160, data, data_size, GCRY_MD_BLAKE2S_160); WEE_CHECK_HASH(1, DATA_HASH_BLAKE2S_224, data, data_size, GCRY_MD_BLAKE2S_224); WEE_CHECK_HASH(1, DATA_HASH_BLAKE2S_256, data, data_size, GCRY_MD_BLAKE2S_256); -#endif } /* @@ -362,13 +354,10 @@ TEST(CoreCrypto, HashFile) WEE_CHECK_HASH_FILE(1, DATA_HASH_SHA512_224, filename, GCRY_MD_SHA512_224); WEE_CHECK_HASH_FILE(1, DATA_HASH_SHA512_256, filename, GCRY_MD_SHA512_256); #endif -#if GCRYPT_VERSION_NUMBER >= 0x010700 WEE_CHECK_HASH_FILE(1, DATA_HASH_SHA3_224, filename, GCRY_MD_SHA3_224); WEE_CHECK_HASH_FILE(1, DATA_HASH_SHA3_256, filename, GCRY_MD_SHA3_256); WEE_CHECK_HASH_FILE(1, DATA_HASH_SHA3_384, filename, GCRY_MD_SHA3_384); WEE_CHECK_HASH_FILE(1, DATA_HASH_SHA3_512, filename, GCRY_MD_SHA3_512); -#endif -#if GCRYPT_VERSION_NUMBER >= 0x010800 WEE_CHECK_HASH_FILE(1, DATA_HASH_BLAKE2B_160, filename, GCRY_MD_BLAKE2B_160); WEE_CHECK_HASH_FILE(1, DATA_HASH_BLAKE2B_256, filename, GCRY_MD_BLAKE2B_256); WEE_CHECK_HASH_FILE(1, DATA_HASH_BLAKE2B_384, filename, GCRY_MD_BLAKE2B_384); @@ -377,7 +366,6 @@ TEST(CoreCrypto, HashFile) WEE_CHECK_HASH_FILE(1, DATA_HASH_BLAKE2S_160, filename, GCRY_MD_BLAKE2S_160); WEE_CHECK_HASH_FILE(1, DATA_HASH_BLAKE2S_224, filename, GCRY_MD_BLAKE2S_224); WEE_CHECK_HASH_FILE(1, DATA_HASH_BLAKE2S_256, filename, GCRY_MD_BLAKE2S_256); -#endif unlink (filename); free (filename); @@ -460,12 +448,10 @@ TEST(CoreCrypto, Hmac) WEE_CHECK_HMAC(1, DATA_HMAC_SHA512_224, key, key_size, msg, msg_size, GCRY_MD_SHA512_224); WEE_CHECK_HMAC(1, DATA_HMAC_SHA512_256, key, key_size, msg, msg_size, GCRY_MD_SHA512_256); #endif -#if GCRYPT_VERSION_NUMBER >= 0x010700 WEE_CHECK_HMAC(1, DATA_HMAC_SHA3_224, key, key_size, msg, msg_size, GCRY_MD_SHA3_224); WEE_CHECK_HMAC(1, DATA_HMAC_SHA3_256, key, key_size, msg, msg_size, GCRY_MD_SHA3_256); WEE_CHECK_HMAC(1, DATA_HMAC_SHA3_384, key, key_size, msg, msg_size, GCRY_MD_SHA3_384); WEE_CHECK_HMAC(1, DATA_HMAC_SHA3_512, key, key_size, msg, msg_size, GCRY_MD_SHA3_512); -#endif } /*