1 | /* |
2 | +----------------------------------------------------------------------+ |
3 | | PHP Version 5 | |
4 | +----------------------------------------------------------------------+ |
5 | | Copyright (c) 1997-2015 The PHP Group | |
6 | +----------------------------------------------------------------------+ |
7 | | This source file is subject to version 3.01 of the PHP license, | |
8 | | that is bundled with this package in the file LICENSE, and is | |
9 | | available through the world-wide-web at the following url: | |
10 | | http://www.php.net/license/3_01.txt | |
11 | | If you did not receive a copy of the PHP license and are unable to | |
12 | | obtain it through the world-wide-web, please send a note to | |
13 | | license@php.net so we can mail you a copy immediately. | |
14 | +----------------------------------------------------------------------+ |
15 | | Author: Alexander Peslyak (Solar Designer) <solar at openwall.com> | |
16 | | Rasmus Lerdorf <rasmus@lerdorf.on.ca> | |
17 | +----------------------------------------------------------------------+ |
18 | */ |
19 | |
20 | /* $Id$ */ |
21 | |
22 | #ifndef MD5_H |
23 | #define MD5_H |
24 | |
25 | PHPAPI void make_digest(char *md5str, const unsigned char *digest); |
26 | PHPAPI void make_digest_ex(char *md5str, const unsigned char *digest, int len); |
27 | |
28 | PHP_NAMED_FUNCTION(php_if_md5); |
29 | PHP_NAMED_FUNCTION(php_if_md5_file); |
30 | |
31 | #include "ext/standard/basic_functions.h" |
32 | |
33 | /* |
34 | * This is an OpenSSL-compatible implementation of the RSA Data Security, |
35 | * Inc. MD5 Message-Digest Algorithm (RFC 1321). |
36 | * |
37 | * Written by Solar Designer <solar at openwall.com> in 2001, and placed |
38 | * in the public domain. There's absolutely no warranty. |
39 | * |
40 | * See md5.c for more information. |
41 | */ |
42 | |
43 | /* MD5 context. */ |
44 | typedef struct { |
45 | php_uint32 lo, hi; |
46 | php_uint32 a, b, c, d; |
47 | unsigned char buffer[64]; |
48 | php_uint32 block[16]; |
49 | } PHP_MD5_CTX; |
50 | |
51 | PHPAPI void PHP_MD5Init(PHP_MD5_CTX *ctx); |
52 | PHPAPI void PHP_MD5Update(PHP_MD5_CTX *ctx, const void *data, size_t size); |
53 | PHPAPI void PHP_MD5Final(unsigned char *result, PHP_MD5_CTX *ctx); |
54 | |
55 | #endif |
56 | |