Fixed failing hunks.
authorWayne Davison <wayned@samba.org>
Sun, 19 Nov 2006 05:56:21 +0000 (05:56 +0000)
committerWayne Davison <wayned@samba.org>
Sun, 19 Nov 2006 05:56:21 +0000 (05:56 +0000)
acls.diff
atimes.diff
backup-dir-dels.diff
threaded-receiver.diff
time-limit.diff

index 752ca23..0794f67 100644 (file)
--- a/acls.diff
+++ b/acls.diff
@@ -1325,7 +1325,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  extern int preserve_links;
  extern int preserve_hard_links;
  extern int preserve_devices;
-@@ -133,6 +134,8 @@ static void list_file_entry(struct file_
+@@ -135,6 +136,8 @@ static void list_file_entry(struct file_
  
        permstring(permbuf, f->mode);
  
@@ -1334,7 +1334,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  #ifdef SUPPORT_LINKS
        if (preserve_links && S_ISLNK(f->mode)) {
                rprintf(FINFO, "%s %11.0f %s %s -> %s\n",
-@@ -495,6 +498,9 @@ static struct file_struct *receive_file_
+@@ -497,6 +500,9 @@ static struct file_struct *receive_file_
        char thisname[MAXPATHLEN];
        unsigned int l1 = 0, l2 = 0;
        int alloc_len, basename_len, dirname_len, linkname_len, sum_len;
@@ -1344,7 +1344,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
        OFF_T file_length;
        char *basename, *dirname, *bp;
        struct file_struct *file;
-@@ -598,13 +604,27 @@ static struct file_struct *receive_file_
+@@ -600,13 +606,27 @@ static struct file_struct *receive_file_
  
        sum_len = always_checksum && S_ISREG(mode) ? MD4_SUM_LENGTH : 0;
  
@@ -1372,7 +1372,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  
        file->modtime = modtime;
        file->length = file_length;
-@@ -699,6 +719,11 @@ static struct file_struct *receive_file_
+@@ -701,6 +721,11 @@ static struct file_struct *receive_file_
                read_buf(f, sum, checksum_len);
        }
  
@@ -1384,7 +1384,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
        return file;
  }
  
-@@ -949,6 +974,9 @@ static struct file_struct *send_file_nam
+@@ -958,6 +983,9 @@ static struct file_struct *send_file_nam
                                          unsigned short flags)
  {
        struct file_struct *file;
@@ -1394,7 +1394,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  
        file = make_file(fname, flist, stp, flags,
                         f == -2 ? SERVER_FILTERS : ALL_FILTERS);
-@@ -958,6 +986,15 @@ static struct file_struct *send_file_nam
+@@ -967,6 +995,15 @@ static struct file_struct *send_file_nam
        if (chmod_modes && !S_ISLNK(file->mode))
                file->mode = tweak_mode(file->mode, chmod_modes);
  
@@ -1410,7 +1410,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
        maybe_emit_filelist_progress(flist->count + flist_count_offset);
  
        flist_expand(flist);
-@@ -965,6 +1002,15 @@ static struct file_struct *send_file_nam
+@@ -974,6 +1011,15 @@ static struct file_struct *send_file_nam
        if (file->basename[0]) {
                flist->files[flist->count++] = file;
                send_file_entry(file, f);
@@ -1444,7 +1444,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  extern struct stats stats;
  extern dev_t filesystem_dev;
  extern char *backup_dir;
-@@ -348,22 +350,27 @@ static void do_delete_pass(struct file_l
+@@ -379,22 +381,27 @@ static void do_delete_pass(struct file_l
                rprintf(FINFO, "                    \r");
  }
  
@@ -1474,10 +1474,10 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  
 -void itemize(struct file_struct *file, int ndx, int statret, STRUCT_STAT *st,
 +void itemize(struct file_struct *file, int ndx, int statret, statx *sxp,
-            int32 iflags, uchar fnamecmp_type, char *xname)
+            int32 iflags, uchar fnamecmp_type, const char *xname)
  {
        if (statret >= 0) { /* A from-dest-dir statret can == 1! */
-@@ -371,20 +378,24 @@ void itemize(struct file_struct *file, i
+@@ -402,20 +409,24 @@ void itemize(struct file_struct *file, i
                    : S_ISDIR(file->mode) ? !omit_dir_times
                    : !S_ISLNK(file->mode);
  
@@ -1507,7 +1507,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
        } else
                iflags |= ITEM_IS_NEW;
  
-@@ -637,7 +648,7 @@ void check_for_finished_hlinks(int itemi
+@@ -668,7 +679,7 @@ void check_for_finished_hlinks(int itemi
   * handling the file, -1 if no dest-linking occurred, or a non-negative
   * value if we found an alternate basis file. */
  static int try_dests_reg(struct file_struct *file, char *fname, int ndx,
@@ -1516,7 +1516,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                         int maybe_ATTRS_REPORT, enum logcode code)
  {
        int best_match = -1;
-@@ -646,7 +657,7 @@ static int try_dests_reg(struct file_str
+@@ -677,7 +688,7 @@ static int try_dests_reg(struct file_str
  
        do {
                pathjoin(cmpbuf, MAXPATHLEN, basis_dir[j], fname);
@@ -1525,7 +1525,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                        continue;
                switch (match_level) {
                case 0:
-@@ -654,16 +665,20 @@ static int try_dests_reg(struct file_str
+@@ -685,16 +696,20 @@ static int try_dests_reg(struct file_str
                        match_level = 1;
                        /* FALL THROUGH */
                case 1:
@@ -1549,7 +1549,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                continue;
                        best_match = j;
                        match_level = 3;
-@@ -678,7 +693,7 @@ static int try_dests_reg(struct file_str
+@@ -709,7 +724,7 @@ static int try_dests_reg(struct file_str
        if (j != best_match) {
                j = best_match;
                pathjoin(cmpbuf, MAXPATHLEN, basis_dir[j], fname);
@@ -1558,7 +1558,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                        return -1;
        }
  
-@@ -686,7 +701,7 @@ static int try_dests_reg(struct file_str
+@@ -717,7 +732,7 @@ static int try_dests_reg(struct file_str
  #ifdef SUPPORT_HARD_LINKS
                if (link_dest) {
                        int i = itemizing && (verbose > 1 || stdout_format_has_i > 1);
@@ -1567,7 +1567,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                          cmpbuf, 1, i, code) < 0)
                                goto try_a_copy;
                        if (preserve_hard_links && file->link_u.links) {
-@@ -696,8 +711,13 @@ static int try_dests_reg(struct file_str
+@@ -727,8 +742,13 @@ static int try_dests_reg(struct file_str
                        }
                } else
  #endif
@@ -1583,7 +1583,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                if (verbose > 1 && maybe_ATTRS_REPORT) {
                        rprintf(FCLIENT, "%s is uptodate\n", fname);
                }
-@@ -713,8 +733,13 @@ static int try_dests_reg(struct file_str
+@@ -744,8 +764,13 @@ static int try_dests_reg(struct file_str
                        }
                        return -1;
                }
@@ -1599,7 +1599,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                set_file_attrs(fname, file, NULL, 0);
                if (maybe_ATTRS_REPORT
                 && ((!itemizing && verbose && match_level == 2)
-@@ -735,7 +760,7 @@ static int try_dests_reg(struct file_str
+@@ -766,7 +791,7 @@ static int try_dests_reg(struct file_str
   * handling the file, or -1 if no dest-linking occurred, or a non-negative
   * value if we found an alternate basis file. */
  static int try_dests_non(struct file_struct *file, char *fname, int ndx,
@@ -1608,7 +1608,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                         int maybe_ATTRS_REPORT, enum logcode code)
  {
        char lnk[MAXPATHLEN];
-@@ -767,24 +792,24 @@ static int try_dests_non(struct file_str
+@@ -798,24 +823,24 @@ static int try_dests_non(struct file_str
  
        do {
                pathjoin(cmpbuf, MAXPATHLEN, basis_dir[j], fname);
@@ -1638,7 +1638,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                continue;
                        break;
  #endif
-@@ -798,7 +823,7 @@ static int try_dests_non(struct file_str
+@@ -829,7 +854,7 @@ static int try_dests_non(struct file_str
                        break;
                case TYPE_SPECIAL:
                case TYPE_DEVICE:
@@ -1647,7 +1647,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                continue;
                        break;
  #ifdef SUPPORT_LINKS
-@@ -815,7 +840,11 @@ static int try_dests_non(struct file_str
+@@ -846,7 +871,11 @@ static int try_dests_non(struct file_str
                        match_level = 2;
                        best_match = j;
                }
@@ -1660,7 +1660,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                        match_level = 3;
                        best_match = j;
                        break;
-@@ -828,7 +857,7 @@ static int try_dests_non(struct file_str
+@@ -859,7 +888,7 @@ static int try_dests_non(struct file_str
        if (j != best_match) {
                j = best_match;
                pathjoin(cmpbuf, MAXPATHLEN, basis_dir[j], fname);
@@ -1669,7 +1669,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                        return -1;
        }
  
-@@ -859,7 +888,15 @@ static int try_dests_non(struct file_str
+@@ -890,7 +919,15 @@ static int try_dests_non(struct file_str
                            : ITEM_LOCAL_CHANGE
                             + (match_level == 3 ? ITEM_XNAME_FOLLOWS : 0);
                        char *lp = match_level == 3 ? "" : NULL;
@@ -1686,7 +1686,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                }
                if (verbose > 1 && maybe_ATTRS_REPORT) {
                        rprintf(FCLIENT, "%s%s is uptodate\n",
-@@ -872,6 +909,7 @@ static int try_dests_non(struct file_str
+@@ -903,6 +940,7 @@ static int try_dests_non(struct file_str
  }
  
  static int phase = 0;
@@ -1694,7 +1694,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  
  /* Acts on the_file_list->file's ndx'th item, whose name is fname.  If a dir,
   * make sure it exists, and has the right permissions/timestamp info.  For
-@@ -893,7 +931,8 @@ static void recv_generator(char *fname, 
+@@ -924,7 +962,8 @@ static void recv_generator(char *fname, 
        static int need_fuzzy_dirlist = 0;
        struct file_struct *fuzzy_file = NULL;
        int fd = -1, f_copy = -1;
@@ -1704,7 +1704,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
        struct file_struct *back_file = NULL;
        int statret, real_ret, stat_errno;
        char *fnamecmp, *partialptr, *backupptr = NULL;
-@@ -949,6 +988,9 @@ static void recv_generator(char *fname, 
+@@ -980,6 +1019,9 @@ static void recv_generator(char *fname, 
                } else if (!dry_run)
                        return;
        }
@@ -1714,8 +1714,8 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
        if (dry_run > 1) {
                statret = -1;
                stat_errno = ENOENT;
-@@ -956,7 +998,7 @@ static void recv_generator(char *fname, 
-               char *dn = file->dirname ? file->dirname : ".";
+@@ -987,7 +1029,7 @@ static void recv_generator(char *fname, 
+               const char *dn = file->dirname ? file->dirname : ".";
                if (parent_dirname != dn && strcmp(parent_dirname, dn) != 0) {
                        if (relative_paths && !implied_dirs
 -                       && do_stat(dn, &st) < 0
@@ -1723,7 +1723,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                         && create_directory_path(fname) < 0) {
                                rsyserr(FERROR, errno,
                                        "recv_generator: mkdir %s failed",
-@@ -968,6 +1010,10 @@ static void recv_generator(char *fname, 
+@@ -999,6 +1041,10 @@ static void recv_generator(char *fname, 
                        }
                        if (fuzzy_basis)
                                need_fuzzy_dirlist = 1;
@@ -1734,7 +1734,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                }
                parent_dirname = dn;
  
-@@ -976,7 +1022,7 @@ static void recv_generator(char *fname, 
+@@ -1008,7 +1054,7 @@ static void recv_generator(char *fname, 
                        need_fuzzy_dirlist = 0;
                }
  
@@ -1743,7 +1743,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                    keep_dirlinks && S_ISDIR(file->mode));
                stat_errno = errno;
        }
-@@ -994,8 +1040,9 @@ static void recv_generator(char *fname, 
+@@ -1026,8 +1072,9 @@ static void recv_generator(char *fname, 
         * mode based on the local permissions and some heuristics. */
        if (!preserve_perms) {
                int exists = statret == 0
@@ -1755,7 +1755,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
        }
  
        if (S_ISDIR(file->mode)) {
-@@ -1004,8 +1051,8 @@ static void recv_generator(char *fname, 
+@@ -1036,8 +1083,8 @@ static void recv_generator(char *fname, 
                 * file of that name and it is *not* a directory, then
                 * we need to delete it.  If it doesn't exist, then
                 * (perhaps recursively) create it. */
@@ -1766,7 +1766,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                return;
                        statret = -1;
                }
-@@ -1014,14 +1061,14 @@ static void recv_generator(char *fname, 
+@@ -1046,14 +1093,14 @@ static void recv_generator(char *fname, 
                        dry_run++;
                }
                real_ret = statret;
@@ -1783,7 +1783,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                              itemizing, maybe_ATTRS_REPORT, code);
                        if (j == -2) {
                                itemizing = 0;
-@@ -1030,7 +1077,11 @@ static void recv_generator(char *fname, 
+@@ -1062,7 +1109,11 @@ static void recv_generator(char *fname, 
                                statret = 1;
                }
                if (itemizing && f_out != -1) {
@@ -1796,7 +1796,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                statret ? ITEM_LOCAL_CHANGE : 0, 0, NULL);
                }
                if (real_ret != 0 && do_mkdir(fname,file->mode) < 0 && errno != EEXIST) {
-@@ -1050,21 +1101,21 @@ static void recv_generator(char *fname, 
+@@ -1082,21 +1133,21 @@ static void recv_generator(char *fname, 
                                return;
                        }
                }
@@ -1824,7 +1824,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  
        if (preserve_links && S_ISLNK(file->mode)) {
  #ifdef SUPPORT_LINKS
-@@ -1082,15 +1133,15 @@ static void recv_generator(char *fname, 
+@@ -1114,15 +1165,15 @@ static void recv_generator(char *fname, 
                        char lnk[MAXPATHLEN];
                        int len;
  
@@ -1843,7 +1843,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                if (preserve_hard_links && file->link_u.links)
                                        hard_link_cluster(file, ndx, itemizing, code);
                                if (remove_source_files == 1)
-@@ -1099,10 +1150,10 @@ static void recv_generator(char *fname, 
+@@ -1131,10 +1182,10 @@ static void recv_generator(char *fname, 
                        }
                        /* Not the right symlink (or not a symlink), so
                         * delete it. */
@@ -1856,7 +1856,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                              itemizing, maybe_ATTRS_REPORT, code);
                        if (j == -2) {
  #ifndef CAN_HARDLINK_SYMLINK
-@@ -1118,7 +1169,7 @@ static void recv_generator(char *fname, 
+@@ -1150,7 +1201,7 @@ static void recv_generator(char *fname, 
                                statret = 1;
                }
                if (preserve_hard_links && file->link_u.links
@@ -1865,7 +1865,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                       itemizing, code, HL_SKIP))
                        return;
                if (do_symlink(file->u.link, fname) != 0) {
-@@ -1127,7 +1178,7 @@ static void recv_generator(char *fname, 
+@@ -1159,7 +1210,7 @@ static void recv_generator(char *fname, 
                } else {
                        set_file_attrs(fname, file, NULL, 0);
                        if (itemizing) {
@@ -1874,7 +1874,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                        ITEM_LOCAL_CHANGE, 0, NULL);
                        }
                        if (code != FNONE && verbose)
-@@ -1149,31 +1200,36 @@ static void recv_generator(char *fname, 
+@@ -1181,31 +1232,36 @@ static void recv_generator(char *fname, 
                if (statret == 0) {
                        char *t;
                        if (IS_DEVICE(file->mode)) {
@@ -1921,7 +1921,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                              itemizing, maybe_ATTRS_REPORT, code);
                        if (j == -2) {
  #ifndef CAN_HARDLINK_SPECIAL
-@@ -1189,7 +1245,7 @@ static void recv_generator(char *fname, 
+@@ -1221,7 +1277,7 @@ static void recv_generator(char *fname, 
                                statret = 1;
                }
                if (preserve_hard_links && file->link_u.links
@@ -1930,7 +1930,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                       itemizing, code, HL_SKIP))
                        return;
                if (verbose > 2) {
-@@ -1202,7 +1258,11 @@ static void recv_generator(char *fname, 
+@@ -1234,7 +1290,11 @@ static void recv_generator(char *fname, 
                } else {
                        set_file_attrs(fname, file, NULL, 0);
                        if (itemizing) {
@@ -1943,7 +1943,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                        ITEM_LOCAL_CHANGE, 0, NULL);
                        }
                        if (code != FNONE && verbose)
-@@ -1212,7 +1272,7 @@ static void recv_generator(char *fname, 
+@@ -1244,7 +1304,7 @@ static void recv_generator(char *fname, 
                        if (remove_source_files == 1)
                                goto return_with_success;
                }
@@ -1952,7 +1952,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
        }
  
        if (!S_ISREG(file->mode)) {
-@@ -1246,7 +1306,7 @@ static void recv_generator(char *fname, 
+@@ -1278,7 +1338,7 @@ static void recv_generator(char *fname, 
        }
  
        if (update_only && statret == 0
@@ -1961,7 +1961,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                if (verbose > 1)
                        rprintf(FINFO, "%s is newer\n", fname);
                return;
-@@ -1255,20 +1315,20 @@ static void recv_generator(char *fname, 
+@@ -1287,20 +1347,20 @@ static void recv_generator(char *fname, 
        fnamecmp = fname;
        fnamecmp_type = FNAMECMP_FNAME;
  
@@ -1986,7 +1986,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                }
                if (j >= 0) {
                        fnamecmp = fnamecmpbuf;
-@@ -1278,7 +1338,7 @@ static void recv_generator(char *fname, 
+@@ -1310,7 +1370,7 @@ static void recv_generator(char *fname, 
        }
  
        real_ret = statret;
@@ -1995,7 +1995,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  
        if (partial_dir && (partialptr = partial_dir_fname(fname)) != NULL
            && link_stat(partialptr, &partial_st, 0) == 0
-@@ -1297,7 +1357,7 @@ static void recv_generator(char *fname, 
+@@ -1329,7 +1389,7 @@ static void recv_generator(char *fname, 
                                rprintf(FINFO, "fuzzy basis selected for %s: %s\n",
                                        fname, fnamecmpbuf);
                        }
@@ -2004,7 +2004,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                        statret = 0;
                        fnamecmp = fnamecmpbuf;
                        fnamecmp_type = FNAMECMP_FUZZY;
-@@ -1306,7 +1366,7 @@ static void recv_generator(char *fname, 
+@@ -1338,7 +1398,7 @@ static void recv_generator(char *fname, 
  
        if (statret != 0) {
                if (preserve_hard_links && file->link_u.links
@@ -2013,7 +2013,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                       itemizing, code, HL_SKIP))
                        return;
                if (stat_errno == ENOENT)
-@@ -1316,39 +1376,52 @@ static void recv_generator(char *fname, 
+@@ -1348,39 +1408,52 @@ static void recv_generator(char *fname, 
                return;
        }
  
@@ -2073,7 +2073,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                fnamecmp = partialptr;
                fnamecmp_type = FNAMECMP_PARTIAL_DIR;
                statret = 0;
-@@ -1372,17 +1445,21 @@ static void recv_generator(char *fname, 
+@@ -1404,17 +1477,21 @@ static void recv_generator(char *fname, 
          pretend_missing:
                /* pretend the file didn't exist */
                if (preserve_hard_links && file->link_u.links
@@ -2098,7 +2098,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                }
                if (!(back_file = make_file(fname, NULL, NULL, 0, NO_FILTERS))) {
                        close(fd);
-@@ -1393,7 +1470,7 @@ static void recv_generator(char *fname, 
+@@ -1425,7 +1502,7 @@ static void recv_generator(char *fname, 
                                full_fname(backupptr));
                        free(back_file);
                        close(fd);
@@ -2107,7 +2107,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                }
                if ((f_copy = do_open(backupptr,
                    O_WRONLY | O_CREAT | O_TRUNC | O_EXCL, 0600)) < 0) {
-@@ -1401,14 +1478,14 @@ static void recv_generator(char *fname, 
+@@ -1433,14 +1510,14 @@ static void recv_generator(char *fname, 
                                full_fname(backupptr));
                        free(back_file);
                        close(fd);
@@ -2124,7 +2124,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
        }
  
        if (verbose > 2)
-@@ -1426,24 +1503,32 @@ static void recv_generator(char *fname, 
+@@ -1458,24 +1535,32 @@ static void recv_generator(char *fname, 
                        iflags |= ITEM_BASIS_TYPE_FOLLOWS;
                if (fnamecmp_type == FNAMECMP_FUZZY)
                        iflags |= ITEM_XNAME_FOLLOWS;
@@ -2162,7 +2162,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  
        if (f_copy >= 0) {
                close(f_copy);
-@@ -1456,6 +1541,13 @@ static void recv_generator(char *fname, 
+@@ -1488,6 +1573,13 @@ static void recv_generator(char *fname, 
        }
  
        close(fd);
@@ -2176,7 +2176,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  }
  
  void generate_files(int f_out, struct file_list *flist, char *local_name)
-@@ -1515,6 +1607,8 @@ void generate_files(int f_out, struct fi
+@@ -1547,6 +1639,8 @@ void generate_files(int f_out, struct fi
         * notice that and let us know via the redo pipe (or its closing). */
        ignore_timeout = 1;
  
@@ -2195,7 +2195,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  extern int make_backups;
  extern int remove_source_files;
  extern int stdout_format_has_i;
-@@ -147,15 +148,19 @@ void init_hard_links(void)
+@@ -146,15 +147,19 @@ void init_hard_links(void)
  
  #ifdef SUPPORT_HARD_LINKS
  static int maybe_hard_link(struct file_struct *file, int ndx,
@@ -2219,7 +2219,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                        ITEM_LOCAL_CHANGE | ITEM_XNAME_FOLLOWS,
                                        0, "");
                        }
-@@ -170,13 +175,13 @@ static int maybe_hard_link(struct file_s
+@@ -169,13 +174,13 @@ static int maybe_hard_link(struct file_s
                        return -1;
                }
        }
@@ -2235,7 +2235,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                    enum logcode code, int skip)
  {
  #ifdef SUPPORT_HARD_LINKS
-@@ -217,7 +222,7 @@ int hard_link_check(struct file_struct *
+@@ -216,7 +221,7 @@ int hard_link_check(struct file_struct *
                                                 || st2.st_ino != st3.st_ino)
                                                        continue;
                                                statret = 1;
@@ -2244,7 +2244,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                                if (verbose < 2 || !stdout_format_has_i) {
                                                        itemizing = 0;
                                                        code = FNONE;
-@@ -227,12 +232,16 @@ int hard_link_check(struct file_struct *
+@@ -226,12 +231,16 @@ int hard_link_check(struct file_struct *
                                        if (!unchanged_file(cmpbuf, file, &st3))
                                                continue;
                                        statret = 1;
@@ -2264,7 +2264,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                                        toname, &st2, itemizing, code);
                        if (remove_source_files == 1 && do_xfers) {
                                char numbuf[4];
-@@ -250,7 +259,7 @@ int hard_link_check(struct file_struct *
+@@ -249,7 +258,7 @@ int hard_link_check(struct file_struct *
  
  #ifdef SUPPORT_HARD_LINKS
  int hard_link_one(struct file_struct *file, int ndx, char *fname,
@@ -2273,7 +2273,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                  int itemizing, enum logcode code)
  {
        if (do_link(toname, fname)) {
-@@ -266,7 +275,11 @@ int hard_link_one(struct file_struct *fi
+@@ -265,7 +274,11 @@ int hard_link_one(struct file_struct *fi
        }
  
        if (itemizing) {
@@ -2286,7 +2286,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                        ITEM_LOCAL_CHANGE | ITEM_XNAME_FOLLOWS, 0,
                        terse ? "" : toname);
        }
-@@ -283,11 +296,12 @@ void hard_link_cluster(struct file_struc
+@@ -282,11 +295,12 @@ void hard_link_cluster(struct file_struc
  #ifdef SUPPORT_HARD_LINKS
        char hlink1[MAXPATHLEN];
        char *hlink2;
@@ -2301,7 +2301,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
                return;
        if (!(file->flags & FLAG_HLINK_TOL)) {
                while (!(file->flags & FLAG_HLINK_EOL)) {
-@@ -301,9 +315,13 @@ void hard_link_cluster(struct file_struc
+@@ -300,9 +314,13 @@ void hard_link_cluster(struct file_struc
                if (file->F_HLINDEX != SKIPPED_LINK)
                        continue;
                hlink2 = f_name(file, NULL);
@@ -5617,16 +5617,16 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
 +#endif /* SUPPORT_ACLS */
 --- old/log.c
 +++ new/log.c
-@@ -606,8 +606,10 @@ static void log_formatted(enum logcode c
-                       n[5] = !(iflags & ITEM_REPORT_PERMS) ? '.' : 'p';
-                       n[6] = !(iflags & ITEM_REPORT_OWNER) ? '.' : 'o';
-                       n[7] = !(iflags & ITEM_REPORT_GROUP) ? '.' : 'g';
--                      n[8] = '.';
--                      n[9] = '\0';
-+                      n[8] = !(iflags & ITEM_REPORT_ATIME) ? '.' : 'u';
-+                      n[9] = !(iflags & ITEM_REPORT_ACL) ? '.' : 'a';
-+                      n[10] = !(iflags & ITEM_REPORT_XATTR) ? '.' : 'x';
-+                      n[11] = '\0';
+@@ -611,8 +611,10 @@ static void log_formatted(enum logcode c
+                       c[5] = !(iflags & ITEM_REPORT_PERMS) ? '.' : 'p';
+                       c[6] = !(iflags & ITEM_REPORT_OWNER) ? '.' : 'o';
+                       c[7] = !(iflags & ITEM_REPORT_GROUP) ? '.' : 'g';
+-                      c[8] = '.';
+-                      c[9] = '\0';
++                      c[8] = !(iflags & ITEM_REPORT_ATIME) ? '.' : 'u';
++                      c[9] = !(iflags & ITEM_REPORT_ACL) ? '.' : 'a';
++                      c[10] = !(iflags & ITEM_REPORT_XATTR) ? '.' : 'x';
++                      c[11] = '\0';
  
                        if (iflags & (ITEM_IS_NEW|ITEM_MISSING_DATA)) {
                                char ch = iflags & ITEM_IS_NEW ? '+' : '?';
@@ -5993,7 +5993,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  #define GID_NONE ((gid_t)-1)
  
  #define HL_CHECK_MASTER       0
-@@ -654,6 +662,17 @@ struct stats {
+@@ -656,6 +664,17 @@ struct stats {
  
  struct chmod_mode_struct;
  
@@ -6011,7 +6011,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  #include "byteorder.h"
  #include "lib/mdfour.h"
  #include "lib/wildmatch.h"
-@@ -667,6 +686,16 @@ struct chmod_mode_struct;
+@@ -669,6 +688,16 @@ struct chmod_mode_struct;
  #define UNUSED(x) x __attribute__((__unused__))
  #define NORETURN __attribute__((__noreturn__))
  
@@ -6089,7 +6089,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  dit(bf(--chmod)) This option tells rsync to apply one or more
  comma-separated "chmod" strings to the permission of the files in the
  transfer.  The resulting value is treated as though it was the permissions
-@@ -1394,8 +1408,8 @@ if the receiving rsync is at least versi
+@@ -1395,8 +1409,8 @@ if the receiving rsync is at least versi
  with older versions of rsync, but that also turns on the output of other
  verbose messages).
  
@@ -6100,7 +6100,7 @@ latest ACL-enabling patch to send files to an older ACL-enabled rsync.
  type of update being done, bf(X) is replaced by the file-type, and the
  other letters represent attributes that may be output if they are being
  modified.
-@@ -1444,7 +1458,11 @@ quote(itemization(
+@@ -1445,7 +1459,11 @@ quote(itemization(
    sender's value (requires bf(--owner) and super-user privileges).
    it() A bf(g) means the group is different and is being updated to the
    sender's value (requires bf(--group) and the authority to set the group).
index 54265a6..06a961a 100644 (file)
@@ -181,7 +181,7 @@ To use this patch, run these commands for a successful build:
  
  #ifdef SUPPORT_HARD_LINKS
        if (flist && flist->hlink_pool) {
-@@ -1595,8 +1622,9 @@ static void clean_flist(struct file_list
+@@ -1594,8 +1621,9 @@ static void clean_flist(struct file_list
                        }
                        /* Make sure we don't lose track of a user-specified
                         * top directory. */
@@ -240,14 +240,14 @@ To use this patch, run these commands for a successful build:
  extern int stdout_format_has_i;
  extern int stdout_format_has_o_or_i;
  extern int logfile_format_has_i;
-@@ -606,7 +607,8 @@ static void log_formatted(enum logcode c
-                       n[5] = !(iflags & ITEM_REPORT_PERMS) ? '.' : 'p';
-                       n[6] = !(iflags & ITEM_REPORT_OWNER) ? '.' : 'o';
-                       n[7] = !(iflags & ITEM_REPORT_GROUP) ? '.' : 'g';
--                      n[8] = '.';
-+                      n[8] = !(iflags & ITEM_REPORT_ATIME) ? '.'
+@@ -611,7 +612,8 @@ static void log_formatted(enum logcode c
+                       c[5] = !(iflags & ITEM_REPORT_PERMS) ? '.' : 'p';
+                       c[6] = !(iflags & ITEM_REPORT_OWNER) ? '.' : 'o';
+                       c[7] = !(iflags & ITEM_REPORT_GROUP) ? '.' : 'g';
+-                      c[8] = '.';
++                      c[8] = !(iflags & ITEM_REPORT_ATIME) ? '.'
 +                           : S_ISLNK(file->mode) ? 'U' : 'u';
-                       n[9] = '\0';
+                       c[9] = '\0';
  
                        if (iflags & (ITEM_IS_NEW|ITEM_MISSING_DATA)) {
 --- old/options.c
@@ -650,16 +650,16 @@ To use this patch, run these commands for a successful build:
  }
 --- old/util.c
 +++ new/util.c
-@@ -121,7 +121,7 @@ NORETURN void overflow_exit(char *str)
+@@ -121,7 +121,7 @@ NORETURN void overflow_exit(const char *
        exit_cleanup(RERR_MALLOC);
  }
  
--int set_modtime(char *fname, time_t modtime, mode_t mode)
-+int set_times(char *fname, time_t modtime, time_t atime, mode_t mode)
+-int set_modtime(const char *fname, time_t modtime, mode_t mode)
++int set_times(const char *fname, time_t modtime, time_t atime, mode_t mode)
  {
  #if !defined HAVE_LUTIMES || !defined HAVE_UTIMES
        if (S_ISLNK(mode))
-@@ -129,9 +129,13 @@ int set_modtime(char *fname, time_t modt
+@@ -129,9 +129,13 @@ int set_modtime(const char *fname, time_
  #endif
  
        if (verbose > 2) {
@@ -675,7 +675,7 @@ To use this patch, run these commands for a successful build:
        }
  
        if (dry_run)
-@@ -140,7 +144,7 @@ int set_modtime(char *fname, time_t modt
+@@ -140,7 +144,7 @@ int set_modtime(const char *fname, time_
        {
  #ifdef HAVE_UTIMES
                struct timeval t[2];
@@ -684,7 +684,7 @@ To use this patch, run these commands for a successful build:
                t[0].tv_usec = 0;
                t[1].tv_sec = modtime;
                t[1].tv_usec = 0;
-@@ -153,12 +157,12 @@ int set_modtime(char *fname, time_t modt
+@@ -153,12 +157,12 @@ int set_modtime(const char *fname, time_
                return utimes(fname, t);
  #elif defined HAVE_UTIMBUF
                struct utimbuf tbuf;
index 8ba9754..35d6327 100644 (file)
@@ -122,7 +122,7 @@ To use this patch, run these commands for a successful build:
  extern struct file_list *the_file_list;
  extern struct filter_list_struct server_filter_list;
  
-@@ -110,10 +113,14 @@ enum delret {
+@@ -114,10 +117,14 @@ enum delret {
  static enum delret delete_dir_contents(char *fname, int flags);
  
  
@@ -138,7 +138,7 @@ To use this patch, run these commands for a successful build:
  }
  
  /* Delete a file or directory.  If DEL_RECURSE is set in the flags, this will
-@@ -147,9 +154,9 @@ static enum delret delete_item(char *fna
+@@ -153,9 +160,9 @@ static enum delret delete_item(char *fna
        if (S_ISDIR(mode)) {
                what = "rmdir";
                ok = do_rmdir(fname) == 0;
@@ -205,9 +205,9 @@ To use this patch, run these commands for a successful build:
        }
        if (server_filter_list.head && !am_sender) {
                struct filter_list_struct *elp = &server_filter_list;
-@@ -1253,6 +1265,14 @@ int parse_arguments(int *argc, const cha
-                               return 0;
-                       }
+@@ -1249,6 +1261,14 @@ int parse_arguments(int *argc, const cha
+                       if (check_filter(elp, backup_dir, 1) < 0)
+                               goto options_rejected;
                }
 +              /* Clean backup_dir_dels same as for backup_dir */
 +              if (backup_dir_dels) {
@@ -220,7 +220,7 @@ To use this patch, run these commands for a successful build:
        }
  
        if (!backup_suffix)
-@@ -1264,6 +1284,16 @@ int parse_arguments(int *argc, const cha
+@@ -1260,6 +1280,16 @@ int parse_arguments(int *argc, const cha
                        backup_suffix);
                return 0;
        }
@@ -237,7 +237,7 @@ To use this patch, run these commands for a successful build:
        if (backup_dir) {
                backup_dir_len = strlcpy(backup_dir_buf, backup_dir, sizeof backup_dir_buf);
                backup_dir_remainder = sizeof backup_dir_buf - backup_dir_len;
-@@ -1287,6 +1317,31 @@ int parse_arguments(int *argc, const cha
+@@ -1283,6 +1313,31 @@ int parse_arguments(int *argc, const cha
                        "P *%s", backup_suffix);
                parse_rule(&filter_list, backup_dir_buf, 0, 0);
        }
@@ -269,7 +269,7 @@ To use this patch, run these commands for a successful build:
        if (make_backups && !backup_dir)
                omit_dir_times = 1;
  
-@@ -1646,6 +1701,10 @@ void server_options(char **args,int *arg
+@@ -1647,6 +1702,10 @@ void server_options(char **args,int *arg
                args[ac++] = "--backup-dir";
                args[ac++] = backup_dir;
        }
@@ -280,7 +280,7 @@ To use this patch, run these commands for a successful build:
  
        /* Only send --suffix if it specifies a non-default value. */
        if (strcmp(backup_suffix, backup_dir ? "" : BACKUP_SUFFIX) != 0) {
-@@ -1654,7 +1713,13 @@ void server_options(char **args,int *arg
+@@ -1655,7 +1714,13 @@ void server_options(char **args,int *arg
                        goto oom;
                args[ac++] = arg;
        }
index b107ed0..cb5575e 100644 (file)
@@ -137,7 +137,7 @@ To use this patch, run these commands for a successful build:
                                continue;
                }
  
-@@ -1347,7 +1351,7 @@ static void recv_generator(char *fname, 
+@@ -1348,7 +1352,7 @@ static void recv_generator(char *fname, 
                return;
        }
  
@@ -146,7 +146,7 @@ To use this patch, run these commands for a successful build:
                return;
  
        if (fnamecmp_type <= FNAMECMP_BASIS_DIR_HIGH)
-@@ -1410,7 +1414,7 @@ static void recv_generator(char *fname, 
+@@ -1411,7 +1415,7 @@ static void recv_generator(char *fname, 
                goto notify_others;
        }
  
@@ -155,7 +155,7 @@ To use this patch, run these commands for a successful build:
                if (!(backupptr = get_backup_name(fname))) {
                        close(fd);
                        return;
-@@ -1501,9 +1505,12 @@ void generate_files(int f_out, struct fi
+@@ -1502,9 +1506,12 @@ void generate_files(int f_out, struct fi
        int save_ignore_existing = ignore_existing;
        int save_ignore_non_existing = ignore_non_existing;
        int save_do_progress = do_progress;
@@ -169,7 +169,7 @@ To use this patch, run these commands for a successful build:
        if (protocol_version >= 29) {
                itemizing = 1;
                maybe_ATTRS_REPORT = stdout_format_has_i ? 0 : ATTRS_REPORT;
-@@ -1531,7 +1538,7 @@ void generate_files(int f_out, struct fi
+@@ -1532,7 +1539,7 @@ void generate_files(int f_out, struct fi
                do_delete_pass(flist);
        do_progress = 0;
  
@@ -178,7 +178,7 @@ To use this patch, run these commands for a successful build:
                whole_file = 0;
        if (verbose >= 2) {
                rprintf(FINFO, "delta-transmission %s\n",
-@@ -1540,12 +1547,6 @@ void generate_files(int f_out, struct fi
+@@ -1541,12 +1548,6 @@ void generate_files(int f_out, struct fi
                        : "enabled");
        }
  
@@ -191,7 +191,7 @@ To use this patch, run these commands for a successful build:
        for (i = 0; i < flist->count; i++) {
                struct file_struct *file = flist->files[i];
  
-@@ -1589,23 +1590,34 @@ void generate_files(int f_out, struct fi
+@@ -1590,23 +1591,34 @@ void generate_files(int f_out, struct fi
                delete_in_dir(NULL, NULL, NULL, NULL);
  
        phase++;
@@ -232,7 +232,7 @@ To use this patch, run these commands for a successful build:
                if (local_name)
                        strlcpy(fbuf, local_name, sizeof fbuf);
                else
-@@ -1617,27 +1629,43 @@ void generate_files(int f_out, struct fi
+@@ -1618,27 +1630,43 @@ void generate_files(int f_out, struct fi
        phase++;
        ignore_non_existing = save_ignore_non_existing;
        ignore_existing = save_ignore_existing;
@@ -420,8 +420,8 @@ To use this patch, run these commands for a successful build:
 -}
 -
  /* Add a message to the pending MSG_* list. */
--static void msg_list_add(struct msg_list *lst, int code, char *buf, int len)
-+static void msg_list_add(int code, char *buf, int len)
+-static void msg_list_add(struct msg_list *lst, int code, const char *buf, int len)
++static void msg_list_add(int code, const char *buf, int len)
  {
        struct msg_list_item *m;
 -      int sz = len + 4 + sizeof m[0] - 1;
@@ -584,7 +584,7 @@ To use this patch, run these commands for a successful build:
 +      no_flush--;
  }
  
- int send_msg(enum msgcode code, char *buf, int len)
+ int send_msg(enum msgcode code, const char *buf, int len)
  {
 -      if (msg_fd_out < 0) {
 +      if (!am_receiver()) {
@@ -668,7 +668,7 @@ To use this patch, run these commands for a successful build:
                if ((size_t)write(batch_fd, buffer, total) != total)
                        exit_cleanup(RERR_FILEIO);
        }
-@@ -1115,7 +1067,6 @@ static void writefd_unbuffered(int fd,ch
+@@ -1115,7 +1067,6 @@ static void writefd_unbuffered(int fd, c
                         * to grab any messages they sent before they died. */
                        while (fd == sock_f_out && io_multiplexing_in) {
                                set_io_timeout(30);
@@ -676,7 +676,7 @@ To use this patch, run these commands for a successful build:
                                readfd_unbuffered(sock_f_in, io_filesfrom_buf,
                                                  sizeof io_filesfrom_buf);
                        }
-@@ -1126,7 +1077,7 @@ static void writefd_unbuffered(int fd,ch
+@@ -1126,7 +1077,7 @@ static void writefd_unbuffered(int fd, c
                defer_forwarding_messages = 1;
  
                if (fd == sock_f_out) {
@@ -685,7 +685,7 @@ To use this patch, run these commands for a successful build:
                                last_io_out = time(NULL);
                        sleep_for_bwlimit(cnt);
                }
-@@ -1136,23 +1087,6 @@ static void writefd_unbuffered(int fd,ch
+@@ -1136,23 +1087,6 @@ static void writefd_unbuffered(int fd, c
        no_flush--;
  }
  
@@ -731,7 +731,7 @@ To use this patch, run these commands for a successful build:
                return;
 @@ -1199,11 +1134,6 @@ void io_flush(int flush_it_all)
  
- static void writefd(int fd,char *buf,size_t len)
+ static void writefd(int fd, const char *buf, size_t len)
  {
 -      if (fd == msg_fd_out) {
 -              rprintf(FERROR, "Internal error: wrong write used in receiver.\n");
@@ -769,7 +769,7 @@ To use this patch, run these commands for a successful build:
        { RERR_SIGNAL     , "received SIGINT, SIGTERM, or SIGHUP" },
        { RERR_WAITCHILD  , "waitpid() failed" },
        { RERR_MALLOC     , "error allocating core memory buffers" },
-@@ -241,8 +239,8 @@ void rwrite(enum logcode code, char *buf
+@@ -241,8 +239,8 @@ void rwrite(enum logcode code, const cha
        if (len < 0)
                exit_cleanup(RERR_MESSAGEIO);
  
@@ -1046,7 +1046,7 @@ To use this patch, run these commands for a successful build:
                do_xfers = 0;
 --- old/pipe.c
 +++ new/pipe.c
-@@ -59,7 +59,7 @@ pid_t piped_child(char **command, int *f
+@@ -58,7 +58,7 @@ pid_t piped_child(char **command, int *f
                exit_cleanup(RERR_IPC);
        }
  
@@ -1055,7 +1055,7 @@ To use this patch, run these commands for a successful build:
        if (pid == -1) {
                rsyserr(FERROR, errno, "fork");
                exit_cleanup(RERR_IPC);
-@@ -123,7 +123,7 @@ pid_t local_child(int argc, char **argv,
+@@ -122,7 +122,7 @@ pid_t local_child(int argc, char **argv,
                exit_cleanup(RERR_IPC);
        }
  
@@ -1224,7 +1224,7 @@ To use this patch, run these commands for a successful build:
  
 --- old/util.c
 +++ new/util.c
-@@ -415,49 +415,6 @@ int robust_rename(char *from, char *to, 
+@@ -417,49 +417,6 @@ int robust_rename(const char *from, cons
        return -1;
  }
  
@@ -1272,5 +1272,5 @@ To use this patch, run these commands for a successful build:
 -}
 -
  /** Turn a user name into a uid */
- int name_to_uid(char *name, uid_t *uid)
+ int name_to_uid(const char *name, uid_t *uid)
  {
index 06b5ac5..6c5c259 100644 (file)
@@ -148,7 +148,7 @@ To use this patch, run these commands for a successful build:
       --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
-@@ -1733,6 +1735,19 @@ transfer was too fast, it will wait befo
+@@ -1739,6 +1741,19 @@ transfer was too fast, it will wait befo
  result is an average transfer rate equaling the specified limit. A value
  of zero specifies no limit.
  
@@ -170,7 +170,7 @@ To use this patch, run these commands for a successful build:
  section for details, and also the bf(--only-write-batch) option.
 --- old/util.c
 +++ new/util.c
-@@ -121,6 +121,133 @@ NORETURN void overflow_exit(char *str)
+@@ -121,6 +121,133 @@ NORETURN void overflow_exit(const char *
        exit_cleanup(RERR_MALLOC);
  }
  
@@ -301,6 +301,6 @@ To use this patch, run these commands for a successful build:
 +      return val;
 +}
 +
- int set_modtime(char *fname, time_t modtime, mode_t mode)
+ int set_modtime(const char *fname, time_t modtime, mode_t mode)
  {
  #if !defined HAVE_LUTIMES || !defined HAVE_UTIMES