Matt McCutchen's Web Site
/
rsync
/
rsync.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added maybe_log_item() for use by the sender and receiver.
[rsync/rsync.git]
/
lib
/
mdfour.c
diff --git
a/lib/mdfour.c
b/lib/mdfour.c
index
8e06bdb
..
38123c6
100644
(file)
--- a/
lib/mdfour.c
+++ b/
lib/mdfour.c
@@
-206,9
+206,11
@@
void mdfour(unsigned char *out, unsigned char *in, int n)
}
#ifdef TEST_MDFOUR
}
#ifdef TEST_MDFOUR
+int protocol_version = 28;
+
static void file_checksum1(char *fname)
{
static void file_checksum1(char *fname)
{
- int fd, i;
+ int fd, i
, was_multiple_of_64 = 1
;
struct mdfour md;
unsigned char buf[64*1024], sum[16];
struct mdfour md;
unsigned char buf[64*1024], sum[16];
@@
-222,9
+224,13
@@
static void file_checksum1(char *fname)
while (1) {
int n = read(fd, buf, sizeof(buf));
while (1) {
int n = read(fd, buf, sizeof(buf));
- if (n <= 0) break;
+ if (n <= 0)
+ break;
+ was_multiple_of_64 = !(n % 64);
mdfour_update(&md, buf, n);
}
mdfour_update(&md, buf, n);
}
+ if (was_multiple_of_64 && protocol_version >= 27)
+ mdfour_update(&md, buf, 0);
close(fd);
close(fd);