summaryrefslogtreecommitdiff
path: root/sftp.c
AgeCommit message (Collapse)Author
2010-10-24 - sthen@cvs.openbsd.org 2010/10/23 22:06:12Darren Tucker
[sftp.c] escape '[' in filename tab-completion; fix a type while there. ok djm@
2010-10-07 - djm@cvs.openbsd.org 2010/10/05 05:13:18Damien Miller
[sftp.c sshconnect.c] use default shell /bin/sh if $SHELL is ""; ok markus@
2010-10-07 - djm@cvs.openbsd.org 2010/09/26 22:26:33Damien Miller
[sftp.c] when performing an "ls" in columnated (short) mode, only call ioctl(TIOCGWINSZ) once to get the window width instead of per- filename
2010-10-07 - djm@cvs.openbsd.org 2010/09/25 09:30:16Damien Miller
[sftp.c configure.ac openbsd-compat/glob.c openbsd-compat/glob.h] make use of new glob(3) GLOB_KEEPSTAT extension to save extra server rountrips to fetch per-file stat(2) information. NB. update openbsd-compat/ glob(3) implementation from OpenBSD libc to match.
2010-09-24 - jmc@cvs.openbsd.org 2010/09/23 13:34:43Damien Miller
[sftp.c] add [-l limit] to usage();
2010-09-24 - djm@cvs.openbsd.org 2010/09/22 22:58:51Damien Miller
[atomicio.c atomicio.h misc.c misc.h scp.c sftp-client.c] [sftp-client.h sftp.1 sftp.c] add an option per-read/write callback to atomicio factor out bandwidth limiting code from scp(1) into a generic bandwidth limiter that can be attached using the atomicio callback mechanism add a bandwidth limit option to sftp(1) using the above "very nice" markus@
2010-06-26 - djm@cvs.openbsd.org 2010/06/18 00:58:39Damien Miller
[sftp.c] unbreak ls in working directories that contains globbing characters in their pathnames. bz#1655 reported by vgiffin AT apple.com
2010-05-10 - dtucker@cvs.openbsd.org 2010/05/05 04:22:09Damien Miller
[sftp.c] restore mput and mget which got lost in the tab-completion changes. found by Kenneth Whitaker, ok djm@
2010-01-28 - djm@cvs.openbsd.org 2010/01/27 19:21:39Damien Miller
[sftp.c] add missing "p" flag to getopt optstring; bz#1704 from imorgan AT nas.nasa.gov
2010-01-15 - guenther@cvs.openbsd.org 2010/01/15 00:05:22Darren Tucker
[sftp.c] Reset SIGTERM to SIG_DFL before executing ssh, so that even if sftp inherited SIGTERM as ignored it will still be able to kill the ssh it starts. ok dtucker@
2010-01-15 - jmc@cvs.openbsd.org 2010/01/13 12:48:34Darren Tucker
[sftp.1 sftp.c] sftp.1: put ls -h in the right place sftp.c: as above, plus add -p to get/put, and shorten their arg names to keep the help usage nicely aligned ok djm
2010-01-13 - djm@cvs.openbsd.org 2010/01/13 04:10:50Darren Tucker
[sftp.c] don't append a space after inserting a completion of a directory (i.e. a path ending in '/') for a slightly better user experience; ok dtucker@
2010-01-13 - djm@cvs.openbsd.org 2010/01/13 01:40:16Darren Tucker
[sftp.c sftp-server.c sftp.1 sftp-common.c sftp-common.h] support '-h' (human-readable units) for sftp's ls command, just like ls(1); ok dtucker@
2010-01-09 - dtucker@cvs.openbsd.org 2010/01/09 11:13:02Darren Tucker
[sftp.c] Prevent sftp from derefing a null pointer when given a "-" without a command. Also, allow whitespace to follow a "-". bz#1691, path from Colin Watson via Debian. ok djm@ deraadt@
2010-01-09 - dtucker@cvs.openbsd.org 2010/01/08 21:50:49Darren Tucker
[sftp.c] Fix two warnings: possibly used unitialized and use a nul byte instead of NULL pointer. ok djm@
2010-01-08 - (dtucker) [sftp.c] Expand ifdef for libedit to cover complete_is_remoteDarren Tucker
too.
2010-01-08 - (dtucker) [sftp.c] ifdef out the sftp completion bits for platforms thatDarren Tucker
don't have libedit.
2010-01-08 - djm@cvs.openbsd.org 2010/01/04 02:03:57Darren Tucker
[sftp.c] Implement tab-completion of commands, local and remote filenames for sftp. Hacked on and off for some time by myself, mouring, Carlos Silva (via 2009 Google Summer of Code) and polished to a fine sheen by myself again. It should deal more-or-less correctly with the ikky corner-cases presented by quoted filenames, but the UI could still be slightly improved. In particular, it is quite slow for remote completion on large directories. bz#200; ok markus@
2010-01-08 - guenther@cvs.openbsd.org 2009/12/20 07:28:36Darren Tucker
[ssh.c sftp.c scp.c] When passing user-controlled options with arguments to other programs, pass the option and option argument as separate argv entries and not smashed into one (e.g., as -l foo and not -lfoo). Also, always pass a "--" argument to stop option parsing, so that a positional argument that starts with a '-' isn't treated as an option. This fixes some error cases as well as the handling of hostnames and filenames that start with a '-'. Based on a diff by halex@ ok halex@ djm@ deraadt@
2010-01-08 - dtucker@cvs.openbsd.org 2009/12/06 23:53:54Darren Tucker
[sftp.c] fix potential divide-by-zero in sftp's "df" output when talking to a server that reports zero files on the filesystem (Unix filesystems always have at least the root inode). From Steve McClellan at radisys, ok djm@
2010-01-08 - halex@cvs.openbsd.org 2009/11/22 13:18:00Darren Tucker
[sftp.c] make passing of zero-length arguments to ssh safe by passing "-<switch>" "<value>" rather than "-<switch><value>" ok dtucker@, guenther@, djm@
2010-01-08 - djm@cvs.openbsd.org 2009/11/20 00:54:01Darren Tucker
[sftp.c] bz#1588 change "Connecting to host..." message to "Connected to host." and delay it until after the sftp protocol connection has been established. Avoids confusing sequence of messages when the underlying ssh connection experiences problems. ok dtucker@
2009-10-07 - djm@cvs.openbsd.org 2009/08/18 18:36:21Darren Tucker
[sftp-client.h sftp.1 sftp-client.c sftp.c] recursive transfer support for get/put and on the commandline work mostly by carlosvsilvapt@gmail.com for the Google Summer of Code with some tweaks by me; "go for it" deraadt@
2009-10-07 - jmc@cvs.openbsd.org 2009/08/13 13:39:54Darren Tucker
[sftp.1 sftp.c] sync synopsis and usage();
2009-10-07 - djm@cvs.openbsd.org 2009/08/13 01:11:19Darren Tucker
[sftp.1 sftp.c] Swizzle options: "-P sftp_server_path" moves to "-D sftp_server_path", add "-P port" to match scp(1). Fortunately, the -P option is only really used by our regression scripts. part of larger patch from carlosvsilvapt@gmail.com for his Google Summer of Code work; ok deraadt markus
2009-10-07 - djm@cvs.openbsd.org 2009/08/12 00:13:00Darren Tucker
[sftp.c sftp.1] support most of scp(1)'s commandline arguments in sftp(1), as a first step towards making sftp(1) a drop-in replacement for scp(1). One conflicting option (-P) has not been changed, pending further discussion. Patch from carlosvsilvapt@gmail.com as part of his work in the Google Summer of Code
2009-02-14 - dtucker@cvs.openbsd.org 2009/02/02 11:15:14Damien Miller
[sftp.c] Initialize a few variables to prevent spurious "may be used uninitialized" warnings from newer gcc's. ok djm@
2009-01-28 - sobrado@cvs.openbsd.org 2008/12/09 15:35:00Damien Miller
[sftp.1 sftp.c] update for the synopses displayed by the 'help' command, there are a few missing flags; add 'bye' to the output of 'help'; sorting and spacing. jmc@ suggested replacing .Oo/.Oc with a single .Op macro. ok jmc@
2008-12-09 - djm@cvs.openbsd.org 2008/12/09 03:02:37Damien Miller
[sftp.1 sftp.c] correct sftp(1) and corresponding usage syntax; bz#1518 patch from imorgan AT nas.nasa.gov; ok deraadt@ improved diff jmc@
2008-12-09 - djm@cvs.openbsd.org 2008/12/09 02:39:59Damien Miller
[sftp.c] Deal correctly with failures in remote stat() operation in sftp, correcting fail-on-error behaviour in batchmode. bz#1541 report and fix from anedvedicky AT gmail.com; ok markus@
2008-07-14 - djm@cvs.openbsd.org 2008/07/13 22:16:03Damien Miller
[sftp.c] increase number of piplelined requests so they properly fill the (recently increased) channel window. prompted by rapier AT psc.edu; ok markus@
2008-06-29 - (djm) OpenBSD CVS SyncDamien Miller
- martynas@cvs.openbsd.org 2008/06/21 07:46:46 [sftp.c] use optopt to get invalid flag, instead of return value of getopt, which is always '?'; ok djm@
2008-06-09 - dtucker@cvs.openbsd.org 2008/06/08 20:15:29Darren Tucker
[sftp.c sftp-client.c sftp-client.h] Have the sftp client store the statvfs replies in wire format, which prevents problems when the server's native sizes exceed the client's. Also extends the sizes of the remaining 32bit wire format to 64bit, they're specified as unsigned long in the standard.
2008-06-09 - (dtucker) [configure.ac defines.h sftp-client.c sftp-server.c sftp.cDarren Tucker
openbsd-compat/Makefile.in openbsd-compat/openbsd-compat.h openbsd-compat/bsd-statvfs.{c,h}] Add a null implementation of statvfs and fstatvfs and remove #defines around statvfs code. ok djm@
2008-06-08 - (dtucker) [configure.ac defines.h sftp-client.c sftp-server.c sftp.c] Do ↵Darren Tucker
not enable statvfs extensions on platforms that do not have statvfs. ok djm@
2008-05-20 - (djm) [configure.ac mux.c sftp.c openbsd-compat/Makefile.in]Damien Miller
[openbsd-compat/fmt_scaled.c openbsd-compat/openbsd-compat.h] Fix compilation on Linux, including pulling in fmt_scaled(3) implementation from OpenBSD's libutil.
2008-05-19 - djm@cvs.openbsd.org 2008/04/18 12:32:11Damien Miller
[sftp-client.c sftp-client.h sftp-server.c sftp.1 sftp.c sftp.h] introduce sftp extension methods statvfs@openssh.com and fstatvfs@openssh.com that implement statvfs(2)-like operations, based on a patch from miklos AT szeredi.hu (bz#1399) also add a "df" command to the sftp client that uses the statvfs@openssh.com to produce a df(1)-like display of filesystem space and inode utilisation ok markus@
2008-02-10 - djm@cvs.openbsd.org 2008/01/20 00:38:30Damien Miller
[sftp.c] When uploading, correctly handle the case of an unquoted filename with glob metacharacters that match a file exactly but not as a glob, e.g. a file called "[abcd]". report and test cases from duncan2nd AT gmx.de
2007-12-29 - djm@cvs.openbsd.org 2007/12/12 05:04:03Darren Tucker
[sftp.c] unbreak lls command and add a regress test that would have caught the breakage; spotted by mouring@
2007-10-26 - djm@cvs.openbsd.org 2007/10/24 03:30:02Damien Miller
[sftp.c] rework argument splitting and parsing to cope correctly with common shell escapes and make handling of escaped characters consistent with sh(1) and between sftp commands (especially between ones that glob their arguments and ones that don't). parse command flags using getopt(3) rather than hand-rolled parsers. ok dtucker@
2007-01-05 - stevesk@cvs.openbsd.org 2007/01/03 04:09:15Damien Miller
[sftp.c] ARGSUSED for lint
2007-01-05 - stevesk@cvs.openbsd.org 2007/01/03 03:01:40Damien Miller
[auth2-chall.c channels.c dns.c sftp.c ssh-keygen.c ssh.c] spaces
2007-01-05 - ray@cvs.openbsd.org 2006/11/23 01:35:11Damien Miller
[misc.c sftp.c] Don't access buf[strlen(buf) - 1] for zero-length strings. ``ok by me'' djm@.
2006-10-24 - (djm) OpenBSD CVS SyncDamien Miller
- ray@cvs.openbsd.org 2006/09/30 17:48:22 [sftp.c] Clear errno before calling the strtol functions. From Paul Stoeber <x0001 at x dot de1 dot cc>. OK deraadt@.
2006-09-21 - otto@cvs.openbsd.org 2006/09/19 05:52:23Darren Tucker
[sftp.c] Use S_IS* macros insted of masking with S_IF* flags. The latter may have multiple bits set, which lead to surprising results. Spotted by Paul Stoeber, more to come. ok millert@ pedro@ jaredy@ djm@
2006-08-05 - deraadt@cvs.openbsd.org 2006/08/03 03:34:42Damien Miller
[OVERVIEW atomicio.c atomicio.h auth-bsdauth.c auth-chall.c auth-krb5.c] [auth-options.c auth-options.h auth-passwd.c auth-rh-rsa.c auth-rhosts.c] [auth-rsa.c auth-skey.c auth.c auth.h auth1.c auth2-chall.c auth2-gss.c] [auth2-hostbased.c auth2-kbdint.c auth2-none.c auth2-passwd.c ] [auth2-pubkey.c auth2.c authfd.c authfd.h authfile.c bufaux.c bufbn.c] [buffer.c buffer.h canohost.c channels.c channels.h cipher-3des1.c] [cipher-bf1.c cipher-ctr.c cipher.c cleanup.c clientloop.c compat.c] [compress.c deattack.c dh.c dispatch.c dns.c dns.h fatal.c groupaccess.c] [groupaccess.h gss-genr.c gss-serv-krb5.c gss-serv.c hostfile.c kex.c] [kex.h kexdh.c kexdhc.c kexdhs.c kexgex.c kexgexc.c kexgexs.c key.c] [key.h log.c log.h mac.c match.c md-sha256.c misc.c misc.h moduli.c] [monitor.c monitor_fdpass.c monitor_mm.c monitor_mm.h monitor_wrap.c] [monitor_wrap.h msg.c nchan.c packet.c progressmeter.c readconf.c] [readconf.h readpass.c rsa.c scard.c scard.h scp.c servconf.c servconf.h] [serverloop.c session.c session.h sftp-client.c sftp-common.c] [sftp-common.h sftp-glob.c sftp-server.c sftp.c ssh-add.c ssh-agent.c] [ssh-dss.c ssh-gss.h ssh-keygen.c ssh-keyscan.c ssh-keysign.c ssh-rsa.c] [ssh.c ssh.h sshconnect.c sshconnect.h sshconnect1.c sshconnect2.c] [sshd.c sshlogin.c sshlogin.h sshpty.c sshpty.h sshtty.c ttymodes.c] [uidswap.c uidswap.h uuencode.c uuencode.h xmalloc.c xmalloc.h] [loginrec.c loginrec.h openbsd-compat/port-aix.c openbsd-compat/port-tun.h] almost entirely get rid of the culture of ".h files that include .h files" ok djm, sort of ok stevesk makes the pain stop in one easy step NB. portable commit contains everything *except* removing includes.h, as that will take a fair bit more work as we move headers that are required for portability workarounds to defines.h. (also, this step wasn't "easy")
2006-08-05 - stevesk@cvs.openbsd.org 2006/08/01 23:22:48Damien Miller
[auth-passwd.c auth-rhosts.c auth-rsa.c auth.c auth.h auth1.c] [auth2-chall.c auth2-pubkey.c authfile.c buffer.c canohost.c] [channels.c clientloop.c dh.c dns.c dns.h hostfile.c kex.c kexdhc.c] [kexgexc.c kexgexs.c key.c key.h log.c misc.c misc.h moduli.c] [monitor_wrap.c packet.c progressmeter.c readconf.c readpass.c scp.c] [servconf.c session.c sftp-client.c sftp-common.c sftp-server.c sftp.c] [ssh-add.c ssh-agent.c ssh-keygen.c ssh-keyscan.c ssh.c sshconnect.c] [sshconnect1.c sshconnect2.c sshd.c sshlogin.c sshtty.c uuencode.c] [uuencode.h xmalloc.c] move #include <stdio.h> out of includes.h
2006-08-05 - stevesk@cvs.openbsd.org 2006/07/26 13:57:17Damien Miller
[authfd.c authfile.c dh.c canohost.c channels.c clientloop.c compat.c] [hostfile.c kex.c log.c misc.c moduli.c monitor.c packet.c readpass.c] [scp.c servconf.c session.c sftp-server.c sftp.c ssh-add.c ssh-agent.c] [ssh-keygen.c ssh-keyscan.c ssh-keysign.c ssh.c sshconnect.c] [sshconnect1.c sshd.c xmalloc.c] move #include <stdlib.h> out of includes.h
2006-08-05 - stevesk@cvs.openbsd.org 2006/07/26 02:35:17Damien Miller
[atomicio.c auth.c dh.c authfile.c buffer.c clientloop.c kex.c] [groupaccess.c gss-genr.c kexgexs.c misc.c monitor.c monitor_mm.c] [packet.c scp.c serverloop.c session.c sftp-client.c sftp-common.c] [sftp-server.c sftp.c ssh-add.c ssh-agent.c ssh-keygen.c sshlogin.c] [uidswap.c xmalloc.c] move #include <sys/param.h> out of includes.h
2006-07-24 - stevesk@cvs.openbsd.org 2006/07/22 20:48:23Damien Miller
[atomicio.c auth-options.c auth-passwd.c auth-rhosts.c auth-rsa.c] [auth.c auth1.c auth2-chall.c auth2-hostbased.c auth2-passwd.c auth2.c] [authfd.c authfile.c bufaux.c bufbn.c buffer.c canohost.c channels.c] [cipher-3des1.c cipher-bf1.c cipher-ctr.c cipher.c clientloop.c] [compat.c deattack.c dh.c dns.c gss-genr.c gss-serv.c hostfile.c] [includes.h kex.c kexdhc.c kexdhs.c kexgexc.c kexgexs.c key.c log.c] [mac.c match.c md-sha256.c misc.c moduli.c monitor.c monitor_fdpass.c] [monitor_mm.c monitor_wrap.c msg.c nchan.c packet.c rsa.c] [progressmeter.c readconf.c readpass.c scp.c servconf.c serverloop.c] [session.c sftp-client.c sftp-common.c sftp-glob.c sftp-server.c sftp.c] [ssh-add.c ssh-agent.c ssh-dss.c ssh-keygen.c ssh-keyscan.c] [ssh-keysign.c ssh-rsa.c ssh.c sshconnect.c sshconnect1.c sshconnect2.c] [sshd.c sshlogin.c sshpty.c ttymodes.c uidswap.c xmalloc.c] move #include <string.h> out of includes.h