masqmail

annotate src/md5/md5.h @ 392:c5fd796ea06e

Heavy refactoring in parts of conf.c. init_conf() parse_boolean() parse_list_file() Re-arrangement of code. parse_address_glob_list() Removed unneccessary parameter. parse_list() parse_interface(): Use strtok()/strchr() instead of doing is all by hand. Removed limitation of fixed size buffer. eat_comments() Use a state machine. eat_line_trailing() eat_spaces() read_lval() Better structured code. read_conf() read_route() Removed magic numbers. Made all list type in the config files accept pathname entries, except for `permanent_routes' and `query_routes.' for which this is impossible.
author markus schnalke <meillo@marmaro.de>
date Sat, 18 Feb 2012 18:07:55 +0100
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