From b78a6aba971b5e2e8fe359fc63047ff66f86ea70 Mon Sep 17 00:00:00 2001 From: Wayne Davison Date: Sun, 13 Feb 2005 07:00:00 +0000 Subject: [PATCH] Fixed failing hunks. --- atimes.diff | 91 ++++++++++++++++++++++------------------------ fname-convert.diff | 24 ++++++------ fuzzy.diff | 74 ++++++++++++++++++------------------- link-by-hash.diff | 20 +++++----- 4 files changed, 103 insertions(+), 106 deletions(-) diff --git a/atimes.diff b/atimes.diff index acb5dbb..5b575fa 100644 --- a/atimes.diff +++ b/atimes.diff @@ -15,17 +15,17 @@ command before "make": rprintf(FINFO, "flist->length=%.0f\n", (double) fptr[i]->length); rprintf(FINFO, "flist->mode=%#o\n", (int) fptr[i]->mode); ---- orig/flist.c 2005-02-07 20:41:56 +--- orig/flist.c 2005-02-12 19:54:27 +++ flist.c 2005-02-07 21:06:04 -@@ -63,6 +63,7 @@ extern int make_backups; +@@ -62,6 +62,7 @@ extern int make_backups; extern int backup_suffix_len; extern int copy_links; extern int copy_unsafe_links; +extern int copy_atimes; extern int protocol_version; extern int sanitize_paths; - extern int delete_excluded; -@@ -150,16 +151,18 @@ static void list_file_entry(struct file_ + extern int max_delete; +@@ -147,16 +148,18 @@ static void list_file_entry(struct file_ #if SUPPORT_LINKS if (preserve_links && S_ISLNK(f->mode)) { @@ -46,7 +46,7 @@ command before "make": safe_fname(f_name(f))); } } -@@ -323,6 +326,7 @@ void send_file_entry(struct file_struct +@@ -320,6 +323,7 @@ void send_file_entry(struct file_struct { unsigned short flags; static time_t modtime; @@ -54,7 +54,7 @@ command before "make": static mode_t mode; static int64 dev; static dev_t rdev; -@@ -338,7 +342,7 @@ void send_file_entry(struct file_struct +@@ -335,7 +339,7 @@ void send_file_entry(struct file_struct if (!file) { write_byte(f, 0); @@ -63,7 +63,7 @@ command before "make": dev = 0, rdev = makedev(0, 0); rdev_major = 0; uid = 0, gid = 0; -@@ -387,6 +391,12 @@ void send_file_entry(struct file_struct +@@ -384,6 +388,12 @@ void send_file_entry(struct file_struct flags |= XMIT_SAME_TIME; else modtime = file->modtime; @@ -76,7 +76,7 @@ command before "make": #if SUPPORT_HARD_LINKS if (file->link_u.idev) { -@@ -442,6 +452,8 @@ void send_file_entry(struct file_struct +@@ -439,6 +449,8 @@ void send_file_entry(struct file_struct write_int(f, modtime); if (!(flags & XMIT_SAME_MODE)) write_int(f, to_wire_mode(mode)); @@ -85,7 +85,7 @@ command before "make": if (preserve_uid && !(flags & XMIT_SAME_UID)) { if (!numeric_ids) add_uid(uid); -@@ -515,6 +527,7 @@ static void receive_file_entry(struct fi +@@ -512,6 +524,7 @@ static void receive_file_entry(struct fi unsigned short flags, int f) { static time_t modtime; @@ -93,7 +93,7 @@ command before "make": static mode_t mode; static int64 dev; static dev_t rdev; -@@ -533,7 +546,7 @@ static void receive_file_entry(struct fi +@@ -530,7 +543,7 @@ static void receive_file_entry(struct fi struct file_struct *file; if (!flist) { @@ -102,7 +102,7 @@ command before "make": dev = 0, rdev = makedev(0, 0); rdev_major = 0; uid = 0, gid = 0; -@@ -589,6 +602,8 @@ static void receive_file_entry(struct fi +@@ -586,6 +599,8 @@ static void receive_file_entry(struct fi modtime = (time_t)read_int(f); if (!(flags & XMIT_SAME_MODE)) mode = from_wire_mode(read_int(f)); @@ -111,7 +111,7 @@ command before "make": if (preserve_uid && !(flags & XMIT_SAME_UID)) uid = (uid_t)read_int(f); -@@ -639,6 +654,7 @@ static void receive_file_entry(struct fi +@@ -636,6 +651,7 @@ static void receive_file_entry(struct fi file->flags = 0; file->modtime = modtime; @@ -119,7 +119,7 @@ command before "make": file->length = file_length; file->mode = mode; file->uid = uid; -@@ -886,6 +902,7 @@ skip_filters: +@@ -883,6 +899,7 @@ skip_filters: file->flags = flags; file->modtime = st.st_mtime; @@ -127,7 +127,7 @@ command before "make": file->length = st.st_size; file->mode = st.st_mode; file->uid = st.st_uid; ---- orig/generator.c 2005-02-07 20:41:56 +--- orig/generator.c 2005-02-13 05:50:28 +++ generator.c 2004-11-03 23:02:12 @@ -99,7 +99,7 @@ static int unchanged_file(char *fn, stru if (ignore_times) @@ -138,7 +138,7 @@ command before "make": } -@@ -503,7 +503,7 @@ static void recv_generator(char *fname, +@@ -512,7 +512,7 @@ static void recv_generator(char *fname, } if (update_only && fnamecmp_type == FNAMECMP_FNAME @@ -147,7 +147,7 @@ command before "make": if (verbose > 1) rprintf(FINFO, "%s is newer\n", safe_fname(fname)); return; ---- orig/options.c 2005-02-07 20:41:56 +--- orig/options.c 2005-02-13 05:50:28 +++ options.c 2005-01-24 01:51:48 @@ -50,6 +50,7 @@ int preserve_uid = 0; int preserve_gid = 0; @@ -157,7 +157,7 @@ command before "make": int update_only = 0; int cvs_exclude = 0; int dry_run = 0; -@@ -269,6 +270,7 @@ void usage(enum logcode F) +@@ -272,6 +273,7 @@ void usage(enum logcode F) rprintf(F," -g, --group preserve group\n"); rprintf(F," -D, --devices preserve devices (root only)\n"); rprintf(F," -t, --times preserve times\n"); @@ -165,7 +165,7 @@ command before "make": rprintf(F," -O, --omit-dir-times omit directories when preserving times\n"); rprintf(F," -S, --sparse handle sparse files efficiently\n"); rprintf(F," -n, --dry-run show what would have been transferred\n"); -@@ -388,6 +390,7 @@ static struct poptOption long_options[] +@@ -392,6 +394,7 @@ static struct poptOption long_options[] {"devices", 'D', POPT_ARG_NONE, &preserve_devices, 0, 0, 0 }, {"times", 't', POPT_ARG_NONE, &preserve_times, 0, 0, 0 }, {"omit-dir-times", 'O', POPT_ARG_NONE, &omit_dir_times, 0, 0, 0 }, @@ -173,7 +173,7 @@ command before "make": {"checksum", 'c', POPT_ARG_NONE, &always_checksum, 0, 0, 0 }, {"verbose", 'v', POPT_ARG_NONE, 0, 'v', 0, 0 }, {"quiet", 'q', POPT_ARG_NONE, 0, 'q', 0, 0 }, -@@ -1151,6 +1154,8 @@ void server_options(char **args,int *arg +@@ -1211,6 +1214,8 @@ void server_options(char **args,int *arg argstr[x++] = 'D'; if (preserve_times) argstr[x++] = 't'; @@ -235,7 +235,7 @@ command before "make": } change_uid = am_root && preserve_uid && st->st_uid != file->uid; ---- orig/rsync.h 2005-02-07 20:41:57 +--- orig/rsync.h 2005-02-12 19:54:27 +++ rsync.h 2004-07-03 20:15:41 @@ -54,6 +54,7 @@ #define XMIT_HAS_IDEV_DATA (1<<9) @@ -261,7 +261,7 @@ command before "make": uid_t uid; gid_t gid; mode_t mode; ---- orig/rsync.yo 2005-02-06 07:24:23 +--- orig/rsync.yo 2005-02-13 05:50:28 +++ rsync.yo 2005-01-24 01:57:18 @@ -322,6 +322,7 @@ to the detailed description below for a -D, --devices preserve devices (root only) @@ -271,7 +271,7 @@ command before "make": -S, --sparse handle sparse files efficiently -n, --dry-run show what would have been transferred -W, --whole-file copy files whole -@@ -641,6 +642,11 @@ dit(bf(-O, --omit-dir-times)) This tells +@@ -642,6 +643,11 @@ dit(bf(-O, --omit-dir-times)) This tells it is preserving modification times (see bf(--times)). If NFS is sharing the directories on the receiving side, it is a good idea to use bf(-O). @@ -305,14 +305,14 @@ command before "make": + +# The script would have aborted on error, so getting here means we've won. +exit 0 ---- orig/testsuite/rsync.fns 2004-09-18 01:49:34 -+++ testsuite/rsync.fns 2004-07-03 20:15:41 +--- orig/testsuite/rsync.fns 2005-02-13 05:50:28 ++++ testsuite/rsync.fns 2005-02-13 06:47:50 @@ -50,7 +50,7 @@ printmsg() { rsync_ls_lR() { -- find "$@" -print | sort | xargs "$TOOLDIR/tls" -+ find "$@" -print | sort | xargs "$TOOLDIR/tls" $TLS_ARGS +- find "$@" -print | sort | sed 's/ /\\ /g' | xargs "$TOOLDIR/tls" ++ find "$@" -print | sort | sed 's/ /\\ /g' | xargs "$TOOLDIR/tls" $TLS_ARGS } rsync_getgroups() { @@ -325,29 +325,26 @@ command before "make": echo "Running: \"$1\"" eval "$1" status=$? -@@ -166,6 +168,12 @@ checkit() { +@@ -166,16 +168,16 @@ checkit() { fi echo "-------------" -+ echo "check how the directory listings compare with diff:" -+ echo "" -+ ( cd "$3" && rsync_ls_lR . ) > "$tmpdir/ls-to" -+ diff $diffopt "$tmpdir/ls-from" "$tmpdir/ls-to" || failed=YES -+ -+ echo "-------------" - echo "check how the files compare with diff:" - echo "" - for f in `cd "$2"; find . -type f -print ` -@@ -173,12 +181,6 @@ checkit() { - diff $diffopt "$2"/"$f" "$3"/"$f" || failed=YES - done - -- echo "-------------" -- echo "check how the directory listings compare with diff:" +- echo "check how the files compare with diff:" - echo "" +- diff -r $diffopt "$2" "$3" || failed=YES +- +- echo "-------------" + echo "check how the directory listings compare with diff:" + echo "" - ( cd "$2" && rsync_ls_lR . ) > "$tmpdir/ls-from" -- ( cd "$3" && rsync_ls_lR . ) > "$tmpdir/ls-to" -- diff $diffopt "$tmpdir/ls-from" "$tmpdir/ls-to" || failed=YES + ( cd "$3" && rsync_ls_lR . ) > "$tmpdir/ls-to" + diff $diffopt "$tmpdir/ls-from" "$tmpdir/ls-to" || failed=YES ++ ++ echo "-------------" ++ echo "check how the files compare with diff:" ++ echo "" ++ diff -r $diffopt "$2" "$3" || failed=YES ++ if [ -z "$failed" ] ; then return 0 else @@ -488,7 +485,7 @@ command before "make": return 0; } ---- orig/util.c 2005-02-07 20:41:57 +--- orig/util.c 2005-02-11 10:53:15 +++ util.c 2005-02-07 21:09:12 @@ -128,12 +128,17 @@ void overflow(char *str) @@ -532,7 +529,7 @@ command before "make": t[0].tv_usec = 0; t[1].tv_sec = modtime; t[1].tv_usec = 0; -@@ -1141,8 +1146,8 @@ int msleep(int t) +@@ -1149,8 +1154,8 @@ int msleep(int t) /** @@ -543,7 +540,7 @@ command before "make": * --modify-window). * * @retval 0 if the times should be treated as the same -@@ -1151,7 +1156,7 @@ int msleep(int t) +@@ -1159,7 +1164,7 @@ int msleep(int t) * * @retval -1 if the 2nd is later **/ diff --git a/fname-convert.diff b/fname-convert.diff index f579c38..572c607 100644 --- a/fname-convert.diff +++ b/fname-convert.diff @@ -87,9 +87,9 @@ Note that you'll need to run 'make proto' after applying this patch. #define RERR_SIGNAL 20 /* status returned when sent SIGUSR1, SIGINT */ #define RERR_WAITCHILD 21 /* some error returned by waitpid() */ ---- orig/flist.c 2005-02-12 18:39:09 +--- orig/flist.c 2005-02-12 19:54:27 +++ flist.c 2005-02-12 19:26:37 -@@ -68,6 +68,7 @@ extern int delete_excluded; +@@ -67,6 +67,7 @@ extern int sanitize_paths; extern int max_delete; extern int orig_umask; extern int list_only; @@ -97,7 +97,7 @@ Note that you'll need to run 'make proto' after applying this patch. extern struct filter_list_struct filter_list; extern struct filter_list_struct server_filter_list; -@@ -346,7 +347,10 @@ void send_file_entry(struct file_struct +@@ -345,7 +346,10 @@ void send_file_entry(struct file_struct io_write_phase = "send_file_entry"; @@ -109,7 +109,7 @@ Note that you'll need to run 'make proto' after applying this patch. flags = base_flags; -@@ -562,6 +566,9 @@ static void receive_file_entry(struct fi +@@ -561,6 +565,9 @@ static void receive_file_entry(struct fi strlcpy(lastname, thisname, MAXPATHLEN); @@ -119,7 +119,7 @@ Note that you'll need to run 'make proto' after applying this patch. clean_fname(thisname, 0); if (sanitize_paths) -@@ -1076,6 +1083,9 @@ struct file_list *send_file_list(int f, +@@ -1071,6 +1078,9 @@ struct file_list *send_file_list(int f, start_write = stats.total_written; gettimeofday(&start_tv, NULL); @@ -129,7 +129,7 @@ Note that you'll need to run 'make proto' after applying this patch. flist = flist_new(WITH_HLINK, "send_file_list"); io_start_buffering_out(); -@@ -1254,6 +1264,9 @@ struct file_list *send_file_list(int f, +@@ -1249,6 +1259,9 @@ struct file_list *send_file_list(int f, stats.flist_size = stats.total_written - start_write; stats.num_files = flist->count; @@ -139,7 +139,7 @@ Note that you'll need to run 'make proto' after applying this patch. if (verbose > 3) output_flist(flist, who_am_i()); -@@ -1275,6 +1288,9 @@ struct file_list *recv_file_list(int f) +@@ -1270,6 +1283,9 @@ struct file_list *recv_file_list(int f) start_read = stats.total_read; @@ -149,7 +149,7 @@ Note that you'll need to run 'make proto' after applying this patch. flist = flist_new(WITH_HLINK, "recv_file_list"); received_flist = flist; -@@ -1328,6 +1344,9 @@ struct file_list *recv_file_list(int f) +@@ -1323,6 +1339,9 @@ struct file_list *recv_file_list(int f) io_error |= read_int(f); } @@ -382,7 +382,7 @@ Note that you'll need to run 'make proto' after applying this patch. + if (verbose > 2) + rprintf(FINFO, "Converted filename: %s -> %s\n", src, dest); +} ---- orig/generator.c 2005-02-11 20:25:07 +--- orig/generator.c 2005-02-13 05:50:28 +++ generator.c 2005-02-03 02:07:33 @@ -235,7 +235,13 @@ static void generate_and_send_sums(int f * start sending checksums. @@ -420,8 +420,8 @@ Note that you'll need to run 'make proto' after applying this patch. if (dir) free(dir); ---- orig/options.c 2005-02-11 18:21:45 -+++ options.c 2005-01-28 19:29:38 +--- orig/options.c 2005-02-13 05:50:28 ++++ options.c 2005-02-13 06:55:04 @@ -128,6 +128,7 @@ char *basis_dir[MAX_BASIS_DIRS+1]; char *config_file = NULL; char *shell_cmd = NULL; @@ -435,7 +435,7 @@ Note that you'll need to run 'make proto' after applying this patch. rprintf(F," --copy-dest=DIR ... and include copies of unchanged files\n"); rprintf(F," --link-dest=DIR hardlink to files in DIR when unchanged\n"); + rprintf(F," --fname-convert=CMD invoke CMD for filename conversion\n"); - rprintf(F," -z, --compress compress file data\n"); + rprintf(F," -z, --compress compress file data during the transfer\n"); rprintf(F," -C, --cvs-exclude auto-ignore files the same way CVS does\n"); rprintf(F," -f, --filter=RULE add a file-filtering RULE\n"); @@ -411,6 +413,7 @@ static struct poptOption long_options[] diff --git a/fuzzy.diff b/fuzzy.diff index 9ce20dc..dce1225 100644 --- a/fuzzy.diff +++ b/fuzzy.diff @@ -4,7 +4,7 @@ Lightly tested. Be sure to run "make proto" before "make". ---- orig/generator.c 2005-02-03 02:04:20 +--- orig/generator.c 2005-02-13 05:50:28 +++ generator.c 2005-02-03 02:11:10 @@ -47,6 +47,7 @@ extern int size_only; extern OFF_T max_size; @@ -103,7 +103,7 @@ Be sure to run "make proto" before "make". /* Acts on flist->file's ndx'th item, whose name is fname. If a directory, * make sure it exists, and has the right permissions/timestamp info. For -@@ -477,6 +560,15 @@ static void recv_generator(char *fname, +@@ -492,6 +575,15 @@ static void recv_generator(char *fname, } else partialptr = NULL; @@ -119,7 +119,7 @@ Be sure to run "make proto" before "make". if (statret == -1) { if (preserve_hard_links && hard_link_check(file, HL_SKIP)) return; -@@ -505,6 +597,8 @@ static void recv_generator(char *fname, +@@ -520,6 +612,8 @@ static void recv_generator(char *fname, if (!compare_dest && fnamecmp_type <= FNAMECMP_BASIS_DIR_HIGH) ; @@ -128,7 +128,7 @@ Be sure to run "make proto" before "make". else if (unchanged_file(fnamecmp, file, &st)) { if (fnamecmp_type == FNAMECMP_FNAME) set_perms(fname, file, &st, PERMS_REPORT); -@@ -579,8 +673,24 @@ notify_others: +@@ -594,8 +688,24 @@ notify_others: write_int(f_out, ndx); if (protocol_version >= 29 && inplace && !read_batch) write_byte(f_out, fnamecmp_type); @@ -154,9 +154,9 @@ Be sure to run "make proto" before "make". if (dry_run || read_batch) return; ---- orig/main.c 2005-01-30 10:07:21 +--- orig/main.c 2005-02-07 20:41:56 +++ main.c 2005-01-14 18:33:15 -@@ -48,6 +48,7 @@ extern int keep_dirlinks; +@@ -44,6 +44,7 @@ extern int keep_dirlinks; extern int preserve_hard_links; extern int protocol_version; extern int recurse; @@ -164,7 +164,7 @@ Be sure to run "make proto" before "make". extern int relative_paths; extern int rsync_port; extern int whole_file; -@@ -491,7 +492,8 @@ static int do_recv(int f_in,int f_out,st +@@ -488,7 +489,8 @@ static int do_recv(int f_in,int f_out,st int pid; int status = 0; int error_pipe[2], name_pipe[2]; @@ -174,9 +174,9 @@ Be sure to run "make proto" before "make". /* The receiving side mustn't obey this, or an existing symlink that * points to an identical file won't be replaced by the referent. */ ---- orig/options.c 2005-02-01 10:39:22 -+++ options.c 2005-01-28 19:31:20 -@@ -90,6 +90,7 @@ int copy_unsafe_links = 0; +--- orig/options.c 2005-02-13 05:50:28 ++++ options.c 2005-02-13 06:56:06 +@@ -89,6 +89,7 @@ int copy_unsafe_links = 0; int size_only = 0; int daemon_bwlimit = 0; int bwlimit = 0; @@ -184,15 +184,15 @@ Be sure to run "make proto" before "make". size_t bwlimit_writemax = 0; int only_existing = 0; int opt_ignore_existing = 0; -@@ -303,6 +304,7 @@ void usage(enum logcode F) +@@ -302,6 +303,7 @@ void usage(enum logcode F) + rprintf(F," --size-only skip files that match in size\n"); + rprintf(F," --modify-window=NUM compare mod-times with reduced accuracy\n"); + rprintf(F," -T, --temp-dir=DIR create temporary files in directory DIR\n"); ++ rprintf(F," --fuzzy find similar file for basis when no dest file\n"); rprintf(F," --compare-dest=DIR also compare destination files relative to DIR\n"); rprintf(F," --copy-dest=DIR ... and include copies of unchanged files\n"); rprintf(F," --link-dest=DIR hardlink to files in DIR when unchanged\n"); -+ rprintf(F," --fuzzy find similar file for basis when no dest file\n"); - rprintf(F," -z, --compress compress file data\n"); - rprintf(F," -C, --cvs-exclude auto-ignore files the same way CVS does\n"); - rprintf(F," -f, --filter=RULE add a file-filtering RULE\n"); -@@ -408,6 +410,7 @@ static struct poptOption long_options[] +@@ -411,6 +413,7 @@ static struct poptOption long_options[] {"compare-dest", 0, POPT_ARG_STRING, 0, OPT_COMPARE_DEST, 0, 0 }, {"copy-dest", 0, POPT_ARG_STRING, 0, OPT_COPY_DEST, 0, 0 }, {"link-dest", 0, POPT_ARG_STRING, 0, OPT_LINK_DEST, 0, 0 }, @@ -200,7 +200,7 @@ Be sure to run "make proto" before "make". /* TODO: Should this take an optional int giving the compression level? */ {"compress", 'z', POPT_ARG_NONE, &do_compression, 0, 0, 0 }, {"stats", 0, POPT_ARG_NONE, &do_stats, 0, 0, 0 }, -@@ -1321,6 +1324,9 @@ void server_options(char **args,int *arg +@@ -1382,6 +1385,9 @@ void server_options(char **args,int *arg if (!implied_dirs && !am_sender) args[ac++] = "--no-implied-dirs"; @@ -210,9 +210,9 @@ Be sure to run "make proto" before "make". *argc = ac; return; ---- orig/receiver.c 2005-02-03 02:04:20 +--- orig/receiver.c 2005-02-11 10:53:14 +++ receiver.c 2005-01-15 21:21:02 -@@ -256,6 +256,27 @@ static int receive_data(int f_in, char * +@@ -257,6 +257,27 @@ static int receive_data(int f_in, char * } @@ -240,7 +240,7 @@ Be sure to run "make proto" before "make". static void discard_receive_data(int f_in, OFF_T length) { receive_data(f_in, NULL, -1, 0, NULL, -1, length); -@@ -395,6 +416,10 @@ int recv_files(int f_in, struct file_lis +@@ -396,6 +417,10 @@ int recv_files(int f_in, struct file_lis case FNAMECMP_BACKUP: fnamecmp = get_backup_name(fname); break; @@ -251,9 +251,9 @@ Be sure to run "make proto" before "make". default: if (j >= basis_dir_cnt) { rprintf(FERROR, ---- orig/rsync.h 2005-02-03 02:04:20 +--- orig/rsync.h 2005-02-12 19:54:27 +++ rsync.h 2005-01-19 18:36:47 -@@ -131,6 +131,7 @@ +@@ -127,6 +127,7 @@ #define FNAMECMP_FNAME 0x80 #define FNAMECMP_PARTIAL_DIR 0x81 #define FNAMECMP_BACKUP 0x82 @@ -261,19 +261,19 @@ Be sure to run "make proto" before "make". /* For calling delete_file() */ #define DEL_DIR (1<<0) ---- orig/rsync.yo 2005-02-01 10:39:23 -+++ rsync.yo 2005-01-28 19:31:36 -@@ -354,6 +354,7 @@ to the detailed description below for a +--- orig/rsync.yo 2005-02-13 05:50:28 ++++ rsync.yo 2005-02-13 06:56:46 +@@ -351,6 +351,7 @@ to the detailed description below for a + --size-only skip files that match in size + --modify-window=NUM compare mod-times with reduced accuracy + -T --temp-dir=DIR create temporary files in directory DIR ++ --fuzzy find similar file for basis when no dest --compare-dest=DIR also compare received files relative to DIR --copy-dest=DIR ... and include copies of unchanged files --link-dest=DIR hardlink to files in DIR when unchanged -+ --fuzzy find similar file for basis when no dest - -z, --compress compress file data - -C, --cvs-exclude auto-ignore files in the same way CVS does - -f, --filter=RULE add a file-filtering RULE -@@ -937,6 +938,14 @@ bf(--link-dest) from working properly fo - (or implied by bf(-a)). You can work-around this bug by avoiding the bf(-o) option - when sending to an old rsync. +@@ -909,6 +910,14 @@ scratch directory when creating temporar + transferred on the receiving side. The default behavior is to create + the temporary files in the receiving directory. +dit(bf(--fuzzy)) This option tells rsync that it should look around for a +basis file for any destination file that is missing. The current algorithm @@ -283,12 +283,12 @@ Be sure to run "make proto" before "make". +files, so either use --delete-after or filename exclusions if you need to +prevent this. + - dit(bf(-z, --compress)) With this option, rsync compresses any data from - the files that it sends to the destination machine. This - option is useful on slow connections. The compression method used is the ---- orig/util.c 2005-01-28 19:08:20 + dit(bf(--compare-dest=DIR)) This option instructs rsync to use em(DIR) on + the destination machine as an additional hierarchy to compare destination + files against doing transfers (if the files are missing in the destination +--- orig/util.c 2005-02-11 10:53:15 +++ util.c 2005-01-19 17:30:51 -@@ -1213,3 +1213,108 @@ void *_realloc_array(void *ptr, unsigned +@@ -1224,3 +1224,108 @@ void *_realloc_array(void *ptr, unsigned return malloc(size * num); return realloc(ptr, size * num); } diff --git a/link-by-hash.diff b/link-by-hash.diff index 94cae34..16ad255 100644 --- a/link-by-hash.diff +++ b/link-by-hash.diff @@ -365,8 +365,8 @@ the file's name. +} + +#endif ---- orig/options.c 2005-02-11 18:21:45 -+++ options.c 2005-01-28 19:32:26 +--- orig/options.c 2005-02-13 05:50:28 ++++ options.c 2005-02-13 06:59:14 @@ -131,6 +131,7 @@ char *log_format = NULL; char *password_file = NULL; char *rsync_path = RSYNC_PATH; @@ -379,8 +379,8 @@ the file's name. rprintf(F," --compare-dest=DIR also compare destination files relative to DIR\n"); rprintf(F," --copy-dest=DIR ... and include copies of unchanged files\n"); rprintf(F," --link-dest=DIR hardlink to files in DIR when unchanged\n"); -+ rprintf(F," --link-by-hash=DIR create hardlinks by hash to DIR for regular files\n"); - rprintf(F," -z, --compress compress file data\n"); ++ rprintf(F," --link-by-hash=DIR create hardlinks by hash into DIR\n"); + rprintf(F," -z, --compress compress file data during the transfer\n"); rprintf(F," -C, --cvs-exclude auto-ignore files the same way CVS does\n"); rprintf(F," -f, --filter=RULE add a file-filtering RULE\n"); @@ -343,7 +345,7 @@ void usage(enum logcode F) @@ -543,9 +543,9 @@ the file's name. if (ret < 0) { rsyserr(FERROR, errno, "%s %s -> \"%s\"", ret == -2 ? "copy" : "rename", ---- orig/rsync.h 2005-02-07 20:41:57 +--- orig/rsync.h 2005-02-12 19:54:27 +++ rsync.h 2004-07-03 20:20:15 -@@ -600,6 +600,14 @@ struct stats { +@@ -603,6 +603,14 @@ struct stats { int current_file_index; }; @@ -560,13 +560,13 @@ the file's name. #include "byteorder.h" #include "lib/mdfour.h" ---- orig/rsync.yo 2005-02-11 23:14:49 -+++ rsync.yo 2005-01-28 19:32:45 +--- orig/rsync.yo 2005-02-13 05:50:28 ++++ rsync.yo 2005-02-13 06:58:47 @@ -354,6 +354,7 @@ to the detailed description below for a --compare-dest=DIR also compare received files relative to DIR --copy-dest=DIR ... and include copies of unchanged files --link-dest=DIR hardlink to files in DIR when unchanged -+ --link-by-hash=DIR create hardlinks by hash to DIR for regular files - -z, --compress compress file data ++ --link-by-hash=DIR create hardlinks by hash into DIR + -z, --compress compress file data during the transfer -C, --cvs-exclude auto-ignore files in the same way CVS does -f, --filter=RULE add a file-filtering RULE -- 2.34.1