00001 00005 #ifndef AUDACIOUS_MD5_H 00006 #define AUDACIOUS_MD5_H 00007 00008 #include <glib.h> 00009 00010 G_BEGIN_DECLS 00011 00013 typedef struct { 00014 guint32 bits[2]; 00015 guint32 buf[4]; 00016 guint8 in[64]; 00017 } aud_md5state_t; 00018 00020 #define AUD_MD5HASH_LENGTH (16) 00021 00023 #define AUD_MD5HASH_LENGTH_CH (AUD_MD5HASH_LENGTH * 2) 00024 00026 typedef guint8 aud_md5hash_t[AUD_MD5HASH_LENGTH]; 00027 00028 00029 void aud_md5_init(aud_md5state_t *ctx); 00030 void aud_md5_append(aud_md5state_t *ctx, const guint8 *buf, guint len); 00031 void aud_md5_finish(aud_md5state_t *ctx, aud_md5hash_t digest); 00032 00033 00034 G_END_DECLS 00035 00036 #endif /* AUDACIOUS_MD5_H */