crypto: lib - move __crypto_xor into utils
authorEric Biggers <ebiggers@google.com>
Mon, 25 Jul 2022 18:36:35 +0000 (11:36 -0700)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 19 Aug 2022 10:39:34 +0000 (18:39 +0800)
commit6e78ad0bb45dd20b3c1a56c72a32e1d82f98b422
tree65ac4a9b20b465269f3bfc453cc0c773525faa5b
parent7033b937e21b12629d920e7864c20c46bc4ccf39
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>
crypto/algapi.c
lib/crypto/Kconfig
lib/crypto/Makefile
lib/crypto/memneq.c
lib/crypto/utils.c [new file with mode: 0644]