mirror of
https://github.com/RsyncProject/rsync.git
synced 2026-09-21 09:45:06 -04:00
The sibling anchor test only covers the nested case, where re-anchoring the cleanup at the sender's CWD merely fails with EINVAL. For a source that is a direct child of / the parent component is empty, so the cwd-backed cache handed back the sender's own working directory and --remove-source-files unlinked a same-named entry there -- the real consequence of the defect, and silent: the requested source survived and the exit status was 0. Needs root and a writable /, so it skips elsewhere; registered as an expected skip on the non-root and sealed-root platforms. The decoy's mtime is copied at nanosecond precision on purpose: the sender's changed-file guard compares sub-second mtime too, and a whole-second copy makes it skip the removal for an unrelated reason, which would leave the test passing on a vulnerable build.