
#include <stdio.h>
#include <unistd.h>

#include "md5.h"

int main(void)
{
	int i, ret;
	struct MD5Context ctx;
	unsigned char digest[MD5LENGTH];
	unsigned char buf[BUFSIZ];

	MD5Init( &ctx );

	while(!feof(stdin) && !ferror(stdin)) {
		ret = fread(buf, 1, sizeof(buf), stdin);
		if (ret)
			MD5Update( &ctx, buf, ret );
	}

	fclose(stdin);
	MD5Final( digest, &ctx );

	for (i = 0; i < MD5LENGTH; i++)
		printf( "%02x", digest[i] );
	printf("\n");
	return 0;
}
