]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
accelerated: don't register custom HMAC for AArch64 if Nettle 4
authorDaiki Ueno <ueno@gnu.org>
Wed, 4 Mar 2026 01:07:22 +0000 (10:07 +0900)
committerAlexander Sosedkin <asosedki@redhat.com>
Wed, 4 Mar 2026 10:36:17 +0000 (10:36 +0000)
As a follow-up of commit 4e3921c36529110a94c2a63e0d6601c502901589, add
missing #ifdefs for AArch64, as Nettle 4 doesn't provide an easy way
to implement a custom HMAC instance.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
lib/accelerated/aarch64/aarch64-common.c

index 12b7386fc689e1b30def49a0085538acce8598da..ce8fc8301a9618dd44875db9792a2b43b6e12882 100644 (file)
@@ -141,11 +141,13 @@ static void _register_aarch64_crypto(unsigned capabilities)
                        gnutls_assert();
                }
 
+#if defined(HAVE_LIBNETTLE) && defined(HMAC_SET_KEY)
                ret = gnutls_crypto_single_mac_register(
                        GNUTLS_MAC_SHA1, 80, &_gnutls_hmac_sha_aarch64, 0);
                if (ret < 0) {
                        gnutls_assert();
                }
+#endif
        }
 
        if (_gnutls_arm_cpuid_s & ARMV8_SHA256) {
@@ -157,11 +159,13 @@ static void _register_aarch64_crypto(unsigned capabilities)
                        gnutls_assert();
                }
 
+#if defined(HAVE_LIBNETTLE) && defined(HMAC_SET_KEY)
                ret = gnutls_crypto_single_mac_register(
                        GNUTLS_MAC_SHA224, 80, &_gnutls_hmac_sha_aarch64, 0);
                if (ret < 0) {
                        gnutls_assert();
                }
+#endif
 
                ret = gnutls_crypto_single_digest_register(
                        GNUTLS_DIG_SHA256, 80, &_gnutls_sha_aarch64, 0);
@@ -169,11 +173,13 @@ static void _register_aarch64_crypto(unsigned capabilities)
                        gnutls_assert();
                }
 
+#if defined(HAVE_LIBNETTLE) && defined(HMAC_SET_KEY)
                ret = gnutls_crypto_single_mac_register(
                        GNUTLS_MAC_SHA256, 80, &_gnutls_hmac_sha_aarch64, 0);
                if (ret < 0) {
                        gnutls_assert();
                }
+#endif
 
                ret = gnutls_crypto_single_digest_register(
                        GNUTLS_DIG_SHA384, 80, &_gnutls_sha_aarch64, 0);
@@ -181,11 +187,13 @@ static void _register_aarch64_crypto(unsigned capabilities)
                        gnutls_assert();
                }
 
+#if defined(HAVE_LIBNETTLE) && defined(HMAC_SET_KEY)
                ret = gnutls_crypto_single_mac_register(
                        GNUTLS_MAC_SHA384, 80, &_gnutls_hmac_sha_aarch64, 0);
                if (ret < 0) {
                        gnutls_assert();
                }
+#endif
 
                ret = gnutls_crypto_single_digest_register(
                        GNUTLS_DIG_SHA512, 80, &_gnutls_sha_aarch64, 0);
@@ -193,11 +201,13 @@ static void _register_aarch64_crypto(unsigned capabilities)
                        gnutls_assert();
                }
 
+#if defined(HAVE_LIBNETTLE) && defined(HMAC_SET_KEY)
                ret = gnutls_crypto_single_mac_register(
                        GNUTLS_MAC_SHA512, 80, &_gnutls_hmac_sha_aarch64, 0);
                if (ret < 0) {
                        gnutls_assert();
                }
+#endif
        }
 
        if (_gnutls_arm_cpuid_s & ARMV8_AES) {