crypto: kdf - skip self-test when tests disabled
authorEric Biggers <ebiggers@google.com>
Mon, 14 Nov 2022 00:12:36 +0000 (16:12 -0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 25 Nov 2022 09:39:18 +0000 (17:39 +0800)
Make kdf_sp800108 honor the CONFIG_CRYPTO_MANAGER_DISABLE_TESTS kconfig
option, so that it doesn't always waste time running its self-test.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/kdf_sp800108.c

index 58edf77..c6e3ad8 100644 (file)
@@ -125,9 +125,13 @@ static const struct kdf_testvec kdf_ctr_hmac_sha256_tv_template[] = {
 
 static int __init crypto_kdf108_init(void)
 {
-       int ret = kdf_test(&kdf_ctr_hmac_sha256_tv_template[0], "hmac(sha256)",
-                          crypto_kdf108_setkey, crypto_kdf108_ctr_generate);
+       int ret;
 
+       if (IS_ENABLED(CONFIG_CRYPTO_MANAGER_DISABLE_TESTS))
+               return 0;
+
+       ret = kdf_test(&kdf_ctr_hmac_sha256_tv_template[0], "hmac(sha256)",
+                      crypto_kdf108_setkey, crypto_kdf108_ctr_generate);
        if (ret) {
                if (fips_enabled)
                        panic("alg: self-tests for CTR-KDF (hmac(sha256)) failed (rc=%d)\n",