masqmail

annotate src/md5/md5.h @ 210:e0938c511243

we need at least 32 bits, so let's take a long Solar Designer explained to me that it was int for better performance
author meillo@marmaro.de
date Sun, 18 Jul 2010 22:02:54 +0200
parents 10da50168dab
children 8742d2cee364
rev   line source
meillo@209 1 /*
meillo@209 2 * This is an OpenSSL-compatible implementation of the RSA Data Security,
meillo@209 3 * Inc. MD5 Message-Digest Algorithm (RFC 1321).
meillo@209 4 *
meillo@209 5 * Written by Solar Designer <solar at openwall.com> in 2001, and placed
meillo@209 6 * in the public domain. There's absolutely no warranty.
meillo@209 7 *
meillo@209 8 * See md5.c for more information.
meillo@0 9 */
meillo@0 10
meillo@209 11 #ifdef HAVE_OPENSSL
meillo@209 12 #include <openssl/md5.h>
meillo@209 13 #elif !defined(_MD5_H)
meillo@209 14 #define _MD5_H
meillo@0 15
meillo@209 16 /* Any 32-bit or wider unsigned integer data type will do */
meillo@210 17 typedef unsigned long MD5_u32plus;
meillo@0 18
meillo@0 19 typedef struct {
meillo@209 20 MD5_u32plus lo, hi;
meillo@209 21 MD5_u32plus a, b, c, d;
meillo@209 22 unsigned char buffer[64];
meillo@209 23 MD5_u32plus block[16];
meillo@0 24 } MD5_CTX;
meillo@0 25
meillo@209 26 extern void MD5_Init(MD5_CTX *ctx);
meillo@209 27 extern void MD5_Update(MD5_CTX *ctx, void *data, unsigned long size);
meillo@209 28 extern void MD5_Final(unsigned char *result, MD5_CTX *ctx);
meillo@209 29
meillo@209 30 #endif