]> git.ipfire.org Git - thirdparty/squid.git/blob - lib/md5-test.c
merge from trunk r12441
[thirdparty/squid.git] / lib / md5-test.c
1 /*
2 * COMPILE WITH:
3 * gcc -Wall md5-test.c -I../include md5.o
4 */
5
6 #include "squid.h"
7 #include "md5.h"
8 #include "stdio.h"
9
10 static void MDPrint(unsigned char digest[16]);
11 static void MDString(char *string);
12
13 static void
14 MDString(char *string)
15 {
16 MD5_CTX context;
17 unsigned char digest[16];
18 unsigned int len = strlen(string);
19 xMD5Init(&context);
20 xMD5Update(&context, string, len);
21 xMD5Final(digest, &context);
22 printf("MD5 (\"%s\") = ", string);
23 MDPrint(digest);
24 printf("\n");
25 }
26
27 static void
28 MDPrint(unsigned char digest[16])
29 {
30 unsigned int i;
31 for (i = 0; i < 16; i++)
32 printf("%02x", digest[i]);
33 }
34
35 int
36 main(int argc, char **argv)
37 {
38 printf("MD5 test suite:\n");
39 MDString("");
40 MDString("a");
41 MDString("abc");
42 MDString("message digest");
43 MDString("abcdefghijklmnopqrstuvwxyz");
44 MDString("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789");
45 MDString("1234567890123456789012345678901234567890"
46 "1234567890123456789012345678901234567890");
47 return 0;
48 }