Просмотр исходного кода

sparc64: Fix IV handling bug in des_sparc64_cbc_decrypt

The IV wasn't being propagated properly past the first loop
iteration.

This bug lived only because the crypto layer tests for
cbc(des) do not have any cases that go more than one loop.

Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller 13 лет назад
Родитель
Сommit
65d5fcf5c2
1 измененных файлов с 1 добавлено и 0 удалено
  1. 1 0
      arch/sparc/crypto/des_asm.S

+ 1 - 0
arch/sparc/crypto/des_asm.S

@@ -168,6 +168,7 @@ ENTRY(des_sparc64_cbc_decrypt)
 	DES_ROUND(28, 30, 32, 32)
 	DES_IIP(32, 32)
 	fxor	%f32, %f34, %f32
+	fsrc2	%f36, %f34
 	std	%f32, [%o1 + 0x00]
 	add	%o0, 0x08, %o0
 	subcc	%o2, 0x08, %o2