summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Ierymenko <adam.ierymenko@gmail.com>2015-09-23 14:09:27 -0700
committerAdam Ierymenko <adam.ierymenko@gmail.com>2015-09-23 14:09:27 -0700
commita3ed5277ef1cb02096137750278e6a4910f5efeb (patch)
tree2f88f2da0e1204daf5cdd746ac2d5de697540082
parent2a527ea82e597759433d9bb3c8e884463c81fc2b (diff)
downloadinfinitytier-a3ed5277ef1cb02096137750278e6a4910f5efeb.tar.gz
infinitytier-a3ed5277ef1cb02096137750278e6a4910f5efeb.zip
Make sure ZT_NO_TYPE_PUNNING also obeyed here.
-rw-r--r--node/SHA512.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/node/SHA512.cpp b/node/SHA512.cpp
index 197d6323..ddff4839 100644
--- a/node/SHA512.cpp
+++ b/node/SHA512.cpp
@@ -48,10 +48,8 @@ Public domain.
#define uint64 uint64_t
-#define load_bigendian(x) Utils::ntoh(*((const uint64_t *)(x)))
-#define store_bigendian(x,u) (*((uint64_t *)(x)) = Utils::hton((u)))
+#ifdef ZT_NO_TYPE_PUNNING
-#if 0
static uint64 load_bigendian(const unsigned char *x)
{
return
@@ -77,7 +75,13 @@ static void store_bigendian(unsigned char *x,uint64 u)
x[1] = u; u >>= 8;
x[0] = u;
}
-#endif
+
+#else // !ZT_NO_TYPE_PUNNING
+
+#define load_bigendian(x) Utils::ntoh(*((const uint64_t *)(x)))
+#define store_bigendian(x,u) (*((uint64_t *)(x)) = Utils::hton((u)))
+
+#endif // ZT_NO_TYPE_PUNNING
#define SHR(x,c) ((x) >> (c))
#define ROTR(x,c) (((x) >> (c)) | ((x) << (64 - (c))))