]> Savannah Git Hosting - gnulib.git/commitdiff
crypto: use byteswap
authorPaul Eggert <eggert@cs.ucla.edu>
Sun, 17 Jun 2018 21:35:37 +0000 (14:35 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Sun, 17 Jun 2018 21:38:05 +0000 (14:38 -0700)
* lib/md4.c, lib/md5.c, lib/sha1.c, lib/sha256.c, lib/sha512.c:
* lib/sm3.c: Include <byteswap.h>.
(SWAP): Use its macros rather than reinventing the wheel.
* modules/crypto/md4, modules/crypto/md5-buffer:
* modules/crypto/sha1-buffer, modules/crypto/sha256-buffer:
* modules/crypto/sha512-buffer, modules/crypto/sm3:
(Depends-on): Add byteswap.

13 files changed:
ChangeLog
lib/md4.c
lib/md5.c
lib/sha1.c
lib/sha256.c
lib/sha512.c
lib/sm3.c
modules/crypto/md4
modules/crypto/md5-buffer
modules/crypto/sha1-buffer
modules/crypto/sha256-buffer
modules/crypto/sha512-buffer
modules/crypto/sm3

index 8f99c167fdb1a8b0e7670cb59bc8690c62fcff87..1bda21b2756df2c4af60b8647ad2f1cbc99420d1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2018-06-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       crypto: use byteswap
+       * lib/md4.c, lib/md5.c, lib/sha1.c, lib/sha256.c, lib/sha512.c:
+       * lib/sm3.c: Include <byteswap.h>.
+       (SWAP): Use its macros rather than reinventing the wheel.
+       * modules/crypto/md4, modules/crypto/md5-buffer:
+       * modules/crypto/sha1-buffer, modules/crypto/sha256-buffer:
+       * modules/crypto/sha512-buffer, modules/crypto/sm3:
+       (Depends-on): Add byteswap.
+
 2018-06-17  Pádraig Brady  <P@draigBrady.com>
 
        gendocs.sh: fix support for legacy --texi2html
index b24ad1ca50f8f475637a610a72b2690add71219b..6474e6387f6ebe89f6b264963ea7ca5dde94724b 100644 (file)
--- a/lib/md4.c
+++ b/lib/md4.c
@@ -33,9 +33,9 @@
 # include "unlocked-io.h"
 #endif
 
+#include <byteswap.h>
 #ifdef WORDS_BIGENDIAN
-# define SWAP(n)                                                        \
-  (((n) << 24) | (((n) & 0xff00) << 8) | (((n) >> 8) & 0xff00) | ((n) >> 24))
+# define SWAP(n) bswap_32 (n)
 #else
 # define SWAP(n) (n)
 #endif
index b276a454585a2a2940a907aeace54ec85cfec139..a9b65b019168fcbc23f37a12c0a79d8cc8994229 100644 (file)
--- a/lib/md5.c
+++ b/lib/md5.c
@@ -52,9 +52,9 @@
 # define md5_buffer __md5_buffer
 #endif
 
+#include <byteswap.h>
 #ifdef WORDS_BIGENDIAN
-# define SWAP(n)                                                        \
-    (((n) << 24) | (((n) & 0xff00) << 8) | (((n) >> 8) & 0xff00) | ((n) >> 24))
+# define SWAP(n) bswap_32 (n)
 #else
 # define SWAP(n) (n)
 #endif
index bb370f3ff4727b50f93dea3ae487fccb7d8b5f92..6cfd6c6f37ae98b2df2d5fc9dd67dc98f1647780 100644 (file)
 # include "unlocked-io.h"
 #endif
 
+#include <byteswap.h>
 #ifdef WORDS_BIGENDIAN
 # define SWAP(n) (n)
 #else
-# define SWAP(n) \
-    (((n) << 24) | (((n) & 0xff00) << 8) | (((n) >> 8) & 0xff00) | ((n) >> 24))
+# define SWAP(n) bswap_32 (n)
 #endif
 
 #define BLOCKSIZE 32768
index a036befcafd114c2181b9e99590cd5aed61b50b5..d45cd184cbc38a5378921b94d6c299f8b5757d41 100644 (file)
 # include "unlocked-io.h"
 #endif
 
+#include <byteswap.h>
 #ifdef WORDS_BIGENDIAN
 # define SWAP(n) (n)
 #else
-# define SWAP(n) \
-    (((n) << 24) | (((n) & 0xff00) << 8) | (((n) >> 8) & 0xff00) | ((n) >> 24))
+# define SWAP(n) bswap_32 (n)
 #endif
 
 #define BLOCKSIZE 32768
index e175e705f5210359a44bb47763dd5a2cdec3f585..503a54fe8ae417e2539f4c2330cfcd8da4fac666 100644 (file)
 # include "unlocked-io.h"
 #endif
 
+#include <byteswap.h>
 #ifdef WORDS_BIGENDIAN
 # define SWAP(n) (n)
 #else
-# define SWAP(n) \
-    u64or (u64or (u64or (u64shl (n, 56),                                \
-                         u64shl (u64and (n, u64lo (0x0000ff00)), 40)),  \
-                  u64or (u64shl (u64and (n, u64lo (0x00ff0000)), 24),   \
-                         u64shl (u64and (n, u64lo (0xff000000)),  8))), \
-           u64or (u64or (u64and (u64shr (n,  8), u64lo (0xff000000)),   \
-                         u64and (u64shr (n, 24), u64lo (0x00ff0000))),  \
-                  u64or (u64and (u64shr (n, 40), u64lo (0x0000ff00)),   \
-                         u64shr (n, 56))))
+# define SWAP(n) bswap_64 (n)
 #endif
 
 #define BLOCKSIZE 32768
index 383028073c212b0e3971bd56515ee1881435314e..f82a74a6055ce00c773887c055610e5dccbe2f30 100644 (file)
--- a/lib/sm3.c
+++ b/lib/sm3.c
 # define dbg_printf printf
 #endif
 
+#include <byteswap.h>
 #ifdef WORDS_BIGENDIAN
 # define SWAP(n) (n)
 #else
-# define SWAP(n) \
-    (((n) << 24) | (((n) & 0xff00) << 8) | (((n) >> 8) & 0xff00) | ((n) >> 24))
+# define SWAP(n) bswap_32 (n)
 #endif
 
 #define BLOCKSIZE 32768
index e0b2b0443a10d318baba8ead68c48b9f0a81df42..03d28e971d33c04379c6293f01d7ca0225aad7bd 100644 (file)
@@ -7,6 +7,7 @@ lib/md4.c
 m4/md4.m4
 
 Depends-on:
+byteswap
 stdalign
 stdint
 
index e5fb39cedf80e7802dd3d0ac03c28126ac8405bf..006bc81a4e71abeec72b39249bfcef1e8f24a972 100644 (file)
@@ -9,6 +9,7 @@ m4/gl-openssl.m4
 m4/md5.m4
 
 Depends-on:
+byteswap
 extern-inline
 stdalign
 stdint
index d65f9941813a22f06375f82e64275511bc26cb1a..807f2dcc0b2bcd17bd04bf699257826dc40a2b1c 100644 (file)
@@ -9,6 +9,7 @@ m4/gl-openssl.m4
 m4/sha1.m4
 
 Depends-on:
+byteswap
 extern-inline
 stdalign
 stdint
index 37fabfd905fca35b8a10ead90199e39624c16c91..e5a4703ec0c48833acde660c2bed6231015b1a58 100644 (file)
@@ -9,6 +9,7 @@ m4/gl-openssl.m4
 m4/sha256.m4
 
 Depends-on:
+byteswap
 extern-inline
 stdalign
 stdint
index 4c97604cdebad81f3231e354c2a6e571570a1ca5..32170a9a8a9929603078fe5079aa97a1c882b57a 100644 (file)
@@ -9,6 +9,7 @@ m4/gl-openssl.m4
 m4/sha512.m4
 
 Depends-on:
+byteswap
 extern-inline
 stdalign
 stdint
index b6206244419ddb1d1250e53e5d256c3f1b2e7a04..007fbc46f664fd534c753718cf23a1864789b4c5 100644 (file)
@@ -7,6 +7,7 @@ lib/sm3.c
 m4/sm3.m4
 
 Depends-on:
+byteswap
 extern-inline
 stdalign
 stdint