When syncing from Linux to Aix --itemize-changes with --perms lists
directories every time because the high-order st_mode bits for
directories differ between the two systems, and itemize() isn't masking
them with CHMOD_BITS.  Here is a fix, tested with 2.6.6pre1.

PS:  I'm not subscribed to this mailing list, please Cc: if you need
more info from me.  Thanks.

--- generator.c.~1~     Thu Jun 30 13:03:14 2005
+++ generator.c Tue Jul 26 12:51:11 2005
@@ -327,7 +327,8 @@
                             && (!(iflags & ITEM_XNAME_FOLLOWS) || *xname))
                            || (keep_time && cmp_modtime(file->modtime, 
st->st_mtime) != 0))
                                iflags |= ITEM_REPORT_TIME;
-                       if (preserve_perms && file->mode != st->st_mode)
+                       if (preserve_perms && (st->st_mode & CHMOD_BITS)
+                                               != (file->mode & CHMOD_BITS))
                                iflags |= ITEM_REPORT_PERMS;
                        if (preserve_uid && am_root && file->uid != st->st_uid)
                                iflags |= ITEM_REPORT_OWNER;

-- 
Roderick Schertler
[EMAIL PROTECTED]
-- 
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html

Reply via email to