]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
crypto: ctr - remove unused crypto_ctr_encrypt_walk()
authorArd Biesheuvel <ardb@kernel.org>
Thu, 3 Apr 2025 07:19:57 +0000 (09:19 +0200)
committerHerbert Xu <herbert@gondor.apana.org.au>
Mon, 7 Apr 2025 05:22:27 +0000 (13:22 +0800)
crypto_ctr_encrypt_walk() is no longer used so remove it.

Note that some existing drivers currently rely on the transitive
includes of some other crypto headers so retain those for the time
being.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
include/crypto/ctr.h

index da1ee73e9ce90a87fca5e990d0e95d89ce3ba6f9..c41685874f0082f9b0b7ccf5946ff7c121d24068 100644 (file)
 
 #include <crypto/algapi.h>
 #include <crypto/internal/skcipher.h>
-#include <linux/string.h>
-#include <linux/types.h>
 
 #define CTR_RFC3686_NONCE_SIZE 4
 #define CTR_RFC3686_IV_SIZE 8
 #define CTR_RFC3686_BLOCK_SIZE 16
 
-static inline int crypto_ctr_encrypt_walk(struct skcipher_request *req,
-                                         void (*fn)(struct crypto_skcipher *,
-                                                    const u8 *, u8 *))
-{
-       struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req);
-       int blocksize = crypto_skcipher_chunksize(tfm);
-       u8 buf[MAX_CIPHER_BLOCKSIZE];
-       struct skcipher_walk walk;
-       int err;
-
-       /* avoid integer division due to variable blocksize parameter */
-       if (WARN_ON_ONCE(!is_power_of_2(blocksize)))
-               return -EINVAL;
-
-       err = skcipher_walk_virt(&walk, req, false);
-
-       while (walk.nbytes > 0) {
-               const u8 *src = walk.src.virt.addr;
-               u8 *dst = walk.dst.virt.addr;
-               int nbytes = walk.nbytes;
-               int tail = 0;
-
-               if (nbytes < walk.total) {
-                       tail = walk.nbytes & (blocksize - 1);
-                       nbytes -= tail;
-               }
-
-               do {
-                       int bsize = min(nbytes, blocksize);
-
-                       fn(tfm, walk.iv, buf);
-
-                       crypto_xor_cpy(dst, src, buf, bsize);
-                       crypto_inc(walk.iv, blocksize);
-
-                       dst += bsize;
-                       src += bsize;
-                       nbytes -= bsize;
-               } while (nbytes > 0);
-
-               err = skcipher_walk_done(&walk, tail);
-       }
-       return err;
-}
-
 #endif  /* _CRYPTO_CTR_H */