From f05ea58bb369988a61438411539ea955e0adf8c2 Mon Sep 17 00:00:00 2001 From: weidai Date: Sun, 10 Dec 2006 02:12:23 +0000 Subject: port to GCC 4, reorganize implementations of SetKey --- 3way.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to '3way.cpp') diff --git a/3way.cpp b/3way.cpp index 0b7d4f23..725b682e 100644 --- a/3way.cpp +++ b/3way.cpp @@ -61,17 +61,16 @@ static inline word32 reverseBits(word32 a) pi_gamma_pi(a0, a1, a2); \ } -void ThreeWay::Base::UncheckedSetKey(CipherDir dir, const byte *uk, unsigned int length, unsigned int r) +void ThreeWay::Base::UncheckedSetKey(const byte *uk, unsigned int length, const NameValuePairs ¶ms) { AssertValidKeyLength(length); - AssertValidRounds(r); - m_rounds = r; + m_rounds = GetRoundsAndThrowIfInvalid(params, this); for (unsigned int i=0; i<3; i++) m_k[i] = (word32)uk[4*i+3] | ((word32)uk[4*i+2]<<8) | ((word32)uk[4*i+1]<<16) | ((word32)uk[4*i]<<24); - if (dir == DECRYPTION) + if (!IsForwardTransformation()) { theta(m_k[0], m_k[1], m_k[2]); mu(m_k[0], m_k[1], m_k[2]); -- cgit v1.2.1