X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/7c91d5b7dfeca1188eedcf91d87635d8e506ca55..0ef5abcbbb95298fa9faf1d3eb275a9e76e1d951:/log-checksum.diff diff --git a/log-checksum.diff b/log-checksum.diff index 3d36e52..627d13d 100644 --- a/log-checksum.diff +++ b/log-checksum.diff @@ -15,15 +15,15 @@ To use this patch, run these commands for a successful build: diff --git a/flist.c b/flist.c --- a/flist.c +++ b/flist.c -@@ -67,6 +67,7 @@ extern int protocol_version; - extern int sanitize_paths; +@@ -68,6 +68,7 @@ extern int sanitize_paths; extern int munge_symlinks; extern int need_unsorted_flist; + extern int sender_symlink_iconv; +extern int sender_keeps_checksum; extern int unsort_ndx; extern struct stats stats; extern char *filesfrom_host; -@@ -1187,6 +1188,12 @@ struct file_struct *make_file(const char *fname, struct file_list *flist, +@@ -1223,6 +1224,12 @@ struct file_struct *make_file(const char *fname, struct file_list *flist, extra_len += EXTRA_LEN; #endif @@ -36,7 +36,7 @@ diff --git a/flist.c b/flist.c #if EXTRA_ROUNDING > 0 if (extra_len & (EXTRA_ROUNDING * EXTRA_LEN)) extra_len = (extra_len | (EXTRA_ROUNDING * EXTRA_LEN)) + EXTRA_LEN; -@@ -1250,9 +1257,6 @@ struct file_struct *make_file(const char *fname, struct file_list *flist, +@@ -1286,9 +1293,6 @@ struct file_struct *make_file(const char *fname, struct file_list *flist, memcpy(bp + basename_len, linkname, linkname_len); #endif @@ -46,7 +46,7 @@ diff --git a/flist.c b/flist.c if (am_sender) F_PATHNAME(file) = pathname; else if (!pool) -@@ -1283,6 +1287,9 @@ struct file_struct *make_file(const char *fname, struct file_list *flist, +@@ -1300,6 +1304,9 @@ struct file_struct *make_file(const char *fname, struct file_list *flist, return NULL; } @@ -72,13 +72,13 @@ diff --git a/log.c b/log.c extern int gid_ndx; @@ -57,6 +59,7 @@ extern iconv_t ic_send, ic_recv; extern char curr_dir[]; - extern char *module_dir; + extern char *full_module_path; extern unsigned int module_dirlen; +extern char sender_file_sum[MAX_DIGEST_LEN]; static int log_initialised; static int logfile_was_closed; -@@ -628,6 +631,28 @@ static void log_formatted(enum logcode code, const char *format, const char *op, +@@ -632,6 +635,28 @@ static void log_formatted(enum logcode code, const char *format, const char *op, snprintf(buf2, sizeof buf2, fmt, (double)b); n = buf2; break; @@ -210,7 +210,7 @@ diff --git a/match.c b/match.c diff --git a/options.c b/options.c --- a/options.c +++ b/options.c -@@ -1524,7 +1524,8 @@ int parse_arguments(int *argc_p, const char ***argv_p) +@@ -1525,7 +1525,8 @@ int parse_arguments(int *argc_p, const char ***argv_p) else if (log_format_has(stdout_format, 'i')) stdout_format_has_i = itemize_changes | 1; if (!log_format_has(stdout_format, 'b') @@ -239,7 +239,7 @@ diff --git a/receiver.c b/receiver.c extern struct file_list *cur_flist, *first_flist, *dir_flist; extern struct filter_list_struct daemon_filter_list; -@@ -165,10 +167,9 @@ static int receive_data(int f_in, char *fname_r, int fd_r, OFF_T size_r, +@@ -166,10 +168,9 @@ static int receive_data(int f_in, char *fname_r, int fd_r, OFF_T size_r, const char *fname, int fd, OFF_T total_size) { static char file_sum1[MAX_DIGEST_LEN]; @@ -251,7 +251,7 @@ diff --git a/receiver.c b/receiver.c OFF_T offset = 0; OFF_T offset2; char *data; -@@ -298,15 +299,16 @@ static int receive_data(int f_in, char *fname_r, int fd_r, OFF_T size_r, +@@ -302,15 +303,16 @@ static int receive_data(int f_in, char *fname_r, int fd_r, OFF_T size_r, exit_cleanup(RERR_FILEIO); } @@ -271,27 +271,13 @@ diff --git a/receiver.c b/receiver.c return 0; return 1; } -diff --git a/rsync.yo b/rsync.yo ---- a/rsync.yo -+++ b/rsync.yo -@@ -2093,7 +2093,7 @@ by the server and defaults to the current code(time()). This option - is used to set a specific checksum seed, which is useful for - applications that want repeatable block and file checksums, or - in the case where the user wants a more random checksum seed. --Note that setting NUM to 0 causes rsync to use the default of code(time()) -+Setting NUM to 0 causes rsync to use the default of code(time()) - for checksum seed. - enddit() - diff --git a/rsyncd.conf.yo b/rsyncd.conf.yo --- a/rsyncd.conf.yo +++ b/rsyncd.conf.yo -@@ -509,7 +509,8 @@ quote(itemization( - it() %a the remote IP address +@@ -510,6 +510,7 @@ quote(itemization( it() %b the number of bytes actually transferred it() %B the permission bits of the file (e.g. rwxrwxrwt) -- it() %c the checksum bytes received for this file (only when sending) -+ it() %c the total size of the block checksums received for the basis file (only when sending) + it() %c the total size of the block checksums received for the basis file (only when sending) + it() %C the full-file MD5 checksum if bf(--checksum) is enabled or a file was transferred (only for protocol 30 or above). it() %f the filename (long form on sender; no trailing "/") it() %G the gid of the file (decimal) or "DEFAULT"