From 6a9060e4b5f17cbfdbe35fc3294d56c6831e8427 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se>
Date: Mon, 20 Sep 2010 11:11:56 +0200
Subject: [PATCH] (CAMELLIA_ROUNDSM): Moved addition of key to the end, to use
 a 64-bit xor.

Rev: nettle/camellia-crypt-internal.c:1.3
---
 camellia-crypt-internal.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/camellia-crypt-internal.c b/camellia-crypt-internal.c
index c38c225f..679c4db1 100644
--- a/camellia-crypt-internal.c
+++ b/camellia-crypt-internal.c
@@ -76,8 +76,6 @@
       ^ T->sp3033[((x) >> 40) & 0xff]			\
       ^ T->sp4404[((x) >> 32) & 0xff];			\
     /* il == (t1^t3^t4),(t1^t2^t4),(t1^t2^t3),(t2^t3^t4) */	\
-    __il ^= (k) >> 32;						\
-    __ir ^= (k) & 0xffffffff;					\
     __ir ^= __il;						\
     /* ir == (t1^t3^t4^t6^t7^t8),(t1^t2^t4^t5^t7^t8),		\
              (t1^t2^t3^t5^t6^t8),(t2^t3^t4^t5^t6^t7)		\
@@ -88,6 +86,7 @@
     /* il == (t1^t2^t6^t7^t8),(t2^t3^t5^t7^t8),			\
              (t3^t4^t5^t6^t8),(t1^t4^t5^t6^t7)			\
           == y5,y6,y7,y8 */					\
+    y ^= (k);							\
     y ^= ((uint64_t) __ir << 32) | __il;			\
   } while (0)
 
-- 
GitLab