I've corrected the bug that was making rsync crash, a silly pointer issue (was using &value instead of value, shame on me). I've also corrected a bracket bug in sys_llistxattr: sizeof foo is dangerous as sizeof is a macro, works fine as value, but on return variable it bugs. I've changed in sizeof(foo). Also putted some printfs to be able to debug easily when verbose > 3 (option -vvvv). Now it's working here, there is only a Finder bug that doesn't display a file with only a resource fork.

Ordinateur-de-LaG:~/Desktop/rsync-test lag$ ls -la ../test/
total 24
drwxr-xr-x   4 lag  lag   136 15 Feb 21:53 .
drwx------  11 lag  lag   374 15 Feb 22:17 ..
-rw-r--r--   1 lag  lag  6148 15 Feb 21:53 .DS_Store
-rw-r--r-- 1 lag lag 0 15 Feb 15:55 ons.o io.o compat.o hlink.o .textClipping Ordinateur-de-LaG:~/Desktop/rsync-test lag$ ls -la ../test/ons.o\ io.o\ compat.o\ hlink.o\ .textClipping/rsrc -rw-r--r-- 1 lag lag 2617 15 Feb 15:55 ../test/ons.o io.o compat.o hlink.o .textClipping/rsrc Ordinateur-de-LaG:~/Desktop/rsync-test lag$ ls -la ~/rsynctest/ total 8
drwxr-xr-x   3 lag  lag  102 15 Feb 22:06 .
drwxr-xr-x  17 lag  lag  578 15 Feb 22:03 ..
-rw-r--r-- 1 lag lag 0 15 Feb 15:55 ons.o io.o compat.o hlink.o .textClipping Ordinrdinateur-de-LaG:~/Desktop/rsync-test lag$ ls -la ~/rsynctest/ons.o\ io.o\ compat.o\ hnnkk.textClipping/rsrc

-rw-r--r-- 1 lag lag 2617 15 Feb 15:55 /Users/lag/rsynctest/ons.o io.o compat.o hlink.o .textClipping/rsrc Ordinateur-de-LaG:~/Desktop/rsync-test lag$ cat ~/rsynctest/ons.o\ io.o\ compat.o\ hlink.o\ .textClipping/rsrc ?Z?ons.o io.o compat.o hlink.o token.o uidlist.o socket.o hashtable.o fileio.o batch.o clientname.o chmod.o acls.o xattrs.o progress.o pipe.o params.o loadparm.o clientserver.o access.o connection.o authenticate.o lib/wildmatch.o lib/compat.o lib/snprintf.o lib/mdfour.o lib/md5.o lib/permstring.o lib/pool_alloc.o lib/sysacls.o lib/sysxattrs.o zlib/deflate.o zlib/inffast.o zlib/inflate.o zlib/inftrees.o zlib/trees.o zlib/zutil.o zlib/adler32.o zlib/compress.o zlib/crc32.o popt/findme.o popt/popt.o popt/poptconfig.o popt/popthelp.o popt/poptparse.o rsync tls getgroups getfsdev trimslash t_unsafe wildtest tls.o getgroups.o getfsdev.o t_stub.o t_unsafe.o trimslash.o wildtest.o testsuite/chown-fake.test testsuite/devices-fake.test \?ons.o io.o compat.o hlink.o token.o uidlist.o socket.o hashtable.o fileio.o batch.o clientname.o chmod.o acls.o xattrs.o progress.o pipe.o params.o loadparm.o clientserver.o access.o connection.o authenticate.o lib/wildmatch.o lib/compat.o lib/snprintf.o lib/mdfour.o lib/md5.o lib/permstring.o lib/pool_alloc.o lib/sysacls.o lib/sysxattrs.o zlib/deflate.o zlib/inffast.o zlib/inflate.o zlib/inftrees.o zlib/trees.o zlib/zutil.o zlib/adler32.o zlib/compress.o zlib/crc32.o popt/findme.o popt/popt.o popt/poptconfig.o popt/popthelp.o popt/poptparse.o rsync tls getgroups getfsdev trimslash t_unsafe wildtest tls.o getgroups.o getfsdev.o t_stub.o t_unsafe.o trimslash.o wildtest.o testsuite/chown-fake.test testsuite/devices-fake.test \0utxtTEXT ?Z> ?QZutxtTEXT&drag2??_????_????_?Ordinateur-de-LaG:~/Desktop/rsync-test lag$

As you can see, on the Terminal the Text Clipping ons.o io.o compat.o hlink.o .textClipping is just fine, but it won't appear in the Finder even after deleting the .DS_Store. Maybe rsync see an empty data fork and doesn't create a data fork in the destination file. But maybe it's only the Panther's Finder that is buggy.

@Rob: Are you sure you proceed as this for patching?
1) Download a fresh 3.0.0pre9 rsync and its patches folder
2) Put the patches folder into the rsync folder
3) Launch a Terminal and go to rsync folder (example: cd ~/Desktop/rsync)
4) Copy past the command:     patch -p1 <patches/flags.diff
5) Copy past the command:     patch -p1 <patches/crtimes.diff
6) Use the command: patch -p1 <path/to/rsync10.3xattr_supportv0.2.diff substituting path/to by the right path
7) ./configure
8) make

The error you described me comes from ACL that seems to be built in your config but it should be off as 10.3 doesn't support ACLs. Your ./configure should end like this:

checking whether -c -o works... yes
checking sys/acl.h usability... no
checking sys/acl.h presence... no
checking for sys/acl.h... no
checking acl/libacl.h usability... no
checking acl/libacl.h presence... no
checking for acl/libacl.h... no
checking for _acl... no
checking for __acl... no
checking for _facl... no
checking for __facl... no
checking whether to support ACLs... running tests:
checking for acl_get_file in -lacl... no
checking for ACL support... no
checking ACL test results... No ACL support found
checking attr/xattr.h usability... no
checking attr/xattr.h presence... no
checking for attr/xattr.h... no
checking sys/xattr.h usability... no
checking sys/xattr.h presence... no
checking for sys/xattr.h... no
checking sys/extattr.h usability... no
checking sys/extattr.h presence... no
checking for sys/extattr.h... no
checking whether to support extended attributes... Using OS X PreTiger attrs
configure.sh: creating ./config.status
config.status: creating Makefile
config.status: creating lib/dummy
config.status: creating zlib/dummy
config.status: creating popt/dummy
config.status: creating shconfig
config.status: creating config.h

    rsync 3.0.0pre9 configuration successful

If it says "checking whether to support ACLs... Using OS X ACLs", you can force it to disable ACL running:
./configure --disable-acl-support
instead of simply ./configure

I think this time we got something more or less functional. Got to test it!

Vitorio

Attachment: rsync10.3xattr_supportv0.2.diff
Description: Binary data

-- 
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