[PATCH 4.17 17/21] crypto: skcipher - fix aligning block size in skcipher_copy_iv()

From: Greg Kroah-Hartman
Date: Thu Aug 16 2018 - 14:47:18 EST


4.17-stable review patch. If anyone has any objections, please let me know.

------------------

From: Eric Biggers <ebiggers@xxxxxxxxxx>

commit 0567fc9e90b9b1c8dbce8a5468758e6206744d4a upstream.

The ALIGN() macro needs to be passed the alignment, not the alignmask
(which is the alignment minus 1).

Fixes: b286d8b1a690 ("crypto: skcipher - Add skcipher walk interface")
Cc: <stable@xxxxxxxxxxxxxxx> # v4.10+
Signed-off-by: Eric Biggers <ebiggers@xxxxxxxxxx>
Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
crypto/skcipher.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- a/crypto/skcipher.c
+++ b/crypto/skcipher.c
@@ -399,7 +399,7 @@ static int skcipher_copy_iv(struct skcip
unsigned size;
u8 *iv;

- aligned_bs = ALIGN(bs, alignmask);
+ aligned_bs = ALIGN(bs, alignmask + 1);

/* Minimum size to align buffer by alignmask. */
size = alignmask & ~a;