dcf7b48212
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:
|
||
---|---|---|
.. | ||
.gitignore | ||
aes_cbc.c | ||
aes_ctr.c | ||
aes_xts.c | ||
aes.c | ||
aesp8-ppc.h | ||
aesp8-ppc.pl | ||
ghash.c | ||
ghashp8-ppc.pl | ||
Kconfig | ||
Makefile | ||
ppc-xlate.pl | ||
vmx.c |