diff options
author | phk <phk@FreeBSD.org> | 1994-07-24 03:29:56 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 1994-07-24 03:29:56 +0000 |
commit | 8a6db7e780b8a8d557ccb4cdc93063a3e97615e4 (patch) | |
tree | b7f9b24556c4de513f7a823cae043af2e8d5a72d /lib/libmd/mddriver.c | |
download | FreeBSD-src-8a6db7e780b8a8d557ccb4cdc93063a3e97615e4.zip FreeBSD-src-8a6db7e780b8a8d557ccb4cdc93063a3e97615e4.tar.gz |
Reviewed by: phk
Imported libmd. This library contains MD2, MD4 and MD5.
These three boggers pop up all over the place all of the time, so I
decided we needed a library with them. In general they are used for
security checks, so if you use them you want to link them static.
Diffstat (limited to 'lib/libmd/mddriver.c')
-rw-r--r-- | lib/libmd/mddriver.c | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/lib/libmd/mddriver.c b/lib/libmd/mddriver.c new file mode 100644 index 0000000..b99e558 --- /dev/null +++ b/lib/libmd/mddriver.c @@ -0,0 +1,65 @@ +/* MDDRIVER.C - test driver for MD2, MD4 and MD5 + * $FreeBSD$ + */ + +/* Copyright (C) 1990-2, RSA Data Security, Inc. Created 1990. All + rights reserved. + + RSA Data Security, Inc. makes no representations concerning either + the merchantability of this software or the suitability of this + software for any particular purpose. It is provided "as is" + without express or implied warranty of any kind. + + These notices must be retained in any copies of any part of this + documentation and/or software. + */ + +/* The following makes MD default to MD5 if it has not already been + defined with C compiler flags. + */ +#ifndef MD +#define MD MD5 +#endif + +#include <stdio.h> +#include <time.h> +#include <string.h> +#if MD == 2 +#include "md2.h" +#define MDData MD2Data +#endif +#if MD == 4 +#include "md4.h" +#define MDData MD4Data +#endif +#if MD == 5 +#include "md5.h" +#define MDData MD5Data +#endif + +/* Digests a string and prints the result. + */ +static void MDString (string) +char *string; +{ + + printf ("MD%d (\"%s\") = %s\n", MD, string, MDData(string,strlen(string))); +} + +/* Digests a reference suite of strings and prints the results. + */ +main() +{ + printf ("MD%d test suite:\n", MD); + + MDString (""); + MDString ("a"); + MDString ("abc"); + MDString ("message digest"); + MDString ("abcdefghijklmnopqrstuvwxyz"); + MDString + ("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"); + MDString + ("1234567890123456789012345678901234567890\ +1234567890123456789012345678901234567890"); +} |