X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Futils%2Fmono-sha1.c;h=ab96e29986d0da3e6599d59b85e330c022100518;hb=8c30681105db63b4695f2c2b3e31ec3d694cf973;hp=21ef6dbdd2853aa45cac6823cdadfb82ad430a2e;hpb=7f449e7aff8f374d13db7023c7b326dde01b763d;p=mono.git diff --git a/mono/utils/mono-sha1.c b/mono/utils/mono-sha1.c index 21ef6dbdd28..ab96e29986d 100644 --- a/mono/utils/mono-sha1.c +++ b/mono/utils/mono-sha1.c @@ -76,9 +76,6 @@ A million repetitions of "a" #include "mono-digest.h" -typedef gint32 int32; -typedef guint32 uint32; - /* #include */ /* prototype for exit() - JHB */ /* Using return() instead of exit() - SWR */ @@ -122,10 +119,10 @@ static void SHAPrintContext(MonoSHA1Context *context, char *msg){ static void SHA1Transform(guint32 state[5], const guchar buffer[64]) { -uint32 a, b, c, d, e; +guint32 a, b, c, d, e; typedef union { unsigned char c[64]; - uint32 l[16]; + guint32 l[16]; } CHAR64LONG16; CHAR64LONG16* block; #ifdef SHA1HANDSOFF @@ -192,7 +189,7 @@ void mono_sha1_init(MonoSHA1Context* context) void mono_sha1_update(MonoSHA1Context* context, const guchar* data, guint32 len) /* JHB */ { -uint32 i, j; /* JHB */ +guint32 i, j; /* JHB */ #ifdef VERBOSE SHAPrintContext(context, "before"); @@ -220,7 +217,7 @@ uint32 i, j; /* JHB */ void mono_sha1_final( MonoSHA1Context* context, unsigned char digest[20]) { -uint32 i; /* JHB */ +guint32 i; /* JHB */ unsigned char finalcount[8]; for (i = 0; i < 8; i++) { @@ -249,7 +246,7 @@ unsigned char finalcount[8]; } void -mono_sha1_get_digest (const gchar *buffer, gint buffer_size, guchar digest [20]) +mono_sha1_get_digest (const guchar *buffer, gint buffer_size, guchar digest [20]) { MonoSHA1Context ctx; @@ -259,6 +256,16 @@ mono_sha1_get_digest (const gchar *buffer, gint buffer_size, guchar digest [20]) } +/** + * mono_sha1_get_digest_from_file: get the sha1 hash of a file + * @filename: file name + * @digest: 20 bytes buffer receiving the hash code. + * + * Get the sha1 hash of a file. The result is put in + * the 20 bytes buffer @digest . + * + * If an IO error happens the value in @digest is not updated. + **/ void mono_sha1_get_digest_from_file (const gchar *filename, guchar digest [20]) {