Changed f_name() to new syntax.
authorWayne Davison <wayned@samba.org>
Tue, 17 Jan 2006 02:55:29 +0000 (02:55 +0000)
committerWayne Davison <wayned@samba.org>
Tue, 17 Jan 2006 02:55:29 +0000 (02:55 +0000)
ODBC-dblog.diff
acls.diff
atimes.diff
early-checksum.diff
xattrs.diff

index 7ba9fcc..68b0aaa 100644 (file)
@@ -68,9 +68,9 @@ See the file "instructions" (after applying this patch) for more info.
                } else {
                        rprintf(FLOG, "rsync %s %s from %s (%s)\n",
                                am_sender ? "on" : "to",
---- orig/configure.in  2006-01-14 08:14:30
+--- orig/configure.in  2006-01-15 14:52:33
 +++ configure.in       2005-09-24 18:38:47
-@@ -546,6 +546,12 @@ if test x"$with_included_popt" != x"yes"
+@@ -552,6 +552,12 @@ if test x"$with_included_popt" != x"yes"
      AC_CHECK_LIB(popt, poptGetContext, , [with_included_popt=yes])
  fi
  
@@ -652,7 +652,7 @@ See the file "instructions" (after applying this patch) for more info.
 +              return;
 +
 +      if (db_handle != NULL) {
-+              strFileNamePtr = f_name(file);
++              strFileNamePtr = f_name(file, NULL);
 +              if (am_sender && file->dir.root) {
 +                      pathjoin(strFileName, sizeof strFileName,
 +                               file->dir.root, strFileNamePtr);
@@ -1046,9 +1046,9 @@ See the file "instructions" (after applying this patch) for more info.
  FN_LOCAL_BOOL(lp_ignore_errors, ignore_errors)
  FN_LOCAL_BOOL(lp_ignore_nonreadable, ignore_nonreadable)
  FN_LOCAL_BOOL(lp_list, list)
---- orig/log.c 2006-01-14 08:14:30
+--- orig/log.c 2006-01-17 02:16:40
 +++ log.c      2005-09-23 16:01:13
-@@ -88,7 +88,7 @@ struct {
+@@ -87,7 +87,7 @@ struct {
  /*
   * Map from rsync error code to name, or return NULL.
   */
@@ -1057,7 +1057,7 @@ See the file "instructions" (after applying this patch) for more info.
  {
        int i;
        for (i = 0; rerr_names[i].name; i++) {
---- orig/main.c        2006-01-14 08:14:30
+--- orig/main.c        2006-01-15 14:46:15
 +++ main.c     2005-09-23 16:01:22
 @@ -159,6 +159,9 @@ static void handle_stats(int f)
  
@@ -1069,7 +1069,7 @@ See the file "instructions" (after applying this patch) for more info.
                if (f == -1 || !am_sender)
                        return;
        }
---- orig/receiver.c    2006-01-14 08:14:31
+--- orig/receiver.c    2006-01-14 20:27:09
 +++ receiver.c 2006-01-14 08:27:51
 @@ -174,6 +174,10 @@ static int get_tmpname(char *fnametmp, c
  
@@ -1213,7 +1213,7 @@ See the file "instructions" (after applying this patch) for more info.
                        }
                        if (!phase) {
                                SIVAL(numbuf, 0, i);
---- orig/sender.c      2006-01-14 08:14:31
+--- orig/sender.c      2006-01-14 20:27:10
 +++ sender.c   2005-09-23 16:01:44
 @@ -352,6 +352,9 @@ void send_files(struct file_list *flist,
  
index 5345511..f133f26 100644 (file)
--- a/acls.diff
+++ b/acls.diff
@@ -760,7 +760,7 @@ ACLs to a non-ACL-supporting disk should complain.
 +      char *fname;
 +      if (!preserve_acls || S_ISLNK(file->mode))
 +              return;
-+      fname = f_name(file);
++      fname = f_name(file, NULL);
 +      for (type = &types[0];
 +           type < &types[0] + sizeof types / sizeof types[0]
 +              && (*type == SMB_ACL_TYPE_ACCESS || S_ISDIR(file->mode));
@@ -1192,7 +1192,7 @@ ACLs to a non-ACL-supporting disk should complain.
        free(file);
  
        if (verbose > 1) {
---- orig/configure.in  2006-01-14 08:14:30
+--- orig/configure.in  2006-01-15 14:52:33
 +++ configure.in       2004-08-19 19:53:27
 @@ -478,6 +478,11 @@ if test x"$ac_cv_func_strcasecmp" = x"no
      AC_CHECK_LIB(resolv, strcasecmp)
@@ -1206,7 +1206,7 @@ ACLs to a non-ACL-supporting disk should complain.
  dnl At the moment we don't test for a broken memcmp(), because all we
  dnl need to do is test for equality, not comparison, and it seems that
  dnl every platform has a memcmp that can do at least that.
-@@ -744,6 +749,77 @@ AC_SUBST(OBJ_RESTORE)
+@@ -750,6 +755,77 @@ AC_SUBST(OBJ_RESTORE)
  AC_SUBST(CC_SHOBJ_FLAG)
  AC_SUBST(BUILD_POPT)
  
@@ -1284,9 +1284,9 @@ ACLs to a non-ACL-supporting disk should complain.
  AC_CONFIG_FILES([Makefile lib/dummy zlib/dummy popt/dummy shconfig])
  AC_OUTPUT
  
---- orig/flist.c       2006-01-14 08:14:30
+--- orig/flist.c       2006-01-17 02:15:59
 +++ flist.c    2005-07-29 02:49:06
-@@ -960,6 +960,8 @@ static struct file_struct *send_file_nam
+@@ -958,6 +958,8 @@ static struct file_struct *send_file_nam
        file = make_file(fname, flist, f == -2 ? SERVER_FILTERS : ALL_FILTERS);
        if (!file)
                return NULL;
@@ -1295,7 +1295,7 @@ ACLs to a non-ACL-supporting disk should complain.
  
        maybe_emit_filelist_progress(flist->count + flist_count_offset);
  
-@@ -968,6 +970,10 @@ static struct file_struct *send_file_nam
+@@ -966,6 +968,10 @@ static struct file_struct *send_file_nam
        if (file->basename[0]) {
                flist->files[flist->count++] = file;
                send_file_entry(file, f, base_flags);
@@ -1306,7 +1306,7 @@ ACLs to a non-ACL-supporting disk should complain.
        }
        return file;
  }
-@@ -1322,6 +1328,8 @@ struct file_list *recv_file_list(int f)
+@@ -1320,6 +1326,8 @@ struct file_list *recv_file_list(int f)
                        flags |= read_byte(f) << 8;
                file = receive_file_entry(flist, flags, f);
  
@@ -1324,7 +1324,7 @@ ACLs to a non-ACL-supporting disk should complain.
        if (f >= 0) {
                /* Now send the uid/gid list. This was introduced in
                 * protocol version 15 */
---- orig/generator.c   2006-01-14 08:14:30
+--- orig/generator.c   2006-01-14 20:27:09
 +++ generator.c        2006-01-14 08:17:25
 @@ -890,6 +890,10 @@ static void recv_generator(char *fname, 
                if (set_perms(fname, file, statret ? NULL : &st, 0)
@@ -4734,9 +4734,9 @@ ACLs to a non-ACL-supporting disk should complain.
        if (verbose > 1 && flags & PERMS_REPORT) {
                enum logcode code = daemon_log_format_has_i || dry_run
                                  ? FCLIENT : FINFO;
---- orig/rsync.h       2006-01-14 08:14:31
+--- orig/rsync.h       2006-01-14 20:27:10
 +++ rsync.h    2005-07-29 02:25:55
-@@ -646,6 +646,44 @@ struct stats {
+@@ -647,6 +647,44 @@ struct stats {
  #include "lib/permstring.h"
  #include "lib/addrinfo.h"
  
index 7ca9204..4dad92d 100644 (file)
@@ -15,8 +15,8 @@ command before "make":
                rprintf(FINFO, "flist->length=%.0f\n",
                        (double) fptr[i]->length);
                rprintf(FINFO, "flist->mode=%#o\n", (int) fptr[i]->mode);
---- orig/flist.c       2006-01-14 08:14:30
-+++ flist.c    2006-01-14 08:19:03
+--- orig/flist.c       2006-01-17 02:15:59
++++ flist.c    2006-01-17 02:42:04
 @@ -50,6 +50,7 @@ extern int preserve_perms;
  extern int preserve_devices;
  extern int preserve_uid;
@@ -25,7 +25,7 @@ command before "make":
  extern int relative_paths;
  extern int implied_dirs;
  extern int copy_links;
-@@ -140,16 +141,18 @@ static void list_file_entry(struct file_
+@@ -139,16 +140,18 @@ static void list_file_entry(struct file_
  
  #ifdef SUPPORT_LINKS
        if (preserve_links && S_ISLNK(f->mode)) {
@@ -34,7 +34,7 @@ command before "make":
                        perms,
                        (double)f->length, timestring(f->modtime),
 +                      timestring(f->atime),
-                       f_name(f), f->u.link);
+                       f_name(f, NULL), f->u.link);
        } else
  #endif
        {
@@ -43,10 +43,10 @@ command before "make":
                        perms,
                        (double)f->length, timestring(f->modtime),
 +                      timestring(f->atime),
-                       f_name(f));
+                       f_name(f, NULL));
        }
  }
-@@ -311,6 +314,7 @@ void send_file_entry(struct file_struct 
+@@ -310,6 +313,7 @@ void send_file_entry(struct file_struct 
  {
        unsigned short flags;
        static time_t modtime;
@@ -54,7 +54,7 @@ command before "make":
        static mode_t mode;
        static int64 dev;
        static dev_t rdev;
-@@ -326,7 +330,7 @@ void send_file_entry(struct file_struct 
+@@ -325,7 +329,7 @@ void send_file_entry(struct file_struct 
  
        if (!file) {
                write_byte(f, 0);
@@ -63,7 +63,7 @@ command before "make":
                dev = 0, rdev = makedev(0, 0);
                rdev_major = 0;
                uid = 0, gid = 0;
-@@ -375,6 +379,12 @@ void send_file_entry(struct file_struct 
+@@ -374,6 +378,12 @@ void send_file_entry(struct file_struct 
                flags |= XMIT_SAME_TIME;
        else
                modtime = file->modtime;
@@ -76,7 +76,7 @@ command before "make":
  
  #ifdef SUPPORT_HARD_LINKS
        if (file->link_u.idev) {
-@@ -428,6 +438,8 @@ void send_file_entry(struct file_struct 
+@@ -427,6 +437,8 @@ void send_file_entry(struct file_struct 
                write_int(f, modtime);
        if (!(flags & XMIT_SAME_MODE))
                write_int(f, to_wire_mode(mode));
@@ -85,7 +85,7 @@ command before "make":
        if (preserve_uid && !(flags & XMIT_SAME_UID)) {
                if (!numeric_ids)
                        add_uid(uid);
-@@ -495,6 +507,7 @@ static struct file_struct *receive_file_
+@@ -494,6 +506,7 @@ static struct file_struct *receive_file_
                                              unsigned short flags, int f)
  {
        static time_t modtime;
@@ -93,7 +93,7 @@ command before "make":
        static mode_t mode;
        static int64 dev;
        static dev_t rdev;
-@@ -513,7 +526,7 @@ static struct file_struct *receive_file_
+@@ -512,7 +525,7 @@ static struct file_struct *receive_file_
        struct file_struct *file;
  
        if (!flist) {
@@ -102,7 +102,7 @@ command before "make":
                dev = 0, rdev = makedev(0, 0);
                rdev_major = 0;
                uid = 0, gid = 0;
-@@ -569,6 +582,8 @@ static struct file_struct *receive_file_
+@@ -568,6 +581,8 @@ static struct file_struct *receive_file_
                modtime = (time_t)read_int(f);
        if (!(flags & XMIT_SAME_MODE))
                mode = from_wire_mode(read_int(f));
@@ -111,7 +111,7 @@ command before "make":
  
        if (preserve_uid && !(flags & XMIT_SAME_UID))
                uid = (uid_t)read_int(f);
-@@ -619,6 +634,7 @@ static struct file_struct *receive_file_
+@@ -618,6 +633,7 @@ static struct file_struct *receive_file_
  
        file->flags = 0;
        file->modtime = modtime;
@@ -119,7 +119,7 @@ command before "make":
        file->length = file_length;
        file->mode = mode;
        file->uid = uid;
-@@ -866,6 +882,7 @@ struct file_struct *make_file(char *fnam
+@@ -864,6 +880,7 @@ struct file_struct *make_file(char *fnam
  
        file->flags = flags;
        file->modtime = st.st_mtime;
@@ -127,7 +127,7 @@ command before "make":
        file->length = st.st_size;
        if (chmod_modes && am_sender && (S_ISREG(st.st_mode) || S_ISDIR(st.st_mode)))
                file->mode = tweak_mode(st.st_mode, chmod_modes);
---- orig/generator.c   2006-01-14 08:14:30
+--- orig/generator.c   2006-01-14 20:27:09
 +++ generator.c        2005-12-15 23:05:32
 @@ -44,6 +44,7 @@ extern int preserve_uid;
  extern int preserve_gid;
@@ -186,7 +186,7 @@ command before "make":
                if (verbose > 1)
                        rprintf(FINFO, "%s is newer\n", fname);
                return;
---- orig/log.c 2006-01-14 08:14:30
+--- orig/log.c 2006-01-17 02:16:40
 +++ log.c      2005-12-15 23:05:44
 @@ -38,6 +38,7 @@ extern int module_id;
  extern int msg_fd_out;
@@ -196,7 +196,7 @@ command before "make":
  extern int log_format_has_i;
  extern int log_format_has_o_or_i;
  extern int daemon_log_format_has_o_or_i;
-@@ -517,11 +518,14 @@ static void log_formatted(enum logcode c
+@@ -542,11 +543,14 @@ static void log_formatted(enum logcode c
                        n[4] = !(iflags & ITEM_REPORT_TIME) ? '.'
                             : !preserve_times || IS_DEVICE(file->mode)
                                               || S_ISLNK(file->mode) ? 'T' : 't';
@@ -309,7 +309,7 @@ command before "make":
        }
  
        change_uid = am_root && preserve_uid && st->st_uid != file->uid;
---- orig/rsync.h       2006-01-14 08:14:31
+--- orig/rsync.h       2006-01-14 20:27:10
 +++ rsync.h    2005-07-28 00:04:51
 @@ -54,6 +54,7 @@
  #define XMIT_HAS_IDEV_DATA (1<<9)
@@ -335,7 +335,7 @@ command before "make":
  #define ITEM_REPORT_CHECKSUM (1<<1)
  #define ITEM_REPORT_SIZE (1<<2)
  #define ITEM_REPORT_TIME (1<<3)
-@@ -516,6 +519,7 @@ struct file_struct {
+@@ -517,6 +520,7 @@ struct file_struct {
                struct hlink *links;
        } link_u;
        time_t modtime;
index 3c8108e..9341093 100644 (file)
@@ -8,7 +8,7 @@ to its checksum pass during its normal find-the-different-files pass.
 I have benchmarked this a little, and it appears to slow things down
 for a local copy, so the old algorithm is used for local copies.
 
---- orig/flist.c       2005-11-10 16:58:36
+--- orig/flist.c       2006-01-17 02:15:59
 +++ flist.c    2005-09-16 16:41:25
 @@ -36,6 +36,7 @@ extern int am_daemon;
  extern int am_sender;
@@ -18,14 +18,14 @@ for a local copy, so the old algorithm is used for local copies.
  extern int module_id;
  extern int ignore_errors;
  extern int numeric_ids;
-@@ -707,6 +708,16 @@ static struct file_struct *receive_file_
+@@ -706,6 +707,16 @@ static struct file_struct *receive_file_
                        sum = empty_sum;
                }
                read_buf(f, sum, checksum_len);
 +              if (pre_checksum) {
 +                      char sum2[MD4_SUM_LENGTH];
 +                      STRUCT_STAT st;
-+                      char *fname = f_name(file);
++                      char *fname = f_name(file, NULL);
 +                      if (stat(fname, &st) == 0 && st.st_size == file_length) {
 +                              file_checksum(fname, sum2, st.st_size);
 +                              if (memcmp(sum, sum2, checksum_len) != 0)
@@ -35,7 +35,7 @@ for a local copy, so the old algorithm is used for local copies.
        }
  
        if (!preserve_perms) {
---- orig/generator.c   2005-12-15 23:00:49
+--- orig/generator.c   2006-01-14 20:27:09
 +++ generator.c        2005-12-15 23:16:48
 @@ -69,6 +69,7 @@ extern int ignore_timeout;
  extern int protocol_version;
@@ -73,7 +73,7 @@ for a local copy, so the old algorithm is used for local copies.
                                continue;
                        best_match = j;
                        match_level = 2;
-@@ -1160,7 +1164,7 @@ static void recv_generator(char *fname, 
+@@ -1142,7 +1146,7 @@ static void recv_generator(char *fname, 
                ;
        else if (fnamecmp_type == FNAMECMP_FUZZY)
                ;
@@ -82,7 +82,7 @@ for a local copy, so the old algorithm is used for local copies.
                if (partialptr) {
                        do_unlink(partialptr);
                        handle_partial_dir(partialptr, PDIR_DELETE);
---- orig/hlink.c       2005-12-15 23:00:49
+--- orig/hlink.c       2006-01-14 20:27:09
 +++ hlink.c    2005-12-15 23:17:31
 @@ -210,7 +210,7 @@ int hard_link_check(struct file_struct *
                                                        itemizing = code = 0;
@@ -93,7 +93,7 @@ for a local copy, so the old algorithm is used for local copies.
                                                continue;
                                        statret = 1;
                                        st = &st3;
---- orig/main.c        2005-12-15 07:55:39
+--- orig/main.c        2006-01-15 14:46:15
 +++ main.c     2005-11-07 05:00:49
 @@ -45,6 +45,7 @@ extern int copy_links;
  extern int keep_dirlinks;
@@ -114,7 +114,7 @@ for a local copy, so the old algorithm is used for local copies.
  struct file_list *the_file_list;
  
  /* There's probably never more than at most 2 outstanding child processes,
-@@ -659,6 +662,7 @@ static void do_server_recv(int f_in, int
+@@ -710,6 +713,7 @@ static void do_server_recv(int f_in, int
        struct file_list *flist;
        char *local_name = NULL;
        char *dir = NULL;
@@ -122,7 +122,7 @@ for a local copy, so the old algorithm is used for local copies.
        int save_verbose = verbose;
  
        if (filesfrom_fd >= 0) {
-@@ -702,6 +706,10 @@ static void do_server_recv(int f_in, int
+@@ -753,6 +757,10 @@ static void do_server_recv(int f_in, int
                filesfrom_fd = -1;
        }
  
@@ -133,7 +133,7 @@ for a local copy, so the old algorithm is used for local copies.
        flist = recv_file_list(f_in);
        verbose = save_verbose;
        if (!flist) {
-@@ -710,6 +718,9 @@ static void do_server_recv(int f_in, int
+@@ -761,6 +769,9 @@ static void do_server_recv(int f_in, int
        }
        the_file_list = flist;
  
@@ -143,7 +143,7 @@ for a local copy, so the old algorithm is used for local copies.
        if (argc > 0)
                local_name = get_local_name(flist,argv[0]);
  
-@@ -758,6 +769,7 @@ int client_run(int f_in, int f_out, pid_
+@@ -809,6 +820,7 @@ int client_run(int f_in, int f_out, pid_
  {
        struct file_list *flist = NULL;
        int exit_code = 0, exit_code2 = 0;
@@ -151,7 +151,7 @@ for a local copy, so the old algorithm is used for local copies.
        char *local_name = NULL;
  
        cleanup_child_pid = pid;
-@@ -829,11 +841,18 @@ int client_run(int f_in, int f_out, pid_
+@@ -880,11 +892,18 @@ int client_run(int f_in, int f_out, pid_
                filesfrom_fd = -1;
        }
  
@@ -170,7 +170,7 @@ for a local copy, so the old algorithm is used for local copies.
        if (flist && flist->count > 0) {
                local_name = get_local_name(flist, argv[0]);
  
---- orig/rsync.h       2005-12-15 23:00:49
+--- orig/rsync.h       2006-01-14 20:27:10
 +++ rsync.h    2005-09-16 16:41:26
 @@ -64,6 +64,7 @@
  #define FLAG_DEL_HERE (1<<3)  /* receiver/generator */
index d9e5f18..05c510d 100644 (file)
@@ -28,7 +28,7 @@ After applying this patch, run these commands for a successful build:
  popt_OBJS=popt/findme.o  popt/popt.o  popt/poptconfig.o \
 --- orig/backup.c      2004-10-06 00:13:09
 +++ backup.c   2005-03-03 01:20:46
-@@ -136,6 +136,7 @@ static int make_bak_dir(char *fullpath)
+@@ -135,6 +135,7 @@ static int make_bak_dir(char *fullpath)
                                do_lchown(fullpath, st.st_uid, st.st_gid);
                                do_chmod(fullpath, st.st_mode);
                                (void)DUP_ACL(end, fullpath, st.st_mode);
@@ -36,7 +36,7 @@ After applying this patch, run these commands for a successful build:
                        }
                }
                *p = '/';
-@@ -189,6 +190,7 @@ static int keep_backup(char *fname)
+@@ -188,6 +189,7 @@ static int keep_backup(char *fname)
                return 0;
  
        PUSH_KEEP_BACKUP_ACL(file, fname, buf);
@@ -44,7 +44,7 @@ After applying this patch, run these commands for a successful build:
  
        /* Check to see if this is a device file, or link */
        if (IS_DEVICE(file->mode) && am_root && preserve_devices) {
-@@ -265,6 +267,7 @@ static int keep_backup(char *fname)
+@@ -264,6 +266,7 @@ static int keep_backup(char *fname)
        }
        set_perms(buf, file, NULL, 0);
        CLEANUP_KEEP_BACKUP_ACL();
@@ -54,7 +54,7 @@ After applying this patch, run these commands for a successful build:
        if (verbose > 1) {
 --- orig/configure.in  2004-08-19 19:53:27
 +++ configure.in       2005-05-12 22:57:53
-@@ -822,6 +822,30 @@ samba_cv_HAVE_ACL_GET_PERM_NP=yes,samba_
+@@ -826,6 +826,30 @@ samba_cv_HAVE_ACL_GET_PERM_NP=yes,samba_
    AC_MSG_RESULT(no)
  )
  
@@ -87,7 +87,7 @@ After applying this patch, run these commands for a successful build:
  
 --- orig/flist.c       2005-07-29 02:49:06
 +++ flist.c    2005-10-16 23:03:04
-@@ -962,6 +962,8 @@ static struct file_struct *send_file_nam
+@@ -960,6 +960,8 @@ static struct file_struct *send_file_nam
                return NULL;
        if (MAKE_ACL(file, fname) < 0)
                return NULL;
@@ -96,7 +96,7 @@ After applying this patch, run these commands for a successful build:
  
        maybe_emit_filelist_progress(flist->count + flist_count_offset);
  
-@@ -971,9 +973,11 @@ static struct file_struct *send_file_nam
+@@ -969,9 +971,11 @@ static struct file_struct *send_file_nam
                flist->files[flist->count++] = file;
                send_file_entry(file, f, base_flags);
                SEND_ACL(file, f);
@@ -108,7 +108,7 @@ After applying this patch, run these commands for a successful build:
        }
        return file;
  }
-@@ -1330,6 +1334,7 @@ struct file_list *recv_file_list(int f)
+@@ -1327,6 +1331,7 @@ struct file_list *recv_file_list(int f)
                file = receive_file_entry(flist, flags, f);
  
                RECEIVE_ACL(file, f);
@@ -116,7 +116,7 @@ After applying this patch, run these commands for a successful build:
  
                if (S_ISREG(file->mode))
                        stats.total_size += file->length;
-@@ -1354,6 +1359,7 @@ struct file_list *recv_file_list(int f)
+@@ -1351,6 +1356,7 @@ struct file_list *recv_file_list(int f)
        clean_flist(flist, relative_paths, 1);
  
        SORT_FILE_ACL_INDEX_LISTS();
@@ -124,9 +124,9 @@ After applying this patch, run these commands for a successful build:
  
        if (f >= 0) {
                /* Now send the uid/gid list. This was introduced in
---- orig/generator.c   2005-05-12 23:34:00
+--- orig/generator.c   2006-01-14 08:17:25
 +++ generator.c        2005-05-12 23:21:08
-@@ -729,6 +729,10 @@ static void recv_generator(char *fname, 
+@@ -894,6 +894,10 @@ static void recv_generator(char *fname, 
                if (f_out == -1)
                        SET_ACL(fname, file);
  #endif
@@ -203,7 +203,7 @@ After applying this patch, run these commands for a successful build:
  int preserve_perms = 0;
  int preserve_devices = 0;
  int preserve_uid = 0;
-@@ -189,6 +190,7 @@ static void print_rsync_version(enum log
+@@ -190,6 +191,7 @@ static void print_rsync_version(enum log
        char const *have_inplace = "no ";
        char const *hardlinks = "no ";
        char const *acls = "no ";
@@ -211,7 +211,7 @@ After applying this patch, run these commands for a successful build:
        char const *links = "no ";
        char const *ipv6 = "no ";
        STRUCT_STAT *dumstat;
-@@ -208,7 +210,9 @@ static void print_rsync_version(enum log
+@@ -209,7 +211,9 @@ static void print_rsync_version(enum log
  #ifdef SUPPORT_ACLS
        acls = "";
  #endif
@@ -222,7 +222,7 @@ After applying this patch, run these commands for a successful build:
  #ifdef SUPPORT_LINKS
        links = "";
  #endif
-@@ -223,9 +227,9 @@ static void print_rsync_version(enum log
+@@ -224,9 +228,9 @@ static void print_rsync_version(enum log
                "Copyright (C) 1996-2005 by Andrew Tridgell and others\n");
        rprintf(f, "<http://rsync.samba.org/>\n");
        rprintf(f, "Capabilities: %d-bit files, %ssocketpairs, "
@@ -234,7 +234,7 @@ After applying this patch, run these commands for a successful build:
  
        /* Note that this field may not have type ino_t.  It depends
         * on the complicated interaction between largefile feature
-@@ -296,6 +300,7 @@ void usage(enum logcode F)
+@@ -297,6 +301,7 @@ void usage(enum logcode F)
    rprintf(F," -K, --keep-dirlinks         treat symlinked dir on receiver as dir\n");
    rprintf(F," -p, --perms                 preserve permissions\n");
    rprintf(F," -A, --acls                  preserve ACLs (implies --perms)\n");
@@ -242,7 +242,7 @@ After applying this patch, run these commands for a successful build:
    rprintf(F," -o, --owner                 preserve owner (root only)\n");
    rprintf(F," -g, --group                 preserve group\n");
    rprintf(F," -D, --devices               preserve devices (root only)\n");
-@@ -404,6 +409,9 @@ static struct poptOption long_options[] 
+@@ -409,6 +414,9 @@ static struct poptOption long_options[] 
    {"acls",            'A', POPT_ARG_NONE,   0, 'A', 0, 0 },
    {"no-acls",          0,  POPT_ARG_VAL,    &preserve_acls, 0, 0, 0 },
    {"no-A",             0,  POPT_ARG_VAL,    &preserve_acls, 0, 0, 0 },
@@ -252,7 +252,7 @@ After applying this patch, run these commands for a successful build:
    {"times",           't', POPT_ARG_VAL,    &preserve_times, 1, 0, 0 },
    {"no-times",         0,  POPT_ARG_VAL,    &preserve_times, 0, 0, 0 },
    {"no-t",             0,  POPT_ARG_VAL,    &preserve_times, 0, 0, 0 },
-@@ -1021,6 +1029,17 @@ int parse_arguments(int *argc, const cha
+@@ -1027,6 +1035,17 @@ int parse_arguments(int *argc, const cha
                        return 0;
  #endif /* SUPPORT_ACLS */
  
@@ -270,7 +270,7 @@ After applying this patch, run these commands for a successful build:
  
                default:
                        /* A large opt value means that set_refuse_options()
-@@ -1451,6 +1470,8 @@ void server_options(char **args,int *arg
+@@ -1464,6 +1483,8 @@ void server_options(char **args,int *arg
                argstr[x++] = 'H';
        if (preserve_acls)
                argstr[x++] = 'A';
@@ -302,7 +302,7 @@ After applying this patch, run these commands for a successful build:
        if (verbose > 1 && flags & PERMS_REPORT) {
 --- orig/rsync.h       2005-07-29 02:25:55
 +++ rsync.h    2005-10-16 23:19:44
-@@ -689,6 +689,38 @@ struct stats {
+@@ -685,6 +685,38 @@ struct stats {
  #endif /* SUPPORT_ACLS */
  #include "smb_acls.h"
  
@@ -351,7 +351,7 @@ After applying this patch, run these commands for a successful build:
   -o, --owner                 preserve owner (root only)
   -g, --group                 preserve group
   -D, --devices               preserve devices (root only)
-@@ -674,6 +675,11 @@ ACLs to be the same as the local ACLs.  
+@@ -687,6 +688,11 @@ ACLs to be the same as the local ACLs.  
  remote machine's rsync supports this option also. This is a non-standard
  option.
  
@@ -702,7 +702,7 @@ After applying this patch, run these commands for a successful build:
 +
 +      if (!preserve_xattrs)
 +              return;
-+      fname = f_name(file);
++      fname = f_name(file, NULL);
 +      tag = read_byte(f);
 +      if (tag != 'X' && tag != 'x') {
 +              rprintf(FERROR,