| From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 |
| From: Ard Biesheuvel <ardb@kernel.org> |
| Date: Fri, 8 Nov 2019 13:22:18 +0100 |
| Subject: [PATCH] crypto: chacha - unexport chacha_generic routines |
| |
| commit 22cf705360707ced15f9fe5423938f313c7df536 upstream. |
| |
| Now that all users of generic ChaCha code have moved to the core library, |
| there is no longer a need for the generic ChaCha skcpiher driver to |
| export parts of it implementation for reuse by other drivers. So drop |
| the exports, and make the symbols static. |
| |
| Signed-off-by: Ard Biesheuvel <ardb@kernel.org> |
| Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> |
| Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> |
| --- |
| crypto/chacha_generic.c | 26 ++++++++------------------ |
| include/crypto/internal/chacha.h | 10 ---------- |
| 2 files changed, 8 insertions(+), 28 deletions(-) |
| |
| --- a/crypto/chacha_generic.c |
| +++ b/crypto/chacha_generic.c |
| @@ -21,7 +21,7 @@ static int chacha_stream_xor(struct skci |
| |
| err = skcipher_walk_virt(&walk, req, false); |
| |
| - crypto_chacha_init(state, ctx, iv); |
| + chacha_init_generic(state, ctx->key, iv); |
| |
| while (walk.nbytes > 0) { |
| unsigned int nbytes = walk.nbytes; |
| @@ -37,36 +37,27 @@ static int chacha_stream_xor(struct skci |
| return err; |
| } |
| |
| -void crypto_chacha_init(u32 *state, const struct chacha_ctx *ctx, const u8 *iv) |
| -{ |
| - chacha_init_generic(state, ctx->key, iv); |
| -} |
| -EXPORT_SYMBOL_GPL(crypto_chacha_init); |
| - |
| -int crypto_chacha20_setkey(struct crypto_skcipher *tfm, const u8 *key, |
| - unsigned int keysize) |
| +static int crypto_chacha20_setkey(struct crypto_skcipher *tfm, const u8 *key, |
| + unsigned int keysize) |
| { |
| return chacha_setkey(tfm, key, keysize, 20); |
| } |
| -EXPORT_SYMBOL_GPL(crypto_chacha20_setkey); |
| |
| -int crypto_chacha12_setkey(struct crypto_skcipher *tfm, const u8 *key, |
| - unsigned int keysize) |
| +static int crypto_chacha12_setkey(struct crypto_skcipher *tfm, const u8 *key, |
| + unsigned int keysize) |
| { |
| return chacha_setkey(tfm, key, keysize, 12); |
| } |
| -EXPORT_SYMBOL_GPL(crypto_chacha12_setkey); |
| |
| -int crypto_chacha_crypt(struct skcipher_request *req) |
| +static int crypto_chacha_crypt(struct skcipher_request *req) |
| { |
| struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req); |
| struct chacha_ctx *ctx = crypto_skcipher_ctx(tfm); |
| |
| return chacha_stream_xor(req, ctx, req->iv); |
| } |
| -EXPORT_SYMBOL_GPL(crypto_chacha_crypt); |
| |
| -int crypto_xchacha_crypt(struct skcipher_request *req) |
| +static int crypto_xchacha_crypt(struct skcipher_request *req) |
| { |
| struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req); |
| struct chacha_ctx *ctx = crypto_skcipher_ctx(tfm); |
| @@ -75,7 +66,7 @@ int crypto_xchacha_crypt(struct skcipher |
| u8 real_iv[16]; |
| |
| /* Compute the subkey given the original key and first 128 nonce bits */ |
| - crypto_chacha_init(state, ctx, req->iv); |
| + chacha_init_generic(state, ctx->key, req->iv); |
| hchacha_block_generic(state, subctx.key, ctx->nrounds); |
| subctx.nrounds = ctx->nrounds; |
| |
| @@ -86,7 +77,6 @@ int crypto_xchacha_crypt(struct skcipher |
| /* Generate the stream and XOR it with the data */ |
| return chacha_stream_xor(req, &subctx, real_iv); |
| } |
| -EXPORT_SYMBOL_GPL(crypto_xchacha_crypt); |
| |
| static struct skcipher_alg algs[] = { |
| { |
| --- a/include/crypto/internal/chacha.h |
| +++ b/include/crypto/internal/chacha.h |
| @@ -12,8 +12,6 @@ struct chacha_ctx { |
| int nrounds; |
| }; |
| |
| -void crypto_chacha_init(u32 *state, const struct chacha_ctx *ctx, const u8 *iv); |
| - |
| static inline int chacha_setkey(struct crypto_skcipher *tfm, const u8 *key, |
| unsigned int keysize, int nrounds) |
| { |
| @@ -42,12 +40,4 @@ static int inline chacha12_setkey(struct |
| return chacha_setkey(tfm, key, keysize, 12); |
| } |
| |
| -int crypto_chacha20_setkey(struct crypto_skcipher *tfm, const u8 *key, |
| - unsigned int keysize); |
| -int crypto_chacha12_setkey(struct crypto_skcipher *tfm, const u8 *key, |
| - unsigned int keysize); |
| - |
| -int crypto_chacha_crypt(struct skcipher_request *req); |
| -int crypto_xchacha_crypt(struct skcipher_request *req); |
| - |
| #endif /* _CRYPTO_CHACHA_H */ |