|
|
1.1 root 1: /* md5.h - header file for md5.c */
2:
3: /* $Id: md5.h,v 1.5 2004/09/23 19:09:53 rswindell Exp $ */
4:
5: /* RSA Data Security, Inc., MD5 Message-Digest Algorithm */
6:
7: /* NOTE: Numerous changes have been made; the following notice is
8: included to satisfy legal requirements.
9:
10: Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All
11: rights reserved.
12:
13: License to copy and use this software is granted provided that it
14: is identified as the "RSA Data Security, Inc. MD5 Message-Digest
15: Algorithm" in all material mentioning or referencing this software
16: or this function.
17:
18: License is also granted to make and use derivative works provided
19: that such works are identified as "derived from the RSA Data
20: Security, Inc. MD5 Message-Digest Algorithm" in all material
21: mentioning or referencing the derived work.
22:
23: RSA Data Security, Inc. makes no representations concerning either
24: the merchantability of this software or the suitability of this
25: software for any particular purpose. It is provided "as is"
26: without express or implied warranty of any kind.
27:
28: These notices must be retained in any copies of any part of this
29: documentation and/or software.
30: */
31:
32: #ifndef H__MD5
33: #define H__MD5
34:
35: #include <stddef.h> /* size_t */
36:
37: #define MD5_DIGEST_SIZE 16
38:
39: #ifndef UINT4
40: typedef unsigned long UINT4;
41: #endif
42: #ifndef BYTE
43: typedef unsigned char BYTE;
44: #endif
45:
46: typedef struct
47: {
48: UINT4 state[4];
49: UINT4 count[2];
50: BYTE buffer[64];
51: } MD5;
52:
53: #if defined(_WIN32) && (defined(MD5_IMPORTS) || defined(MD5_EXPORTS))
54: #if defined(MD5_IMPORTS)
55: #define MD5EXPORT __declspec(dllimport)
56: #else
57: #define MD5EXPORT __declspec(dllexport)
58: #endif
59: #if defined(__BORLANDC__)
60: #define MD5CALL __stdcall
61: #else
62: #define MD5CALL
63: #endif
64: #else /* !_WIN32 */
65: #define MD5EXPORT
66: #define MD5CALL
67: #endif
68:
69:
70: #ifdef __cplusplus
71: extern "C" {
72: #endif
73:
74: MD5EXPORT void MD5CALL MD5_open(MD5* ctx);
75: MD5EXPORT void MD5CALL MD5_digest(MD5* ctx, const void* buf, size_t len);
76: MD5EXPORT void MD5CALL MD5_close(MD5* ctx, BYTE digest[MD5_DIGEST_SIZE]);
77: MD5EXPORT BYTE* MD5CALL MD5_calc(BYTE digest[MD5_DIGEST_SIZE], const void* buf, size_t len);
78: MD5EXPORT BYTE* MD5CALL MD5_hex(BYTE* dest, const BYTE digest[MD5_DIGEST_SIZE]);
79:
80: #ifdef __cplusplus
81: }
82: #endif
83:
84: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.