Fix alignment issue on 64-bit. Solution from Steve Ortiz.
[rsync/rsync-patches.git] / slow-down.diff
index a5083cb..ba38499 100644 (file)
@@ -14,17 +14,19 @@ To use this patch, run these commands for a successful build:
     ./configure                           (optional if already run)
     make
 
---- old/flist.c
-+++ new/flist.c
-@@ -65,6 +65,7 @@ extern int protocol_version;
- extern int sanitize_paths;
- extern int need_unsorted_flist;
+based-on: a01e3b490eb36ccf9e704840e1b6683dab867550
+diff --git a/flist.c b/flist.c
+--- a/flist.c
++++ b/flist.c
+@@ -72,6 +72,7 @@ extern int sender_symlink_iconv;
+ extern int output_needs_newline;
+ extern int sender_keeps_checksum;
  extern int unsort_ndx;
 +extern unsigned long sleep_asec;
  extern struct stats stats;
  extern char *filesfrom_host;
-@@ -1480,6 +1481,9 @@ static void send_directory(int f, struct
+ extern char *usermap, *groupmap;
+@@ -1754,6 +1755,9 @@ static void send_directory(int f, struct file_list *flist, char *fbuf, int len,
                }
  
                send_file_name(f, flist, fbuf, NULL, flags, filter_level);
@@ -34,9 +36,10 @@ To use this patch, run these commands for a successful build:
        }
  
        fbuf[len] = '\0';
---- old/options.c
-+++ new/options.c
-@@ -106,6 +106,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;
@@ -44,19 +47,19 @@ To use this patch, run these commands for a successful build:
  size_t bwlimit_writemax = 0;
  int ignore_existing = 0;
  int ignore_non_existing = 0;
-@@ -416,6 +417,7 @@ void usage(enum logcode F)
+@@ -776,6 +777,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,"     --bwlimit=RATE          limit socket I/O bandwidth\n");
 +  rprintf(F,"     --slow-down=USECs       sleep N usec while creating the filelist\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");
-@@ -583,6 +585,7 @@ static struct poptOption long_options[] 
+@@ -964,6 +966,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 },
 +  {"slow-down",        0,  POPT_ARG_LONG,   &sleep_asec, 0, 0, 0 },
-   {"bwlimit",          0,  POPT_ARG_INT,    &bwlimit, 0, 0, 0 },
+   {"bwlimit",          0,  POPT_ARG_STRING, &bwlimit_arg, OPT_BWLIMIT, 0, 0 },
    {"no-bwlimit",       0,  POPT_ARG_VAL,    &bwlimit, 0, 0, 0 },
    {"backup",          'b', POPT_ARG_VAL,    &make_backups, 1, 0, 0 },