crypto: caam - fix copy of next buffer for xcbc and cmac
authorIuliana Prodan <iuliana.prodan@nxp.com>
Fri, 22 Mar 2019 12:12:30 +0000 (14:12 +0200)
committerIuliana Prodan <iuliana.prodan@nxp.com>
Wed, 8 May 2019 13:28:24 +0000 (16:28 +0300)
commite70c03915ef7efef83ee69b5fc470bdaff2c2e10
tree6680253738f0b3ed3be3fe06ab8d6ba73ac899ef
parentea2e73e19a678c4949e71f6528a5c54bd79237d2
crypto: caam - fix copy of next buffer for xcbc and cmac

Fix a side effect of adding xcbc support, when the next_buffer is not
copied.
The issue occurs, when there is stored from previous state a blocksize
buffer and received, a less than blocksize, from user. In this case, the
nents for req->src is 0, and the next_buffer is not copied.
An example is:
{
.tap = { 17, 15, 8 },
.psize = 40,
.np = 3,
.ksize = 16,
}

Fixes: 12b8567f6fa4 ("crypto: caam - add support for xcbc(aes)")
Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
Reviewed-by: Horia Geantă <horia.geanta@nxp.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
(cherry picked from commit b4e9e931e9bb2f5b302ce66640832f5a3e57e8c4)
drivers/crypto/caam/caamhash.c