masqmail

annotate src/md5/md5.h @ 299:ca2d11aec2a3

fixed compile error; removed PROT_BSMTP; made protocol names ucase Dont know what PROT_BSMTP had been for. It's not used. RFC 5321 requires the protocol to be: Protocol = "ESMTP" / "SMTP" / Attdl-Protocol We now use upper case too, although it might not matter much.
author markus schnalke <meillo@marmaro.de>
date Thu, 09 Dec 2010 13:53:48 -0300
parents e0938c511243
children
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@221 17 /* Note: Using an int will work on most systems and might perform much better */
meillo@210 18 typedef unsigned long MD5_u32plus;
meillo@0 19
meillo@0 20 typedef struct {
meillo@209 21 MD5_u32plus lo, hi;
meillo@209 22 MD5_u32plus a, b, c, d;
meillo@209 23 unsigned char buffer[64];
meillo@209 24 MD5_u32plus block[16];
meillo@0 25 } MD5_CTX;
meillo@0 26
meillo@209 27 extern void MD5_Init(MD5_CTX *ctx);
meillo@209 28 extern void MD5_Update(MD5_CTX *ctx, void *data, unsigned long size);
meillo@209 29 extern void MD5_Final(unsigned char *result, MD5_CTX *ctx);
meillo@209 30
meillo@209 31 #endif