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