Change args to file_checksum() to prepare for future changes.
authorWayne Davison <wayned@samba.org>
Sat, 19 Apr 2014 23:26:35 +0000 (16:26 -0700)
committerWayne Davison <wayned@samba.org>
Sat, 19 Apr 2014 23:26:35 +0000 (16:26 -0700)
checksum.c
flist.c
generator.c

index 24c2132124c6a8279bfcb14f9f796c296169f829..a1c2aa2447d6c2648e4112bed92e1192b6e2bb16 100644 (file)
@@ -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 74c0756482459572beb70311d68c803a0cd5ab01..fed0391f2c114cce8b216689fa0ab403f4fa38f9 100644 (file)
--- 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;
        }
index 4dcc73a4198305e632a43fe69a1b57febbd3cd75..cd7205ee5431a60f83ed464560fb646506fd88cf 100644 (file)
@@ -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;
        }