./configure (optional if already run)
make
---- old/flist.c
-+++ new/flist.c
-@@ -62,6 +62,7 @@ extern int copy_links;
- extern int copy_unsafe_links;
- extern int protocol_version;
- extern int sanitize_paths;
+diff --git a/flist.c b/flist.c
+--- a/flist.c
++++ b/flist.c
+@@ -66,6 +66,7 @@ extern int sanitize_paths;
+ extern int munge_symlinks;
+ extern int need_unsorted_flist;
+ extern int unsort_ndx;
+extern unsigned long sleep_asec;
extern struct stats stats;
+ extern char *filesfrom_host;
- extern char curr_dir[MAXPATHLEN];
-@@ -1463,6 +1464,9 @@ static void send_directory(int f, struct
+@@ -1500,6 +1501,9 @@ static void send_directory(int f, struct file_list *flist, char *fbuf, int len,
}
- send_file_name(f, flist, fbuf, NULL, flags, filter_flags);
+ send_file_name(f, flist, fbuf, NULL, flags, filter_level);
+ /* Sleep for a bit, to avoid hammering the disk. */
+ if (sleep_asec)
+ usleep(sleep_asec);
}
fbuf[len] = '\0';
---- old/options.c
-+++ new/options.c
-@@ -105,6 +105,7 @@ int size_only = 0;
+diff --git a/options.c b/options.c
+--- a/options.c
++++ b/options.c
+@@ -108,6 +108,7 @@ int size_only = 0;
int daemon_bwlimit = 0;
int bwlimit = 0;
int fuzzy_basis = 0;
size_t bwlimit_writemax = 0;
int ignore_existing = 0;
int ignore_non_existing = 0;
-@@ -405,6 +406,7 @@ void usage(enum logcode F)
+@@ -423,6 +424,7 @@ void usage(enum logcode F)
rprintf(F," --password-file=FILE read daemon-access password from FILE\n");
rprintf(F," --list-only list the files instead of copying them\n");
rprintf(F," --bwlimit=KBPS limit I/O bandwidth; KBytes per second\n");
rprintf(F," --write-batch=FILE write a batched update to FILE\n");
rprintf(F," --only-write-batch=FILE like --write-batch but w/o updating destination\n");
rprintf(F," --read-batch=FILE read a batched update from FILE\n");
-@@ -567,6 +569,7 @@ static struct poptOption long_options[]
+@@ -592,6 +594,7 @@ static struct poptOption long_options[] = {
{"itemize-changes", 'i', POPT_ARG_NONE, 0, 'i', 0, 0 },
{"no-itemize-changes",0, POPT_ARG_VAL, &itemize_changes, 0, 0, 0 },
{"no-i", 0, POPT_ARG_VAL, &itemize_changes, 0, 0, 0 },