Summary: an xattr filter rule (e.g. --filter='-x! user.*’, which is suggested 
by the documentation) is treated as a file filter rule on the remote side.

Repro #1, sender is local:
host1$ rsync --filter=‘-x! user.*' -avvvHX --delete /tmp/test/. host2:test
...
[Receiver] add_rule(-! user.*)

Repro #2, sender is remote:
host1$ rsync --filter=‘-x! user.*' -avvvHX --delete host2:test/. /tmp/test
...
[sender] add_rule(-! user.*)

One possible and quite dangerous symptom of this is that the incorrect (-! 
user.*) rule matches (almost) all remote files, therefore in repro #1, no 
remote files are deleted, and in repro #2, nothing is transferred and all local 
files are deleted.


Environment: macOS 10.13.4, homebrew, 
https://github.com/Homebrew/homebrew-core/blob/master/Formula/rsync.rb
rsync  version 3.1.3  protocol version 31
Capabilities:
   64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,
   socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
   append, ACLs, xattrs, iconv, symtimes, no prealloc, file-flags
-- 
Please use reply-all for most replies to avoid omitting the mailing list.
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