diff options
author | Eric Biggers <ebiggers@google.com> | 2022-07-25 11:36:35 -0700 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2022-08-19 18:39:34 +0800 |
commit | 6e78ad0bb45dd20b3c1a56c72a32e1d82f98b422 (patch) | |
tree | 65ac4a9b20b465269f3bfc453cc0c773525faa5b /lib/crypto/Kconfig | |
parent | 7033b937e21b12629d920e7864c20c46bc4ccf39 (diff) |
crypto: lib - move __crypto_xor into utils
CRYPTO_LIB_CHACHA depends on CRYPTO for __crypto_xor, defined in
crypto/algapi.c. This is a layering violation because the dependencies
should only go in the other direction (crypto/ => lib/crypto/). Also
the correct dependency would be CRYPTO_ALGAPI, not CRYPTO. Fix this by
moving __crypto_xor into the utils module in lib/crypto/.
Note that CRYPTO_LIB_CHACHA_GENERIC selected XOR_BLOCKS, which is
unrelated and unnecessary. It was perhaps thought that XOR_BLOCKS was
needed for __crypto_xor, but that's not the case.
Signed-off-by: Eric Biggers <ebiggers@google.com>
Reviewed-by: Jason A. Donenfeld <Jason@zx2c4.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'lib/crypto/Kconfig')
-rw-r--r-- | lib/crypto/Kconfig | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/lib/crypto/Kconfig b/lib/crypto/Kconfig index b09d9d6546cb..7e9683e9f5c6 100644 --- a/lib/crypto/Kconfig +++ b/lib/crypto/Kconfig @@ -36,7 +36,7 @@ config CRYPTO_ARCH_HAVE_LIB_CHACHA config CRYPTO_LIB_CHACHA_GENERIC tristate - select XOR_BLOCKS + select CRYPTO_LIB_UTILS help This symbol can be depended upon by arch implementations of the ChaCha library interface that require the generic code as a @@ -46,7 +46,6 @@ config CRYPTO_LIB_CHACHA_GENERIC config CRYPTO_LIB_CHACHA tristate "ChaCha library interface" - depends on CRYPTO depends on CRYPTO_ARCH_HAVE_LIB_CHACHA || !CRYPTO_ARCH_HAVE_LIB_CHACHA select CRYPTO_LIB_CHACHA_GENERIC if CRYPTO_ARCH_HAVE_LIB_CHACHA=n help |