Fix patch conflict.
authorWayne Davison <wayne@opencoder.net>
Wed, 10 Aug 2022 03:33:59 +0000 (20:33 -0700)
committerWayne Davison <wayne@opencoder.net>
Wed, 10 Aug 2022 03:33:59 +0000 (20:33 -0700)
28 files changed:
backup-deleted.diff
backup-dir-dels.diff
catch_crash_signals.diff
checksum-reading.diff
checksum-updating.diff
checksum-xattr.diff
clone-dest.diff
congestion.diff
date-only.diff
db.diff
detect-renamed-lax.diff
detect-renamed.diff
direct-io.diff
downdate.diff
fileflags.diff
filter-attribute-mods.diff
ignore-case.diff
kerberos.diff
link-by-hash.diff
omit-dir-changes.diff
slow-down.diff
slp.diff
soften-links.diff
source-backup.diff
source-filter_dest-filter.diff
sparse-block.diff
transliterate.diff
xxh3-safety-check.diff

index 02c698095519e01af922b0aae195e6b6b28592a7..81d822f993467dc1c7644d3235ebaf15763b7ac2 100644 (file)
@@ -7,7 +7,7 @@ To use this patch, run these commands for a successful build:
     ./configure                                 (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/generator.c b/generator.c
 --- a/generator.c
 +++ b/generator.c
@@ -41,7 +41,7 @@ diff --git a/generator.c b/generator.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -772,7 +772,8 @@ static struct poptOption long_options[] = {
+@@ -775,7 +775,8 @@ static struct poptOption long_options[] = {
    {"no-i",             0,  POPT_ARG_VAL,    &itemize_changes, 0, 0, 0 },
    {"bwlimit",          0,  POPT_ARG_STRING, &bwlimit_arg, OPT_BWLIMIT, 0, 0 },
    {"no-bwlimit",       0,  POPT_ARG_VAL,    &bwlimit, 0, 0, 0 },
@@ -51,7 +51,7 @@ diff --git a/options.c b/options.c
    {"no-backup",        0,  POPT_ARG_VAL,    &make_backups, 0, 0, 0 },
    {"backup-dir",       0,  POPT_ARG_STRING, &backup_dir, 0, 0, 0 },
    {"suffix",           0,  POPT_ARG_STRING, &backup_suffix, 0, 0, 0 },
-@@ -2763,6 +2764,10 @@ void server_options(char **args, int *argc_p)
+@@ -2779,6 +2780,10 @@ void server_options(char **args, int *argc_p)
                args[ac++] = safe_arg("--compress-choice", compress_choice);
  
        if (am_sender) {
@@ -86,7 +86,7 @@ diff --git a/receiver.c b/receiver.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -365,6 +365,7 @@ has its own detailed description later in this manpage.
+@@ -367,6 +367,7 @@ has its own detailed description later in this manpage.
  --relative, -R           use relative path names
  --no-implied-dirs        don't send implied dirs with --relative
  --backup, -b             make backups (see --suffix & --backup-dir)
@@ -94,7 +94,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --backup-dir=DIR         make backups into hierarchy based in DIR
  --suffix=SUFFIX          backup suffix (default ~ w/o --backup-dir)
  --update, -u             skip files that are newer on the receiver
-@@ -938,6 +939,13 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -942,6 +943,13 @@ expand it.
      rules specify a trailing inclusion/exclusion of `*`, the auto-added rule
      would never be reached).
  
index b1d5d4b1dd84aff256050710ea457e08dbeb77a1..c770024ee92453a3112dc3278f21356944d29556 100644 (file)
@@ -204,7 +204,7 @@ diff --git a/delete.c b/delete.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -163,10 +163,14 @@ int no_detach
+@@ -166,10 +166,14 @@ int no_detach
  int write_batch = 0;
  int read_batch = 0;
  int backup_dir_len = 0;
@@ -219,7 +219,7 @@ diff --git a/options.c b/options.c
  char *tmpdir = NULL;
  char *partial_dir = NULL;
  char *basis_dir[MAX_BASIS_DIRS+1];
-@@ -179,7 +183,9 @@ char *password_file = NULL;
+@@ -182,7 +186,9 @@ char *password_file = NULL;
  char *early_input_file = NULL;
  char *rsync_path = RSYNC_PATH;
  char *backup_dir = NULL;
@@ -229,7 +229,7 @@ diff --git a/options.c b/options.c
  char *sockopts = NULL;
  char *usermap = NULL;
  char *groupmap = NULL;
-@@ -776,7 +782,9 @@ static struct poptOption long_options[] = {
+@@ -779,7 +785,9 @@ static struct poptOption long_options[] = {
    {"backup-deleted",   0,  POPT_ARG_VAL,    &make_backups, 1, 0, 0 },
    {"no-backup",        0,  POPT_ARG_VAL,    &make_backups, 0, 0, 0 },
    {"backup-dir",       0,  POPT_ARG_STRING, &backup_dir, 0, 0, 0 },
@@ -239,7 +239,7 @@ diff --git a/options.c b/options.c
    {"list-only",        0,  POPT_ARG_VAL,    &list_only, 2, 0, 0 },
    {"read-batch",       0,  POPT_ARG_STRING, &batch_name, OPT_READ_BATCH, 0, 0 },
    {"write-batch",      0,  POPT_ARG_STRING, &batch_name, OPT_WRITE_BATCH, 0, 0 },
-@@ -2228,6 +2236,8 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -2232,6 +2240,8 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                        tmpdir = sanitize_path(NULL, tmpdir, NULL, 0, SP_DEFAULT);
                if (backup_dir)
                        backup_dir = sanitize_path(NULL, backup_dir, NULL, 0, SP_DEFAULT);
@@ -248,7 +248,7 @@ diff --git a/options.c b/options.c
        }
        if (daemon_filter_list.head && !am_sender) {
                filter_rule_list *elp = &daemon_filter_list;
-@@ -2249,6 +2259,14 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -2253,6 +2263,14 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                        if (check_filter(elp, FLOG, dir, 1) < 0)
                                goto options_rejected;
                }
@@ -263,7 +263,7 @@ diff --git a/options.c b/options.c
        }
  
        if (!backup_suffix)
-@@ -2260,6 +2278,20 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -2264,6 +2282,20 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                        backup_suffix);
                return 0;
        }
@@ -284,7 +284,7 @@ diff --git a/options.c b/options.c
        if (backup_dir) {
                size_t len;
                make_backups = 1; /* --backup-dir implies --backup */
-@@ -2296,6 +2328,34 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -2300,6 +2332,34 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                        "P *%s", backup_suffix);
                parse_filter_str(&filter_list, backup_dir_buf, rule_template(0), 0);
        }
@@ -319,7 +319,7 @@ diff --git a/options.c b/options.c
  
        if (make_backups && !backup_dir)
                omit_dir_times = -1; /* Implied, so avoid -O to sender. */
-@@ -2748,11 +2808,20 @@ void server_options(char **args, int *argc_p)
+@@ -2764,11 +2824,20 @@ void server_options(char **args, int *argc_p)
                args[ac++] = "--backup-dir";
                args[ac++] = safe_arg("", backup_dir);
        }
@@ -343,7 +343,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -367,7 +367,9 @@ has its own detailed description later in this manpage.
+@@ -369,7 +369,9 @@ has its own detailed description later in this manpage.
  --backup, -b             make backups (see --suffix & --backup-dir)
  --backup-deleted         make backups only of deleted files
  --backup-dir=DIR         make backups into hierarchy based in DIR
@@ -353,7 +353,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --update, -u             skip files that are newer on the receiver
  --inplace                update destination files in-place
  --append                 append data onto shorter files
-@@ -960,6 +962,11 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -964,6 +966,11 @@ expand it.
      daemon is the receiver, the backup dir cannot go outside the module's path
      hierarchy, so take extra care not to delete it or copy into it.
  
index ddabb6c36a6b73779f068f4ca5157458e964f3c0..103f9ffe9616fa4d4f9350f08eb5dd6479c232d0 100644 (file)
@@ -25,7 +25,7 @@ To use this patch, run these commands for a successful build:
     ./configure                                  (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/errcode.h b/errcode.h
 --- a/errcode.h
 +++ b/errcode.h
@@ -52,7 +52,7 @@ diff --git a/log.c b/log.c
 diff --git a/main.c b/main.c
 --- a/main.c
 +++ b/main.c
-@@ -217,8 +217,11 @@ static void wait_process_with_flush(pid_t pid, int *exit_code_ptr)
+@@ -216,8 +216,11 @@ static void wait_process_with_flush(pid_t pid, int *exit_code_ptr)
                        *exit_code_ptr = RERR_TERMINATED;
                else
                        *exit_code_ptr = RERR_WAITCHILD;
@@ -65,7 +65,7 @@ diff --git a/main.c b/main.c
  }
  
  void write_del_stats(int f)
-@@ -1637,6 +1640,14 @@ void remember_children(UNUSED(int val))
+@@ -1635,6 +1638,14 @@ void remember_children(UNUSED(int val))
                                break;
                        }
                }
@@ -80,7 +80,7 @@ diff --git a/main.c b/main.c
        }
  #endif
  #ifndef HAVE_SIGACTION
-@@ -1690,6 +1701,13 @@ static void rsync_panic_handler(UNUSED(int whatsig))
+@@ -1688,6 +1699,13 @@ static void rsync_panic_handler(UNUSED(int whatsig))
  }
  #endif
  
@@ -94,7 +94,7 @@ diff --git a/main.c b/main.c
  static void unset_env_var(const char *var)
  {
  #ifdef HAVE_UNSETENV
-@@ -1706,7 +1724,6 @@ static void unset_env_var(const char *var)
+@@ -1704,7 +1722,6 @@ static void unset_env_var(const char *var)
  #endif
  }
  
@@ -102,7 +102,7 @@ diff --git a/main.c b/main.c
  int main(int argc,char *argv[])
  {
        int ret;
-@@ -1730,6 +1747,11 @@ int main(int argc,char *argv[])
+@@ -1728,6 +1745,11 @@ int main(int argc,char *argv[])
        SIGACTMASK(SIGFPE, rsync_panic_handler);
        SIGACTMASK(SIGABRT, rsync_panic_handler);
        SIGACTMASK(SIGBUS, rsync_panic_handler);
index 6b1e5a767c050b562dc34498b2c6520e3b4ccb5d..19738035f0499cfac681d148d708d7d83cd23909 100644 (file)
@@ -16,7 +16,7 @@ To use this patch, run these commands for a successful build:
     ./configure                               (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/clientserver.c b/clientserver.c
 --- a/clientserver.c
 +++ b/clientserver.c
@@ -648,7 +648,7 @@ diff --git a/loadparm.c b/loadparm.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -123,6 +123,7 @@ size_t bwlimit_writemax = 0;
+@@ -126,6 +126,7 @@ size_t bwlimit_writemax = 0;
  int ignore_existing = 0;
  int ignore_non_existing = 0;
  int need_messages_from_generator = 0;
@@ -656,7 +656,7 @@ diff --git a/options.c b/options.c
  int max_delete = INT_MIN;
  OFF_T max_size = -1;
  OFF_T min_size = -1;
-@@ -578,7 +579,7 @@ enum {OPT_SERVER = 1000, OPT_DAEMON, OPT_SENDER, OPT_EXCLUDE, OPT_EXCLUDE_FROM,
+@@ -581,7 +582,7 @@ enum {OPT_SERVER = 1000, OPT_DAEMON, OPT_SENDER, OPT_EXCLUDE, OPT_EXCLUDE_FROM,
        OPT_INCLUDE, OPT_INCLUDE_FROM, OPT_MODIFY_WINDOW, OPT_MIN_SIZE, OPT_CHMOD,
        OPT_READ_BATCH, OPT_WRITE_BATCH, OPT_ONLY_WRITE_BATCH, OPT_MAX_SIZE,
        OPT_NO_D, OPT_APPEND, OPT_NO_ICONV, OPT_INFO, OPT_DEBUG, OPT_BLOCK_SIZE,
@@ -665,7 +665,7 @@ diff --git a/options.c b/options.c
        OPT_OLD_COMPRESS, OPT_NEW_COMPRESS, OPT_NO_COMPRESS, OPT_OLD_ARGS,
        OPT_STOP_AFTER, OPT_STOP_AT,
        OPT_REFUSED_BASE = 9000};
-@@ -735,6 +736,7 @@ static struct poptOption long_options[] = {
+@@ -738,6 +739,7 @@ static struct poptOption long_options[] = {
    {"no-c",             0,  POPT_ARG_VAL,    &always_checksum, 0, 0, 0 },
    {"checksum-choice",  0,  POPT_ARG_STRING, &checksum_choice, 0, 0, 0 },
    {"cc",               0,  POPT_ARG_STRING, &checksum_choice, 0, 0, 0 },
@@ -673,7 +673,7 @@ diff --git a/options.c b/options.c
    {"block-size",      'B', POPT_ARG_STRING, 0, OPT_BLOCK_SIZE, 0, 0 },
    {"compare-dest",     0,  POPT_ARG_STRING, 0, OPT_COMPARE_DEST, 0, 0 },
    {"copy-dest",        0,  POPT_ARG_STRING, 0, OPT_COPY_DEST, 0, 0 },
-@@ -1740,6 +1742,23 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -1744,6 +1746,23 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                        }
                        break;
  
@@ -697,7 +697,7 @@ diff --git a/options.c b/options.c
                case OPT_INFO:
                        arg = poptGetOptArg(pc);
                        parse_output_words(info_words, info_levels, arg, USER_PRIORITY);
-@@ -2093,6 +2112,9 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -2097,6 +2116,9 @@ int parse_arguments(int *argc_p, const char ***argv_p)
        }
  #endif
  
@@ -710,7 +710,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -359,6 +359,7 @@ has its own detailed description later in this manpage.
+@@ -361,6 +361,7 @@ has its own detailed description later in this manpage.
  --quiet, -q              suppress non-error messages
  --no-motd                suppress daemon-mode MOTD
  --checksum, -c           skip based on checksum, not mod-time & size
@@ -718,7 +718,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --archive, -a            archive mode is -rlptgoD (no -A,-X,-U,-N,-H)
  --no-OPTION              turn off an implied OPTION (e.g. --no-D)
  --recursive, -r          recurse into directories
-@@ -746,6 +747,8 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -750,6 +751,8 @@ expand it.
      file that has the same size as the corresponding sender's file: files with
      either a changed size or a changed checksum are selected for transfer.
  
@@ -727,7 +727,7 @@ diff --git a/rsync.1.md b/rsync.1.md
      Note that rsync always verifies that each _transferred_ file was correctly
      reconstructed on the receiving side by checking a whole-file checksum that
      is generated as the file is transferred, but that automatic
-@@ -757,6 +760,38 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -761,6 +764,38 @@ expand it.
      option or an environment variable that is discussed in that option's
      section.
  
index a736cb73c391718287bb6fd217c150e68a83e638..a43bca6d4ca61f93e98e40b5bbe4626e7baf4f85 100644 (file)
@@ -547,7 +547,7 @@ diff --git a/loadparm.c b/loadparm.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -1744,7 +1744,15 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -1748,7 +1748,15 @@ int parse_arguments(int *argc_p, const char ***argv_p)
  
                case OPT_SUMFILES:
                        arg = poptGetOptArg(pc);
@@ -596,7 +596,7 @@ diff --git a/receiver.c b/receiver.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -771,9 +771,13 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -775,9 +775,13 @@ expand it.
  
      The MODE value is either "lax", for relaxed checking (which compares size
      and mtime), "strict" (which also compares ctime and inode), or "none" to
index 816fdfde63633c460a72013ab153de56c37eff90..a32c8295dd1ee4b96b8fcde952c6fdf97008ff2a 100644 (file)
@@ -8,7 +8,7 @@ To use this patch, run these commands for a successful build:
     ./configure                               (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/flist.c b/flist.c
 --- a/flist.c
 +++ b/flist.c
index 5d4cfb785b3d686e7190b268d4c8f71d87c09e28..c813775b56f357f37a4d380c4cfa99196c9d23e8 100644 (file)
@@ -13,7 +13,7 @@ To use this patch, run these commands for a successful build:
     ./configure                         (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/Makefile.in b/Makefile.in
 --- a/Makefile.in
 +++ b/Makefile.in
@@ -79,7 +79,7 @@ diff --git a/generator.c b/generator.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -578,7 +578,7 @@ enum {OPT_SERVER = 1000, OPT_DAEMON, OPT_SENDER, OPT_EXCLUDE, OPT_EXCLUDE_FROM,
+@@ -581,7 +581,7 @@ enum {OPT_SERVER = 1000, OPT_DAEMON, OPT_SENDER, OPT_EXCLUDE, OPT_EXCLUDE_FROM,
        OPT_INCLUDE, OPT_INCLUDE_FROM, OPT_MODIFY_WINDOW, OPT_MIN_SIZE, OPT_CHMOD,
        OPT_READ_BATCH, OPT_WRITE_BATCH, OPT_ONLY_WRITE_BATCH, OPT_MAX_SIZE,
        OPT_NO_D, OPT_APPEND, OPT_NO_ICONV, OPT_INFO, OPT_DEBUG, OPT_BLOCK_SIZE,
@@ -88,7 +88,7 @@ diff --git a/options.c b/options.c
        OPT_OLD_COMPRESS, OPT_NEW_COMPRESS, OPT_NO_COMPRESS, OPT_OLD_ARGS,
        OPT_STOP_AFTER, OPT_STOP_AT,
        OPT_REFUSED_BASE = 9000};
-@@ -739,6 +739,7 @@ static struct poptOption long_options[] = {
+@@ -742,6 +742,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 },
@@ -96,7 +96,7 @@ diff --git a/options.c b/options.c
    {"fuzzy",           'y', POPT_ARG_NONE,   0, 'y', 0, 0 },
    {"no-fuzzy",         0,  POPT_ARG_VAL,    &fuzzy_basis, 0, 0, 0 },
    {"no-y",             0,  POPT_ARG_VAL,    &fuzzy_basis, 0, 0, 0 },
-@@ -997,6 +998,9 @@ static void set_refuse_options(void)
+@@ -1001,6 +1002,9 @@ static void set_refuse_options(void)
  #ifndef SUPPORT_HARD_LINKS
        parse_one_refuse_match(0, "link-dest", list_end);
  #endif
@@ -106,7 +106,7 @@ diff --git a/options.c b/options.c
  #ifndef HAVE_MKTIME
        parse_one_refuse_match(0, "stop-at", list_end);
  #endif
-@@ -1326,6 +1330,8 @@ char *alt_dest_opt(int type)
+@@ -1330,6 +1334,8 @@ char *alt_dest_opt(int type)
                return "--copy-dest";
        case LINK_DEST:
                return "--link-dest";
@@ -115,7 +115,7 @@ diff --git a/options.c b/options.c
        default:
                NOISY_DEATH("Unknown alt_dest_opt type");
        }
-@@ -1703,6 +1709,10 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -1707,6 +1713,10 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                        want_dest_type = LINK_DEST;
                        goto set_dest_dir;
  
@@ -129,7 +129,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -447,6 +447,7 @@ has its own detailed description later in this manpage.
+@@ -449,6 +449,7 @@ has its own detailed description later in this manpage.
  --compare-dest=DIR       also compare destination files relative to DIR
  --copy-dest=DIR          ... and include copies of unchanged files
  --link-dest=DIR          hardlink to files in DIR when unchanged
@@ -137,7 +137,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --compress, -z           compress file data during the transfer
  --compress-choice=STR    choose the compression algorithm (aka --zc)
  --compress-level=NUM     explicitly set compression level (aka --zl)
-@@ -2584,6 +2585,18 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -2619,6 +2620,18 @@ expand it.
      this bug by avoiding the `-o` option (or using `--no-o`) when sending to an
      old rsync.
  
index ea452d7b43ac56b4afdb690c9a52669bedec9900..75f9a1a9b967cac7f3e28f23a09defc99f815d38 100644 (file)
@@ -27,7 +27,7 @@ To use this patch, run these commands for a successful build:
     ./configure                         (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/daemon-parm.txt b/daemon-parm.txt
 --- a/daemon-parm.txt
 +++ b/daemon-parm.txt
@@ -50,7 +50,7 @@ diff --git a/daemon-parm.txt b/daemon-parm.txt
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -76,6 +76,8 @@ int delete_during = 0;
+@@ -79,6 +79,8 @@ int delete_during = 0;
  int delete_before = 0;
  int delete_after = 0;
  int delete_excluded = 0;
@@ -59,7 +59,7 @@ diff --git a/options.c b/options.c
  int remove_source_files = 0;
  int one_file_system = 0;
  int protocol_version = PROTOCOL_VERSION;
-@@ -825,6 +827,8 @@ static struct poptOption long_options[] = {
+@@ -829,6 +831,8 @@ static struct poptOption long_options[] = {
    {"outbuf",           0,  POPT_ARG_STRING, &outbuf_mode, 0, 0, 0 },
    {"remote-option",   'M', POPT_ARG_STRING, 0, 'M', 0, 0 },
    {"protocol",         0,  POPT_ARG_INT,    &protocol_version, 0, 0, 0 },
@@ -71,7 +71,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -467,6 +467,8 @@ has its own detailed description later in this manpage.
+@@ -470,6 +470,8 @@ has its own detailed description later in this manpage.
  --address=ADDRESS        bind address for outgoing socket to daemon
  --port=PORT              specify double-colon alternate port number
  --sockopts=OPTIONS       specify custom TCP options
index 128708eb0471335aff7b9eb93e19723cb9d3e859..22083a15468a897efa951206eb235dc6f54184c7 100644 (file)
@@ -14,7 +14,7 @@ To use this patch, run these commands for a successful build:
     ./configure                                 (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/generator.c b/generator.c
 --- a/generator.c
 +++ b/generator.c
@@ -39,7 +39,7 @@ diff --git a/generator.c b/generator.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -116,6 +116,7 @@ int safe_symlinks = 0;
+@@ -119,6 +119,7 @@ int safe_symlinks = 0;
  int copy_unsafe_links = 0;
  int munge_symlinks = 0;
  int size_only = 0;
@@ -47,7 +47,7 @@ diff --git a/options.c b/options.c
  int daemon_bwlimit = 0;
  int bwlimit = 0;
  int fuzzy_basis = 0;
-@@ -685,6 +686,7 @@ static struct poptOption long_options[] = {
+@@ -688,6 +689,7 @@ static struct poptOption long_options[] = {
    {"chmod",            0,  POPT_ARG_STRING, 0, OPT_CHMOD, 0, 0 },
    {"ignore-times",    'I', POPT_ARG_NONE,   &ignore_times, 0, 0, 0 },
    {"size-only",        0,  POPT_ARG_NONE,   &size_only, 0, 0, 0 },
@@ -55,7 +55,7 @@ diff --git a/options.c b/options.c
    {"one-file-system", 'x', POPT_ARG_NONE,   0, 'x', 0, 0 },
    {"no-one-file-system",0, POPT_ARG_VAL,    &one_file_system, 0, 0, 0 },
    {"no-x",             0,  POPT_ARG_VAL,    &one_file_system, 0, 0, 0 },
-@@ -2810,6 +2812,9 @@ void server_options(char **args, int *argc_p)
+@@ -2826,6 +2828,9 @@ void server_options(char **args, int *argc_p)
        else if (missing_args == 1 && !am_sender)
                args[ac++] = "--ignore-missing-args";
  
@@ -68,7 +68,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -441,6 +441,7 @@ has its own detailed description later in this manpage.
+@@ -443,6 +443,7 @@ has its own detailed description later in this manpage.
  --contimeout=SECONDS     set daemon connection timeout in seconds
  --ignore-times, -I       don't skip files that match size and time
  --size-only              skip files that match in size
@@ -76,7 +76,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --modify-window=NUM, -@  set the accuracy for mod-time comparisons
  --temp-dir=DIR, -T       create temporary files in directory DIR
  --fuzzy, -y              find similar file for basis if no dest file
-@@ -708,6 +709,14 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -712,6 +713,14 @@ expand it.
      after using another mirroring system which may not preserve timestamps
      exactly.
  
diff --git a/db.diff b/db.diff
index 61af7b96ba0ca7466a952b2bd4506b89e6de2207..4b474fe1f2e6d447c80da1e06953ac17f71aaeb3 100644 (file)
--- a/db.diff
+++ b/db.diff
@@ -21,7 +21,7 @@ To use this patch, run these commands for a successful build:
     ./configure
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/.gitignore b/.gitignore
 --- a/.gitignore
 +++ b/.gitignore
@@ -2438,7 +2438,7 @@ diff --git a/main.c b/main.c
  extern int mkpath_dest_arg;
  extern int file_total;
  extern int recurse;
-@@ -96,6 +98,7 @@ extern char *logfile_format;
+@@ -95,6 +97,7 @@ extern char *logfile_format;
  extern char *filesfrom_host;
  extern char *partial_dir;
  extern char *rsync_path;
@@ -2446,7 +2446,7 @@ diff --git a/main.c b/main.c
  extern char *shell_cmd;
  extern char *password_file;
  extern char *backup_dir;
-@@ -1240,6 +1243,9 @@ void start_server(int f_in, int f_out, int argc, char *argv[])
+@@ -1238,6 +1241,9 @@ void start_server(int f_in, int f_out, int argc, char *argv[])
        if (am_daemon && io_timeout && protocol_version >= 31)
                send_msg_int(MSG_IO_TIMEOUT, io_timeout);
  
@@ -2456,7 +2456,7 @@ diff --git a/main.c b/main.c
        if (am_sender) {
                keep_dirlinks = 0; /* Must be disabled on the sender. */
                if (need_messages_from_generator)
-@@ -1537,6 +1543,9 @@ static int start_client(int argc, char *argv[])
+@@ -1535,6 +1541,9 @@ static int start_client(int argc, char *argv[])
        else
                env_port = rsync_port;
  
@@ -2469,7 +2469,7 @@ diff --git a/main.c b/main.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -87,6 +87,7 @@ int am_root = 0; /* 0 = normal, 1 = root, 2 = --super, -1 = --fake-super */
+@@ -90,6 +90,7 @@ int am_root = 0; /* 0 = normal, 1 = root, 2 = --super, -1 = --fake-super */
  int am_server = 0;
  int am_sender = 0;
  int am_starting_up = 1;
@@ -2477,7 +2477,7 @@ diff --git a/options.c b/options.c
  int relative_paths = -1;
  int implied_dirs = 1;
  int missing_args = 0; /* 0 = FERROR_XFER, 1 = ignore, 2 = delete */
-@@ -101,6 +102,7 @@ int use_qsort = 0;
+@@ -104,6 +105,7 @@ int use_qsort = 0;
  char *files_from = NULL;
  int filesfrom_fd = -1;
  char *filesfrom_host = NULL;
@@ -2485,7 +2485,7 @@ diff --git a/options.c b/options.c
  int eol_nulls = 0;
  int protect_args = -1;
  int old_style_args = -1;
-@@ -110,6 +112,9 @@ int mkpath_dest_arg = 0;
+@@ -113,6 +115,9 @@ int mkpath_dest_arg = 0;
  int allow_inc_recurse = 1;
  int xfer_dirs = -1;
  int am_daemon = 0;
@@ -2495,7 +2495,7 @@ diff --git a/options.c b/options.c
  int connect_timeout = 0;
  int keep_partial = 0;
  int safe_symlinks = 0;
-@@ -289,6 +294,7 @@ static struct output_struct debug_words[COUNT_DEBUG+1] = {
+@@ -292,6 +297,7 @@ static struct output_struct debug_words[COUNT_DEBUG+1] = {
        DEBUG_WORD(CHDIR, W_CLI|W_SRV, "Debug when the current directory changes"),
        DEBUG_WORD(CONNECT, W_CLI, "Debug connection events (levels 1-2)"),
        DEBUG_WORD(CMD, W_CLI, "Debug commands+options that are issued (levels 1-2)"),
@@ -2503,7 +2503,7 @@ diff --git a/options.c b/options.c
        DEBUG_WORD(DEL, W_REC, "Debug delete actions (levels 1-3)"),
        DEBUG_WORD(DELTASUM, W_SND|W_REC, "Debug delta-transfer checksumming (levels 1-4)"),
        DEBUG_WORD(DUP, W_REC, "Debug weeding of duplicate names"),
-@@ -578,6 +584,7 @@ enum {OPT_SERVER = 1000, OPT_DAEMON, OPT_SENDER, OPT_EXCLUDE, OPT_EXCLUDE_FROM,
+@@ -581,6 +587,7 @@ enum {OPT_SERVER = 1000, OPT_DAEMON, OPT_SENDER, OPT_EXCLUDE, OPT_EXCLUDE_FROM,
        OPT_INCLUDE, OPT_INCLUDE_FROM, OPT_MODIFY_WINDOW, OPT_MIN_SIZE, OPT_CHMOD,
        OPT_READ_BATCH, OPT_WRITE_BATCH, OPT_ONLY_WRITE_BATCH, OPT_MAX_SIZE,
        OPT_NO_D, OPT_APPEND, OPT_NO_ICONV, OPT_INFO, OPT_DEBUG, OPT_BLOCK_SIZE,
@@ -2511,7 +2511,7 @@ diff --git a/options.c b/options.c
        OPT_USERMAP, OPT_GROUPMAP, OPT_CHOWN, OPT_BWLIMIT, OPT_STDERR,
        OPT_OLD_COMPRESS, OPT_NEW_COMPRESS, OPT_NO_COMPRESS, OPT_OLD_ARGS,
        OPT_STOP_AFTER, OPT_STOP_AT,
-@@ -735,6 +742,10 @@ static struct poptOption long_options[] = {
+@@ -738,6 +745,10 @@ static struct poptOption long_options[] = {
    {"no-c",             0,  POPT_ARG_VAL,    &always_checksum, 0, 0, 0 },
    {"checksum-choice",  0,  POPT_ARG_STRING, &checksum_choice, 0, 0, 0 },
    {"cc",               0,  POPT_ARG_STRING, &checksum_choice, 0, 0, 0 },
@@ -2522,7 +2522,7 @@ diff --git a/options.c b/options.c
    {"block-size",      'B', POPT_ARG_STRING, 0, OPT_BLOCK_SIZE, 0, 0 },
    {"compare-dest",     0,  POPT_ARG_STRING, 0, OPT_COMPARE_DEST, 0, 0 },
    {"copy-dest",        0,  POPT_ARG_STRING, 0, OPT_COPY_DEST, 0, 0 },
-@@ -834,6 +845,9 @@ static struct poptOption long_options[] = {
+@@ -838,6 +849,9 @@ static struct poptOption long_options[] = {
    {"dparam",           0,  POPT_ARG_STRING, 0, OPT_DAEMON, 0, 0 },
    {"detach",           0,  POPT_ARG_NONE,   0, OPT_DAEMON, 0, 0 },
    {"no-detach",        0,  POPT_ARG_NONE,   0, OPT_DAEMON, 0, 0 },
@@ -2532,7 +2532,7 @@ diff --git a/options.c b/options.c
    {0,0,0,0, 0, 0, 0}
  };
  
-@@ -862,6 +876,31 @@ static struct poptOption long_daemon_options[] = {
+@@ -866,6 +880,31 @@ static struct poptOption long_daemon_options[] = {
    {0,0,0,0, 0, 0, 0}
  };
  
@@ -2564,7 +2564,7 @@ diff --git a/options.c b/options.c
  
  static char err_buf[200];
  
-@@ -989,6 +1028,8 @@ static void set_refuse_options(void)
+@@ -993,6 +1032,8 @@ static void set_refuse_options(void)
                        parse_one_refuse_match(0, "iconv", list_end);
  #endif
                parse_one_refuse_match(0, "log-file*", list_end);
@@ -2573,7 +2573,7 @@ diff --git a/options.c b/options.c
        }
  
  #ifndef SUPPORT_ATIMES
-@@ -1296,6 +1337,102 @@ static void create_refuse_error(int which)
+@@ -1300,6 +1341,102 @@ static void create_refuse_error(int which)
                snprintf(err_buf + n, sizeof err_buf - n, " (-%c)\n", op->shortName);
  }
  
@@ -2676,7 +2676,7 @@ diff --git a/options.c b/options.c
  /* This is used to make sure that --daemon & --server cannot be aliased to
   * something else. These options have always disabled popt aliases for the
   * parsing of a daemon or server command-line, but we have to make sure that
-@@ -1352,6 +1489,12 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -1356,6 +1493,12 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                return 0;
        }
  
@@ -2689,7 +2689,7 @@ diff --git a/options.c b/options.c
        set_refuse_options();
  
  #ifdef ICONV_OPTION
-@@ -1470,6 +1613,12 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -1474,6 +1617,12 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                        am_daemon = 1;
                        return 1;
  
@@ -2702,7 +2702,7 @@ diff --git a/options.c b/options.c
                case OPT_MODIFY_WINDOW:
                        /* The value has already been set by popt, but
                         * we need to remember that we're using a
-@@ -1542,6 +1691,10 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -1546,6 +1695,10 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                        preserve_devices = preserve_specials = 0;
                        break;
  
@@ -2812,7 +2812,7 @@ diff --git a/receiver.c b/receiver.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -407,6 +407,9 @@ has its own detailed description later in this manpage.
+@@ -409,6 +409,9 @@ has its own detailed description later in this manpage.
  --dry-run, -n            perform a trial run with no changes made
  --whole-file, -W         copy files whole (w/o delta-xfer algorithm)
  --checksum-choice=STR    choose the checksum algorithm (aka --cc)
index 6ff117880ec4533c74b6e2bfac5de5c5b70c59ec..025d4e50801195a3e36439eb5391a324acefedd4 100644 (file)
@@ -60,7 +60,7 @@ diff --git a/generator.c b/generator.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -740,7 +740,9 @@ static struct poptOption long_options[] = {
+@@ -743,7 +743,9 @@ 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 },
@@ -71,7 +71,7 @@ diff --git a/options.c b/options.c
    {"fuzzy",           'y', POPT_ARG_NONE,   0, 'y', 0, 0 },
    {"no-fuzzy",         0,  POPT_ARG_VAL,    &fuzzy_basis, 0, 0, 0 },
    {"no-y",             0,  POPT_ARG_VAL,    &fuzzy_basis, 0, 0, 0 },
-@@ -2796,8 +2798,14 @@ void server_options(char **args, int *argc_p)
+@@ -2812,8 +2814,14 @@ void server_options(char **args, int *argc_p)
                        args[ac++] = "--super";
                if (size_only)
                        args[ac++] = "--size-only";
@@ -91,7 +91,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -445,6 +445,8 @@ has its own detailed description later in this manpage.
+@@ -447,6 +447,8 @@ has its own detailed description later in this manpage.
  --temp-dir=DIR, -T       create temporary files in directory DIR
  --fuzzy, -y              find similar file for basis if no dest file
  --detect-renamed         try to find renamed files to speed the xfer
@@ -100,7 +100,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --compare-dest=DIR       also compare destination files relative to DIR
  --copy-dest=DIR          ... and include copies of unchanged files
  --link-dest=DIR          hardlink to files in DIR when unchanged
-@@ -2516,6 +2518,20 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -2551,6 +2553,20 @@ expand it.
      otential alternate-basis files will be removed as the transfer progresses.
      This option conflicts with [`--inplace`](#opt) and [`--append`](#opt).
  
index 1b3db08ed19716f8b1565d6bd4dfa0cd8af15941..7ee87b2435c9125588ff2adb59ee162d1815d535 100644 (file)
@@ -38,7 +38,7 @@ TODO:
   a file that can't use it, while missing out on giving it to a file
   that could use it.
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/backup.c b/backup.c
 --- a/backup.c
 +++ b/backup.c
@@ -589,7 +589,7 @@ diff --git a/generator.c b/generator.c
 diff --git a/main.c b/main.c
 --- a/main.c
 +++ b/main.c
-@@ -717,7 +717,7 @@ static char *get_local_name(struct file_list *flist, char *dest_path)
+@@ -715,7 +715,7 @@ static char *get_local_name(struct file_list *flist, char *dest_path)
  
        if (mkpath_dest_arg && statret < 0 && (cp || file_total > 1)) {
                int save_errno = errno;
@@ -601,7 +601,7 @@ diff --git a/main.c b/main.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -88,6 +88,7 @@ int am_server = 0;
+@@ -91,6 +91,7 @@ int am_server = 0;
  int am_sender = 0;
  int am_starting_up = 1;
  int relative_paths = -1;
@@ -609,7 +609,7 @@ diff --git a/options.c b/options.c
  int implied_dirs = 1;
  int missing_args = 0; /* 0 = FERROR_XFER, 1 = ignore, 2 = delete */
  int numeric_ids = 0;
-@@ -739,6 +740,7 @@ static struct poptOption long_options[] = {
+@@ -742,6 +743,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 },
@@ -617,7 +617,7 @@ diff --git a/options.c b/options.c
    {"fuzzy",           'y', POPT_ARG_NONE,   0, 'y', 0, 0 },
    {"no-fuzzy",         0,  POPT_ARG_VAL,    &fuzzy_basis, 0, 0, 0 },
    {"no-y",             0,  POPT_ARG_VAL,    &fuzzy_basis, 0, 0, 0 },
-@@ -2375,7 +2377,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -2379,7 +2381,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                inplace = 1;
        }
  
@@ -626,7 +626,7 @@ diff --git a/options.c b/options.c
                partial_dir = tmp_partialdir;
  
        if (inplace) {
-@@ -2384,6 +2386,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -2388,6 +2390,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                        snprintf(err_buf, sizeof err_buf,
                                 "--%s cannot be used with --%s\n",
                                 append_mode ? "append" : "inplace",
@@ -634,7 +634,7 @@ diff --git a/options.c b/options.c
                                 delay_updates ? "delay-updates" : "partial-dir");
                        return 0;
                }
-@@ -2793,6 +2796,8 @@ void server_options(char **args, int *argc_p)
+@@ -2809,6 +2812,8 @@ void server_options(char **args, int *argc_p)
                        args[ac++] = "--super";
                if (size_only)
                        args[ac++] = "--size-only";
@@ -658,7 +658,7 @@ diff --git a/receiver.c b/receiver.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -444,6 +444,7 @@ has its own detailed description later in this manpage.
+@@ -446,6 +446,7 @@ has its own detailed description later in this manpage.
  --modify-window=NUM, -@  set the accuracy for mod-time comparisons
  --temp-dir=DIR, -T       create temporary files in directory DIR
  --fuzzy, -y              find similar file for basis if no dest file
@@ -666,7 +666,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --compare-dest=DIR       also compare destination files relative to DIR
  --copy-dest=DIR          ... and include copies of unchanged files
  --link-dest=DIR          hardlink to files in DIR when unchanged
-@@ -2499,6 +2500,22 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -2534,6 +2535,22 @@ expand it.
      potential fuzzy-match files, so either use [`--delete-after`](#opt) or
      specify some filename exclusions if you need to prevent this.
  
index 66435cc62e248921abf629e01c624520e27bbcb8..97c366d1bbd06165181a833d5cfb670c8a1702c2 100644 (file)
@@ -10,7 +10,7 @@ To use this patch, run these commands for a successful build:
     ./configure                         (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
@@ -22,7 +22,7 @@ diff --git a/options.c b/options.c
  extern int module_id;
  extern int local_server;
  extern int sanitize_paths;
-@@ -760,6 +761,8 @@ static struct poptOption long_options[] = {
+@@ -763,6 +764,8 @@ static struct poptOption long_options[] = {
    {"partial-dir",      0,  POPT_ARG_STRING, &partial_dir, 0, 0, 0 },
    {"delay-updates",    0,  POPT_ARG_VAL,    &delay_updates, 1, 0, 0 },
    {"no-delay-updates", 0,  POPT_ARG_VAL,    &delay_updates, 0, 0, 0 },
@@ -34,7 +34,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -432,6 +432,7 @@ has its own detailed description later in this manpage.
+@@ -434,6 +434,7 @@ has its own detailed description later in this manpage.
  --partial                keep partially transferred files
  --partial-dir=DIR        put a partially transferred file into DIR
  --delay-updates          put all updated files into place at end
@@ -42,7 +42,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --prune-empty-dirs, -m   prune empty directory chains from file-list
  --numeric-ids            don't map uid/gid values by user/group name
  --usermap=STRING         custom username mapping
-@@ -3299,6 +3300,17 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -3334,6 +3335,17 @@ expand it.
      update algorithm that is even more atomic (it uses [`--link-dest`](#opt)
      and a parallel hierarchy of files).
  
index ce4649c9581a03bde1befd2e1e2fd4d9352c537d..138aa89c54211af030758aae679a091321f08c2d 100644 (file)
@@ -7,7 +7,7 @@ To use this patch, run these commands for a successful build:
     ./configure                                 (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/generator.c b/generator.c
 --- a/generator.c
 +++ b/generator.c
@@ -51,15 +51,15 @@ diff --git a/generator.c b/generator.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -65,6 +65,7 @@ int preserve_crtimes = 0;
- int omit_dir_times = 0;
+@@ -68,6 +68,7 @@ int omit_dir_times = 0;
  int omit_link_times = 0;
+ int trust_sender = 0;
  int update_only = 0;
 +int downdate_only = 0;
  int open_noatime = 0;
  int cvs_exclude = 0;
  int dry_run = 0;
-@@ -689,6 +690,7 @@ static struct poptOption long_options[] = {
+@@ -692,6 +693,7 @@ static struct poptOption long_options[] = {
    {"no-one-file-system",0, POPT_ARG_VAL,    &one_file_system, 0, 0, 0 },
    {"no-x",             0,  POPT_ARG_VAL,    &one_file_system, 0, 0, 0 },
    {"update",          'u', POPT_ARG_NONE,   &update_only, 0, 0, 0 },
@@ -70,7 +70,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -368,6 +368,7 @@ has its own detailed description later in this manpage.
+@@ -370,6 +370,7 @@ has its own detailed description later in this manpage.
  --backup-dir=DIR         make backups into hierarchy based in DIR
  --suffix=SUFFIX          backup suffix (default ~ w/o --backup-dir)
  --update, -u             skip files that are newer on the receiver
index 21ca747065a59cdeb379a1c431282fdb26c3dc92..5d0aced521812f0c8147f7bb943b546bf9598f11 100644 (file)
@@ -7,7 +7,7 @@ To use this patch, run these commands for a successful build:
     ./configure                         (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/compat.c b/compat.c
 --- a/compat.c
 +++ b/compat.c
@@ -341,7 +341,7 @@ diff --git a/main.c b/main.c
  extern int msgs2stderr;
  extern int module_id;
  extern int read_only;
-@@ -968,6 +972,22 @@ static int do_recv(int f_in, int f_out, char *local_name)
+@@ -966,6 +970,22 @@ static int do_recv(int f_in, int f_out, char *local_name)
         * points to an identical file won't be replaced by the referent. */
        copy_links = copy_dirlinks = copy_unsafe_links = 0;
  
@@ -367,7 +367,7 @@ diff --git a/main.c b/main.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -54,6 +54,7 @@ int preserve_hard_links = 0;
+@@ -56,6 +56,7 @@ int preserve_hard_links = 0;
  int preserve_acls = 0;
  int preserve_xattrs = 0;
  int preserve_perms = 0;
@@ -375,7 +375,7 @@ diff --git a/options.c b/options.c
  int preserve_executability = 0;
  int preserve_devices = 0;
  int preserve_specials = 0;
-@@ -95,6 +96,7 @@ int msgs2stderr = 2; /* Default: send errors to stderr for local & remote-shell
+@@ -98,6 +99,7 @@ int msgs2stderr = 2; /* Default: send errors to stderr for local & remote-shell
  int saw_stderr_opt = 0;
  int allow_8bit_chars = 0;
  int force_delete = 0;
@@ -383,7 +383,7 @@ diff --git a/options.c b/options.c
  int io_timeout = 0;
  int prune_empty_dirs = 0;
  int use_qsort = 0;
-@@ -619,6 +621,8 @@ static struct poptOption long_options[] = {
+@@ -622,6 +624,8 @@ static struct poptOption long_options[] = {
    {"perms",           'p', POPT_ARG_VAL,    &preserve_perms, 1, 0, 0 },
    {"no-perms",         0,  POPT_ARG_VAL,    &preserve_perms, 0, 0, 0 },
    {"no-p",             0,  POPT_ARG_VAL,    &preserve_perms, 0, 0, 0 },
@@ -392,7 +392,7 @@ diff --git a/options.c b/options.c
    {"executability",   'E', POPT_ARG_NONE,   &preserve_executability, 0, 0, 0 },
    {"acls",            'A', POPT_ARG_NONE,   0, 'A', 0, 0 },
    {"no-acls",          0,  POPT_ARG_VAL,    &preserve_acls, 0, 0, 0 },
-@@ -717,6 +721,12 @@ static struct poptOption long_options[] = {
+@@ -720,6 +724,12 @@ static struct poptOption long_options[] = {
    {"remove-source-files",0,POPT_ARG_VAL,    &remove_source_files, 1, 0, 0 },
    {"force",            0,  POPT_ARG_VAL,    &force_delete, 1, 0, 0 },
    {"no-force",         0,  POPT_ARG_VAL,    &force_delete, 0, 0, 0 },
@@ -405,7 +405,7 @@ diff --git a/options.c b/options.c
    {"ignore-errors",    0,  POPT_ARG_VAL,    &ignore_errors, 1, 0, 0 },
    {"no-ignore-errors", 0,  POPT_ARG_VAL,    &ignore_errors, 0, 0, 0 },
    {"max-delete",       0,  POPT_ARG_INT,    &max_delete, 0, 0, 0 },
-@@ -1009,6 +1019,14 @@ static void set_refuse_options(void)
+@@ -1013,6 +1023,14 @@ static void set_refuse_options(void)
  #ifndef SUPPORT_CRTIMES
        parse_one_refuse_match(0, "crtimes", list_end);
  #endif
@@ -420,7 +420,7 @@ diff --git a/options.c b/options.c
  
        /* Now we use the descrip values to actually mark the options for refusal. */
        for (op = long_options; op != list_end; op++) {
-@@ -2692,6 +2710,9 @@ void server_options(char **args, int *argc_p)
+@@ -2708,6 +2726,9 @@ void server_options(char **args, int *argc_p)
        if (xfer_dirs && !recurse && delete_mode && am_sender)
                args[ac++] = "--no-r";
  
@@ -430,7 +430,7 @@ diff --git a/options.c b/options.c
        if (do_compression && do_compression_level != CLVL_NOT_SPECIFIED) {
                if (asprintf(&arg, "--compress-level=%d", do_compression_level) < 0)
                        goto oom;
-@@ -2787,6 +2808,16 @@ void server_options(char **args, int *argc_p)
+@@ -2803,6 +2824,16 @@ void server_options(char **args, int *argc_p)
                        args[ac++] = "--delete-excluded";
                if (force_delete)
                        args[ac++] = "--force";
@@ -450,7 +450,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -383,6 +383,7 @@ has its own detailed description later in this manpage.
+@@ -385,6 +385,7 @@ has its own detailed description later in this manpage.
  --keep-dirlinks, -K      treat symlinked dir on receiver as dir
  --hard-links, -H         preserve hard links
  --perms, -p              preserve permissions
@@ -458,7 +458,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --executability, -E      preserve executability
  --chmod=CHMOD            affect file and/or directory permissions
  --acls, -A               preserve ACLs (implies --perms)
-@@ -424,7 +425,10 @@ has its own detailed description later in this manpage.
+@@ -426,7 +427,10 @@ has its own detailed description later in this manpage.
  --ignore-missing-args    ignore missing source args without error
  --delete-missing-args    delete missing source args from destination
  --ignore-errors          delete even if there are I/O errors
@@ -470,7 +470,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --max-delete=NUM         don't delete more than NUM files
  --max-size=SIZE          don't transfer any file larger than SIZE
  --min-size=SIZE          don't transfer any file smaller than SIZE
-@@ -763,6 +767,7 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -767,6 +771,7 @@ expand it.
      recursion and want to preserve almost everything.  Be aware that it does
      **not** include preserving ACLs (`-A`), xattrs (`-X`), atimes (`-U`),
      crtimes (`-N`), nor the finding and preserving of hardlinks (`-H`).
@@ -478,7 +478,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  
      The only exception to the above equivalence is when [`--files-from`](#opt)
      is specified, in which case [`-r`](#opt) is not implied.
-@@ -1222,7 +1227,7 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -1226,7 +1231,7 @@ expand it.
      Without this option, if the sending side has replaced a directory with a
      symlink to a directory, the receiving side will delete anything that is in
      the way of the new symlink, including a directory hierarchy (as long as
@@ -487,7 +487,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  
      See also [`--keep-dirlinks`](#opt) for an analogous option for the
      receiving side.
-@@ -1417,6 +1422,37 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -1421,6 +1426,37 @@ expand it.
      those used by [`--fake-super`](#opt)) unless you repeat the option (e.g. `-XX`).
      This "copy all xattrs" mode cannot be used with [`--fake-super`](#opt).
  
@@ -525,7 +525,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  0.  `--chmod=CHMOD`
  
      This option tells rsync to apply one or more comma-separated "chmod" modes
-@@ -1930,8 +1966,8 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -1934,8 +1970,8 @@ expand it.
      [`--ignore-missing-args`](#opt) option a step farther: each missing arg
      will become a deletion request of the corresponding destination file on the
      receiving side (should it exist).  If the destination file is a non-empty
@@ -536,7 +536,7 @@ diff --git a/rsync.1.md b/rsync.1.md
      independent of any other type of delete processing.
  
      The missing source files are represented by special file-list entries which
-@@ -1942,14 +1978,14 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -1946,14 +1982,14 @@ expand it.
      Tells [`--delete`](#opt) to go ahead and delete files even when there are
      I/O errors.
  
@@ -554,7 +554,7 @@ diff --git a/rsync.1.md b/rsync.1.md
      [`--recursive`](#opt) option was also enabled.
  
  0.  `--max-delete=NUM`
-@@ -2965,7 +3001,7 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -3000,7 +3036,7 @@ expand it.
      also turns on the output of other verbose messages).
  
      The "%i" escape has a cryptic output that is 11 letters long.  The general
index 3a354237451500600df4a887c18a817e99f16f00..9f0089291b4f04536e2bc713e86c09f663f003fd 100644 (file)
@@ -9,17 +9,18 @@ To use this patch, run these commands for a successful build:
     ./configure                         (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/exclude.c b/exclude.c
 --- a/exclude.c
 +++ b/exclude.c
-@@ -54,11 +54,14 @@ filter_rule_list cvs_filter_list = { .debug_type = " [global CVS]" };
+@@ -51,12 +51,15 @@ filter_rule_list cvs_filter_list = { .debug_type = " [global CVS]" };
  filter_rule_list daemon_filter_list = { .debug_type = " [daemon]" };
  filter_rule_list implied_filter_list = { .debug_type = " [implied]" };
  
 +filter_rule *last_hit_filter_rule;
 +
  int saw_xattr_filter = 0;
+ int trust_sender_args = 0;
  int trust_sender_filter = 0;
  
 -/* Need room enough for ":MODS " prefix plus some room to grow. */
@@ -30,7 +31,7 @@ diff --git a/exclude.c b/exclude.c
  
  #define SLASH_WILD3_SUFFIX "/***"
  
-@@ -137,8 +140,27 @@ static void teardown_mergelist(filter_rule *ex)
+@@ -135,8 +138,27 @@ static void teardown_mergelist(filter_rule *ex)
                mergelist_cnt--;
  }
  
@@ -337,7 +338,7 @@ diff --git a/flist.c b/flist.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -1440,7 +1440,9 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -1444,7 +1444,9 @@ expand it.
      >     --chmod=D2775,F664
  
      It is also legal to specify multiple `--chmod` options, as each additional
@@ -348,7 +349,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  
      See the [`--perms`](#opt) and [`--executability`](#opt) options for how the
      resulting permission value can be applied to the files in the transfer.
-@@ -2899,6 +2901,10 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -2934,6 +2936,10 @@ expand it.
      avoid a complaint about wildcard characters, but a modern rsync handles
      this automatically.
  
@@ -359,7 +360,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  0.  `--timeout=SECONDS`
  
      This option allows you to set a maximum I/O timeout in seconds.  If no data
-@@ -4051,6 +4057,15 @@ The following modifiers are accepted after an include (+) or exclude (-) rule:
+@@ -4084,6 +4090,15 @@ The following modifiers are accepted after an include (+) or exclude (-) rule:
    like "CVS" and "`*.o`" are marked as perishable, and will not prevent a
    directory that was removed on the source from being deleted on the
    destination.
@@ -375,7 +376,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  - An `x` indicates that a rule affects xattr names in xattr copy/delete
    operations (and is thus ignored when matching file/dir names).  If no
    xattr-matching rules are specified, a default xattr filtering rule is used
-@@ -4108,6 +4123,12 @@ The following modifiers are accepted after a merge or dir-merge rule:
+@@ -4141,6 +4156,12 @@ The following modifiers are accepted after a merge or dir-merge rule:
    rules in the file must not specify sides (via a modifier or a rule prefix
    such as `hide`).
  
index bd34e4ba954c31eec0ef9bf12760d551850a70f2..96cb47c27d560c86cc16d256466341e64d7a43bb 100644 (file)
@@ -12,7 +12,7 @@ TODO:
  - Make this code handle multibyte character encodings, and honor the
    --iconv setting when converting case.
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/exclude.c b/exclude.c
 --- a/exclude.c
 +++ b/exclude.c
@@ -214,7 +214,7 @@ diff --git a/lib/wildmatch.c b/lib/wildmatch.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -128,6 +128,7 @@ OFF_T max_size = -1;
+@@ -131,6 +131,7 @@ OFF_T max_size = -1;
  OFF_T min_size = -1;
  int ignore_errors = 0;
  int modify_window = 0;
@@ -222,7 +222,7 @@ diff --git a/options.c b/options.c
  int blocking_io = -1;
  int checksum_seed = 0;
  int inplace = 0;
-@@ -780,6 +781,8 @@ static struct poptOption long_options[] = {
+@@ -783,6 +784,8 @@ static struct poptOption long_options[] = {
    {"read-batch",       0,  POPT_ARG_STRING, &batch_name, OPT_READ_BATCH, 0, 0 },
    {"write-batch",      0,  POPT_ARG_STRING, &batch_name, OPT_WRITE_BATCH, 0, 0 },
    {"only-write-batch", 0,  POPT_ARG_STRING, &batch_name, OPT_ONLY_WRITE_BATCH, 0, 0 },
@@ -231,7 +231,7 @@ diff --git a/options.c b/options.c
    {"files-from",       0,  POPT_ARG_STRING, &files_from, 0, 0, 0 },
    {"from0",           '0', POPT_ARG_VAL,    &eol_nulls, 1, 0, 0},
    {"no-from0",         0,  POPT_ARG_VAL,    &eol_nulls, 0, 0, 0},
-@@ -2823,6 +2826,9 @@ void server_options(char **args, int *argc_p)
+@@ -2839,6 +2842,9 @@ void server_options(char **args, int *argc_p)
                args[ac++] = arg;
        }
  
@@ -244,15 +244,15 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -464,6 +464,7 @@ has its own detailed description later in this manpage.
- --old-args               disable the modern arg-protection idiom
+@@ -467,6 +467,7 @@ has its own detailed description later in this manpage.
  --protect-args, -s       no space-splitting; wildcard chars only
+ --trust-sender           trust the remote sender's file list
  --copy-as=USER[:GROUP]   specify user & optional group for the copy
 +--ignore-case            ignore case when comparing filenames
  --address=ADDRESS        bind address for outgoing socket to daemon
  --port=PORT              specify double-colon alternate port number
  --sockopts=OPTIONS       specify custom TCP options
-@@ -2447,6 +2448,12 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -2482,6 +2483,12 @@ expand it.
  
      >     sudo rsync -aive lsh -M--copy-as=joe src/ lh:dest/
  
index de6ece2addb56ebe02f9c0c9370dd7d06911140f..5813aadbb01bec420aa2ff83e1b974b8d05007ae 100644 (file)
@@ -9,7 +9,7 @@ To use this patch, run these commands for a successful build:
     ./configure
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/Makefile.in b/Makefile.in
 --- a/Makefile.in
 +++ b/Makefile.in
@@ -463,7 +463,7 @@ new file mode 100644
 diff --git a/main.c b/main.c
 --- a/main.c
 +++ b/main.c
-@@ -1580,7 +1580,7 @@ static int start_client(int argc, char *argv[])
+@@ -1578,7 +1578,7 @@ static int start_client(int argc, char *argv[])
         * remote shell command, we need to do the RSYNCD protocol first */
        if (daemon_connection) {
                int tmpret;
index 7ceeaeef9d8827ae408c5c11ff9dda4ed103c15b..45af67fe5e592455c9dc0dd4fc63e59b2f7d22c3 100644 (file)
@@ -12,7 +12,7 @@ To use this patch, run these commands for a successful build:
     ./configure
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/Makefile.in b/Makefile.in
 --- a/Makefile.in
 +++ b/Makefile.in
@@ -205,7 +205,7 @@ new file mode 100644
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -170,6 +170,7 @@ char *backup_suffix = NULL;
+@@ -173,6 +173,7 @@ char *backup_suffix = NULL;
  char *tmpdir = NULL;
  char *partial_dir = NULL;
  char *basis_dir[MAX_BASIS_DIRS+1];
@@ -213,7 +213,7 @@ diff --git a/options.c b/options.c
  char *config_file = NULL;
  char *shell_cmd = NULL;
  char *logfile_name = NULL;
-@@ -227,7 +228,7 @@ static const char *debug_verbosity[] = {
+@@ -230,7 +231,7 @@ static const char *debug_verbosity[] = {
        /*2*/ "BIND,CMD,CONNECT,DEL,DELTASUM,DUP,FILTER,FLIST,ICONV",
        /*3*/ "ACL,BACKUP,CONNECT2,DELTASUM2,DEL2,EXIT,FILTER2,FLIST2,FUZZY,GENR,OWN,RECV,SEND,TIME",
        /*4*/ "CMD2,DELTASUM3,DEL3,EXIT2,FLIST3,ICONV2,OWN2,PROTO,TIME2",
@@ -222,7 +222,7 @@ diff --git a/options.c b/options.c
  };
  
  #define MAX_VERBOSITY ((int)(sizeof debug_verbosity / sizeof debug_verbosity[0]) - 1)
-@@ -298,6 +299,7 @@ static struct output_struct debug_words[COUNT_DEBUG+1] = {
+@@ -301,6 +302,7 @@ static struct output_struct debug_words[COUNT_DEBUG+1] = {
        DEBUG_WORD(FUZZY, W_REC, "Debug fuzzy scoring (levels 1-2)"),
        DEBUG_WORD(GENR, W_REC, "Debug generator functions"),
        DEBUG_WORD(HASH, W_SND|W_REC, "Debug hashtable code"),
@@ -230,7 +230,7 @@ diff --git a/options.c b/options.c
        DEBUG_WORD(HLINK, W_SND|W_REC, "Debug hard-link actions (levels 1-3)"),
        DEBUG_WORD(ICONV, W_CLI|W_SRV, "Debug iconv character conversions (levels 1-2)"),
        DEBUG_WORD(IO, W_CLI|W_SRV, "Debug I/O routines (levels 1-4)"),
-@@ -578,7 +580,7 @@ enum {OPT_SERVER = 1000, OPT_DAEMON, OPT_SENDER, OPT_EXCLUDE, OPT_EXCLUDE_FROM,
+@@ -581,7 +583,7 @@ enum {OPT_SERVER = 1000, OPT_DAEMON, OPT_SENDER, OPT_EXCLUDE, OPT_EXCLUDE_FROM,
        OPT_INCLUDE, OPT_INCLUDE_FROM, OPT_MODIFY_WINDOW, OPT_MIN_SIZE, OPT_CHMOD,
        OPT_READ_BATCH, OPT_WRITE_BATCH, OPT_ONLY_WRITE_BATCH, OPT_MAX_SIZE,
        OPT_NO_D, OPT_APPEND, OPT_NO_ICONV, OPT_INFO, OPT_DEBUG, OPT_BLOCK_SIZE,
@@ -239,7 +239,7 @@ diff --git a/options.c b/options.c
        OPT_OLD_COMPRESS, OPT_NEW_COMPRESS, OPT_NO_COMPRESS, OPT_OLD_ARGS,
        OPT_STOP_AFTER, OPT_STOP_AT,
        OPT_REFUSED_BASE = 9000};
-@@ -739,6 +741,7 @@ static struct poptOption long_options[] = {
+@@ -742,6 +744,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 },
@@ -247,7 +247,7 @@ diff --git a/options.c b/options.c
    {"fuzzy",           'y', POPT_ARG_NONE,   0, 'y', 0, 0 },
    {"no-fuzzy",         0,  POPT_ARG_VAL,    &fuzzy_basis, 0, 0, 0 },
    {"no-y",             0,  POPT_ARG_VAL,    &fuzzy_basis, 0, 0, 0 },
-@@ -983,6 +986,9 @@ static void set_refuse_options(void)
+@@ -987,6 +990,9 @@ static void set_refuse_options(void)
                ref = cp + 1;
        }
  
@@ -257,7 +257,7 @@ diff --git a/options.c b/options.c
        if (am_daemon) {
  #ifdef ICONV_OPTION
                if (!*lp_charset(module_id))
-@@ -1856,6 +1862,20 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -1860,6 +1866,20 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                        return 0;
  #endif
  
@@ -278,7 +278,7 @@ diff --git a/options.c b/options.c
                case OPT_STOP_AFTER: {
                        long val;
                        arg = poptGetOptArg(pc);
-@@ -2227,6 +2247,8 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -2231,6 +2251,8 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                        tmpdir = sanitize_path(NULL, tmpdir, NULL, 0, SP_DEFAULT);
                if (backup_dir)
                        backup_dir = sanitize_path(NULL, backup_dir, NULL, 0, SP_DEFAULT);
@@ -287,7 +287,7 @@ diff --git a/options.c b/options.c
        }
        if (daemon_filter_list.head && !am_sender) {
                filter_rule_list *elp = &daemon_filter_list;
-@@ -2899,6 +2921,12 @@ void server_options(char **args, int *argc_p)
+@@ -2915,6 +2937,12 @@ void server_options(char **args, int *argc_p)
                        args[ac++] = "--no-W";
        }
  
@@ -303,7 +303,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -447,6 +447,7 @@ has its own detailed description later in this manpage.
+@@ -449,6 +449,7 @@ has its own detailed description later in this manpage.
  --compare-dest=DIR       also compare destination files relative to DIR
  --copy-dest=DIR          ... and include copies of unchanged files
  --link-dest=DIR          hardlink to files in DIR when unchanged
@@ -311,7 +311,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --compress, -z           compress file data during the transfer
  --compress-choice=STR    choose the compression algorithm (aka --zc)
  --compress-level=NUM     explicitly set compression level (aka --zl)
-@@ -2584,6 +2585,50 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -2619,6 +2620,50 @@ expand it.
      this bug by avoiding the `-o` option (or using `--no-o`) when sending to an
      old rsync.
  
index 5fcb69c350ec03b1df5a25cdb7dceb425941133e..72c0374cce0e34df9a46ab2fc9d87a3c2bd219fe 100644 (file)
@@ -7,7 +7,7 @@ To use this patch, run these commands for a successful build:
     ./configure                              (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/generator.c b/generator.c
 --- a/generator.c
 +++ b/generator.c
@@ -51,15 +51,15 @@ diff --git a/generator.c b/generator.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -62,6 +62,7 @@ int preserve_gid = 0;
+@@ -64,6 +64,7 @@ int preserve_gid = 0;
  int preserve_mtimes = 0;
  int preserve_atimes = 0;
  int preserve_crtimes = 0;
 +int omit_dir_changes = 0;
  int omit_dir_times = 0;
  int omit_link_times = 0;
- int update_only = 0;
-@@ -643,6 +644,7 @@ static struct poptOption long_options[] = {
+ int trust_sender = 0;
+@@ -646,6 +647,7 @@ static struct poptOption long_options[] = {
    {"omit-link-times", 'J', POPT_ARG_VAL,    &omit_link_times, 1, 0, 0 },
    {"no-omit-link-times",0, POPT_ARG_VAL,    &omit_link_times, 0, 0, 0 },
    {"no-J",             0,  POPT_ARG_VAL,    &omit_link_times, 0, 0, 0 },
@@ -67,7 +67,7 @@ diff --git a/options.c b/options.c
    {"modify-window",   '@', POPT_ARG_INT,    &modify_window, OPT_MODIFY_WINDOW, 0, 0 },
    {"super",            0,  POPT_ARG_VAL,    &am_root, 2, 0, 0 },
    {"no-super",         0,  POPT_ARG_VAL,    &am_root, 0, 0, 0 },
-@@ -2296,7 +2298,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -2300,7 +2302,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                parse_filter_str(&filter_list, backup_dir_buf, rule_template(0), 0);
        }
  
@@ -76,7 +76,7 @@ diff --git a/options.c b/options.c
                omit_dir_times = -1; /* Implied, so avoid -O to sender. */
  
        if (stdout_format) {
-@@ -2795,6 +2797,8 @@ void server_options(char **args, int *argc_p)
+@@ -2811,6 +2813,8 @@ void server_options(char **args, int *argc_p)
                        args[ac++] = "--size-only";
                if (do_stats)
                        args[ac++] = "--stats";
@@ -88,7 +88,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -400,6 +400,7 @@ has its own detailed description later in this manpage.
+@@ -402,6 +402,7 @@ has its own detailed description later in this manpage.
  --crtimes, -N            preserve create times (newness)
  --omit-dir-times, -O     omit directories from --times
  --omit-link-times, -J    omit symlinks from --times
@@ -96,7 +96,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --super                  receiver attempts super-user activities
  --fake-super             store/recover privileged attrs using xattrs
  --sparse, -S             turn sequences of nulls into sparse blocks
-@@ -1572,6 +1573,11 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -1576,6 +1577,11 @@ expand it.
      This tells rsync to omit symlinks when it is preserving modification,
      access, and create times.
  
index c585828b09380ebc07d88e02202c82a45d5debb9..298e1d5b2d47540f73e71c17fdf211481b11e063 100644 (file)
@@ -14,7 +14,7 @@ To use this patch, run these commands for a successful build:
     ./configure                           (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/flist.c b/flist.c
 --- a/flist.c
 +++ b/flist.c
@@ -39,7 +39,7 @@ diff --git a/flist.c b/flist.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -119,6 +119,7 @@ int size_only = 0;
+@@ -122,6 +122,7 @@ int size_only = 0;
  int daemon_bwlimit = 0;
  int bwlimit = 0;
  int fuzzy_basis = 0;
@@ -47,7 +47,7 @@ diff --git a/options.c b/options.c
  size_t bwlimit_writemax = 0;
  int ignore_existing = 0;
  int ignore_non_existing = 0;
-@@ -770,6 +771,7 @@ static struct poptOption long_options[] = {
+@@ -773,6 +774,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 },
@@ -58,7 +58,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -483,6 +483,7 @@ has its own detailed description later in this manpage.
+@@ -486,6 +486,7 @@ has its own detailed description later in this manpage.
  --early-input=FILE       use FILE for daemon's early exec input
  --list-only              list the files instead of copying them
  --bwlimit=RATE           limit socket I/O bandwidth
index e7e7b8ca9ad997f6b4da7a8f5fb3d5cdd770429a..b220ecbc8f7a994f89d09c5c2ea5e7fd70dafb16 100644 (file)
--- a/slp.diff
+++ b/slp.diff
@@ -10,7 +10,7 @@ To use this patch, run these commands for a successful build:
 TODO: the configure changes should abort if the user requests --enable-slp
 and we can't honor that request.
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/Makefile.in b/Makefile.in
 --- a/Makefile.in
 +++ b/Makefile.in
@@ -108,7 +108,7 @@ diff --git a/daemon-parm.txt b/daemon-parm.txt
 diff --git a/main.c b/main.c
 --- a/main.c
 +++ b/main.c
-@@ -1404,6 +1404,22 @@ static int start_client(int argc, char *argv[])
+@@ -1402,6 +1402,22 @@ static int start_client(int argc, char *argv[])
  
        if (!read_batch) { /* for read_batch, NO source is specified */
                char *path = check_for_hostspec(argv[0], &shell_machine, &rsync_port);
index 2a05013b3c14e8c3104d2c314805f4c36b906034..e3cbb327d23bfc95c6ef178a5a2520f04295045e 100644 (file)
@@ -10,7 +10,7 @@ To use this patch, run these commands for a successful build:
     ./configure                           (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/syscall.c b/syscall.c
 --- a/syscall.c
 +++ b/syscall.c
index 95244ab775849dd7422a8cef63a0517c44b4fe08..2efd0f4122b065f8266215b65dd667fcb8e22ad5 100644 (file)
@@ -9,11 +9,11 @@ To use this patch, run these commands for a successful build:
 
 -- Matt McCutchen <hashproduct@gmail.com>
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -32,6 +32,7 @@ extern filter_rule_list filter_list;
+@@ -34,6 +34,7 @@ extern filter_rule_list filter_list;
  extern filter_rule_list daemon_filter_list;
  
  int make_backups = 0;
@@ -21,7 +21,7 @@ diff --git a/options.c b/options.c
  
  /**
   * If 1, send the whole file as literal data rather than trying to
-@@ -773,6 +774,7 @@ static struct poptOption long_options[] = {
+@@ -776,6 +777,7 @@ static struct poptOption long_options[] = {
    {"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 },
@@ -29,7 +29,7 @@ diff --git a/options.c b/options.c
    {"no-backup",        0,  POPT_ARG_VAL,    &make_backups, 0, 0, 0 },
    {"backup-dir",       0,  POPT_ARG_STRING, &backup_dir, 0, 0, 0 },
    {"suffix",           0,  POPT_ARG_STRING, &backup_suffix, 0, 0, 0 },
-@@ -2798,6 +2800,8 @@ void server_options(char **args, int *argc_p)
+@@ -2814,6 +2816,8 @@ void server_options(char **args, int *argc_p)
        } else {
                if (skip_compress)
                        args[ac++] = safe_arg("--skip-compress", skip_compress);
@@ -41,7 +41,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -414,6 +414,7 @@ has its own detailed description later in this manpage.
+@@ -416,6 +416,7 @@ has its own detailed description later in this manpage.
  --existing               skip creating new files on receiver
  --ignore-existing        skip updating files that exist on receiver
  --remove-source-files    sender removes synchronized files (non-dir)
@@ -49,7 +49,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --del                    an alias for --delete-during
  --delete                 delete extraneous files from dest dirs
  --delete-before          receiver deletes before xfer, not during
-@@ -1804,6 +1805,17 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -1808,6 +1809,17 @@ expand it.
      Starting with 3.1.0, rsync will skip the sender-side removal (and output an
      error) if the file's size or modify time has not stayed unchanged.
  
index 9eef2dbc7e5183aa26b5e24e4a3978e0e5564573..6a6ce7f4fc97c1653f215ea4e3b1ba789d69a1b6 100644 (file)
@@ -30,7 +30,7 @@ To use this patch, run these commands for a successful build:
     ./configure                                (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/generator.c b/generator.c
 --- a/generator.c
 +++ b/generator.c
@@ -54,7 +54,7 @@ diff --git a/generator.c b/generator.c
 diff --git a/main.c b/main.c
 --- a/main.c
 +++ b/main.c
-@@ -190,7 +190,7 @@ int shell_exec(const char *cmd)
+@@ -189,7 +189,7 @@ int shell_exec(const char *cmd)
  }
  
  /* Wait for a process to exit, calling io_flush while waiting. */
@@ -66,7 +66,7 @@ diff --git a/main.c b/main.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -116,6 +116,7 @@ int safe_symlinks = 0;
+@@ -119,6 +119,7 @@ int safe_symlinks = 0;
  int copy_unsafe_links = 0;
  int munge_symlinks = 0;
  int size_only = 0;
@@ -74,7 +74,7 @@ diff --git a/options.c b/options.c
  int daemon_bwlimit = 0;
  int bwlimit = 0;
  int fuzzy_basis = 0;
-@@ -176,6 +177,8 @@ char *logfile_name = NULL;
+@@ -179,6 +180,8 @@ char *logfile_name = NULL;
  char *logfile_format = NULL;
  char *stdout_format = NULL;
  char *password_file = NULL;
@@ -83,7 +83,7 @@ diff --git a/options.c b/options.c
  char *early_input_file = NULL;
  char *rsync_path = RSYNC_PATH;
  char *backup_dir = NULL;
-@@ -685,6 +688,7 @@ static struct poptOption long_options[] = {
+@@ -688,6 +691,7 @@ static struct poptOption long_options[] = {
    {"chmod",            0,  POPT_ARG_STRING, 0, OPT_CHMOD, 0, 0 },
    {"ignore-times",    'I', POPT_ARG_NONE,   &ignore_times, 0, 0, 0 },
    {"size-only",        0,  POPT_ARG_NONE,   &size_only, 0, 0, 0 },
@@ -91,7 +91,7 @@ diff --git a/options.c b/options.c
    {"one-file-system", 'x', POPT_ARG_NONE,   0, 'x', 0, 0 },
    {"no-one-file-system",0, POPT_ARG_VAL,    &one_file_system, 0, 0, 0 },
    {"no-x",             0,  POPT_ARG_VAL,    &one_file_system, 0, 0, 0 },
-@@ -822,6 +826,8 @@ static struct poptOption long_options[] = {
+@@ -826,6 +830,8 @@ static struct poptOption long_options[] = {
    {"early-input",      0,  POPT_ARG_STRING, &early_input_file, 0, 0, 0 },
    {"blocking-io",      0,  POPT_ARG_VAL,    &blocking_io, 1, 0, 0 },
    {"no-blocking-io",   0,  POPT_ARG_VAL,    &blocking_io, 0, 0, 0 },
@@ -100,7 +100,7 @@ diff --git a/options.c b/options.c
    {"outbuf",           0,  POPT_ARG_STRING, &outbuf_mode, 0, 0, 0 },
    {"remote-option",   'M', POPT_ARG_STRING, 0, 'M', 0, 0 },
    {"protocol",         0,  POPT_ARG_INT,    &protocol_version, 0, 0, 0 },
-@@ -2419,6 +2425,16 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -2423,6 +2429,16 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                }
        }
  
@@ -117,7 +117,7 @@ diff --git a/options.c b/options.c
        if (files_from) {
                char *h, *p;
                int q;
-@@ -2810,6 +2826,25 @@ void server_options(char **args, int *argc_p)
+@@ -2826,6 +2842,25 @@ void server_options(char **args, int *argc_p)
        else if (missing_args == 1 && !am_sender)
                args[ac++] = "--ignore-missing-args";
  
@@ -313,7 +313,7 @@ diff --git a/receiver.c b/receiver.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -441,6 +441,7 @@ has its own detailed description later in this manpage.
+@@ -443,6 +443,7 @@ has its own detailed description later in this manpage.
  --contimeout=SECONDS     set daemon connection timeout in seconds
  --ignore-times, -I       don't skip files that match size and time
  --size-only              skip files that match in size
@@ -321,7 +321,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --modify-window=NUM, -@  set the accuracy for mod-time comparisons
  --temp-dir=DIR, -T       create temporary files in directory DIR
  --fuzzy, -y              find similar file for basis if no dest file
-@@ -489,6 +490,8 @@ has its own detailed description later in this manpage.
+@@ -492,6 +493,8 @@ has its own detailed description later in this manpage.
  --write-batch=FILE       write a batched update to FILE
  --only-write-batch=FILE  like --write-batch but w/o updating dest
  --read-batch=FILE        read a batched update from FILE
@@ -330,7 +330,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --protocol=NUM           force an older protocol version to be used
  --iconv=CONVERT_SPEC     request charset conversion of filenames
  --checksum-seed=NUM      set block/file checksum seed (advanced)
-@@ -3575,6 +3578,36 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -3610,6 +3613,36 @@ expand it.
      [`--write-batch`](#opt).  If _FILE_ is `-`, the batch data will be read
      from standard input. See the "BATCH MODE" section for details.
  
index 8246ae0b855086d3d53165d3173c3bb72dc251d5..84b8eb86170510933f12ec8ece24198e2612dd3d 100644 (file)
@@ -18,7 +18,7 @@ To use this patch, run these commands for a successful build:
     ./configure                               (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/fileio.c b/fileio.c
 --- a/fileio.c
 +++ b/fileio.c
@@ -42,7 +42,7 @@ diff --git a/fileio.c b/fileio.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -80,6 +80,7 @@ int remove_source_files = 0;
+@@ -83,6 +83,7 @@ int remove_source_files = 0;
  int one_file_system = 0;
  int protocol_version = PROTOCOL_VERSION;
  int sparse_files = 0;
@@ -50,7 +50,7 @@ diff --git a/options.c b/options.c
  int preallocate_files = 0;
  int do_compression = 0;
  int do_compression_level = CLVL_NOT_SPECIFIED;
-@@ -698,6 +699,7 @@ static struct poptOption long_options[] = {
+@@ -701,6 +702,7 @@ static struct poptOption long_options[] = {
    {"sparse",          'S', POPT_ARG_VAL,    &sparse_files, 1, 0, 0 },
    {"no-sparse",        0,  POPT_ARG_VAL,    &sparse_files, 0, 0, 0 },
    {"no-S",             0,  POPT_ARG_VAL,    &sparse_files, 0, 0, 0 },
@@ -58,7 +58,7 @@ diff --git a/options.c b/options.c
    {"preallocate",      0,  POPT_ARG_NONE,   &preallocate_files, 0, 0, 0},
    {"inplace",          0,  POPT_ARG_VAL,    &inplace, 1, 0, 0 },
    {"no-inplace",       0,  POPT_ARG_VAL,    &inplace, 0, 0, 0 },
-@@ -2730,6 +2732,12 @@ void server_options(char **args, int *argc_p)
+@@ -2746,6 +2748,12 @@ void server_options(char **args, int *argc_p)
                args[ac++] = arg;
        }
  
@@ -74,7 +74,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -403,6 +403,7 @@ has its own detailed description later in this manpage.
+@@ -405,6 +405,7 @@ has its own detailed description later in this manpage.
  --super                  receiver attempts super-user activities
  --fake-super             store/recover privileged attrs using xattrs
  --sparse, -S             turn sequences of nulls into sparse blocks
@@ -82,7 +82,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --preallocate            allocate dest files before writing them
  --dry-run, -n            perform a trial run with no changes made
  --whole-file, -W         copy files whole (w/o delta-xfer algorithm)
-@@ -1646,6 +1647,18 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -1650,6 +1651,18 @@ expand it.
      (as opposed to allocated sequences of null bytes) if the kernel version and
      filesystem type support creating holes in the allocated data.
  
index 3764917975e2595e50d592c7758e2c11f52b0ad4..79aba2d2f857e3439d61ab9562a42cd3181a995f 100644 (file)
@@ -10,7 +10,7 @@ To use this patch, run these commands for a successful build:
     ./configure                                 (optional if already run)
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/flist.c b/flist.c
 --- a/flist.c
 +++ b/flist.c
@@ -88,7 +88,7 @@ diff --git a/flist.c b/flist.c
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
-@@ -207,6 +207,7 @@ int logfile_format_has_i = 0;
+@@ -210,6 +210,7 @@ int logfile_format_has_i = 0;
  int logfile_format_has_o_or_i = 0;
  int always_checksum = 0;
  int list_only = 0;
@@ -96,7 +96,7 @@ diff --git a/options.c b/options.c
  
  #define MAX_BATCH_NAME_LEN 256        /* Must be less than MAXPATHLEN-13 */
  char *batch_name = NULL;
-@@ -806,6 +807,7 @@ static struct poptOption long_options[] = {
+@@ -810,6 +811,7 @@ static struct poptOption long_options[] = {
    {"temp-dir",        'T', POPT_ARG_STRING, &tmpdir, 0, 0, 0 },
    {"iconv",            0,  POPT_ARG_STRING, &iconv_opt, 0, 0, 0 },
    {"no-iconv",         0,  POPT_ARG_NONE,   0, OPT_NO_ICONV, 0, 0 },
@@ -104,7 +104,7 @@ diff --git a/options.c b/options.c
    {"ipv4",            '4', POPT_ARG_VAL,    &default_af_hint, AF_INET, 0, 0 },
    {"ipv6",            '6', POPT_ARG_VAL,    &default_af_hint, AF_INET6, 0, 0 },
    {"8-bit-output",    '8', POPT_ARG_VAL,    &allow_8bit_chars, 1, 0, 0 },
-@@ -2465,6 +2467,24 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -2469,6 +2471,24 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                }
        }
  
@@ -126,10 +126,10 @@ diff --git a/options.c b/options.c
 +                      tr_opt = NULL;
 +      }
 +
-       am_starting_up = 0;
-       return 1;
-@@ -2916,6 +2936,12 @@ void server_options(char **args, int *argc_p)
+       if (trust_sender || am_server || read_batch)
+               trust_sender_args = trust_sender_filter = 1;
+       else if (old_style_args || filesfrom_host != NULL)
+@@ -2932,6 +2952,12 @@ void server_options(char **args, int *argc_p)
        if (relative_paths && !implied_dirs && (!am_sender || protocol_version >= 30))
                args[ac++] = "--no-implied-dirs";
  
@@ -145,7 +145,7 @@ diff --git a/options.c b/options.c
 diff --git a/rsync.1.md b/rsync.1.md
 --- a/rsync.1.md
 +++ b/rsync.1.md
-@@ -491,6 +491,7 @@ has its own detailed description later in this manpage.
+@@ -494,6 +494,7 @@ has its own detailed description later in this manpage.
  --read-batch=FILE        read a batched update from FILE
  --protocol=NUM           force an older protocol version to be used
  --iconv=CONVERT_SPEC     request charset conversion of filenames
@@ -153,7 +153,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --checksum-seed=NUM      set block/file checksum seed (advanced)
  --ipv4, -4               prefer IPv4
  --ipv6, -6               prefer IPv6
-@@ -3617,6 +3618,25 @@ option name from the pathname using a space if you want the shell to expand it.
+@@ -3652,6 +3653,25 @@ expand it.
      free to specify just the local charset for a daemon transfer (e.g.
      `--iconv=utf8`).
  
index 494b7a527084540ed87d832211f22040c0fef383..33a1ea8fe07e6411ef2c97255a1b4bcbc9bec707 100644 (file)
@@ -6,7 +6,7 @@ To use this patch, run these commands for a successful build:
     patch -p1 <patches/xxh3-safety-check.diff
     make
 
-based-on: 5ce575b15726c653312b473bd770c3e7d74d3449
+based-on: 4c0a4067df2516ce50e12a7d3ae572275fa9fc0b
 diff --git a/checksum.c b/checksum.c
 --- a/checksum.c
 +++ b/checksum.c