X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/fc5573623194fab2a331d1ffc8d284c9e25e06e7..7170ca8dba0a407cd0c91b41b48163c7b682abb1:/link-by-hash.diff diff --git a/link-by-hash.diff b/link-by-hash.diff index 32d0521..1415923 100644 --- a/link-by-hash.diff +++ b/link-by-hash.diff @@ -12,8 +12,8 @@ To use this patch, run these commands for a successful build: ./configure make +based-on: 181c9faf928faad08ef095f4667afe460ec3bef6 diff --git a/Makefile.in b/Makefile.in -index feacb90..b27b1e7 100644 --- a/Makefile.in +++ b/Makefile.in @@ -37,7 +37,7 @@ OBJS1=flist.o rsync.o generator.o receiver.o cleanup.o sender.o exclude.o \ @@ -26,7 +26,6 @@ index feacb90..b27b1e7 100644 popt_OBJS=popt/findme.o popt/popt.o popt/poptconfig.o \ popt/popthelp.o popt/poptparse.o diff --git a/flist.c b/flist.c -index 09b4fc5..570bcee 100644 --- a/flist.c +++ b/flist.c @@ -73,6 +73,7 @@ extern int sender_keeps_checksum; @@ -37,7 +36,7 @@ index 09b4fc5..570bcee 100644 extern char *usermap, *groupmap; extern char curr_dir[MAXPATHLEN]; -@@ -881,7 +882,7 @@ static struct file_struct *recv_file_entry(struct file_list *flist, +@@ -891,7 +892,7 @@ static struct file_struct *recv_file_entry(struct file_list *flist, extra_len += EXTRA_LEN; #endif @@ -48,7 +47,6 @@ index 09b4fc5..570bcee 100644 #if SIZEOF_INT64 >= 8 diff --git a/hashlink.c b/hashlink.c new file mode 100644 -index 0000000..15e2a73 --- /dev/null +++ b/hashlink.c @@ -0,0 +1,339 @@ @@ -392,7 +390,6 @@ index 0000000..15e2a73 +} +#endif diff --git a/options.c b/options.c -index e7c6c61..73b1aa4 100644 --- a/options.c +++ b/options.c @@ -158,6 +158,7 @@ char *backup_suffix = NULL; @@ -428,7 +425,7 @@ index e7c6c61..73b1aa4 100644 {"fuzzy", 'y', POPT_ARG_VAL, &fuzzy_basis, 1, 0, 0 }, {"no-fuzzy", 0, POPT_ARG_VAL, &fuzzy_basis, 0, 0, 0 }, {"no-y", 0, POPT_ARG_VAL, &fuzzy_basis, 0, 0, 0 }, -@@ -1742,6 +1745,21 @@ int parse_arguments(int *argc_p, const char ***argv_p) +@@ -1743,6 +1746,21 @@ int parse_arguments(int *argc_p, const char ***argv_p) return 0; #endif @@ -450,7 +447,7 @@ index e7c6c61..73b1aa4 100644 default: /* A large opt value means that set_refuse_options() * turned this option off. */ -@@ -2584,6 +2602,11 @@ void server_options(char **args, int *argc_p) +@@ -2601,6 +2619,11 @@ void server_options(char **args, int *argc_p) } else if (inplace) args[ac++] = "--inplace"; @@ -463,7 +460,6 @@ index e7c6c61..73b1aa4 100644 if (filesfrom_host) { args[ac++] = "--files-from"; diff --git a/receiver.c b/receiver.c -index 4325e30..2709d5e 100644 --- a/receiver.c +++ b/receiver.c @@ -164,11 +164,13 @@ int open_tmpfile(char *fnametmp, const char *fname, struct file_struct *file) @@ -538,7 +534,6 @@ index 4325e30..2709d5e 100644 log_item(log_code, file, &initial_stats, iflags, NULL); diff --git a/rsync.c b/rsync.c -index 2c026a2..87f6d54 100644 --- a/rsync.c +++ b/rsync.c @@ -48,6 +48,7 @@ extern int flist_eof; @@ -568,10 +563,9 @@ index 2c026a2..87f6d54 100644 rsyserr(FERROR_XFER, errno, "%s %s -> \"%s\"", ret == -2 ? "copy" : "rename", diff --git a/rsync.h b/rsync.h -index be7cf8a..d4e2aca 100644 --- a/rsync.h +++ b/rsync.h -@@ -853,6 +853,14 @@ struct stats { +@@ -854,6 +854,14 @@ struct stats { int xferred_files; }; @@ -587,7 +581,6 @@ index be7cf8a..d4e2aca 100644 struct flist_ndx_item { diff --git a/rsync.yo b/rsync.yo -index 941f7a5..568b481 100644 --- a/rsync.yo +++ b/rsync.yo @@ -400,6 +400,7 @@ to the detailed description below for a complete description. verb(