[SCM] The rsync repository. - branch b3.0.x updated

Rsync CVS commit messages rsync-cvs at lists.samba.org
Sat Jan 1 22:26:13 MST 2011

The branch, b3.0.x has been updated
       via  c43624c Mention the latest changes.
       via  4baef8d Make xattrs.test more like the master version.
      from  c3ee6ac Avoid directory permission issues with --fake-super. Fixes bug 7070.


- Log -----------------------------------------------------------------
commit c43624c5758809f3246a1394656ad8596c9834be
Author: Wayne Davison <wayned at samba.org>
Date:   Sat Jan 1 11:51:47 2011 -0800

    Mention the latest changes.

commit 4baef8d663800bbfccc1ad002afd7c6cf68fd9e3
Author: Wayne Davison <wayned at samba.org>
Date:   Sat Jan 1 17:40:23 2011 -0800

    Make xattrs.test more like the master version.


Summary of changes:
 NEWS                  |   27 +++++++++++++++++++++++++--
 testsuite/xattrs.test |   34 +++++++++++++++++++---------------
 2 files changed, 44 insertions(+), 17 deletions(-)

Changeset truncated at 500 lines:

diff --git a/NEWS b/NEWS
index f53d70d..ca4e65d 100644
--- a/NEWS
+++ b/NEWS
@@ -4,12 +4,15 @@ Changes since 3.0.7:
-    - Fixed a buffer-overflow issue where a directory path that is exactly
-      MAXPATHLEN was not handled correctly.
+    - Fixed two buffer-overflow issues: one where a directory path that is
+      exactly MAXPATHLEN was not handled correctly, and one handling a
+      --backup-dir that is extra extra large.
     - Fixed a potential crash when an rsync daemon has a filter/exclude list
       and the transfer is using ACLs or extended attributes.
+    - Properly handle requesting remote filenames that start with a dash.
     - Fixed a bug in the comparing of upper-case letters in file suffixes for
@@ -28,8 +31,28 @@ Changes since 3.0.7:
       hashing is working right, and to supply more information if the hard-link
       code fails.
+    - The --inplace code was improved to not search for an impossible checksum
+      position.  The quadruple-verbose chunk[N] message will now mention when
+      an inplace chunk was handled by a seek rather than a read+write.
+    - If we fail to connect to an rsync daemon, report all the connection
+      errors (e.g. ipv4 & ipv6), not just the last one.
+    - Fixed an issue where an xattr and/or acl transfer that used an alt-dest
+      option (e.g. --link-dest) could output an error trying to itemize the
+      changes against the alt-dest directory's xattr/acl info but was instead
+      tryring to access the not-yet-existing new destination directory.
+    - Improved xattr system-error messages to mention the full path to the
+      file.
     - Improved the unsafe-symlink errors messages.
+    - Fixed a bug setting xattrs on new files that aren't user writable.
+    - Fixed a bug with --fake-super when copying files and dirs that aren't
+      user writable.
     - Fix the popt arg parsing so that an option that doesn't take an arg will
       reject an attempt to supply and arg.
diff --git a/testsuite/xattrs.test b/testsuite/xattrs.test
index 616b628..b61f561 100644
--- a/testsuite/xattrs.test
+++ b/testsuite/xattrs.test
@@ -48,7 +48,9 @@ makepath "$chkdir/foo"
 echo wow >"$chkdir/file1"
 cp_touch "$fromdir/foo/file3" "$chkdir/foo"
-files='foo file0 file1 file2 foo/file3 file4 foo/bar foo/bar/file5'
+dirs='foo foo/bar'
+files='file0 file1 file2 foo/file3 file4 foo/bar/file5'
 uid_gid=`"$TOOLDIR/tls" "$fromdir/foo" | sed 's/^.* \([0-9][0-9]*\)\.\([0-9][0-9]*\) .*/\1:\2/'`
 cd "$fromdir"
@@ -80,51 +82,53 @@ xset user.extra 'remove me' "$chkdir/file1"
 xset user.foo 'old foo' "$chkdir/foo/file3"
 xset $RUSR.equal 'this long attribute should remain the same and not need to be transferred' "$chkdir/foo/file3"
-xls $files >"$scratchdir/xattrs.txt"
+xls $dirs $files >"$scratchdir/xattrs.txt"
 # OK, let's try a simple xattr copy.
 checkit "$RSYNC -avX --super . '$chkdir/'" "$fromdir" "$chkdir"
 cd "$chkdir"
-xls $files | diff $diffopt "$scratchdir/xattrs.txt" -
+xls $dirs $files | diff $diffopt "$scratchdir/xattrs.txt" -
 cd "$fromdir"
 checkit "$RSYNC -aiX --super --copy-dest=../chk . ../to" "$fromdir" "$todir"
 cd "$todir"
-xls $files | diff $diffopt "$scratchdir/xattrs.txt" -
+xls $dirs $files | diff $diffopt "$scratchdir/xattrs.txt" -
 cd "$fromdir"
 rm -rf "$todir"
 xset user.nice 'this is nice, but different' file1
-checkit "$RSYNC -aiX --fake-super . ../chk" "$fromdir" "$chkdir"
-cd "$chkdir"
-xls $files >"$scratchdir/xattrs.txt"
+xls $dirs $files >"$scratchdir/xattrs.txt"
-cd "$fromdir"
 checkit "$RSYNC -aiX --fake-super --link-dest=../chk . ../to" "$chkdir" "$todir"
 cd "$todir"
-xls $files | diff $diffopt "$scratchdir/xattrs.txt" -
+xls $dirs $files | diff $diffopt "$scratchdir/xattrs.txt" -
-sed -n -e '/\.\/file1$/d' -e '/^[^ ][^ ]*  *[^ ][^ ]*  *[^ ][^ ]*  *1 /p' "$scratchdir/ls-to" >"$scratchdir/ls-diff"
+sed -n -e '/^[^ ][^ ]*  *[^ ][^ ]*  *[^ ][^ ]*  *1 /p' "$scratchdir/ls-to" >"$scratchdir/ls-diff-all"
+fgrep -v './file1' "$scratchdir/ls-diff-all" >"$scratchdir/ls-diff" || :
 if [ -s "$scratchdir/ls-diff" ]; then
     echo "Missing hard links on:"
     cat "$scratchdir/ls-diff"
     exit 1
+if [ ! -s "$scratchdir/ls-diff-all" ]; then
+    echo "Too many hard links on file1!"
+    exit 1
 cd "$chkdir"
-chmod go-rwx . $files
+chmod go-rwx . $dirs $files
+xset user.nice 'this is nice, but different' file1
+xset user.rsync.%stat "40000 0,0 $uid_gid" $dirs
 xset user.rsync.%stat "100000 0,0 $uid_gid" $files
-xset user.rsync.%stat "40000 0,0 $uid_gid" foo foo/bar
-xls $files >"$scratchdir/xattrs.txt"
+xls $dirs $files >"$scratchdir/xattrs.txt"
 cd "$fromdir"
 rm -rf "$todir"
@@ -133,7 +137,7 @@ rm -rf "$todir"
 checkit "$RSYNC -aiX --fake-super --chmod=a= . ../to" "$chkdir" "$todir" # 2>"$scratchdir/errors.txt"
 cd "$todir"
-xls $files | diff $diffopt "$scratchdir/xattrs.txt" -
+xls $dirs $files | diff $diffopt "$scratchdir/xattrs.txt" -
 cd "$fromdir"
 rm -rf "$todir" "$chkdir"

The rsync repository.

More information about the rsync-cvs mailing list