mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-08-29 19:49:10 +00:00

Add a KUnit test suite for the SHA-1 library functions, including the corresponding HMAC support. The core test logic is in the previously-added hash-test-template.h. This commit just adds the actual KUnit suite, and it adds the generated test vectors to the tree so that gen-hash-testvecs.py won't have to be run at build time. Reviewed-by: Ard Biesheuvel <ardb@kernel.org> Link: https://lore.kernel.org/r/20250712232329.818226-16-ebiggers@kernel.org Signed-off-by: Eric Biggers <ebiggers@kernel.org>
61 lines
2.2 KiB
Plaintext
61 lines
2.2 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
config CRYPTO_LIB_POLY1305_KUNIT_TEST
|
|
tristate "KUnit tests for Poly1305" if !KUNIT_ALL_TESTS
|
|
depends on KUNIT
|
|
default KUNIT_ALL_TESTS || CRYPTO_SELFTESTS
|
|
select CRYPTO_LIB_BENCHMARK_VISIBLE
|
|
select CRYPTO_LIB_POLY1305
|
|
help
|
|
KUnit tests for the Poly1305 library functions.
|
|
|
|
config CRYPTO_LIB_SHA1_KUNIT_TEST
|
|
tristate "KUnit tests for SHA-1" if !KUNIT_ALL_TESTS
|
|
depends on KUNIT
|
|
default KUNIT_ALL_TESTS || CRYPTO_SELFTESTS
|
|
select CRYPTO_LIB_BENCHMARK_VISIBLE
|
|
select CRYPTO_LIB_SHA1
|
|
help
|
|
KUnit tests for the SHA-1 cryptographic hash function and its
|
|
corresponding HMAC.
|
|
|
|
# Option is named *_SHA256_KUNIT_TEST, though both SHA-224 and SHA-256 tests are
|
|
# included, for consistency with the naming used elsewhere (e.g. CRYPTO_SHA256).
|
|
config CRYPTO_LIB_SHA256_KUNIT_TEST
|
|
tristate "KUnit tests for SHA-224 and SHA-256" if !KUNIT_ALL_TESTS
|
|
depends on KUNIT
|
|
default KUNIT_ALL_TESTS || CRYPTO_SELFTESTS
|
|
select CRYPTO_LIB_BENCHMARK_VISIBLE
|
|
select CRYPTO_LIB_SHA256
|
|
help
|
|
KUnit tests for the SHA-224 and SHA-256 cryptographic hash functions
|
|
and their corresponding HMACs.
|
|
|
|
# Option is named *_SHA512_KUNIT_TEST, though both SHA-384 and SHA-512 tests are
|
|
# included, for consistency with the naming used elsewhere (e.g. CRYPTO_SHA512).
|
|
config CRYPTO_LIB_SHA512_KUNIT_TEST
|
|
tristate "KUnit tests for SHA-384 and SHA-512" if !KUNIT_ALL_TESTS
|
|
depends on KUNIT
|
|
default KUNIT_ALL_TESTS || CRYPTO_SELFTESTS
|
|
select CRYPTO_LIB_BENCHMARK_VISIBLE
|
|
select CRYPTO_LIB_SHA512
|
|
help
|
|
KUnit tests for the SHA-384 and SHA-512 cryptographic hash functions
|
|
and their corresponding HMACs.
|
|
|
|
config CRYPTO_LIB_BENCHMARK_VISIBLE
|
|
bool
|
|
|
|
config CRYPTO_LIB_BENCHMARK
|
|
bool "Include benchmarks in KUnit tests for cryptographic functions"
|
|
depends on CRYPTO_LIB_BENCHMARK_VISIBLE
|
|
help
|
|
Include benchmarks in the KUnit tests for cryptographic functions.
|
|
The benchmark results are printed to the kernel log when the
|
|
corresponding KUnit test suite runs.
|
|
|
|
This is useful for evaluating the performance of the cryptographic
|
|
functions. However, it will increase the runtime of the KUnit tests.
|
|
|
|
If you're only interested in correctness testing, leave this disabled.
|