]> www.infradead.org Git - users/jedix/linux-maple.git/commit
crypto: pcbc - remove bogus memcpy()s with src == dest
authorEric Biggers <ebiggers@google.com>
Fri, 4 Jan 2019 04:16:13 +0000 (20:16 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 23 Mar 2019 13:35:21 +0000 (14:35 +0100)
commit05c0283950485d3b5d1d35200b2e679f11ae081b
treee433b1c09fd090383c3746c3d3a88c8d7750aeff
parentbc8815ce058d2a215fca83aa2416899d82670f42
crypto: pcbc - remove bogus memcpy()s with src == dest

commit 251b7aea34ba3c4d4fdfa9447695642eb8b8b098 upstream.

The memcpy()s in the PCBC implementation use walk->iv as both the source
and destination, which has undefined behavior.  These memcpy()'s are
actually unneeded, because walk->iv is already used to hold the previous
plaintext block XOR'd with the previous ciphertext block.  Thus,
walk->iv is already updated to its final value.

So remove the broken and unnecessary memcpy()s.

Fixes: 91652be5d1b9 ("[CRYPTO] pcbc: Add Propagated CBC template")
Cc: <stable@vger.kernel.org> # v2.6.21+
Cc: David Howells <dhowells@redhat.com>
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Maxim Zhukov <mussitantesmortem@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
crypto/pcbc.c