]> git.ipfire.org Git - thirdparty/openssh-portable.git/log
thirdparty/openssh-portable.git
3 years agoAdd AUDIT_ARCH_PPC to supported seccomp arches.
Darren Tucker [Fri, 15 Jul 2022 03:37:29 +0000 (13:37 +1000)] 
Add AUDIT_ARCH_PPC to supported seccomp arches.

Patch from dries.deschout at dodeco.eu.

3 years agoRemove unintended changes.
Darren Tucker [Thu, 14 Jul 2022 09:20:24 +0000 (19:20 +1000)] 
Remove unintended changes.

I inadvertently included a couple of local changes with the OpenSSL
3.0.4 change.  Revert, anything that should be there will be committed
separately.

3 years agoReturn ERANGE from getcwd() if buffer size is 1.
Darren Tucker [Thu, 14 Jul 2022 01:22:08 +0000 (11:22 +1000)] 
Return ERANGE from getcwd() if buffer size is 1.

If getcwd() is supplied a buffer size of exactly 1 and a path of "/", it
could result in a nul byte being written out of array bounds.  POSIX says
it should return ERANGE if the path will not fit in the available buffer
(with terminating nul). 1 byte cannot fit any possible path with its nul,
so immediately return ERANGE in that case.

OpenSSH never uses getcwd() with this buffer size, and all current
(and even quite old) platforms that we are currently known to work
on have a native getcwd() so this code is not used on those anyway.
Reported by Qualys, ok djm@

3 years agoSplit README.platform into its own line.
Darren Tucker [Thu, 14 Jul 2022 00:02:35 +0000 (10:02 +1000)] 
Split README.platform into its own line.

README.platform has general platform-specific information, having it
following text about FIDO2 on the same line could imply that it only
has information about FIDO2.

3 years agoClarify README.md text.
Darren Tucker [Wed, 13 Jul 2022 23:56:01 +0000 (09:56 +1000)] 
Clarify README.md text.

Clarify the text about the implications of building without OpenSSL, and
prefix the "configure --help" example command with a "./" so it's likely
to work as-is in more shells.  From bz#3461.

3 years agoRemove special casing of crypt().
Darren Tucker [Tue, 12 Jul 2022 09:48:44 +0000 (19:48 +1000)] 
Remove special casing of crypt().

Configure goes to some lengths to pick crypt() from either libcrypt
or OpenSSL's libcrypto because they can more or less featureful (eg
supporting md5-style passwords).

OpenSSL removed its crypt() interface in 2002:
https://github.com/openssl/openssl/commit/69deec58 so these hijinks
should no longer be necessary.  This also only links sshd with libcrypt
which is the only thing that needs it.  ok djm@

3 years agoOnly refuse to use OpenSSL 3.0.4 on x86_64.
Darren Tucker [Wed, 13 Jul 2022 03:17:47 +0000 (13:17 +1000)] 
Only refuse to use OpenSSL 3.0.4 on x86_64.

The potential RCE only impacts x86_64, so only refuse to use it if we're
targetting a potentially impacted architecture.  ok djm@

3 years agoCapture stderr output from configure.
Darren Tucker [Tue, 12 Jul 2022 04:37:15 +0000 (14:37 +1000)] 
Capture stderr output from configure.

3 years agoRefuse to use OpenSSL 3.0.4 due to potential RCE.
Darren Tucker [Tue, 12 Jul 2022 02:54:49 +0000 (12:54 +1000)] 
Refuse to use OpenSSL 3.0.4 due to potential RCE.

OpenSSL has a potential RCE in its RSA implementation (CVE-2022-2274)
so refuse to use that specific version.

3 years agoMove unset to before we set anything.
Darren Tucker [Tue, 12 Jul 2022 02:54:24 +0000 (12:54 +1000)] 
Move unset to before we set anything.

3 years agoTest against openssl-3.0.5.
Darren Tucker [Wed, 6 Jul 2022 01:52:54 +0000 (11:52 +1000)] 
Test against openssl-3.0.5.

3 years agoUpdate sanitizer test targets:
Darren Tucker [Tue, 5 Jul 2022 08:35:53 +0000 (18:35 +1000)] 
Update sanitizer test targets:

 - remove clang-sanitize-memory for now.  It takes so long that the test
   times out.
 - add gcc sanitize-address and sanitize-undefined test targets.

3 years agoAdd GCC address sanitizer build/test.
Darren Tucker [Tue, 5 Jul 2022 06:23:28 +0000 (16:23 +1000)] 
Add GCC address sanitizer build/test.

3 years agoMove sanitizer logs into regress for collection.
Darren Tucker [Tue, 5 Jul 2022 02:02:33 +0000 (12:02 +1000)] 
Move sanitizer logs into regress for collection.

3 years agoupstream: Add TEST_REGRESS_CACHE_DIR.
dtucker@openbsd.org [Mon, 4 Jul 2022 09:10:31 +0000 (09:10 +0000)] 
upstream: Add TEST_REGRESS_CACHE_DIR.

If set, it is used to cache regress test names that have succeeded and
skip those on a re-run.

OpenBSD-Regress-ID: a7570dd29a58df59f2cca647c3c2ec989b49f247

3 years agoAdd clang sanitizer tests.
Darren Tucker [Sun, 3 Jul 2022 11:46:44 +0000 (21:46 +1000)] 
Add clang sanitizer tests.

3 years agoSkip all rlimit tests when sandboxing disabled.
Darren Tucker [Sun, 3 Jul 2022 08:14:09 +0000 (18:14 +1000)] 
Skip all rlimit tests when sandboxing disabled.

The rlimit tests can hang when being run with some compiler sanitizers
so skip all of them if sandbox=no.

3 years agoMove checks for pollfd.fd and nfds_t.
Darren Tucker [Sun, 3 Jul 2022 07:54:49 +0000 (17:54 +1000)] 
Move checks for pollfd.fd and nfds_t.

Move the checks for struct pollfd.fd and nfds_t to before the sandboxing
checks.  This groups all the sandbox checks together so we can skip them
all when sandboxing is disabled.

3 years agoupstream: Remove leftover line.
dtucker@openbsd.org [Fri, 1 Jul 2022 05:08:23 +0000 (05:08 +0000)] 
upstream: Remove leftover line.

Remove extra line leftover from merge conflict. ok djm@

OpenBSD-Commit-ID: 460e2290875d7ae64971a7e669c244b1d1c0ae2e

3 years agoupstream: use consistent field names (s/char/byte)
djm@openbsd.org [Fri, 1 Jul 2022 04:45:50 +0000 (04:45 +0000)] 
upstream: use consistent field names (s/char/byte)

in format description

OpenBSD-Commit-ID: 3de33572733ee7fcfd7db33d37db23d2280254f0

3 years agoSkip select+rlimit check if sandboxing is disabled
Darren Tucker [Fri, 1 Jul 2022 03:55:19 +0000 (13:55 +1000)] 
Skip select+rlimit check if sandboxing is disabled

It's not needed in that case, and the test can fail when being built
with some compiler memory sanitizer flags.  bz#3441

3 years agoupstream: bump up loglevel from debug to info when unable to open
djm@openbsd.org [Fri, 1 Jul 2022 03:52:57 +0000 (03:52 +0000)] 
upstream: bump up loglevel from debug to info when unable to open

authorized keys/principals file for errno != ENOENT; bz2042 ok dtucker

OpenBSD-Commit-ID: e79aa550d91ade6a80f081bda689da24c086d66b

3 years agoupstream: Don't leak the strings allocated by order_hostkeyalgs()
dtucker@openbsd.org [Fri, 1 Jul 2022 03:39:44 +0000 (03:39 +0000)] 
upstream: Don't leak the strings allocated by order_hostkeyalgs()

and list_hostkey_types() that are passed to compat_pkalg_proposal(). Part of
github PR#324 from ZoltanFridrich, ok djm@

This is a roll-forward of the previous rollback now that the required
changes in compat.c have been done.

OpenBSD-Commit-ID: c7cd93730b3b9f53cdad3ae32462922834ef73eb

3 years agoupstream: Always return allocated strings from the kex filtering so
dtucker@openbsd.org [Fri, 1 Jul 2022 03:35:45 +0000 (03:35 +0000)] 
upstream: Always return allocated strings from the kex filtering so

that we can free them later.  Fix one leak in compat_kex_proposal.  Based on
github PR#324 from ZoltanFridrich with some simplications by me. ok djm@

OpenBSD-Commit-ID: 9171616da3307612d0ede086fd511142f91246e4

3 years agoupstream: ignore SIGPIPE earlier in main(), specifically before
djm@openbsd.org [Fri, 1 Jul 2022 00:36:30 +0000 (00:36 +0000)] 
upstream: ignore SIGPIPE earlier in main(), specifically before

muxclient() which performs operations that could cause one; Reported by Noam
Lewis via bz3454, ok dtucker@

OpenBSD-Commit-ID: 63d8e13276869eebac6d7a05d5a96307f9026e47

3 years agoupstream: reflect the update to -D arg name in usage();
jmc@openbsd.org [Tue, 28 Jun 2022 06:09:14 +0000 (06:09 +0000)] 
upstream: reflect the update to -D arg name in usage();

OpenBSD-Commit-ID: abdcde4f92b1ef094ae44210ee99d3b0155aad9c

3 years agoUpdate OpenSSL tests to the most recent releases.
Darren Tucker [Wed, 29 Jun 2022 08:28:47 +0000 (18:28 +1000)] 
Update OpenSSL tests to the most recent releases.

3 years agoupstream: allow arguments to sftp -D option, e.g. sftp -D
djm@openbsd.org [Mon, 27 Jun 2022 21:41:55 +0000 (21:41 +0000)] 
upstream: allow arguments to sftp -D option, e.g. sftp -D

"/usr/libexec/sftp-server -el debug3"

ok markus@

OpenBSD-Commit-ID: 5a002b9f3a7aef2731fc0ffa9c921cf15f38ecce

3 years agoupstream: Roll back previous KEX changes as they aren't safe until
dtucker@openbsd.org [Fri, 24 Jun 2022 10:45:06 +0000 (10:45 +0000)] 
upstream: Roll back previous KEX changes as they aren't safe until

compat_pkalg_proposal and friends always allocate their returned strings.
Reported by Qualys.

OpenBSD-Commit-ID: 1c7a88a0d5033f42f88ab9bec58ef1cf72c81ad0

3 years agoupstream: Don't leak the strings allocated by order_hostkeyalgs()
dtucker@openbsd.org [Fri, 24 Jun 2022 04:37:00 +0000 (04:37 +0000)] 
upstream: Don't leak the strings allocated by order_hostkeyalgs()

and list_hostkey_types() that are passed to compat_pkalg_proposal(). Part of
github PR#324 from ZoltanFridrich, ok djm@

OpenBSD-Commit-ID: b2f6e5f60f2bba293b831654328a8a0035ef4a1b

3 years agoZero out LIBFIDO2 when SK support not usable.
Darren Tucker [Sat, 25 Jun 2022 02:16:15 +0000 (12:16 +1000)] 
Zero out LIBFIDO2 when SK support not usable.

Prevents us from trying to link them into ssh-sk-helper and failing to
build.

3 years agoDisable SK support if FIDO libs not found.
Darren Tucker [Sat, 25 Jun 2022 01:47:28 +0000 (11:47 +1000)] 
Disable SK support if FIDO libs not found.

3 years agofix broken case statement in previous
Damien Miller [Fri, 24 Jun 2022 04:43:54 +0000 (14:43 +1000)] 
fix broken case statement in previous

3 years agorequest 1.1x API compatibility for OpenSSL >=3.x
Damien Miller [Fri, 24 Jun 2022 04:40:42 +0000 (14:40 +1000)] 
request 1.1x API compatibility for OpenSSL >=3.x

idea/patch from Pedro Martelletto via GHPR#322; ok dtucker@

3 years agoupstream: make it clear that RekeyLimit applies to both transmitted
djm@openbsd.org [Fri, 24 Jun 2022 04:27:14 +0000 (04:27 +0000)] 
upstream: make it clear that RekeyLimit applies to both transmitted

and received data. GHPR#328 from Jan Pazdziora

OpenBSD-Commit-ID: d180a905fec9ff418a75c07bb96ea41c9308c3f9

3 years agoupstream: Make sure not to fclose() the same fd twice in case of an
tobhe@openbsd.org [Tue, 21 Jun 2022 14:52:13 +0000 (14:52 +0000)] 
upstream: Make sure not to fclose() the same fd twice in case of an

error.

ok dtucker@

OpenBSD-Commit-ID: e384c4e05d5521e7866b3d53ca59acd2a86eef99

3 years agoupstream: Don't attempt to fprintf a null identity comment. From
dtucker@openbsd.org [Sat, 18 Jun 2022 02:17:16 +0000 (02:17 +0000)] 
upstream: Don't attempt to fprintf a null identity comment. From

Martin Vahlensieck via tech@.

OpenBSD-Commit-ID: 4c54d20a8e8e4e9912c38a7b4ef5bfc5ca2e05c2

3 years agoupstream: Log an error if pipe() fails while accepting a
dtucker@openbsd.org [Fri, 17 Jun 2022 01:00:03 +0000 (01:00 +0000)] 
upstream: Log an error if pipe() fails while accepting a

connection.  bz#3447, from vincent-openssh at vinc17 net, ok djm@

OpenBSD-Commit-ID: 9d59f19872b94900a5c79da2d57850241ac5df94

3 years agoautomatically enable built-in FIDO support
Damien Miller [Fri, 24 Jun 2022 04:20:43 +0000 (14:20 +1000)] 
automatically enable built-in FIDO support

If libfido2 is found and usable, then enable the built-in
security key support unless --without-security-key-builtin
was requested.

ok dtucker@

3 years agofix possible NULL deref when built without FIDO
Damien Miller [Fri, 24 Jun 2022 03:46:39 +0000 (13:46 +1000)] 
fix possible NULL deref when built without FIDO

Analysis/fix from kircher in bz3443; ok dtucker@

3 years agoupstream: make sure that UseDNS hostname lookup happens in the monitor
djm@openbsd.org [Wed, 15 Jun 2022 16:08:25 +0000 (16:08 +0000)] 
upstream: make sure that UseDNS hostname lookup happens in the monitor

and not in the pledge(2)'d unprivileged process; fixes regression caused by
recent refactoring spotted by henning@

OpenBSD-Commit-ID: a089870b95101cd8881a2dff65b2f1627d13e88d

3 years agoupstream: move auth_openprincipals() and auth_openkeyfile() over to
djm@openbsd.org [Fri, 3 Jun 2022 04:47:21 +0000 (04:47 +0000)] 
upstream: move auth_openprincipals() and auth_openkeyfile() over to

auth2-pubkeyfile.c too; they make more sense there.

OpenBSD-Commit-ID: 9970d99f900e1117fdaab13e9e910a621b7c60ee

3 years agoupstream: test setenv in both client and server, test first-match-wins
djm@openbsd.org [Fri, 3 Jun 2022 04:31:54 +0000 (04:31 +0000)] 
upstream: test setenv in both client and server, test first-match-wins

too

OpenBSD-Regress-ID: 4c8804f9db38a02db480b9923317457b377fe34b

3 years agoupstream: Make SetEnv directives first-match-wins in both
djm@openbsd.org [Fri, 3 Jun 2022 04:30:46 +0000 (04:30 +0000)] 
upstream: Make SetEnv directives first-match-wins in both

sshd_config and sshd_config; previously if the same name was reused then the
last would win (which is the opposite to how the config is supposed to work).

While there, make the ssh_config parsing more like sshd_config.

bz3438, ok dtucker

OpenBSD-Commit-ID: 797909c1e0262c0d00e09280459d7ab00f18273b

3 years agoupstream: Add missing *-sk types to ssh-keyscan manpage. From
dtucker@openbsd.org [Fri, 3 Jun 2022 04:00:15 +0000 (04:00 +0000)] 
upstream: Add missing *-sk types to ssh-keyscan manpage. From

skazi0 via github PR#294.

OpenBSD-Commit-ID: fda2c869cdb871f3c90a89fb3f985370bb5d25c0

3 years agoupstream: Add period at end of "not known by any other names"
dtucker@openbsd.org [Fri, 3 Jun 2022 03:21:09 +0000 (03:21 +0000)] 
upstream: Add period at end of "not known by any other names"

message.  github PR#320 from jschauma, ok djm@

OpenBSD-Commit-ID: bd60809803c4bfd3ebb7c5c4d918b10e275266f2

3 years agoupstream: ssh-keygen -A: do not generate DSA keys by default.
dtucker@openbsd.org [Fri, 3 Jun 2022 03:17:42 +0000 (03:17 +0000)] 
upstream: ssh-keygen -A: do not generate DSA keys by default.

Based on github PR#303 from jsegitz with man page text from jmc@, ok markus@
djm@

OpenBSD-Commit-ID: 5c4c57bdd7063ff03381cfb6696659dd3f9f5b9f

3 years agoupstream: ssh-keygen: implement "verify-required" certificate option.
naddy@openbsd.org [Tue, 31 May 2022 14:05:12 +0000 (14:05 +0000)] 
upstream: ssh-keygen: implement "verify-required" certificate option.

This was already documented when support for user-verified FIDO
keys was added, but the ssh-keygen(1) code was missing.

ok djm@

OpenBSD-Commit-ID: f660f973391b593fea4b7b25913c9a15c3eb8a06

3 years agoupstream: keywords ref ssh_config.5;
jmc@openbsd.org [Sat, 28 May 2022 05:57:56 +0000 (05:57 +0000)] 
upstream: keywords ref ssh_config.5;

from caspar schutijser

OpenBSD-Commit-ID: f146a19d7d5c9374c3b9c520da43b2732d7d1a4e

3 years agofix some bugs in the fuzzer
Damien Miller [Sun, 29 May 2022 23:29:09 +0000 (09:29 +1000)] 
fix some bugs in the fuzzer

3 years agoTest against OpenSSL 1.1.1o and 3.0.3.
Darren Tucker [Fri, 27 May 2022 08:19:48 +0000 (18:19 +1000)] 
Test against OpenSSL 1.1.1o and 3.0.3.

3 years agoTest against LibreSSL 3.5.3.
Darren Tucker [Fri, 27 May 2022 08:18:31 +0000 (18:18 +1000)] 
Test against LibreSSL 3.5.3.

3 years agofuzzer for authorized_keys parsing
Damien Miller [Fri, 27 May 2022 07:00:43 +0000 (17:00 +1000)] 
fuzzer for authorized_keys parsing

mostly redundant to authopt_fuzz, but it's sensitive code so IMO it
makes sense to test this layer too

3 years agoupstream: split the low-level file handling functions out from
djm@openbsd.org [Fri, 27 May 2022 05:02:46 +0000 (05:02 +0000)] 
upstream: split the low-level file handling functions out from

auth2-pubkey.c

Put them in a new auth2-pubkeyfile.c to make it easier to refer to them
(e.g. in unit/fuzz tests) without having to refer to everything else
pubkey auth brings in.

ok dtucker@

OpenBSD-Commit-ID: 3fdca2c61ad97dc1b8d4a7346816f83dc4ce2217

3 years agoupstream: refactor authorized_keys/principals handling
djm@openbsd.org [Fri, 27 May 2022 05:01:25 +0000 (05:01 +0000)] 
upstream: refactor authorized_keys/principals handling

remove "struct ssh *" from arguments - this was only used to pass the
remote host/address. These can be passed in instead and the resulting
code is less tightly coupled to ssh_api.[ch]

ok dtucker@

OpenBSD-Commit-ID: 9d4373d013edc4cc4b5c21a599e1837ac31dda0d

3 years agoupstream: f sshpkt functions fail, then password is not cleared
dtucker@openbsd.org [Fri, 27 May 2022 04:29:40 +0000 (04:29 +0000)] 
upstream: f sshpkt functions fail, then password is not cleared

with freezero. Unconditionally call freezero to guarantee that password is
removed from RAM.

From tobias@ and c3h2_ctf via github PR#286, ok djm@

OpenBSD-Commit-ID: 6b093619c9515328e25b0f8093779c52402c89cd

3 years agoupstream: Avoid kill with -1 argument. The out_ctx label can be
dtucker@openbsd.org [Fri, 27 May 2022 04:27:49 +0000 (04:27 +0000)] 
upstream: Avoid kill with -1 argument. The out_ctx label can be

reached before fork has been called. If this happens, then kill -1 would be
called, sending SIGTERM to all processes reachable by the current process.

From tobias@ and c3h2_ctf via github PR#286, ok djm@

OpenBSD-Commit-ID: 6277af1207d81202f5daffdccfeeaed4c763b1a8

3 years agoupstream: Note that ProxyJump also accepts the same tokens as
dtucker@openbsd.org [Fri, 27 May 2022 04:13:24 +0000 (04:13 +0000)] 
upstream: Note that ProxyJump also accepts the same tokens as

ProxyCommand. From pallxk via github PR#305.

OpenBSD-Commit-ID: 7115ac351b129205f1f1ffa6bbfd62abd76be7c5

3 years agoupstream: revert previous; it was broken (spotted by Theo)
djm@openbsd.org [Wed, 25 May 2022 06:03:44 +0000 (06:03 +0000)] 
upstream: revert previous; it was broken (spotted by Theo)

OpenBSD-Commit-ID: 457c79afaca2f89ec2606405c1059b98b30d8b0d

3 years agoupstream: make SSHBUF_DBG/SSHBUF_TELL (off by default and only enabled
djm@openbsd.org [Wed, 25 May 2022 00:31:13 +0000 (00:31 +0000)] 
upstream: make SSHBUF_DBG/SSHBUF_TELL (off by default and only enabled

via #define) dump to stderr rather than stdout

OpenBSD-Commit-ID: 10298513ee32db8390aecb0397d782d68cb14318

3 years agoconfigure.ac: Add missing AC_DEFINE for caph_cache_tzdata test causing
Tim Rice [Tue, 24 May 2022 17:21:25 +0000 (10:21 -0700)] 
configure.ac: Add missing AC_DEFINE for caph_cache_tzdata test causing
HAVE_CAPH_CACHE_TZDATA to be missing from config.h.in.
Spotted by Bryan Drewery

3 years agoupstream: regress test for in-place transfers and clobbering larger
djm@openbsd.org [Sun, 15 May 2022 23:48:07 +0000 (23:48 +0000)] 
upstream: regress test for in-place transfers and clobbering larger

files with smaller ones; would have caught last regression in scp(1)

OpenBSD-Regress-ID: 19de4e88dd3a4f7e5c1618c9be3c32415bd93bc2

3 years agoupstream: Only run agent-ptrace.sh if gdb is available as all
anton@openbsd.org [Fri, 22 Apr 2022 05:08:43 +0000 (05:08 +0000)] 
upstream: Only run agent-ptrace.sh if gdb is available as all

architectures do not ship with gdb.

OpenBSD-Regress-ID: ec53e928803e6b87f9ac142d38888ca79a45348d

3 years agoupstream: fix in-place copies; r1.163 incorrectly skipped truncation in
djm@openbsd.org [Sun, 15 May 2022 23:47:21 +0000 (23:47 +0000)] 
upstream: fix in-place copies; r1.163 incorrectly skipped truncation in

all cases, not just at the start of a transfer. This could cause overwrites
of larger files to leave junk at the end. Spotted by tb@

OpenBSD-Commit-ID: b189f19cd68119548c8e24e39c79f61e115bf92c

3 years agoupstream: arrange for scp, when in sftp mode, to not ftruncate(3) files
djm@openbsd.org [Fri, 13 May 2022 06:31:50 +0000 (06:31 +0000)] 
upstream: arrange for scp, when in sftp mode, to not ftruncate(3) files

early

previous behavious of unconditionally truncating the destination file
would cause "scp ~/foo localhost:" and "scp localhost:foo ~/" to
delete all the contents of their destination.

spotted by solene@ sthen@, also bz3431; ok dtucker@

OpenBSD-Commit-ID: ca39fdd39e0ec1466b9666f15cbcfddea6aaa179

3 years agoupstream: Remove errant apostrophe. From haruyama at queen-ml org.
dtucker@openbsd.org [Mon, 9 May 2022 08:25:27 +0000 (08:25 +0000)] 
upstream: Remove errant apostrophe. From haruyama at queen-ml org.

OpenBSD-Commit-ID: dc6b294567cb84b384ad6ced9ca469f2bbf0bd10

3 years agoupstream: Allow existing -U (use agent) flag to work with "-Y sign"
djm@openbsd.org [Mon, 9 May 2022 03:09:53 +0000 (03:09 +0000)] 
upstream: Allow existing -U (use agent) flag to work with "-Y sign"

operations, where it will be interpreted to require that the private keys is
hosted in an agent; bz3429, suggested by Adam Szkoda; ok dtucker@

OpenBSD-Commit-ID: a7bc69873b99c32c42c7628ed9ea91565ba08c2f

3 years agoupstream: improve error message when 'ssh-keygen -Y sign' is unable to
djm@openbsd.org [Sun, 8 May 2022 22:58:35 +0000 (22:58 +0000)] 
upstream: improve error message when 'ssh-keygen -Y sign' is unable to

load a private key; bz3429, reported by Adam Szkoda ok dtucker@

OpenBSD-Commit-ID: bb57b285e67bea536ef81b1055467be2fc380e74

3 years agoRemove duplicate bcrypt_pbkdf.o from Makefile
Tobias Heider [Mon, 9 May 2022 00:00:01 +0000 (02:00 +0200)] 
Remove duplicate bcrypt_pbkdf.o from Makefile

bcrypt_pbkdf.o is duplicated in the openbsd-compat Makefile's object
file list.

3 years agoupstream: When performing operations that glob(3) a remote path, ensure
djm@openbsd.org [Sun, 8 May 2022 22:32:36 +0000 (22:32 +0000)] 
upstream: When performing operations that glob(3) a remote path, ensure

that the implicit working directory used to construct that path escapes
glob(3) characters.

This prevents glob characters from being processed in places they
shouldn't, e.g. "cd /tmp/a*/", "get *.txt" should have the get operation
treat the path "/tmp/a*" literally and not attempt to expand it.

Reported by Lusia Kundel; ok markus@

OpenBSD-Commit-ID: 4f647f58482cbad3d58b1eab7f6a1691433deeef

3 years agoAlso retest OpenBSD upstream on .yml changes.
Darren Tucker [Fri, 6 May 2022 04:50:18 +0000 (14:50 +1000)] 
Also retest OpenBSD upstream on .yml changes.

3 years agoNote that, for now, we need variadic macros.
Darren Tucker [Fri, 6 May 2022 04:46:09 +0000 (14:46 +1000)] 
Note that, for now, we need variadic macros.

3 years agoAdd ubsan minimal testcase on OpenBSD.
Darren Tucker [Fri, 6 May 2022 04:39:34 +0000 (14:39 +1000)] 
Add ubsan minimal testcase on OpenBSD.

As suggested by djm@.

3 years agoupstream: sshkey_unshield_private() contains a exact duplicate of
djm@openbsd.org [Thu, 5 May 2022 01:04:14 +0000 (01:04 +0000)] 
upstream: sshkey_unshield_private() contains a exact duplicate of

the code in private2_check_padding(). Pull private2_check_padding() up so the
code can be reused. From Martin Vahlensieck, ok deraadt@

OpenBSD-Commit-ID: 876884c3f0e62e8fd8d1594bab06900f971c9c85

3 years agoupstream: channel_new no longer frees remote_name. So update the
djm@openbsd.org [Thu, 5 May 2022 00:56:58 +0000 (00:56 +0000)] 
upstream: channel_new no longer frees remote_name. So update the

comment accordingly.  As remote_name is not modified, it can be const as
well. From Martin Vahlensieck

OpenBSD-Commit-ID: e4e10dc8dc9f40c166ea5a8e991942bedc75a76a

3 years agoupstream: mux.c: mark argument as const; from Martin Vahlensieck
djm@openbsd.org [Thu, 5 May 2022 00:55:11 +0000 (00:55 +0000)] 
upstream: mux.c: mark argument as const; from Martin Vahlensieck

OpenBSD-Commit-ID: 69a1a93a55986c7c2ad9f733c093b46a47184341

3 years agoupstream: make sure stdout is non-blocking; ok djm@
markus@openbsd.org [Wed, 4 May 2022 07:31:22 +0000 (07:31 +0000)] 
upstream: make sure stdout is non-blocking; ok djm@

OpenBSD-Commit-ID: 64940fffbd1b882eda2d7c8c7a43c79368309c0d

3 years agoupstream: Add FIDO AUTHENTICATOR section and explain a bit how FIDO
florian@openbsd.org [Tue, 3 May 2022 07:42:27 +0000 (07:42 +0000)] 
upstream: Add FIDO AUTHENTICATOR section and explain a bit how FIDO

works. The wording came mostly from the 8.2 OpenSSH release notes, addapted
to fit the man page. Then move the -O bits into the new section as is already
done for CERTIFICATES and MODULI GENERATION. Finally we can explain the
trade-offs of resident keys. While here, consistently refer to the FIDO
thingies as "FIDO authenticators", not "FIDO tokens".

input & OK jmc, naddy

OpenBSD-Commit-ID: dd98748d7644df048f78dcf793b3b63db9ab1d25

3 years agoupstream: remove an obsolete rsa1 format example from an example;
jmc@openbsd.org [Mon, 2 May 2022 05:40:37 +0000 (05:40 +0000)] 
upstream: remove an obsolete rsa1 format example from an example;

from megan batty
ok djm

OpenBSD-Commit-ID: db2c89879c29bf083df996bd830abfb1e70d62bf

3 years agoupstream: fix some integer overflows in sieve_large() that show up when
djm@openbsd.org [Sun, 1 May 2022 23:20:30 +0000 (23:20 +0000)] 
upstream: fix some integer overflows in sieve_large() that show up when

trying to generate modp groups > 16k bits. Reported via GHPR#306 by Bertram
Felgenhauer, but fixed in a different way. feedback/ok tb@

OpenBSD-Commit-ID: 81cbc6dd3a21c57bd6fadea10e44afe37bca558e

3 years agoupstream: be stricter in which characters will be accepted in
djm@openbsd.org [Fri, 29 Apr 2022 04:55:07 +0000 (04:55 +0000)] 
upstream: be stricter in which characters will be accepted in

specifying a mask length; allow only 0-9. From khaleesicodes via GHPR#278; ok
dtucker@

OpenBSD-Commit-ID: e267746c047ea86665cdeccef795a8a56082eeb2

3 years agoAdd Mac OS X 12 test target.
Darren Tucker [Sat, 30 Apr 2022 00:56:41 +0000 (10:56 +1000)] 
Add Mac OS X 12 test target.

3 years agoOnly run tests when source files change.
Darren Tucker [Fri, 29 Apr 2022 08:27:34 +0000 (18:27 +1000)] 
Only run tests when source files change.

Also run tests on changes to V_9_0 branch.

3 years agoRemove now-empty int32_minmax.inc.
Darren Tucker [Fri, 29 Apr 2022 08:22:34 +0000 (18:22 +1000)] 
Remove now-empty int32_minmax.inc.

3 years agoupstream: mention that the helpers are used by ssh(1), ssh-agent(1)
djm@openbsd.org [Fri, 29 Apr 2022 03:24:30 +0000 (03:24 +0000)] 
upstream: mention that the helpers are used by ssh(1), ssh-agent(1)

and ssh-keygen(1). Previously only ssh(1) was mentioned. From Pedro
Martelletto

OpenBSD-Commit-ID: 30f880f989d4b329589c1c404315685960a5f153

3 years agoupstream: Don't leak SK device. Patch from Pedro Martelletto via
dtucker@openbsd.org [Fri, 29 Apr 2022 03:16:48 +0000 (03:16 +0000)] 
upstream: Don't leak SK device. Patch from Pedro Martelletto via

github PR#316. ok djm@

OpenBSD-Commit-ID: 17d11327545022e727d95fd08b213171c5a4585d

3 years agoupstream: fix memleak on session-bind path; from Pedro Martelletto, ok
djm@openbsd.org [Fri, 29 Apr 2022 03:13:32 +0000 (03:13 +0000)] 
upstream: fix memleak on session-bind path; from Pedro Martelletto, ok

dtucker@

OpenBSD-Commit-ID: e85899a26ba402b4c0717b531317e8fc258f0a7e

3 years agoupstream: avoid printing hash algorithm twice; from lucas AT sexy.is
djm@openbsd.org [Thu, 28 Apr 2022 02:53:31 +0000 (02:53 +0000)] 
upstream: avoid printing hash algorithm twice; from lucas AT sexy.is

OpenBSD-Commit-ID: 9d24671e10a84141b7c504396cabad600e47a941

3 years agoupstream: Add authfd path to debug output. ok markus@
dtucker@openbsd.org [Wed, 27 Apr 2022 11:08:55 +0000 (11:08 +0000)] 
upstream: Add authfd path to debug output. ok markus@

OpenBSD-Commit-ID: f735a17d1a6f2bee63bfc609d76ef8db8c090890

3 years agoupstream: Check sshauthopt_new() for NULL. bz#3425, from
dtucker@openbsd.org [Tue, 26 Apr 2022 07:41:44 +0000 (07:41 +0000)] 
upstream: Check sshauthopt_new() for NULL. bz#3425, from

tessgauthier at microsoft.com.  ok djm@

OpenBSD-Commit-ID: af0315bc3e44aa406daa7e0ae7c2d719a974483f

3 years agoupstream: Remove unnecessary includes: openssl/hmac.h and
millert@openbsd.org [Wed, 20 Apr 2022 16:00:25 +0000 (16:00 +0000)] 
upstream: Remove unnecessary includes: openssl/hmac.h and

openssl/evp.h. From Martin Vahlensieck.

OpenBSD-Commit-ID: a6debb5fb0c8a44e43e8d5ca7cc70ad2f3ea31c3

3 years agoupstream: Add missing includes of stdlib.h and stdint.h. We need
millert@openbsd.org [Wed, 20 Apr 2022 15:59:18 +0000 (15:59 +0000)] 
upstream: Add missing includes of stdlib.h and stdint.h. We need

stdlib.h for malloc(3) and stdint.h for SIZE_MAX. Unlike the other xmss
files, ssh-xmss.c does not include xmss_commons.h so ssh-xmss.c must include
those headers itself. From Martin Vahlensieck

OpenBSD-Commit-ID: 70e28a9818cee3da1be2ef6503d4b396dd421e6b

3 years agoupstream: Avoid an unnecessary xstrdup in rm_env() when matching
millert@openbsd.org [Wed, 20 Apr 2022 15:56:49 +0000 (15:56 +0000)] 
upstream: Avoid an unnecessary xstrdup in rm_env() when matching

patterns. Since match_pattern() doesn't modify its arguments (they are
const), there is no need to make an extra copy of the strings in
options->send_env. From Martin Vahlensieck

OpenBSD-Commit-ID: 2c9db31e3f4d3403b49642c64ee048b2a0a39351

3 years agoAdd debian-riscv64 test target.
Darren Tucker [Tue, 26 Apr 2022 13:30:59 +0000 (23:30 +1000)] 
Add debian-riscv64 test target.

3 years agoUpdate OpenSSL and LibreSSL versions in tests.
Darren Tucker [Mon, 25 Apr 2022 07:20:06 +0000 (17:20 +1000)] 
Update OpenSSL and LibreSSL versions in tests.

3 years agoInclude stdlib.h for free() prototype.
Darren Tucker [Sat, 23 Apr 2022 10:40:28 +0000 (20:40 +1000)] 
Include stdlib.h for free() prototype.

... which is used inside the CUSTOM_SYS_AUTH_GET_LASTLOGIN_MSG block.

3 years agoCache timezone data in capsicum sandbox.
Darren Tucker [Sat, 23 Apr 2022 10:17:26 +0000 (20:17 +1000)] 
Cache timezone data in capsicum sandbox.

From emaste at freebsd.org, originally part of FreeBSD commit r339216
fc3c19a9 with autoconf bits added by me.

3 years agoupstream: It looks like we can't completely avoid
dtucker@openbsd.org [Thu, 21 Apr 2022 01:36:46 +0000 (01:36 +0000)] 
upstream: It looks like we can't completely avoid

waiting for processes to exit so retrieve the pid via controlmaster and
use that.

OpenBSD-Regress-ID: 8246f00f22b14e49d2ff1744c94897ead33d457b

3 years agoupstream: Use ssh -f and ControlPersist ..
dtucker@openbsd.org [Wed, 20 Apr 2022 13:25:55 +0000 (13:25 +0000)] 
upstream: Use ssh -f and ControlPersist ..

to start up test forwards and ssh -O stop to shut them down intead of
sleep loops.  This speeds up the test by an order of magnitude.

OpenBSD-Regress-ID: eb3db5f805100919b092a3b2579c611fba3e83e7

3 years agoupstream: Simplify forward-control test.
dtucker@openbsd.org [Wed, 20 Apr 2022 05:24:13 +0000 (05:24 +0000)] 
upstream: Simplify forward-control test.

Since we no longer need to support SSH1 we don't need to run shell
commands on the other end of the connection and can use ssh -N instead.
This also makes the test less racy.

OpenBSD-Regress-ID: 32e94ce272820cc398f30b848b2b0f080d10302c