From 37f1a427440b9bb4374bf7d878f17190df75918b Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Fri, 11 Jan 2013 15:10:38 +0100 Subject: [PATCH] Fix idea.c for big endian CPUs. * cipher/idea.c: Replace use of WORDS_BIGENDIAN by BIG_ENDIAN_HOST. -- GnuPG-bug-id: 1461 --- cipher/idea.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/cipher/idea.c b/cipher/idea.c index 8cda76476..a2d8dfeb9 100644 --- a/cipher/idea.c +++ b/cipher/idea.c @@ -178,7 +178,7 @@ cipher( byte *outbuf, const byte *inbuf, u16 *key ) u16 x1, x2, x3,x4, s2, s3; u16 *in, *out; int r = IDEA_ROUNDS; - #define MUL(x,y) \ +#define MUL(x,y) \ do {u16 _t16; u32 _t32; \ if( (_t16 = (y)) ) { \ if( (x = (x)&0xffff) ) { \ @@ -201,12 +201,12 @@ cipher( byte *outbuf, const byte *inbuf, u16 *key ) x2 = *in++; x3 = *in++; x4 = *in; - #ifndef WORDS_BIGENDIAN +#ifndef BIG_ENDIAN_HOST x1 = (x1>>8) | (x1<<8); x2 = (x2>>8) | (x2<<8); x3 = (x3>>8) | (x3<<8); x4 = (x4>>8) | (x4<<8); - #endif +#endif do { MUL(x1, *key++); x2 += *key++; @@ -234,18 +234,18 @@ cipher( byte *outbuf, const byte *inbuf, u16 *key ) MUL(x4, *key); out = (u16*)outbuf; - #ifndef WORDS_BIGENDIAN +#ifndef BIG_ENDIAN_HOST *out++ = (x1>>8) | (x1<<8); *out++ = (x3>>8) | (x3<<8); *out++ = (x2>>8) | (x2<<8); *out = (x4>>8) | (x4<<8); - #else +#else *out++ = x1; *out++ = x3; *out++ = x2; *out = x4; - #endif - #undef MUL +#endif +#undef MUL }