Commit Graph

9902 Commits

Author SHA1 Message Date
Darren Tucker 2ea60312e1 Include stdlib.h for free() and calloc(). 2019-07-23 22:11:50 +10:00
Darren Tucker 11cba2a452 Re-apply portability changes to current sha2.{c,h}.
Rather than attempt to apply 14 years' worth of changes to OpenBSD's sha2
I imported the current versions directly then re-applied the portability
changes.  This also allowed re-syncing digest-libc.c against upstream.
2019-07-23 22:06:24 +10:00
Darren Tucker 09159594a3 Import current sha2.c and sha2.h from OpenBSD.
These are not changed from their original state, the next commit will
re-apply the portable changes.
2019-07-23 22:06:24 +10:00
Darren Tucker 2e6035b900 Rename valgrind "errors" to "failures".
When valgrind is enabled, test-exec.sh counts the number of invocations
that valgrind detects failures in, not the total number of errors detected.
This makes the name to be more accurate.
2019-07-23 08:11:22 +10:00
Darren Tucker e82c9bb9ff Skip running sftp-chroot under Valgrind. 2019-07-20 22:14:46 +10:00
dtucker@openbsd.org 41e22c2e05 upstream: Remove the sleeps and thus races from the forwarding
test.  They were originally required to work with Protocol 1, but now we can
use ssh -N and the control socket without the sleeps. While there, suppress
output fro the control exit commands.

OpenBSD-Regress-ID: 4c51a1d651242f12c90074c18c61008a74c1c790
2019-07-20 22:13:40 +10:00
dtucker@openbsd.org 0423043c5e upstream: Allow SLEEPTIME to be overridden.
OpenBSD-Regress-ID: 1596ab168729954be3d219933b2d01cc93687e76
2019-07-20 22:12:24 +10:00
dtucker@openbsd.org d466b6a5cf upstream: Move sleep time into a variable so that we can increase
it for platforms or configurations that are much slower then usual.

OpenBSD-Regress-ID: 88586cabc800062c260d0b876bdcd4ca3f58a872
2019-07-20 22:11:00 +10:00
djm@openbsd.org b4a7c9d2b5 upstream: add regression tests for scp for out-of-destination path file
creation by Harry Sintonen via Jakub Jelen in bz3007

OpenBSD-Regress-ID: 01ae5fbc6ce400b2df5a84dc3152a9e31f354c07
2019-07-19 13:53:27 +10:00
djm@openbsd.org bca0582063 upstream: Accept the verbose flag when searching for host keys in known
hosts (i.e. "ssh-keygen -vF host") to print the matching host's random- art
signature too. bz#3003 "amusing, pretty" deraadt@

OpenBSD-Commit-ID: 686221a5447d6507f40a2ffba5393984d889891f
2019-07-19 13:53:27 +10:00
Darren Tucker 5299a09fa2 Revert one dependency per line change.
It turns out that having such a large number of lines in the .depend
file will cause the memory usage of awk during AC_SUBST to blow up on at
least NetBSD's awk, causing configure to fail.
2019-07-19 13:52:41 +10:00
Damien Miller 01dddb231f fix SIGWINCH delivery of Solaris for mux sessions
Remove PRIV_PROC_SESSION which was limiting ability to send SIGWINCH
signals to other sessions.  bz#3030; report and fix from Darren Moffat
2019-07-19 13:22:16 +10:00
Darren Tucker 05500af21d Force dependencies one per line.
Force makedepend to output one dependency per line, which will make
reading diffs against it much easier.  ok djm@
2019-07-19 13:20:03 +10:00
Darren Tucker b5bc5d016b make depend. 2019-07-19 13:18:07 +10:00
Darren Tucker 65333f7454 Show when skipping valgrind for a test. 2019-07-19 13:16:11 +10:00
Darren Tucker fccb7eb343 Enable connect-privsep test with valgrind.
connect-privsep seems to work OK with valgrind now so don't skip
valgrind on it.
2019-07-19 10:41:56 +10:00
Darren Tucker d742301726 Show valgrind results and error counts. 2019-07-19 07:43:07 +10:00
Darren Tucker 22b9b3e944 Fix format string integer type in error message. 2019-07-19 07:23:26 +10:00
djm@openbsd.org ed46a0c070 upstream: fix off-by-one in sshbuf_dtob64() base64 wrapping that could
cause extra newlines to be appended at the end of the base64 text (ugly, but
harmless). Found and fixed by Sebastian Kinne

OpenBSD-Commit-ID: 9fe290bd68f706ed8f986a7704ca5a2bd32d7b68
2019-07-18 23:27:09 +10:00
Darren Tucker a192021fed Fail tests if Valgrind enabled and reports errors.
Also dump the failing valgrind report to stdout (not the cleanest
solution, but better than nothing).
2019-07-18 11:09:38 +10:00
Darren Tucker d1c491ecb9 Allow low-priv tests to write to pipe dir.
When running regression tests with Valgrind and SUDO, the low-priv agent
tests need to be able to create pipes in the appropriate directory.
2019-07-18 10:17:54 +10:00
Darren Tucker 8a5bb3e781 Put valgrind vgdb files to a specific directory.
Valgrind by default puts vgdb files and pipes under /tmp, however it
is not always able to clean them up, which can cause test failures when
there's a pid/file collision.  Using a specific directory ensures that
we can clean up and start clean.
2019-07-17 21:24:55 +10:00
djm@openbsd.org f8829fe57f upstream: adapt to sshbuf_dtob64() change
OpenBSD-Regress-ID: 82374a83edf0955fd1477169eee3f5d6467405a6
2019-07-17 11:04:25 +10:00
dtucker@openbsd.org 1254fcbb2f upstream: Remove ssh1 files from CLEANFILES since ssh1 no longer
supported.

OpenBSD-Regress-ID: 5b9ae869dc669bac05939b4a2fdf44ee067acfa0
2019-07-17 11:04:25 +10:00
dtucker@openbsd.org 9dc81a5ada upstream: Update names of host key files in CLEANFILES to match
recent changes to the tests.

OpenBSD-Regress-ID: 28743052de3acf70b06f18333561497cd47c4ecf
2019-07-17 11:02:42 +10:00
Damien Miller e44e4ad119 depend 2019-07-16 23:26:53 +10:00
djm@openbsd.org 16dd8b2c78 upstream: remove mostly vestigal uuencode.[ch]; moving the only unique
functionality there (wrapping of base64-encoded data) to sshbuf functions;
feedback and ok markus@

OpenBSD-Commit-ID: 4dba6735d88c57232f6fccec8a08bdcfea44ac4c
2019-07-16 23:23:05 +10:00
Darren Tucker 45478898f9 Hook memmem compat code into build.
This fixes builds on platforms that don't have it (at least old DragonFly,
probably others).
2019-07-16 09:21:20 +10:00
Darren Tucker c7bd461729 Import memmem.c from OpenBSD. 2019-07-16 09:07:18 +10:00
djm@openbsd.org 477e2a3be8 upstream: unit tests for sshbuf_cmp() and sshbuf_find(); ok markus
OpenBSD-Regress-ID: b52d36bc3ab6dc158c1e59a9a4735f821cf9e1fd
2019-07-15 23:21:18 +10:00
djm@openbsd.org eb0d8e708a upstream: support PKCS8 as an optional format for storage of
private keys, enabled via "ssh-keygen -m PKCS8" on operations that save
private keys to disk.

The OpenSSH native key format remains the default, but PKCS8 is a
superior format to PEM if interoperability with non-OpenSSH software
is required, as it may use a less terrible KDF (IIRC PEM uses a single
round of MD5 as a KDF).

adapted from patch by Jakub Jelen via bz3013; ok markus

OpenBSD-Commit-ID: 027824e3bc0b1c243dc5188504526d73a55accb1
2019-07-15 23:21:18 +10:00
djm@openbsd.org e18a27eedc upstream: two more bounds-checking sshbuf counterparts to common
string operations: sshbuf_cmp() (bcmp-like) and sshbuf_find() (memmem like)

feedback and ok markus@

OpenBSD-Commit-ID: fd071ec2485c7198074a168ff363a0d6052a706a
2019-07-15 23:21:18 +10:00
Darren Tucker bc551dfebb Clear valgrind-out dir to prevent collisions. 2019-07-15 12:52:45 +10:00
Darren Tucker 5db9ba718e Allow agent tests to write to valgrind dir. 2019-07-15 12:02:27 +10:00
djm@openbsd.org 121e48fa53 upstream: unit tests for sshbuf_peek/poke bounds-checked random access
functions. ok markus@

OpenBSD-Regress-ID: 034c4284b1da6b12e25c762a6b958efacdafbaef
2019-07-15 09:39:42 +10:00
djm@openbsd.org 101d164723 upstream: add some functions to perform random-access read/write
operations inside buffers with bounds checking. Intended to replace manual
pointer arithmetic wherever possible.

feedback and ok markus@

OpenBSD-Commit-ID: 91771fde7732738f1ffed078aa5d3bee6d198409
2019-07-15 09:39:34 +10:00
djm@openbsd.org 7250879c72 upstream: include SHA2-variant RSA key algorithms in KEX proposal;
allows ssh-keyscan to harvest keys from servers that disable olde SHA1
ssh-rsa. bz#3029 from Jakub Jelen

OpenBSD-Commit-ID: 9f95ebf76a150c2f727ca4780fb2599d50bbab7a
2019-07-12 14:09:52 +10:00
djm@openbsd.org a0876bd994 upstream: print explicit "not modified" message if a file was
requested for resumed download but was considered already complete.

bz#2978 ok dtucker

OpenBSD-Commit-ID: f32084b26a662f16215ee4ca4a403d67e49ab986
2019-07-12 14:07:31 +10:00
tb@openbsd.org b9b0f2ac96 upstream: Fix a typo and make <esc><right> move right to the
closest end of a word just like <esc><left> moves left to the closest
beginning of a word.

ok djm

OpenBSD-Commit-ID: 6afe01b05ed52d8b12eb1fda6e9af5afb5e198ee
2019-07-12 14:07:31 +10:00
Damien Miller 8729498a5d fix typo that prevented detection of Linux VRF
Reported by hexiaowen AT huawei.com
2019-07-10 09:43:19 +10:00
djm@openbsd.org 5b2b79ff7c upstream: cap the number of permiopen/permitlisten directives we're
willing to parse on a single authorized_keys line; ok deraadt@

OpenBSD-Commit-ID: a43a752c2555d26aa3fc754805a476f6e3e30f46
2019-07-09 14:20:15 +10:00
Darren Tucker eb0b51dac4 Move log.h include inside ifdefs.
Fixes build on some other platforms that don't have va_list immediately
available (eg NetBSD).
2019-07-08 17:27:26 +10:00
Darren Tucker 43702f8e6f Include log.h for debug() and friends.
Should fix some compiler warnings on IRIX (bz#3032).
2019-07-08 14:27:37 +10:00
Damien Miller 53a6ebf144 sftp-realpath.c needs includes.h 2019-07-08 13:44:32 +10:00
Damien Miller 4efe1adf05 remove realpath() compat replacement
We shipped a BSD implementation of realpath() because sftp-server
depended on its behaviour.

OpenBSD is now moving to a more strictly POSIX-compliant realpath(2),
so sftp-server now unconditionally requires its own BSD-style realpath
implementation. As such, there is no need to carry another independant
implementation in openbsd-compat.

ok dtucker@
2019-07-08 13:38:39 +10:00
dtucker@openbsd.org 696fb4298e upstream: Remove some set but never used variables. ok daraadt@
OpenBSD-Commit-ID: 824baf9c59afc66a4637017e397b9b74a41684e7
2019-07-08 11:45:51 +10:00
deraadt@openbsd.org 156e9e85e9 upstream: still compile uuencode.c, unbreaks build
OpenBSD-Commit-ID: 5ea3d63ab972691f43e9087ab5fd8376d48e898f
2019-07-08 11:45:51 +10:00
djm@openbsd.org cec9ee527a upstream: revert header removal that snuck into previous
OpenBSD-Commit-ID: 3919cdd58989786660b8269b325646ef8856428e
2019-07-08 11:44:49 +10:00
djm@openbsd.org 569b650f93 upstream: add a local implementation of BSD realpath() for
sftp-server use ahead of OpenBSD's realpath changing to match POSIX;

ok deraadt@ (thanks for snaps testing)

OpenBSD-Commit-ID: 4f8cbf7ed8679f6237264301d104ecec64885d55
2019-07-08 11:44:49 +10:00
Darren Tucker b8e2b79736 Add prototype for strnlen to prevent warnings. 2019-07-06 13:13:57 +10:00