Mailing List Archive

[Bug 485] scp doesn't preserve symbolic links
http://bugzilla.mindrot.org/show_bug.cgi?id=485

djm@mindrot.org changed:

What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |WONTFIX



------- Additional Comments From djm@mindrot.org 2003-06-04 23:28 -------
no, scp behaves like Berkeley rcp - which has never copied links.



------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
[Bug 485] scp doesn't preserve symbolic links [ In reply to ]
http://bugzilla.mindrot.org/show_bug.cgi?id=485





------- Additional Comments From jsk29@cornell.edu 2003-06-04 23:53 -------
Is it really that painful to add a switch which makes it preserve links? Do you
have any understanding of how much of a pain in the ass this "feature" of
disregarding the status of links can be?

You have a program that can easily lock itself into a loop. This is a _problem_.

Scp is a godsend. I'd really like to have my only problem with its use cleared up.

(My attitude is, since Berkeley rcp behaved this way, it was broken, too. Fix
the bug. Why adamantly adhere to the brokenness of an ancient program?)



------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
[Bug 485] scp doesn't preserve symbolic links [ In reply to ]
http://bugzilla.mindrot.org/show_bug.cgi?id=485





------- Additional Comments From djm@mindrot.org 2003-06-04 23:58 -------
the scp/rcp is 20+ years old and widely deployed - we don't have to option of
unilaterally changing it.

Use rsync, sftp or tar-over-ssh because scp isn't going to copy links.

(you ignored the patch that I posted to fix the looping)



------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
[Bug 485] scp doesn't preserve symbolic links [ In reply to ]
http://bugzilla.mindrot.org/show_bug.cgi?id=485





------- Additional Comments From jsk29@cornell.edu 2003-06-05 00:46 -------
Sorry for not responding about the patch; I didn't ignore it. It doesn't solve
the problem: Information in a directory tree (a symbolic link) is disregarded
by scp.

Although I feel that the "correct" way to do this is to change the behavior of
scp to always respect links, another way is possible, which will retain
backwards compatibility. The switch "-R" is not in use by scp yet, and "cp -R"
means to copy a tree recursively, while respecting symbolic links. Implementing
"-R" in scp will serve both purposes: symbolic links will be respected, _and_
"scp -r" will work exactly the same way as it currently does. No current
scripts will cease to function.

(I still think that rcp is a bad model for scp to mimic... modelling off of the
behavior of cp would be much more user-friendly for most people, since they have
never used rcp.)



------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
[Bug 485] scp doesn't preserve symbolic links [ In reply to ]
http://bugzilla.mindrot.org/show_bug.cgi?id=485





------- Additional Comments From mouring@eviladmin.org 2003-06-05 00:54 -------
You are currently preaching to the converted. However, rcp over ssh (scp)
dates back to the original SSH Corp release.

The issue is you have to not only teach the client side the -R feature but you
have to teach the server side the -R. So to add this feature would mean it
would results in unexpected results for those going from OpenSSH 3.7 to any
earlier release.



------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
[Bug 485] scp doesn't preserve symbolic links [ In reply to ]
http://bugzilla.mindrot.org/show_bug.cgi?id=485





------- Additional Comments From jsk29@cornell.edu 2003-06-06 00:07 -------
I'm happy to hear someone agrees! :)

I'm not so worried about incompatibilities w/ older servers. It's perfectly
fine to issue an error if a server can't support an new operation a client would
like to perform. Also, OpenSSH servers tend to get updated fairly often for
security reasons. So, if a server can't support some operation, that probably
won't last for long.



------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
[Bug 485] scp doesn't preserve symbolic links [ In reply to ]
http://bugzilla.mindrot.org/show_bug.cgi?id=485





------- Additional Comments From mouring@eviladmin.org 2003-06-06 00:18 -------
Still won't add it. YOU may not care, but some of us do care. I know people
that are still running patched and customized 1.2.x SSH Corp servers that
*CAN'T* upgrade them at this point.

Where I may agree with the fact rcp is brain dead. I agree with djm@ that we
should not be focusing on rcp/scp features and instead we should be focusing on
sftp. Which is RFC defined and much better generalized solution in most cases.



------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
[Bug 485] scp doesn't preserve symbolic links [ In reply to ]
http://bugzilla.mindrot.org/show_bug.cgi?id=485

djm@mindrot.org changed:

What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |CLOSED



------- Additional Comments From djm@mindrot.org 2003-06-06 00:22 -------
This discussion is academic - no option to copy symlinks is going to be added.
We may add a patch to stop following of symlinks though.

Even if we did have a desire to "extend" the rcp protocol, one must consider not
only interop against older version of OpenSSH, but also ssh.com and other free
and commercial servers (and dozens of Windows clients). With scp being specified
as "BSD rcp over ssh", a protocol lacking extensibility mechanisms or feature
negotiation, there is no chance of them all changing.

You may have more luck conviencing someone to make a scp-like commandline
interface to sftp - a protocol which does have the ability at protocol level to
transfer symlinks. That would be a separate bug.



------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
[Bug 485] scp doesn't preserve symbolic links [ In reply to ]
http://bugzilla.mindrot.org/show_bug.cgi?id=485





------- Additional Comments From jsk29@cornell.edu 2003-06-06 02:03 -------
Yeah, I thought about this more last night, and I think one possible solution is
to hack what I need together just using sftp. Maybe someone someday will define
their own remote cp, without any concern for backwards compatibility w/ rcp, and
base it off of sftp.

Anyway, you are right, this is academic. None of this will make any of my
scripts any cleaner any time soon.



------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.