Commit Graph

203 Commits

Author SHA1 Message Date
djm@openbsd.org
2a35862e66 upstream: use path_absolute() for pathname checks; from Manoj Ampalam
OpenBSD-Commit-ID: 482ce71a5ea5c5f3bc4d00fd719481a6a584d925
2018-11-16 14:37:33 +11:00
djm@openbsd.org
5c1a63562c upstream: support a prefix of '@' to suppress echo of sftp batch
commands; bz#2926; ok dtucker@

OpenBSD-Commit-ID: 9d635636bc84aeae796467e059f7634de990a79d
2018-11-16 13:51:58 +11:00
dtucker@openbsd.org
de37ca9094 upstream: Add FALLTHROUGH comments where appropriate. Patch from
jjelen at redhat via bz#2687.

OpenBSD-Commit-ID: c48eb457be697a19d6d2950c6d0879f3ccc851d3
2018-09-09 14:50:32 +10:00
bluhm@openbsd.org
e7751aa409 upstream: Since the previous commit, ssh regress test sftp-chroot was
failing. The sftp program terminated with the wrong exit code as sftp called
fatal() instad of exit(0).  So when the sigchld handler waits for the child,
remember that it was found.  Then don't expect that main() can wait again. OK
dtucker@

OpenBSD-Commit-ID: bfafd940c0de5297940c71ddf362053db0232266
2018-05-11 13:10:49 +10:00
djm@openbsd.org
3455f1e7c4 upstream: notify user immediately when underlying ssh process dies;
patch from Thomas Kuthan in bz2719; ok dtucker@

OpenBSD-Commit-ID: 78fac88c2f08054d1fc5162c43c24162b131cf78
2018-04-15 07:52:56 +10:00
djm@openbsd.org
001aa55484 upstream: lots of typos in comments/docs. Patch from Karsten Weiss
after checking with codespell tool
(https://github.com/lucasdemarchi/codespell)

OpenBSD-Commit-ID: 373222f12d7ab606598a2d36840c60be93568528
2018-04-10 10:17:15 +10:00
djm@openbsd.org@openbsd.org
fbe8e7ac94 upstream commit
allow "cd" and "lcd" commands with no explicit path
argument. lcd will change to the local user's home directory as usual. cd
will change to the starting directory for session (because the protocol
offers no way to obtain the remote user's home directory). bz#2760 ok
dtucker@

OpenBSD-Commit-ID: 15333f5087cee8c1ed1330cac1bd0a3e6a767393
2017-11-03 16:20:41 +11:00
millert@openbsd.org
887669ef03 upstream commit
Add URI support to ssh, sftp and scp.  For example
ssh://user@host or sftp://user@host/path.  The connection parameters
described in draft-ietf-secsh-scp-sftp-ssh-uri-04 are not implemented since
the ssh fingerprint format in the draft uses md5 with no way to specify the
hash function type.  OK djm@

Upstream-ID: 4ba3768b662d6722de59e6ecb00abf2d4bf9cacc
2017-10-23 16:10:08 +11:00
Damien Miller
bcd1485075 portability for sftp globbed ls sort by mtime
Include replacement timespeccmp() for systems that lack it.
Support time_t struct stat->st_mtime in addition to
timespec stat->st_mtim, as well as unsorted fallback.
2017-06-10 23:41:25 +10:00
djm@openbsd.org
72be5b2f8e upstream commit
implement sorting for globbed ls; bz#2649 ok dtucker@

Upstream-ID: ed3110f351cc9703411bf847ba864041fb7216a8
2017-06-10 16:40:11 +10:00
djm@openbsd.org
3575f0b12a upstream commit
remove -1 / -2 options; pointed out by jmc@

Upstream-ID: 65d2a816000741a95df1c7cfdb5fa8469fcc7daa
2017-05-08 09:18:04 +10:00
djm@openbsd.org
6d5a41b38b upstream commit
fix division by zero crash in "df" output when server
returns zero total filesystem blocks/inodes. Spotted by Guido Vranken; ok
dtucker@

Upstream-ID: 6fb6c2ae6b289aa07b6232dbc0be54682ef5419f
2017-02-17 14:52:24 +11:00
Damien Miller
dda78a03af Force Turkish locales back to C/POSIX; bz#2643
Turkish locales are unique in their handling of the letters 'i' and
'I' (yes, they are different letters) and OpenSSH isn't remotely
prepared to deal with that. For now, the best we can do is to force
OpenSSH to use the C/POSIX locale and try to preserve the UTF-8
encoding if possible.

ok dtucker@
2016-12-12 13:58:59 +11:00
millert@openbsd.org
2c6697c443 upstream commit
Install a signal handler for tty-generated signals and
wait for the ssh child to suspend before suspending sftp.  This lets ssh
restore the terminal mode as needed when it is suspended at the password
prompt.  OK dtucker@

Upstream-ID: a31c1f42aa3e2985dcc91e46e6a17bd22e372d69
2016-10-19 03:30:04 +11:00
deraadt@openbsd.org
9136ec134c upstream commit
Add MAXIMUM(), MINIMUM(), and ROUNDUP() to misc.h, then
use those definitions rather than pulling <sys/param.h> and unknown namespace
pollution. ok djm markus dtucker

Upstream-ID: 712cafa816c9f012a61628b66b9fbd5687223fb8
2016-09-12 13:46:29 +10:00
djm@openbsd.org
da88a70a89 upstream commit
constify a few functions' arguments; patch from Jakub
Jelen bz#2581

Upstream-ID: f2043f51454ea37830ff6ad60c8b32b4220f448d
2016-07-22 14:06:27 +10:00
schwarze@openbsd.org
0e059cdf5f upstream commit
To prevent screwing up terminal settings when printing to
 the terminal, for ASCII and UTF-8, escape bytes not forming characters and
 bytes forming non-printable characters with vis(3) VIS_OCTAL. For other
 character sets, abort printing of the current string in these cases.  In
 particular, * let scp(1) respect the local user's LC_CTYPE locale(1); *
 sanitize data received from the remote host; * sanitize filenames, usernames,
 and similar data even locally; * take character display widths into account
 for the progressmeter.

This is believed to be sufficient to keep the local terminal safe
on OpenBSD, but bad things can still happen on other systems with
state-dependent locales because many places in the code print
unencoded ASCII characters into the output stream.

Using feedback from djm@ and martijn@,
various aspects discussed with many others.

deraadt@ says it should go in now, i probably already hesitated too long

Upstream-ID: e66afbc94ee396ddcaffd433b9a3b80f387647e0
2016-06-06 11:27:38 +10:00
djm@openbsd.org
34a01b2cf7 upstream commit
whitespace at EOL

Upstream-ID: 5beffd4e001515da12851b974e2323ae4aa313b6
2016-04-08 18:21:51 +10:00
dtucker@openbsd.org
ffb1e7e896 upstream commit
Add a function to enable security-related malloc_options.
  With and ok deraadt@, something similar has been in the snaps for a while.

Upstream-ID: 43a95523b832b7f3b943d2908662191110c380ed
2016-02-16 10:44:00 +11:00
deraadt@openbsd.org
ce445b0ed9 upstream commit
Do not cast result of malloc/calloc/realloc* if stdlib.h
 is in scope ok krw millert

Upstream-ID: 5e50ded78cadf3841556649a16cc4b1cb6c58667
2015-08-21 13:43:25 +10:00
deraadt@openbsd.org
087266ec33 upstream commit
Reduce use of <sys/param.h> and transition to <limits.h>
 throughout. ok djm markus
2015-01-26 23:58:53 +11:00
djm@openbsd.org
7d845f4a0b upstream commit
update sftp client and server to new buffer API. pretty
 much just mechanical changes; with & ok markus
2015-01-15 02:22:18 +11:00
millert@openbsd.org
db995f2eed upstream commit
Prefer setvbuf() to setlinebuf() for portability; ok
 deraadt@
2014-12-05 09:28:50 +11:00
djm@openbsd.org
4a45922aeb upstream commit
correct options in usage(); from mancha1 AT zoho.com
2014-10-13 11:39:02 +11:00
deraadt@openbsd.org
40ba4c9733 upstream commit
djm how did you make a typo like that...
2014-10-13 11:37:14 +11:00
djm@openbsd.org
7ff880ede5 upstream commit
~-expand lcd paths
2014-10-13 11:35:49 +11:00
Damien Miller
0070776a03 - djm@cvs.openbsd.org 2014/07/09 01:45:10
[sftp.c]
     more useful error message when GLOB_NOSPACE occurs;
     bz#2254, patch from Orion Poplawski
2014-07-09 13:07:06 +10:00
Damien Miller
3dc27178b4 - logan@cvs.openbsd.org 2014/05/05 07:02:30
[sftp.c]
     Zap extra whitespace.

     OK from djm@ and dtucker@
2014-05-15 14:37:59 +10:00
Damien Miller
380948180f - dtucker@cvs.openbsd.org 2014/04/29 20:36:51
[sftp.c]
     Don't attempt to append a nul quote char to the filename.  Should prevent
     fatal'ing with "el_insertstr failed" when there's a single quote char
     somewhere in the string.  bz#2238, ok markus@
2014-05-15 14:25:18 +10:00
Damien Miller
d7fd8bedd4 - dtucker@cvs.openbsd.org 2014/04/29 19:58:50
[sftp.c]
     Move nulling of variable next to where it's freed.  ok markus@
2014-05-15 14:24:59 +10:00
Damien Miller
b15cd7bb09 - logan@cvs.openbsd.org 2014/04/22 10:07:12
[sftp.c]
     Sort the sftp command list.
     OK from djm@
2014-05-15 13:46:52 +10:00
Damien Miller
d8accc0aa7 - logan@cvs.openbsd.org 2014/04/21 14:36:16
[sftp-client.c sftp-client.h sftp.c]
     Implement sftp upload resume support.
     OK from djm@, with input from guenther@, mlarkin@ and
     okan@
2014-05-15 13:46:25 +10:00
Damien Miller
fdb2306acd - deraadt@cvs.openbsd.org 2013/11/20 20:54:10
[canohost.c clientloop.c match.c readconf.c sftp.c]
     unsigned casts for ctype macros where neccessary
     ok guenther millert markus
2013-11-21 13:57:15 +11:00
Damien Miller
1edcbf65eb - jmc@cvs.openbsd.org 2013/10/17 07:35:48
[sftp.1 sftp.c]
     tweak previous;
2013-10-18 10:17:17 +11:00
Damien Miller
f29238e674 - djm@cvs.openbsd.org 2013/10/17 00:30:13
[PROTOCOL sftp-client.c sftp-client.h sftp-server.c sftp.1 sftp.c]
     fsync@openssh.com protocol extension for sftp-server
     client support to allow calling fsync() faster successful transfer
     patch mostly by imorgan AT nas.nasa.gov; bz#1798
     "fine" markus@ "grumble OK" deraadt@ "doesn't sound bad to me" millert@
2013-10-17 11:48:52 +11:00
Damien Miller
61353b3208 - djm@cvs.openbsd.org 2013/08/31 00:13:54
[sftp.c]
     make ^w match ksh behaviour (delete previous word instead of entire line)
2013-09-14 09:45:32 +10:00
Damien Miller
e0ee727b82 - djm@cvs.openbsd.org 2013/08/09 03:56:42
[sftp.c]
     enable ctrl-left-arrow and ctrl-right-arrow to move forward/back a word;
     matching ksh's relatively recent change.
2013-08-21 02:42:35 +10:00
Damien Miller
036d30743f - djm@cvs.openbsd.org 2013/08/09 03:37:25
[sftp.c]
     do getopt parsing for all sftp commands (with an empty optstring for
     commands without arguments) to ensure consistent behaviour
2013-08-21 02:41:46 +10:00
Damien Miller
c7dba12bf9 - djm@cvs.openbsd.org 2013/08/08 05:04:03
[sftp-client.c sftp-client.h sftp.c]
     add a "-l" flag for the rename command to force it to use the silly
     standard SSH_FXP_RENAME command instead of the POSIX-rename- like
     posix-rename@openssh.com extension.

     intended for use in regress tests, so no documentation.
2013-08-21 02:41:15 +10:00
Damien Miller
034f27a0c0 - djm@cvs.openbsd.org 2013/08/08 04:52:04
[sftp.c]
     fix two year old regression: symlinking a file would incorrectly
     canonicalise the target path. bz#2129 report from delphij AT freebsd.org
2013-08-21 02:40:44 +10:00
Damien Miller
c6895c5c67 - jmc@cvs.openbsd.org 2013/08/07 06:24:51
[sftp.1 sftp.c]
     sort -a;
2013-08-21 02:40:21 +10:00
Damien Miller
02e878070d - djm@cvs.openbsd.org 2013/08/06 23:03:49
[sftp.c]
     fix some whitespace at EOL
     make list of commands an enum rather than a long list of defines
     add -a to usage()
2013-08-21 02:38:51 +10:00
Damien Miller
0d032419ee - djm@cvs.openbsd.org 2013/07/25 00:56:52
[sftp-client.c sftp-client.h sftp.1 sftp.c]
     sftp support for resuming partial downloads; patch mostly by Loganaden
     Velvindron/AfriNIC with some tweaks by me; feedback and ok dtucker@
2013-07-25 11:56:52 +10:00
Damien Miller
746d1a6c52 - djm@cvs.openbsd.org 2013/07/12 00:20:00
[sftp.c ssh-keygen.c ssh-pkcs11.c]
     fix pointer-signedness warnings from clang/llvm-3.3; "seems nice" deraadt@
2013-07-18 16:13:02 +10:00
Darren Tucker
ae133d4b31 - (dtucker) [configure.ac sftp.c openbsd-compat/openbsd-compat.h] Cater for
platforms that don't have multibyte character support (specifically,
    mblen).
2013-06-06 08:30:20 +10:00
Darren Tucker
ea64721275 - dtucker@cvs.openbsd.org 2013/06/04 20:42:36
[sftp.c]
     Make sftp's libedit interface marginally multibyte aware by building up
     the quoted string by character instead of by byte.  Prevents failures
     when linked against a libedit built with wide character support (bz#1990).
     "looks ok" djm
2013-06-06 08:19:09 +10:00
Darren Tucker
a627d42e51 - djm@cvs.openbsd.org 2013/05/17 00:13:13
[xmalloc.h cipher.c sftp-glob.c ssh-keyscan.c ssh.c sftp-common.c
     ssh-ecdsa.c auth2-chall.c compat.c readconf.c kexgexs.c monitor.c
     gss-genr.c cipher-3des1.c kex.c monitor_wrap.c ssh-pkcs11-client.c
     auth-options.c rsa.c auth2-pubkey.c sftp.c hostfile.c auth2.c
     servconf.c auth.c authfile.c xmalloc.c uuencode.c sftp-client.c
     auth2-gss.c sftp-server.c bufaux.c mac.c session.c jpake.c kexgexc.c
     sshconnect.c auth-chall.c auth2-passwd.c sshconnect1.c buffer.c
     kexecdhs.c kexdhs.c ssh-rsa.c auth1.c ssh-pkcs11.c auth2-kbdint.c
     kexdhc.c sshd.c umac.c ssh-dss.c auth2-jpake.c bufbn.c clientloop.c
     monitor_mm.c scp.c roaming_client.c serverloop.c key.c auth-rsa.c
     ssh-pkcs11-helper.c ssh-keysign.c ssh-keygen.c match.c channels.c
     sshconnect2.c addrmatch.c mux.c canohost.c kexecdhc.c schnorr.c
     ssh-add.c misc.c auth2-hostbased.c ssh-agent.c bufec.c groupaccess.c
     dns.c packet.c readpass.c authfd.c moduli.c]
     bye, bye xfree(); ok markus@
2013-06-02 07:31:17 +10:00
Darren Tucker
dbee308253 - dtucker@cvs.openbsd.org 2013/05/16 09:08:41
[log.c scp.c sshd.c serverloop.c schnorr.c sftp.c]
     Fix some "unused result" warnings found via clang and -portable.
     ok markus@
2013-05-16 20:32:29 +10:00
Damien Miller
9303e6527b - djm@cvs.openbsd.org 2013/04/18 02:16:07
[sftp.c]
     make "sftp -q" do what it says on the sticker: hush everything but errors;
2013-04-23 15:22:40 +10:00
Damien Miller
b87f6b70f8 - (djm) [configure.ac includes.h loginrec.c mux.c sftp.c] Prefer
bsd/libutil.h to libutil.h to avoid deprecation warnings on Ubuntu.
   ok tim
2013-02-23 09:12:23 +11:00