Pārlūkot izejas kodu

aes/asm/bsaes-armv7: fix kernel-side XTS and harmonize with Linux.

XTS bug spotted and fix suggested by Adrian Kotelba.

(Imported from upstream's e620e5ae37bc3fc5e457ebf3edcdd01b20f8c5dd.)

Another patch we missed.

Change-Id: Ibea40eeec01a49b29064b14631706756795c9592
Reviewed-on: https://boringssl-review.googlesource.com/4489
Reviewed-by: Adam Langley <agl@google.com>
kris/onging/CECPQ3_patch15
David Benjamin pirms 9 gadiem
committed by Adam Langley
vecāks
revīzija
c521b305c6
1 mainītis faili ar 3 papildinājumiem un 1 dzēšanām
  1. +3
    -1
      crypto/aes/asm/bsaes-armv7.pl

+ 3
- 1
crypto/aes/asm/bsaes-armv7.pl Parādīt failu

@@ -703,7 +703,7 @@ $code.=<<___;
# define BSAES_ASM_EXTENDED_KEY
# define XTS_CHAIN_TWEAK
# define __ARM_ARCH__ __LINUX_ARM_ARCH__
# define __ARM_MAX_ARCH__ __LINUX_ARM_ARCH__
# define __ARM_MAX_ARCH__ 7
#endif

#ifdef __thumb__
@@ -2087,9 +2087,11 @@ bsaes_xts_decrypt:
vld1.8 {@XMM[8]}, [r0] @ initial tweak
adr $magic, .Lxts_magic

#ifndef XTS_CHAIN_TWEAK
tst $len, #0xf @ if not multiple of 16
it ne @ Thumb2 thing, sanity check in ARM
subne $len, #0x10 @ subtract another 16 bytes
#endif
subs $len, #0x80

blo .Lxts_dec_short


Notiek ielāde…
Atcelt
Saglabāt