summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWayne Davison <wayned@samba.org>2014-04-19 16:26:35 -0700
committerWayne Davison <wayned@samba.org>2014-04-19 16:26:35 -0700
commit43d6d0c5ba63e3a69717702a1d58ea6a04192bb4 (patch)
tree0b9cd307066640429ed58660f5771afcd3562c6d
parent22a3ac0b5538ec6c1ff222570413cbdb74fef67b (diff)
downloadrsync-43d6d0c5ba63e3a69717702a1d58ea6a04192bb4.tar.gz
rsync-43d6d0c5ba63e3a69717702a1d58ea6a04192bb4.tar.bz2
rsync-43d6d0c5ba63e3a69717702a1d58ea6a04192bb4.zip
Change args to file_checksum() to prepare for future changes.
-rw-r--r--checksum.c6
-rw-r--r--flist.c2
-rw-r--r--generator.c2
3 files changed, 5 insertions, 5 deletions
diff --git a/checksum.c b/checksum.c
index 24c21321..a1c2aa24 100644
--- a/checksum.c
+++ b/checksum.c
@@ -98,10 +98,10 @@ void get_checksum2(char *buf, int32 len, char *sum)
}
}
-void file_checksum(char *fname, char *sum, OFF_T size)
+void file_checksum(const char *fname, const STRUCT_STAT *st_p, char *sum)
{
struct map_struct *buf;
- OFF_T i, len = size;
+ OFF_T i, len = st_p->st_size;
md_context m;
int32 remainder;
int fd;
@@ -112,7 +112,7 @@ void file_checksum(char *fname, char *sum, OFF_T size)
if (fd == -1)
return;
- buf = map_file(fd, size, MAX_MAP_SIZE, CSUM_CHUNK);
+ buf = map_file(fd, len, MAX_MAP_SIZE, CSUM_CHUNK);
if (protocol_version >= 30) {
md5_begin(&m);
diff --git a/flist.c b/flist.c
index 74c07564..fed0391f 100644
--- a/flist.c
+++ b/flist.c
@@ -1306,7 +1306,7 @@ struct file_struct *make_file(const char *fname, struct file_list *flist,
#endif
if (always_checksum && am_sender && S_ISREG(st.st_mode)) {
- file_checksum(thisname, tmp_sum, st.st_size);
+ file_checksum(thisname, &st, tmp_sum);
if (sender_keeps_checksum)
extra_len += SUM_EXTRA_CNT * EXTRA_LEN;
}
diff --git a/generator.c b/generator.c
index 4dcc73a4..cd7205ee 100644
--- a/generator.c
+++ b/generator.c
@@ -572,7 +572,7 @@ int unchanged_file(char *fn, struct file_struct *file, STRUCT_STAT *st)
of the file time to determine whether to sync */
if (always_checksum > 0 && S_ISREG(st->st_mode)) {
char sum[MAX_DIGEST_LEN];
- file_checksum(fn, sum, st->st_size);
+ file_checksum(fn, st, sum);
return memcmp(sum, F_SUM(file), checksum_len) == 0;
}