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
Really fix '!' in a .cvsignore file this time.
[rsync/rsync.git]
/
flist.c
diff --git
a/flist.c
b/flist.c
index
4f40da8
..
1a259bc
100644
(file)
--- a/
flist.c
+++ b/
flist.c
@@
-480,19
+480,16
@@
void send_file_entry(struct file_struct *file, int f, unsigned short base_flags)
}
#endif
}
#endif
- if (always_checksum) {
+ if (always_checksum
&& (S_ISREG(mode) || protocol_version < 28)
) {
char *sum;
char *sum;
+ int slen = protocol_version < 21 ? 2 : MD4_SUM_LENGTH;
if (S_ISREG(mode))
sum = file->u.sum;
if (S_ISREG(mode))
sum = file->u.sum;
- else
if (protocol_version < 28)
{
+ else {
/* Prior to 28, we sent a useless set of nulls. */
sum = empty_sum;
/* Prior to 28, we sent a useless set of nulls. */
sum = empty_sum;
- } else
- sum = NULL;
- if (sum) {
- write_buf(f, sum,
- protocol_version < 21 ? 2 : MD4_SUM_LENGTH);
}
}
+ write_buf(f, sum, slen);
}
strlcpy(lastname, fname, MAXPATHLEN);
}
strlcpy(lastname, fname, MAXPATHLEN);
@@
-708,20
+705,17
@@
static struct file_struct *receive_file_entry(struct file_list *flist,
}
#endif
}
#endif
- if (always_checksum) {
+ if (always_checksum
&& (sum_len || protocol_version < 28)
) {
char *sum;
char *sum;
+ int slen = protocol_version < 21 ? 2 : MD4_SUM_LENGTH;
if (sum_len) {
file->u.sum = sum = bp;
/*bp += sum_len;*/
if (sum_len) {
file->u.sum = sum = bp;
/*bp += sum_len;*/
- } else
if (protocol_version < 28)
{
+ } else {
/* Prior to 28, we get a useless set of nulls. */
sum = empty_sum;
/* Prior to 28, we get a useless set of nulls. */
sum = empty_sum;
- } else
- sum = NULL;
- if (sum) {
- read_buf(f, sum,
- protocol_version < 21 ? 2 : MD4_SUM_LENGTH);
}
}
+ read_buf(f, sum, slen);
}
if (!preserve_perms) {
}
if (!preserve_perms) {
@@
-1244,7
+1238,7
@@
struct file_list *send_file_list(int f, int argc, char *argv[])
flist_dir_len = 0;
if (!pop_dir(olddir)) {
rsyserr(FERROR, errno, "pop_dir %s failed",
flist_dir_len = 0;
if (!pop_dir(olddir)) {
rsyserr(FERROR, errno, "pop_dir %s failed",
- full_fname(dir));
+ full_fname(
old
dir));
exit_cleanup(RERR_FILESELECT);
}
}
exit_cleanup(RERR_FILESELECT);
}
}