summaryrefslogtreecommitdiff
path: root/apps/codecs/libFLAC/include/private/md5.h
diff options
context:
space:
mode:
authorDave Chapman <dave@dchapman.com>2005-02-16 19:33:19 +0000
committerDave Chapman <dave@dchapman.com>2005-02-16 19:33:19 +0000
commitaa97e4d4981d61808a558c5ab36be6d3bcc2c4f6 (patch)
treea66b2fcd87f37b26e2d4f360e6c2a9db53eb1b5b /apps/codecs/libFLAC/include/private/md5.h
parent9b32a1988f848145d96ba2be8cba86e837196df3 (diff)
downloadrockbox-aa97e4d4981d61808a558c5ab36be6d3bcc2c4f6.tar.gz
rockbox-aa97e4d4981d61808a558c5ab36be6d3bcc2c4f6.zip
Initial import of libFLAC from flac-1.1.2.tar.gz
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5983 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/libFLAC/include/private/md5.h')
-rw-r--r--apps/codecs/libFLAC/include/private/md5.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/apps/codecs/libFLAC/include/private/md5.h b/apps/codecs/libFLAC/include/private/md5.h
new file mode 100644
index 0000000000..e85326015f
--- /dev/null
+++ b/apps/codecs/libFLAC/include/private/md5.h
@@ -0,0 +1,54 @@
1/*
2 * This is the header file for the MD5 message-digest algorithm.
3 * The algorithm is due to Ron Rivest. This code was
4 * written by Colin Plumb in 1993, no copyright is claimed.
5 * This code is in the public domain; do with it what you wish.
6 *
7 * Equivalent code is available from RSA Data Security, Inc.
8 * This code has been tested against that, and is equivalent,
9 * except that you don't need to include two pages of legalese
10 * with every copy.
11 *
12 * To compute the message digest of a chunk of bytes, declare an
13 * MD5Context structure, pass it to MD5Init, call MD5Update as
14 * needed on buffers full of bytes, and then call MD5Final, which
15 * will fill a supplied 16-byte array with the digest.
16 *
17 * Changed so as no longer to depend on Colin Plumb's `usual.h'
18 * header definitions; now uses stuff from dpkg's config.h
19 * - Ian Jackson <ijackson@nyx.cs.du.edu>.
20 * Still in the public domain.
21 *
22 * Josh Coalson: made some changes to integrate with libFLAC.
23 * Still in the public domain.
24 */
25
26#ifndef FLAC__PRIVATE__MD5_H
27#define FLAC__PRIVATE__MD5_H
28
29#define md5byte unsigned char
30
31/*
32 * Due to an unholy abomination in libOggFLAC (it requires access to
33 * these internal MD5 functions) we have to #include "FLAC/export.h"
34 * and export them when building a DLL
35 */
36#include "FLAC/export.h"
37#include "FLAC/ordinals.h"
38
39struct FLAC__MD5Context {
40 FLAC__uint32 buf[4];
41 FLAC__uint32 bytes[2];
42 FLAC__uint32 in[16];
43 FLAC__byte *internal_buf;
44 unsigned capacity;
45};
46
47FLAC_API void FLAC__MD5Init(struct FLAC__MD5Context *context);
48FLAC_API void FLAC__MD5Update(struct FLAC__MD5Context *context, md5byte const *buf, unsigned len);
49FLAC_API void FLAC__MD5Final(md5byte digest[16], struct FLAC__MD5Context *context);
50void FLAC__MD5Transform(FLAC__uint32 buf[4], FLAC__uint32 const in[16]);
51
52FLAC_API FLAC__bool FLAC__MD5Accumulate(struct FLAC__MD5Context *ctx, const FLAC__int32 * const signal[], unsigned channels, unsigned samples, unsigned bytes_per_sample);
53
54#endif /* !MD5_H */