X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=libbb%2Fsha1.c;h=552dcad8070c964da147974f2607e24c31a33c9a;hb=d21f596ddb294bdb65623ba1d0e49b17d0829229;hp=a86218b25662c703c5a2dbdbb23a4ee80b201d4b;hpb=9213a9e0f2d8fd638ecd02e2628d96dd5c7d233e;p=oweals%2Fbusybox.git diff --git a/libbb/sha1.c b/libbb/sha1.c index a86218b25..552dcad80 100644 --- a/libbb/sha1.c +++ b/libbb/sha1.c @@ -16,37 +16,30 @@ * stored in memory. It runs at 22 cycles per byte on a Pentium P4 processor */ -#include -#include -#include -#include -#include -#include -#include - #include "libbb.h" -# define SHA1_BLOCK_SIZE 64 -# define SHA1_DIGEST_SIZE 20 -# define SHA1_HASH_SIZE SHA1_DIGEST_SIZE -# define SHA2_GOOD 0 -# define SHA2_BAD 1 +#define SHA1_BLOCK_SIZE 64 +#define SHA1_DIGEST_SIZE 20 +#define SHA1_HASH_SIZE SHA1_DIGEST_SIZE +#define SHA2_GOOD 0 +#define SHA2_BAD 1 -# define rotl32(x,n) (((x) << n) | ((x) >> (32 - n))) +#define rotl32(x,n) (((x) << n) | ((x) >> (32 - n))) -# define SHA1_MASK (SHA1_BLOCK_SIZE - 1) +#define SHA1_MASK (SHA1_BLOCK_SIZE - 1) /* reverse byte order in 32-bit words */ -#define ch(x,y,z) ((z) ^ ((x) & ((y) ^ (z)))) -#define parity(x,y,z) ((x) ^ (y) ^ (z)) -#define maj(x,y,z) (((x) & (y)) | ((z) & ((x) | (y)))) +#define ch(x,y,z) ((z) ^ ((x) & ((y) ^ (z)))) +#define parity(x,y,z) ((x) ^ (y) ^ (z)) +#define maj(x,y,z) (((x) & (y)) | ((z) & ((x) | (y)))) /* A normal version as set out in the FIPS. This version uses */ /* partial loop unrolling and is optimised for the Pentium 4 */ -# define rnd(f,k) \ - t = a; a = rotl32(a,5) + f(b,c,d) + e + k + w[i]; \ - e = d; d = c; c = rotl32(b, 30); b = t - +#define rnd(f,k) \ + do { \ + t = a; a = rotl32(a,5) + f(b,c,d) + e + k + w[i]; \ + e = d; d = c; c = rotl32(b, 30); b = t; \ + } while (0) static void sha1_compile(sha1_ctx_t *ctx) { @@ -160,7 +153,7 @@ void *sha1_end(void *resbuf, sha1_ctx_t *ctx) ctx->wbuf[cnt++] = 0; /* assemble the eight byte counter in the buffer in big-endian */ - /* format */ + /* format */ ctx->wbuf[14] = htonl((ctx->count[1] << 3) | (ctx->count[0] >> 29)); ctx->wbuf[15] = htonl(ctx->count[0] << 3); @@ -175,5 +168,3 @@ void *sha1_end(void *resbuf, sha1_ctx_t *ctx) return resbuf; } - -