aboutsummaryrefslogtreecommitdiffstats
path: root/checksum.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>1996-07-04 10:16:56 +0000
committerAndrew Tridgell <tridge@samba.org>1996-07-04 10:16:56 +0000
commitebb0a6f61826aeaba0aeb1866df41dee8b7c7269 (patch)
tree0711d2363f377c44632f5207cd69db149f2070e2 /checksum.c
parentf94e821c782952437d7fe5a2ae1e0b1db8a4f4ab (diff)
downloadandroid_external_rsync-ebb0a6f61826aeaba0aeb1866df41dee8b7c7269.tar.gz
android_external_rsync-ebb0a6f61826aeaba0aeb1866df41dee8b7c7269.tar.bz2
android_external_rsync-ebb0a6f61826aeaba0aeb1866df41dee8b7c7269.zip
*** empty log message ***
Diffstat (limited to 'checksum.c')
-rw-r--r--checksum.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/checksum.c b/checksum.c
index 1fd1c55c..6be1993e 100644
--- a/checksum.c
+++ b/checksum.c
@@ -19,7 +19,7 @@
#include "rsync.h"
-int csum_length=SUM_LENGTH;
+int csum_length=2; /* initial value */
#define CSUM_CHUNK 64
@@ -37,11 +37,11 @@ uint32 get_checksum1(char *buf,int len)
s1 = s2 = 0;
for (i = 0; i < (len-4); i+=4) {
- s2 += 4*(s1 + buf[i]) + 3*buf[i+1] + 2*buf[i+2] + buf[i+3];
- s1 += (buf[i+0] + buf[i+1] + buf[i+2] + buf[i+3]);
+ s2 += 4*(s1 + buf[i]) + 3*buf[i+1] + 2*buf[i+2] + buf[i+3] + 10;
+ s1 += (buf[i+0] + buf[i+1] + buf[i+2] + buf[i+3] + 4);
}
for (; i < len; i++) {
- s1 += buf[i]; s2 += s1;
+ s1 += (buf[i]+1); s2 += s1;
}
return (s1 & 0xffff) + (s2 << 16);
}