Commit Graph

9812 Commits

Author SHA1 Message Date
Darren Tucker 159e987a54 Split test targets further.
Splits test into file-tests, t-exec, unit and interop-tests and their
respective dependencies.  Should allow running any set individually
without having to build the other dependencies that are not needed
for that specific test.
2019-07-24 14:21:19 +10:00
Darren Tucker 520d4550a2 Add lib dependencies for regress binary targets. 2019-07-24 11:20:18 +10:00
Darren Tucker 4e8d0dd78d Make "unit" a dependency of "test". 2019-07-24 00:12:51 +10:00
Darren Tucker 4317b2a048 upstream rev 1.28: fix comment typo. 2019-07-23 23:24:47 +10:00
Darren Tucker e0055af2bd Split regress-binaries into two targets.
Split the binaries for the unit tests out into a regress-unit-binaries
target, and add a dependency on it for only the unit tests.  This allows
us to run the integration tests only ("make t-exec") without building
the unit tests, which allows us to run a subset of the tests when
building --without-openssl without trying (and failing) to build the
unit tests.

This means there are two targets for "unit" which I *think* is valid
(it works in testing, and makedepend will generate Makefiles of this
form)a but I could be wrong.
2019-07-23 23:18:17 +10:00
dtucker@openbsd.org 7cdf9fdcf1 upstream: Skip DH group generation test if binaries don't support
DH-GEX.

OpenBSD-Regress-ID: 7c918230d969ecf7656babd6191a74526bffbffd
2019-07-23 22:51:22 +10:00
dtucker@openbsd.org 3a3eab8bb0 upstream: Only test conversion of key types supported by the
binaries.

OpenBSD-Regress-ID: e3f0938a0a7407e2dfbb90abc3ec979ab6e8eeea
2019-07-23 22:51:22 +10:00
dtucker@openbsd.org 7e66b7d98c upstream: Only add ssh-dss to allowed key types if it's supported
by the binary.

OpenBSD-Regress-ID: 395a54cab16e9e4ece9aec047ab257954eebd413
2019-07-23 22:51:22 +10:00
Darren Tucker fd0684b319 Remove sys/cdefs.h include.
It's not needed on -portable (that's handled by includes.h) and not all
platforms have it.
2019-07-23 22:36:39 +10:00
Darren Tucker 9634ffbf29 Add headers to prevent warnings w/out OpenSSL. 2019-07-23 22:26:20 +10:00
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