diff options
Diffstat (limited to 'md5c.c')
| -rw-r--r-- | md5c.c | 28 | 
1 files changed, 15 insertions, 13 deletions
| @@ -21,16 +21,18 @@  #include <string.h>   /* memmove */  #endif +#include <inttypes.h> +  /*   * Note: this code is harmless on little-endian machines.   */  static void byteReverse(unsigned char *buf, unsigned longs)  { -    uint32 t; +    uint32_t t;      do { -	t = (uint32) ((unsigned) buf[3] << 8 | buf[2]) << 16 | +	t = (uint32_t) ((unsigned) buf[3] << 8 | buf[2]) << 16 |  	    ((unsigned) buf[1] << 8 | buf[0]); -	*(uint32 *) buf = t; +	*(uint32_t *) buf = t;  	buf += 4;      } while (--longs);  } @@ -57,12 +59,12 @@ void MD5Init(struct MD5Context *ctx)  void MD5Update(struct MD5Context *ctx, const void *buf_, unsigned len)  {      const unsigned char *buf = (const unsigned char *)buf_; -    register uint32 t; +    register uint32_t t;      /* Update bitcount */      t = ctx->bits[0]; -    if ((ctx->bits[0] = t + ((uint32) len << 3)) < t) +    if ((ctx->bits[0] = t + ((uint32_t) len << 3)) < t)  	ctx->bits[1]++;		/* Carry from low to high */      ctx->bits[1] += len >> 29; @@ -80,7 +82,7 @@ void MD5Update(struct MD5Context *ctx, const void *buf_, unsigned len)  	}  	memmove(p, buf, t);  	byteReverse(ctx->in, 16); -	MD5Transform(ctx->buf, (uint32 *) ctx->in); +	MD5Transform(ctx->buf, (uint32_t *) ctx->in);  	buf += t;  	len -= t;      } @@ -89,7 +91,7 @@ void MD5Update(struct MD5Context *ctx, const void *buf_, unsigned len)      while (len >= 64) {  	memmove(ctx->in, buf, 64);  	byteReverse(ctx->in, 16); -	MD5Transform(ctx->buf, (uint32 *) ctx->in); +	MD5Transform(ctx->buf, (uint32_t *) ctx->in);  	buf += 64;  	len -= 64;      } @@ -124,7 +126,7 @@ void MD5Final(void *digest, struct MD5Context *ctx)  	/* Two lots of padding:  Pad the first block to 64 bytes */  	memset(p, 0, count);  	byteReverse(ctx->in, 16); -	MD5Transform(ctx->buf, (uint32 *) ctx->in); +	MD5Transform(ctx->buf, (uint32_t *) ctx->in);  	/* Now fill the next block with 56 bytes */  	memset(ctx->in, 0, 56); @@ -135,10 +137,10 @@ void MD5Final(void *digest, struct MD5Context *ctx)      byteReverse(ctx->in, 14);      /* Append length in bits and transform */ -    ((uint32 *) ctx->in)[14] = ctx->bits[0]; -    ((uint32 *) ctx->in)[15] = ctx->bits[1]; +    ((uint32_t *) ctx->in)[14] = ctx->bits[0]; +    ((uint32_t *) ctx->in)[15] = ctx->bits[1]; -    MD5Transform(ctx->buf, (uint32 *) ctx->in); +    MD5Transform(ctx->buf, (uint32_t *) ctx->in);      byteReverse((unsigned char *) ctx->buf, 4);      memmove(digest, ctx->buf, 16);      memset(ctx, 0, sizeof(ctx));	/* In case it's sensitive */ @@ -161,9 +163,9 @@ void MD5Final(void *digest, struct MD5Context *ctx)   * reflect the addition of 16 longwords of new data.  MD5Update blocks   * the data and converts bytes into longwords for this routine.   */ -void MD5Transform(uint32 buf[4], uint32 const in[16]) +void MD5Transform(uint32_t buf[4], uint32_t const in[16])  { -    register uint32 a, b, c, d; +    register uint32_t a, b, c, d;      a = buf[0];      b = buf[1]; | 
