From e166f761267c03a478ffb243ce17aa08573cd965 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Love=20H=C3=B6rnquist=20=C3=85strand?= Date: Sat, 24 Apr 2004 12:08:22 +0000 Subject: [PATCH] (RC2_set_key): rewrite the mask calculation git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@13756 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/des/rc2.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/lib/des/rc2.c b/lib/des/rc2.c index f5de62d1b..6ddee0b6e 100644 --- a/lib/des/rc2.c +++ b/lib/des/rc2.c @@ -98,10 +98,8 @@ RC2_set_key(RC2_KEY *key, int len, const unsigned char *data, int bits) k[j] = Sbox[(k[j - len] + k[j - 1]) & 0xff]; T8 = (bits + 7) / 8; - j = 8 - (8*T8 - bits); - TM = 0; - while (j-- > 0) - TM = TM << 1 | 1; + j = (8*T8 - bits); + TM = 0xff >> j; k[128 - T8] = Sbox[k[128 - T8] & TM];