--copy-unsafe-links fix checked in

jw schultz jw at pegasys.ws
Wed Jan 15 22:25:00 EST 2003

On Wed, Jan 15, 2003 at 10:27:31AM -0600, Dave Dykstra wrote:
> In my research into this I also found that 2-1/2 years ago somebody
> posted a patch that included a fix for this buried in it, and that I
> had promised to integrate his patch but I never did it, I think due to
> various other crises that were happening at the time.  I also don't think
> I realized that the existing option was broken.  His patch expanded the
> --copy-unsafe-links option so that unsafe symlinks on the destination
> side are also followed.  I'm sure that could be a useful option, allowing
> things like moving some parts of a directory structure on the destination
> side to a separate filesystem.  However, it really doesn't have anything
> to do with the name "copy-unsafe-links".  I'm thinking that either I
> should rename the --copy-unsafe-links option to --follow-unsafe-links
> and add this functionality, or add a separate option by that name that
> only affects the destination side.  Does anybody have an opinion on those?

By follow-unsafe-links do you mean that if it finds a
link to a directory it will follow that link and descend
that directory tree located outside the tree being rsynced?
That is what i would infer following to do.  While
potentially useful this is also potentially dangerous.
Following directory links should, if added, be distinguished
from I/O through file links.

Even if it is just links to files that it would write
through it should be a separate option.  It is one thing to
read through an unsafe link, quite another to write through it.
A distinction should be made between them.

There is a reason why apache disables following links by default.

I may be reading you incorrectly but the ideas presented
would, i think, need four options for "unsafe" links.
I have made up names for the other three for the sake of

	--copy-unsafe-links	read through to files
	--write-unsafe-links	write through to files

	--follow-src-links	descend directory links on src
	--follow-dest-links	descend directory links on dest

More information about the rsync mailing list