]> git.baikalelectronics.ru Git - kernel.git/commit
crypto: vmx - fix copy-paste error in CTR mode
authorDaniel Axtens <dja@axtens.net>
Fri, 15 Mar 2019 02:09:01 +0000 (13:09 +1100)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 22 Mar 2019 12:57:28 +0000 (20:57 +0800)
commit8abc8bd861e4f6a72d0189f20f91b723f7d59fa7
treea670b1274696717035b1ad7582ffc2ec4a8a2098
parent152345c7b60397d211bba7eee661f2a7cee74255
crypto: vmx - fix copy-paste error in CTR mode

The original assembly imported from OpenSSL has two copy-paste
errors in handling CTR mode. When dealing with a 2 or 3 block tail,
the code branches to the CBC decryption exit path, rather than to
the CTR exit path.

This leads to corruption of the IV, which leads to subsequent blocks
being corrupted.

This can be detected with libkcapi test suite, which is available at
https://github.com/smuellerDD/libkcapi

Reported-by: Ondrej Mosnáček <omosnacek@gmail.com>
Fixes: 9265f9f8de54 ("crypto: vmx - Add support for VMS instructions by ASM")
Cc: stable@vger.kernel.org
Signed-off-by: Daniel Axtens <dja@axtens.net>
Tested-by: Michael Ellerman <mpe@ellerman.id.au>
Tested-by: Ondrej Mosnacek <omosnacek@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/vmx/aesp8-ppc.pl