diff options
Diffstat (limited to 'dev-libs/libmcrypt/files/libmcrypt-2.5.8-rotate-mask.patch')
-rw-r--r-- | dev-libs/libmcrypt/files/libmcrypt-2.5.8-rotate-mask.patch | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/dev-libs/libmcrypt/files/libmcrypt-2.5.8-rotate-mask.patch b/dev-libs/libmcrypt/files/libmcrypt-2.5.8-rotate-mask.patch new file mode 100644 index 000000000000..ca31df4b2719 --- /dev/null +++ b/dev-libs/libmcrypt/files/libmcrypt-2.5.8-rotate-mask.patch @@ -0,0 +1,18 @@ +--- KNOWN-BUGS 2008-12-13 15:31:49.000000000 -0500 ++++ /dev/null 2008-12-13 02:05:21.751517562 -0500 +@@ -1 +0,0 @@ +-- cast-256 and rc6 do not work properly on Alpha (64 bit) machines +--- lib/mcrypt_modules.h.orig 2008-12-13 15:33:06.000000000 -0500 ++++ lib/mcrypt_modules.h 2008-12-13 15:25:01.000000000 -0500 +@@ -1,7 +1,7 @@ +-#define rotl32(x,n) (((x) << ((word32)(n))) | ((x) >> (32 - (word32)(n)))) +-#define rotr32(x,n) (((x) >> ((word32)(n))) | ((x) << (32 - (word32)(n)))) +-#define rotl16(x,n) (((x) << ((word16)(n))) | ((x) >> (16 - (word16)(n)))) +-#define rotr16(x,n) (((x) >> ((word16)(n))) | ((x) << (16 - (word16)(n)))) ++#define rotl32(x,n) (((x) << ((word32)(n & 31))) | ((x) >> (32 - (word32)(n & 31)))) ++#define rotr32(x,n) (((x) >> ((word32)(n & 31))) | ((x) << (32 - (word32)(n & 31)))) ++#define rotl16(x,n) (((x) << ((word16)(n & 15))) | ((x) >> (16 - (word16)(n & 15)))) ++#define rotr16(x,n) (((x) >> ((word16)(n & 15))) | ((x) << (16 - (word16)(n & 15)))) + + /* Use hardware rotations.. when available */ + #ifdef swap32 |