2009 Google Summer of Code
Damien Miller
djm at mindrot.org
Wed Mar 25 23:13:42 EST 2009
On Wed, 25 Mar 2009, Damien Miller wrote:
> 6.1 Renovate sftp
>
> The motivation for this idea is to make sftp(1) a compelling replacement
> for scp(1). scp(1) has a very easy to use command-line interface,
> supports recursive copies ("scp -r") and is quite fast - it does not
> need a server round-trip for each file that it copies. Unfortunately
> scp(1) is unmaintainable - its protocol practically requires shell
> access and has no backwards compatibility or extensibility support.
>
> So this project would be adding these missing features to sftp(1) and
> exposing them via a commandline that is as compatible with scp(1)'s as
> possible. Beyond this baseline, there are a number of other things that
> may be done to improve sftp(1):
>
> - Implement tab-completion in interactive mode. Ben Lindstrom has written
> a patch to implement this, and it only needs a tiny amount of work to
> get it committed.
>
> - Improve the interactive interface. Right now, things like
> "get file1 file2 file3" don't work, or don't do what one might normally
> expect.
>
> Also, the sftp client currently requires read access to every
> component of the patch in which it is operating (i.e. traverse-only
> directories break it) - there is no protocol-level reason why this needs
> to be the case so this could be fixed fairly easily too.
Implementing an rsync-like protocol would be a great project for sftp
as well. Such an implementation would need to be from scratch, since
rsync's license is incompatible with our preferred license for OpenSSH.
-d
More information about the openssh-unix-dev
mailing list