Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
4349 | Serge | 1 | /* |
2 | * This is an OpenSSL-compatible implementation of the RSA Data Security, Inc. |
||
3 | * MD5 Message-Digest Algorithm (RFC 1321). |
||
4 | * |
||
5 | * Homepage: |
||
6 | * http://openwall.info/wiki/people/solar/software/public-domain-source-code/md5 |
||
7 | * |
||
8 | * Author: |
||
9 | * Alexander Peslyak, better known as Solar Designer |
||
10 | * |
||
11 | * This software was written by Alexander Peslyak in 2001. No copyright is |
||
12 | * claimed, and the software is hereby placed in the public domain. |
||
13 | * In case this attempt to disclaim copyright and place the software in the |
||
14 | * public domain is deemed null and void, then the software is |
||
15 | * Copyright (c) 2001 Alexander Peslyak and it is hereby released to the |
||
16 | * general public under the following terms: |
||
17 | * |
||
18 | * Redistribution and use in source and binary forms, with or without |
||
19 | * modification, are permitted. |
||
20 | * |
||
21 | * There's ABSOLUTELY NO WARRANTY, express or implied. |
||
22 | * |
||
23 | * See md5.c for more information. |
||
24 | */ |
||
25 | |||
26 | #ifdef HAVE_OPENSSL |
||
27 | #include |
||
28 | #elif !defined(_MD5_H) |
||
29 | #define _MD5_H |
||
30 | |||
31 | /* Any 32-bit or wider unsigned integer data type will do */ |
||
32 | typedef unsigned int MD5_u32plus; |
||
33 | |||
34 | typedef struct { |
||
35 | MD5_u32plus lo, hi; |
||
36 | MD5_u32plus a, b, c, d; |
||
37 | unsigned char buffer[64]; |
||
38 | MD5_u32plus block[16]; |
||
39 | } MD5_CTX; |
||
40 | |||
41 | extern void MD5_Init(MD5_CTX *ctx); |
||
42 | extern void MD5_Update(MD5_CTX *ctx, void *data, unsigned long size); |
||
43 | extern void MD5_Final(unsigned char *result, MD5_CTX *ctx); |
||
44 | |||
45 | #endif |