diff options
Diffstat (limited to 'md5/md5.c')
-rw-r--r-- | md5/md5.c | 5 |
1 files changed, 2 insertions, 3 deletions
@@ -143,13 +143,12 @@ void MD5Final(unsigned char digest[16], MD5_CTX *ctx) byteReverse(ctx->in, 14); /* Append length in bits and transform */ - ((uint32_t *) ctx->in)[14] = ctx->bits[0]; - ((uint32_t *) ctx->in)[15] = ctx->bits[1]; + memcpy(((uint32_t *) ctx->in)+14, ctx->bits, sizeof(uint32_t)*2); MD5Transform(ctx->buf, (uint32_t *) ctx->in); byteReverse((unsigned char *)ctx->buf, 4); memcpy(digest, ctx->buf, 16); - memset((char *)ctx, 0, sizeof(ctx)); /* In case it's sensitive */ + memset((char *)ctx, 0, sizeof(*ctx)); /* In case it's sensitive */ } /* The four core functions - F1 is optimized somewhat */ |