X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fsrc%2Fauths%2Fmd5.c;h=0536feefb33829c8f85f664747fa8696fc37e5fe;hb=37942ad83fcb6b788cceb4abe2891c92651811a7;hp=2385383f5bce4b82b67a8152555e3637721a58f9;hpb=0a49a7a4f1090b6f1ce1d0f9d969804c9226b53e;p=user%2Fhenk%2Fcode%2Fexim.git diff --git a/src/src/auths/md5.c b/src/src/auths/md5.c index 2385383f5..0536feefb 100644 --- a/src/src/auths/md5.c +++ b/src/src/auths/md5.c @@ -1,10 +1,8 @@ -/* $Cambridge: exim/src/src/auths/md5.c,v 1.5 2009/11/16 19:50:38 nm4 Exp $ */ - /************************************************* * Exim - an Internet mail transport agent * *************************************************/ -/* Copyright (c) University of Cambridge 1995 - 2009 */ +/* Copyright (c) University of Cambridge 1995 - 2018 */ /* See the file NOTICE for conditions of use and distribution. */ #ifndef STAND_ALONE @@ -67,14 +65,13 @@ register unsigned int a = base->abcd[0]; register unsigned int b = base->abcd[1]; register unsigned int c = base->abcd[2]; register unsigned int d = base->abcd[3]; -int i; unsigned int X[16]; base->length += 64; /* Load the 64 bytes into a set of working integers, treating them as 32-bit numbers in little-endian order. */ -for (i = 0; i < 16; i++) +for (int i = 0; i < 16; i++) { X[i] = (unsigned int)(text[0]) | ((unsigned int)(text[1]) << 8) | @@ -233,7 +230,6 @@ Returns: nothing void md5_end(md5 *base, const uschar *text, int length, uschar *digest) { -int i; uschar work[64]; /* Process in chunks of 64 until we have less than 64 bytes left. */ @@ -286,7 +282,7 @@ md5_mid(base, work); /* Pass back the result, low-order byte first in each word. */ -for (i = 0; i < 4; i++) +for (int i = 0; i < 4; i++) { register int x = base->abcd[i]; *digest++ = x & 0xff; @@ -336,19 +332,18 @@ int main(void) { md5 base; int i = 0x01020304; -uschar *ctest = (uschar *)(&i); +uschar *ctest = US (&i); uschar buffer[256]; uschar digest[16]; printf("Checking md5: %s-endian\n", (ctest[0] == 0x04)? "little" : "big"); for (i = 0; i < sizeof(tests)/sizeof(uschar *); i += 2) { - int j; uschar s[33]; printf("%s\nShould be: %s\n", tests[i], tests[i+1]); md5_start(&base); md5_end(&base, tests[i], strlen(tests[i]), digest); - for (j = 0; j < 16; j++) sprintf(s+2*j, "%02x", digest[j]); + for (int j = 0; j < 16; j++) sprintf(s+2*j, "%02x", digest[j]); printf("Computed: %s\n", s); if (strcmp(s, tests[i+1]) != 0) printf("*** No match ***\n"); printf("\n");