[Ffmpeg-cvslog] r8357 - trunk/libavutil/sha1.c

michael subversion
Mon Mar 12 22:29:39 CET 2007


Author: michael
Date: Mon Mar 12 22:29:39 2007
New Revision: 8357

Modified:
   trunk/libavutil/sha1.c

Log:
make count count bytes not bits (this is simpler and leads to a very slightly smaller object file)


Modified: trunk/libavutil/sha1.c
==============================================================================
--- trunk/libavutil/sha1.c	(original)
+++ trunk/libavutil/sha1.c	Mon Mar 12 22:29:39 2007
@@ -73,8 +73,8 @@ void av_sha1_init(AVSHA1* context){
 void av_sha1_update(AVSHA1* context, uint8_t* data, unsigned int len){
     unsigned int i, j;
 
-    j = (context->count >> 3) & 63;
-    context->count += len << 3;
+    j = context->count & 63;
+    context->count += len;
     if ((j + len) > 63) {
         memcpy(&context->buffer[j], data, (i = 64-j));
         transform(context->state, context->buffer);
@@ -88,10 +88,10 @@ void av_sha1_update(AVSHA1* context, uin
 
 void av_sha1_final(AVSHA1* context, uint8_t digest[20]){
     int i;
-    uint64_t finalcount= be2me_64(context->count);
+    uint64_t finalcount= be2me_64(context->count<<3);
 
     av_sha1_update(context, "\200", 1);
-    while ((context->count & 504) != 448) {
+    while ((context->count & 63) != 56) {
         av_sha1_update(context, "\0", 1);
     }
     av_sha1_update(context, &finalcount, 8);  /* Should cause a transform() */




More information about the ffmpeg-cvslog mailing list