#include <glib.h>
-struct MD5Context {
- guint32 buf[4];
- guint32 bits[2];
- guchar in[64];
- gint doByteReverse;
-};
-
-
-/* raw routines */
-void md5_init(MD5Context *ctx);
-void md5_update(MD5Context *ctx, const guchar *buf, guint32 len);
-void md5_final(MD5Context *ctx, guchar digest[16]);
-
/**
- * @headerfile md5_get_digest
- * generate digest from memory buffer
+ * @headerfile md5_get_string
+ * generate digest from memory buffer as a hexadecimal string
*/
-void md5_get_digest(const guchar *buffer, gint buffer_size, guchar digest[16]);
+gchar *md5_get_string(const guchar *buffer, gint buffer_size);
/**
* @headerfile md5_get_digest_from_file
*/
gboolean md5_get_digest_from_file(const gchar *path, guchar digest[16]);
+/**
+ * @headerfile md5_get_string_from_file
+ * generate digest from file as a hexadecimal string
+ */
+gchar *md5_get_string_from_file(const gchar *path);
+
/**
* @headerfile md5_digest_to_text
* convert digest to a NULL terminated text string, in ascii encoding
*/
-gchar *md5_digest_to_text(guchar digest[16]);
+gchar *md5_digest_to_text(const guchar digest[16]);
/**
* @headerfile md5_digest_from_text