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.zip
rockbox-aa97e4d4981d61808a558c5ab36be6d3bcc2c4f6.tar.gz
rockbox-aa97e4d4981d61808a558c5ab36be6d3bcc2c4f6.tar.bz2
rockbox-aa97e4d4981d61808a558c5ab36be6d3bcc2c4f6.tar.xz
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 0000000..e853260
--- /dev/null
+++ b/apps/codecs/libFLAC/include/private/md5.h
@@ -0,0 +1,54 @@
+/*
+ * This is the header file for the MD5 message-digest algorithm.
+ * The algorithm is due to Ron Rivest. This code was
+ * written by Colin Plumb in 1993, no copyright is claimed.
+ * This code is in the public domain; do with it what you wish.
+ *
+ * Equivalent code is available from RSA Data Security, Inc.
+ * This code has been tested against that, and is equivalent,
+ * except that you don't need to include two pages of legalese
+ * with every copy.
+ *
+ * To compute the message digest of a chunk of bytes, declare an
+ * MD5Context structure, pass it to MD5Init, call MD5Update as
+ * needed on buffers full of bytes, and then call MD5Final, which
+ * will fill a supplied 16-byte array with the digest.
+ *
+ * Changed so as no longer to depend on Colin Plumb's `usual.h'
+ * header definitions; now uses stuff from dpkg's config.h
+ * - Ian Jackson <ijackson@nyx.cs.du.edu>.
+ * Still in the public domain.
+ *
+ * Josh Coalson: made some changes to integrate with libFLAC.
+ * Still in the public domain.
+ */
+
+#ifndef FLAC__PRIVATE__MD5_H
+#define FLAC__PRIVATE__MD5_H
+
+#define md5byte unsigned char
+
+/*
+ * Due to an unholy abomination in libOggFLAC (it requires access to
+ * these internal MD5 functions) we have to #include "FLAC/export.h"
+ * and export them when building a DLL
+ */
+#include "FLAC/export.h"
+#include "FLAC/ordinals.h"
+
+struct FLAC__MD5Context {
+ FLAC__uint32 buf[4];
+ FLAC__uint32 bytes[2];
+ FLAC__uint32 in[16];
+ FLAC__byte *internal_buf;
+ unsigned capacity;
+};
+
+FLAC_API void FLAC__MD5Init(struct FLAC__MD5Context *context);
+FLAC_API void FLAC__MD5Update(struct FLAC__MD5Context *context, md5byte const *buf, unsigned len);
+FLAC_API void FLAC__MD5Final(md5byte digest[16], struct FLAC__MD5Context *context);
+void FLAC__MD5Transform(FLAC__uint32 buf[4], FLAC__uint32 const in[16]);
+
+FLAC_API FLAC__bool FLAC__MD5Accumulate(struct FLAC__MD5Context *ctx, const FLAC__int32 * const signal[], unsigned channels, unsigned samples, unsigned bytes_per_sample);
+
+#endif /* !MD5_H */