]> git.baikalelectronics.ru Git - kernel.git/commit
crypto: caam - strip input zeros from RSA input buffer
authorHoria Geantă <horia.geanta@nxp.com>
Mon, 16 Apr 2018 13:07:05 +0000 (08:07 -0500)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 20 Apr 2018 16:59:03 +0000 (00:59 +0800)
commit4f74823ac247a5358b9257944b4035e4361a72de
tree3f0a0c792acfedeae9d9073984d618d9ecf2cb63
parent4d4f12d19e2dd4880df49c80234291c564d0c5f3
crypto: caam - strip input zeros from RSA input buffer

Sometimes the provided RSA input buffer provided is not stripped
of leading zeros. This could cause its size to be bigger than that
of the modulus, making the HW complain:

caam_jr 2142000.jr1: 40000789: DECO: desc idx 7:
Protocol Size Error - A protocol has seen an error in size. When
running RSA, pdb size N < (size of F) when no formatting is used; or
pdb size N < (F + 11) when formatting is used.

Fix the problem by stripping off the leading zero from input data
before feeding it to the CAAM accelerator.

Fixes: bc61cf59fbb5c ("crypto: caam - add support for RSA algorithm")
Cc: <stable@vger.kernel.org> # 4.8+
Reported-by: Martin Townsend <mtownsend1973@gmail.com>
Link: https://lkml.kernel.org/r/CABatt_ytYORYKtApcB4izhNanEKkGFi9XAQMjHi_n-8YWoCRiw@mail.gmail.com
Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
Tested-by: Fabio Estevam <fabio.estevam@nxp.com>
Reviewed-by: Tudor Ambarus <tudor.ambarus@microchip.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/caam/caampkc.c
drivers/crypto/caam/caampkc.h