Mercurial > hg > xmms-sid
diff src/xs_support.h @ 771:469b341734b2
Move MD5 implementation into xs_support, and some related Audacious
ifdeffery too.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Tue, 06 Nov 2012 11:23:58 +0200 |
parents | 61a527ac3baa |
children | 69ab3df105c1 |
line wrap: on
line diff
--- a/src/xs_support.h Tue Nov 06 01:28:10 2012 +0200 +++ b/src/xs_support.h Tue Nov 06 11:23:58 2012 +0200 @@ -63,6 +63,33 @@ #endif +/* Typedefs + */ +#ifdef AUDACIOUS_PLUGIN +#include <audacious/audutil.h> +#define XS_MD5HASH_LENGTH AUD_MD5HASH_LENGTH +#define XS_MD5HASH_LENGTH_CH AUD_MD5HASH_LENGTH_CH +#define xs_md5hash_t aud_md5hash_t +#define xs_md5state_t aud_md5state_t +#define xs_md5_init aud_md5_init +#define xs_md5_append aud_md5_append +#define xs_md5_finish aud_md5_finish +#else + +typedef struct md5_state_s { + guint32 bits[2]; /* message length in bits, lsw first */ + guint32 buf[4]; /* digest buffer */ + guint8 in[64]; /* accumulate block */ +} xs_md5state_t; + +#define XS_MD5HASH_LENGTH (16) +#define XS_MD5HASH_LENGTH_CH (XS_MD5HASH_LENGTH * 2) + +typedef guint8 xs_md5hash_t[XS_MD5HASH_LENGTH]; + +#endif /* AUDACIOUS_PLUGIN */ + + /* VFS replacement functions */ #ifdef __AUDACIOUS_NEWVFS__ @@ -101,6 +128,12 @@ void xs_findnum(const gchar *, size_t *); +#ifdef AUDACIOUS_PLUGIN +void xs_md5_init(xs_md5state_t *ctx); +void xs_md5_append(xs_md5state_t *ctx, const guint8 *buf, guint len); +void xs_md5_finish(xs_md5state_t *ctx, xs_md5hash_t digest); +#endif + #ifdef __cplusplus } #endif