summaryrefslogtreecommitdiff
path: root/vmac.cpp
diff options
context:
space:
mode:
authorweidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0>2007-05-24 20:24:30 +0000
committerweidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0>2007-05-24 20:24:30 +0000
commit42694d7804840237cccbc4009442130d228905ee (patch)
treedbab4b1ca0eab3317e425eacc78de9b2899aafc0 /vmac.cpp
parent2973ffcf2efcbd8d112dd8a4cdee1dc5d0d8ef07 (diff)
downloadcryptopp-42694d7804840237cccbc4009442130d228905ee.tar.gz
fix bug on 32-bit big-endian machines
git-svn-id: svn://svn.code.sf.net/p/cryptopp/code/trunk/c5@373 57ff6487-cd31-0410-9ec3-f628ee90f5f0
Diffstat (limited to 'vmac.cpp')
-rwxr-xr-xvmac.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/vmac.cpp b/vmac.cpp
index 67f0074..2e7a4f5 100755
--- a/vmac.cpp
+++ b/vmac.cpp
@@ -512,15 +512,15 @@ void VMAC_Base::VHASH_Update_Template(const word64 *data, size_t blocksRemaining
nh2[1] = (nhB2 + (nhB1 >> 32)) & m62;
}
- #define a0 (((word32 *)(polyS+i*4))[2])
- #define a1 (((word32 *)(polyS+i*4))[3])
- #define a2 (((word32 *)(polyS+i*4))[0])
- #define a3 (((word32 *)(polyS+i*4))[1])
+ #define a0 (((word32 *)(polyS+i*4))[2+NativeByteOrder::ToEnum()])
+ #define a1 (((word32 *)(polyS+i*4))[3-NativeByteOrder::ToEnum()])
+ #define a2 (((word32 *)(polyS+i*4))[0+NativeByteOrder::ToEnum()])
+ #define a3 (((word32 *)(polyS+i*4))[1-NativeByteOrder::ToEnum()])
#define aHi ((polyS+i*4)[0])
- #define k0 (((word32 *)(polyS+i*4+2))[2])
- #define k1 (((word32 *)(polyS+i*4+2))[3])
- #define k2 (((word32 *)(polyS+i*4+2))[0])
- #define k3 (((word32 *)(polyS+i*4+2))[1])
+ #define k0 (((word32 *)(polyS+i*4+2))[2+NativeByteOrder::ToEnum()])
+ #define k1 (((word32 *)(polyS+i*4+2))[3-NativeByteOrder::ToEnum()])
+ #define k2 (((word32 *)(polyS+i*4+2))[0+NativeByteOrder::ToEnum()])
+ #define k3 (((word32 *)(polyS+i*4+2))[1-NativeByteOrder::ToEnum()])
#define kHi ((polyS+i*4+2)[0])
if (isFirstBlock)