]> git.ipfire.org Git - thirdparty/openssh-portable.git/log
thirdparty/openssh-portable.git
22 months agoupstream: regress test for agent PKCS#11-backed certificates
djm@openbsd.org [Mon, 18 Dec 2023 14:50:08 +0000 (14:50 +0000)] 
upstream: regress test for agent PKCS#11-backed certificates

OpenBSD-Regress-ID: 38f681777cb944a8cc3bf9d0ad62959a16764df9

22 months agoupstream: regress test for constrained PKCS#11 keys
djm@openbsd.org [Mon, 18 Dec 2023 14:49:39 +0000 (14:49 +0000)] 
upstream: regress test for constrained PKCS#11 keys

OpenBSD-Regress-ID: b2f26ae95d609d12257b43aef7cd7714c82618ff

22 months agoupstream: openssh-9.6
djm@openbsd.org [Mon, 18 Dec 2023 14:48:44 +0000 (14:48 +0000)] 
upstream: openssh-9.6

OpenBSD-Commit-ID: 21759837cf0e0092d9a2079f8fb562071c11016b

22 months agoupstream: ssh-agent: record failed session-bind attempts
djm@openbsd.org [Mon, 18 Dec 2023 14:48:08 +0000 (14:48 +0000)] 
upstream: ssh-agent: record failed session-bind attempts

Record failed attempts to session-bind a connection and refuse signing
operations on that connection henceforth.

Prevents a future situation where we add a new hostkey type that is not
recognised by an older ssh-agent, that consequently causes session-bind
to fail (this situation is only likely to arise when people mix ssh(1)
and ssh-agent(1) of different versions on the same host). Previously,
after such a failure the agent socket would be considered unbound and
not subject to restriction.

Spotted by Jann Horn

OpenBSD-Commit-ID: b0fdd023e920aa4831413f640de4c5307b53552e

22 months agoupstream: ban user/hostnames with most shell metacharacters
djm@openbsd.org [Mon, 18 Dec 2023 14:47:44 +0000 (14:47 +0000)] 
upstream: ban user/hostnames with most shell metacharacters

This makes ssh(1) refuse user or host names provided on the
commandline that contain most shell metacharacters.

Some programs that invoke ssh(1) using untrusted data do not filter
metacharacters in arguments they supply. This could create
interactions with user-specified ProxyCommand and other directives
that allow shell injection attacks to occur.

It's a mistake to invoke ssh(1) with arbitrary untrusted arguments,
but getting this stuff right can be tricky, so this should prevent
most obvious ways of creating risky situations. It however is not
and cannot be perfect: ssh(1) has no practical way of interpreting
what shell quoting rules are in use and how they interact with the
user's specified ProxyCommand.

To allow configurations that use strange user or hostnames to
continue to work, this strictness is applied only to names coming
from the commandline. Names specified using User or Hostname
directives in ssh_config(5) are not affected.

feedback/ok millert@ markus@ dtucker@ deraadt@

OpenBSD-Commit-ID: 3b487348b5964f3e77b6b4d3da4c3b439e94b2d9

22 months agoupstream: stricter handling of channel window limits
djm@openbsd.org [Mon, 18 Dec 2023 14:47:20 +0000 (14:47 +0000)] 
upstream: stricter handling of channel window limits

This makes ssh/sshd more strict in handling non-compliant peers that
send more data than the advertised channel window allows. Previously
the additional data would be silently discarded. This change will
cause ssh/sshd to terminate the connection if the channel window is
exceeded by more than a small grace allowance.

ok markus@

OpenBSD-Commit-ID: 811e21b41831eba3dd7f67b3d409a438f20d3037

22 months agoupstream: Make it possible to load certs from PKCS#11 tokens
djm@openbsd.org [Mon, 18 Dec 2023 14:46:56 +0000 (14:46 +0000)] 
upstream: Make it possible to load certs from PKCS#11 tokens

Adds a protocol extension to allow grafting certificates supplied by
ssh-add to keys loaded from PKCS#11 tokens in the agent.

feedback/ok markus@

OpenBSD-Commit-ID: bb5433cd28ede2bc910996eb3c0b53e20f86037f

22 months agoupstream: apply destination constraints to all p11 keys
djm@openbsd.org [Mon, 18 Dec 2023 14:46:12 +0000 (14:46 +0000)] 
upstream: apply destination constraints to all p11 keys

Previously applied only to the first key returned from each token.

ok markus@

OpenBSD-Commit-ID: 36df3afb8eb94eec6b2541f063d0d164ef8b488d

22 months agoupstream: add "ext-info-in-auth@openssh.com" extension
djm@openbsd.org [Mon, 18 Dec 2023 14:45:49 +0000 (14:45 +0000)] 
upstream: add "ext-info-in-auth@openssh.com" extension

This adds another transport protocol extension to allow a sshd to send
SSH2_MSG_EXT_INFO during user authentication, after the server has
learned the username that is being logged in to.

This lets sshd to update the acceptable signature algoritms for public
key authentication, and allows these to be varied via sshd_config(5)
"Match" directives, which are evaluated after the server learns the
username being authenticated.

Full details in the PROTOCOL file

OpenBSD-Commit-ID: 1de7da7f2b6c32a46043d75fcd49b0cbb7db7779

22 months agoupstream: implement "strict key exchange" in ssh and sshd
djm@openbsd.org [Mon, 18 Dec 2023 14:45:17 +0000 (14:45 +0000)] 
upstream: implement "strict key exchange" in ssh and sshd

This adds a protocol extension to improve the integrity of the SSH
transport protocol, particular in and around the initial key exchange
(KEX) phase.

Full details of the extension are in the PROTOCOL file.

with markus@

OpenBSD-Commit-ID: 2a66ac962f0a630d7945fee54004ed9e9c439f14

22 months agobetter detection of broken -fzero-call-used-regs
Damien Miller [Mon, 18 Dec 2023 03:49:11 +0000 (14:49 +1100)] 
better detection of broken -fzero-call-used-regs

Use OSSH_CHECK_CFLAG_LINK() for detection of these flags and extend
test program to exercise varargs, which seems to catch more stuff.

ok dtucker@

22 months agoupstream: when invoking KnownHostsCommand to determine the order of
djm@openbsd.org [Wed, 13 Dec 2023 03:28:19 +0000 (03:28 +0000)] 
upstream: when invoking KnownHostsCommand to determine the order of

host key algorithms to request, ensure that the hostname passed to the
command is decorated with the port number for ports other than 22.

This matches the behaviour of KnownHostsCommand when invoked to look
up the actual host key.

bz3643, ok dtucker@

OpenBSD-Commit-ID: 5cfabc0b7c6c7ab473666df314f377b1f15420b1

22 months agoupstream: prevent leak in sshsig_match_principals; ok djm@
markus@openbsd.org [Fri, 8 Dec 2023 09:18:39 +0000 (09:18 +0000)] 
upstream: prevent leak in sshsig_match_principals; ok djm@

OpenBSD-Commit-ID: 594f61ad4819ff5c72dfe99ba666a17f0e1030ae

22 months agoupstream: short circuit debug log processing early if we're not going
djm@openbsd.org [Wed, 6 Dec 2023 21:06:48 +0000 (21:06 +0000)] 
upstream: short circuit debug log processing early if we're not going

to log anything. From Kobe Housen

OpenBSD-Commit-ID: 2bcddd695872a1bef137cfff7823044dcded90ea

23 months agoAdd tests for OpenSSL 3.2.0 and 3.2 stable branch.
Darren Tucker [Sun, 26 Nov 2023 22:37:28 +0000 (09:37 +1100)] 
Add tests for OpenSSL 3.2.0 and 3.2 stable branch.

23 months agoUse non-zero arg in compiler test program.
Darren Tucker [Fri, 24 Nov 2023 22:03:38 +0000 (09:03 +1100)] 
Use non-zero arg in compiler test program.

Now that we're running the test program, passing zero to the test function
can cause divide-by-zero exceptions which might show up in logs.

23 months agoupstream: Plug mem leak of msg when processing a quit message.
dtucker@openbsd.org [Fri, 24 Nov 2023 00:31:30 +0000 (00:31 +0000)] 
upstream: Plug mem leak of msg when processing a quit message.

Coverity CID#427852, ok djm@

OpenBSD-Commit-ID: bf85362addbe2134c3d8c4b80f16601fbff823b7

23 months agoupstream: Include existing mux path in debug message.
dtucker@openbsd.org [Thu, 23 Nov 2023 03:37:05 +0000 (03:37 +0000)] 
upstream: Include existing mux path in debug message.

OpenBSD-Commit-ID: 1c3641be10c2f4fbad2a1b088a441d072e18bf16

23 months agoAdd an Ubuntu 22.04 test VM.
Darren Tucker [Thu, 23 Nov 2023 08:41:27 +0000 (19:41 +1100)] 
Add an Ubuntu 22.04 test VM.

This is the same version as Github's runners so most of the testing on
it is over there, but having a local VM makes debugging much easier.

23 months agoAdd gcc-12 -Werror test on Ubuntu 22.04.
Darren Tucker [Thu, 23 Nov 2023 08:36:22 +0000 (19:36 +1100)] 
Add gcc-12 -Werror test on Ubuntu 22.04.

Explictly specify gcc-11 on Ubuntu 22.04 (it's the system compiler).

23 months agoCheck return value from write to prevent warning.
Darren Tucker [Thu, 23 Nov 2023 08:34:57 +0000 (19:34 +1100)] 
Check return value from write to prevent warning.

... and since we're testing for flags with -Werror, this caused
configure to mis-detect compiler flags.

23 months agoRun compiler test program when compiling natively.
Darren Tucker [Wed, 22 Nov 2023 10:18:55 +0000 (21:18 +1100)] 
Run compiler test program when compiling natively.

ok djm@

23 months agoFactor out compiler test program into a macro.
Darren Tucker [Wed, 22 Nov 2023 10:18:07 +0000 (21:18 +1100)] 
Factor out compiler test program into a macro.

ok djm@

23 months agoAdd fbsd14 VM to test pool.
Darren Tucker [Tue, 21 Nov 2023 21:55:36 +0000 (08:55 +1100)] 
Add fbsd14 VM to test pool.

23 months agoExpand -fzero-call-used-regs test to cover gcc 11.
Darren Tucker [Tue, 21 Nov 2023 05:19:29 +0000 (16:19 +1100)] 
Expand -fzero-call-used-regs test to cover gcc 11.

It turns out that gcc also has some problems with -fzero-call-used-regs,
at least v11 on mips.  Previously the test in OSSH_CHECK_CFLAG_COMPILE
was sufficient to catch it with "=all", but not sufficient for "=used".
Expand the testcase and include it in the other tests for good measure.
See bz#3629.  ok djm@.

23 months agoStop using -fzero-call-used-regs=all
Darren Tucker [Tue, 21 Nov 2023 03:04:34 +0000 (14:04 +1100)] 
Stop using -fzero-call-used-regs=all

... since it seems to be problematic with several different versions of
clang.  Only use -fzero-call-used-regs=used which is less
problematic, except with Apple's clang where we don't use it at all.
bz#3629, ok djm@

23 months agoAllow for vendor prefix on clang version numbers.
Darren Tucker [Tue, 21 Nov 2023 03:02:18 +0000 (14:02 +1100)] 
Allow for vendor prefix on clang version numbers.

Correctly detects the version of OpenBSD's native clang, as well as
Apple's.  Spotted tb@, ok djm@.

23 months agoupstream: set errno=EAFNOSUPPORT when filtering addresses that don't
djm@openbsd.org [Mon, 20 Nov 2023 02:50:00 +0000 (02:50 +0000)] 
upstream: set errno=EAFNOSUPPORT when filtering addresses that don't

match AddressFamily; yields slightly better error message if no address
matches. bz#3526

OpenBSD-Commit-ID: 29cea900ddd8b04a4d1968da5c4a893be2ebd9e6

23 months agoupstream: when connecting via socket (the default case), filter
djm@openbsd.org [Wed, 15 Nov 2023 23:03:38 +0000 (23:03 +0000)] 
upstream: when connecting via socket (the default case), filter

addresses by AddressFamily if one was specified. Fixes the case where, if
CanonicalizeHostname is enabled, ssh may ignore AddressFamily. bz5326; ok
dtucker

OpenBSD-Commit-ID: 6c7d7751f6cd055126b2b268a7b64dcafa447439

23 months agoupstream: when deciding whether to enable keystroke timing
djm@openbsd.org [Wed, 15 Nov 2023 22:51:49 +0000 (22:51 +0000)] 
upstream: when deciding whether to enable keystroke timing

obfuscation, only consider enabling it when a channel with a tty is open.

Avoids turning on the obfucation when X11 forwarding only is in use,
which slows it right down. Reported by Roger Marsh

OpenBSD-Commit-ID: c292f738db410f729190f92de100c39ec931a4f1

23 months agoupstream: Make sure sftp_get_limits() only returns 0 if 'limits'
tobhe@openbsd.org [Mon, 13 Nov 2023 09:18:19 +0000 (09:18 +0000)] 
upstream: Make sure sftp_get_limits() only returns 0 if 'limits'

was initialized. This fixes a potential uninitialized use of 'limits' in
sftp_init() if sftp_get_limits() returned early because of an unexpected
message type.

ok djm@

OpenBSD-Commit-ID: 1c177d7c3becc1d71bc8763eecf61873a1d3884c

23 months agoTest current releases of LibreSSL and OpenSSL.
Darren Tucker [Mon, 13 Nov 2023 09:03:31 +0000 (20:03 +1100)] 
Test current releases of LibreSSL and OpenSSL.

Retire some of the older releases.

23 months agoupstream: Specify ssh binary to use
dtucker@openbsd.org [Wed, 1 Nov 2023 02:08:38 +0000 (02:08 +0000)] 
upstream: Specify ssh binary to use

... instead of relying on installed one.  Fixes test failures in -portable
when running tests prior to installation.

OpenBSD-Regress-ID: b6d6ba71c23209c616efc805a60d9a445d53a685

23 months agoPut long-running test targets on hipri runners.
Darren Tucker [Wed, 1 Nov 2023 02:11:31 +0000 (13:11 +1100)] 
Put long-running test targets on hipri runners.

Some of the selfhosted test targets take a long time to run for various
reasons, so label them for "libvirt-hipri" runners so that they can
start immediately.  This should reduce the time to complete all tests.

23 months agoupstream: add some tests of forced commands overriding Subsystem
djm@openbsd.org [Wed, 1 Nov 2023 00:29:46 +0000 (00:29 +0000)] 
upstream: add some tests of forced commands overriding Subsystem

directives

OpenBSD-Regress-ID: eb48610282f6371672bdf2a8b5d2aa33cfbd322b

23 months agoupstream: Don't try to use sudo inside sshd log wrapper.
dtucker@openbsd.org [Tue, 31 Oct 2023 04:15:40 +0000 (04:15 +0000)] 
upstream: Don't try to use sudo inside sshd log wrapper.

We still need to check if we're using sudo since we don't want to chown
unecessarily, as on some platforms this causes an error which pollutes
stderr. We also don't want to unnecessarily invoke sudo, since it's
running in the context of the proxycommand, on *other* platforms it
may not be able to authenticate, and if we're using SUDO then it should
already be privileged.

OpenBSD-Regress-ID: 70d58df7503db699de579a9479300e5f3735f4ee

23 months agoupstream: Only try to chmod logfile if we have sudo. If we don't have
dtucker@openbsd.org [Tue, 31 Oct 2023 02:58:45 +0000 (02:58 +0000)] 
upstream: Only try to chmod logfile if we have sudo. If we don't have

sudo then we won't need to chmod.

OpenBSD-Regress-ID: dbad2f5ece839658ef8af3376cb1fb1cabe2e324

23 months agoupstream: move PKCS#11 setup code to test-exec.sh so it can be reused
djm@openbsd.org [Mon, 30 Oct 2023 23:00:25 +0000 (23:00 +0000)] 
upstream: move PKCS#11 setup code to test-exec.sh so it can be reused

elsewhere

OpenBSD-Regress-ID: 1d29e6be40f994419795d9e660a8d07f538f0acb

23 months agoupstream: tidy and refactor PKCS#11 setup code
djm@openbsd.org [Mon, 30 Oct 2023 17:32:00 +0000 (17:32 +0000)] 
upstream: tidy and refactor PKCS#11 setup code

Replace the use of a perl script to delete the controlling TTY with a
SSH_ASKPASS script to directly load the PIN.

Move PKCS#11 setup code to functions in anticipation of it being used
elsewhere in additional tests.

Reduce stdout spam

OpenBSD-Regress-ID: 07705c31de30bab9601a95daf1ee6bef821dd262

23 months agoAdd obsd74 test VM and retire obsd69 and obsd70.
Darren Tucker [Mon, 30 Oct 2023 10:35:03 +0000 (21:35 +1100)] 
Add obsd74 test VM and retire obsd69 and obsd70.

23 months agoAdd OpenSSL 3.3.0 as a known dev version.
Darren Tucker [Mon, 30 Oct 2023 07:34:12 +0000 (18:34 +1100)] 
Add OpenSSL 3.3.0 as a known dev version.

23 months agoRestore nopasswd sudo rule on Mac OS X.
Darren Tucker [Mon, 30 Oct 2023 02:32:03 +0000 (13:32 +1100)] 
Restore nopasswd sudo rule on Mac OS X.

This seems to be missing from some (but not all) github runners, so
restore it if it seems to be missing.

2 years agoDon't exit early when setting up on Mac OS X.
Darren Tucker [Mon, 30 Oct 2023 02:26:52 +0000 (13:26 +1100)] 
Don't exit early when setting up on Mac OS X.

We probably need some of the other bits in there (specifically, setting
the perms on the home directory) so make it less of a special snowflake.

2 years agoupstream: Only try to chown logfiles that exist to prevent spurious
dtucker@openbsd.org [Sun, 29 Oct 2023 06:22:07 +0000 (06:22 +0000)] 
upstream: Only try to chown logfiles that exist to prevent spurious

errors.

OpenBSD-Regress-ID: f1b20a476734e885078c481f1324c9ea03af991e

2 years agoupstream: make use of bsd.regress.mk in extra and interop targets; ok
anton@openbsd.org [Thu, 26 Oct 2023 18:52:45 +0000 (18:52 +0000)] 
upstream: make use of bsd.regress.mk in extra and interop targets; ok

dtucker@

OpenBSD-Regress-ID: 7ea21b5f6fc4506165093b2123d88d20ff13a4f0

2 years agoupstream: Skip conch interop tests when not enabled instead of fatal.
dtucker@openbsd.org [Thu, 26 Oct 2023 12:44:07 +0000 (12:44 +0000)] 
upstream: Skip conch interop tests when not enabled instead of fatal.

OpenBSD-Regress-ID: b0abf81c24ac6c21f367233663228ba16fa96a46

2 years agoupstream: Import regenerated moduli.
dtucker@openbsd.org [Wed, 25 Oct 2023 05:38:08 +0000 (05:38 +0000)] 
upstream: Import regenerated moduli.

OpenBSD-Commit-ID: 95f5dd6107e8902b87dc5b005ef2b53f1ff378b8

2 years agoupstream: ssh conch interop tests requires a controlling terminal;
anton@openbsd.org [Wed, 25 Oct 2023 08:01:59 +0000 (08:01 +0000)] 
upstream: ssh conch interop tests requires a controlling terminal;

ok dtucker@

OpenBSD-Regress-ID: cbf2701bc347c2f19d907f113779c666f1ecae4a

2 years agoupstream: Use private key that is allowed by sshd defaults in conch
anton@openbsd.org [Mon, 23 Oct 2023 11:30:49 +0000 (11:30 +0000)] 
upstream: Use private key that is allowed by sshd defaults in conch

interop tests.

ok dtucker@

OpenBSD-Regress-ID: 3b7f65c8f409c328bcd4b704f60cb3d31746f045

2 years agoInstall Dropbear for interop testing.
Darren Tucker [Fri, 20 Oct 2023 09:43:00 +0000 (20:43 +1100)] 
Install Dropbear for interop testing.

2 years agoResync PuTTY and Conch path handling with upstream.
Darren Tucker [Fri, 20 Oct 2023 09:39:03 +0000 (20:39 +1100)] 
Resync PuTTY and Conch path handling with upstream.

Now that configure finds these for us we can remove these -portable
specific changes.

2 years agoHave configure find PuTTY and Conch binaries.
Darren Tucker [Fri, 20 Oct 2023 09:35:46 +0000 (20:35 +1100)] 
Have configure find PuTTY and Conch binaries.

This will let us remove some -portable specific changes from
test-exec.sh.

2 years agoupstream: Allow overriding the locations of the Dropbear binaries
dtucker@openbsd.org [Fri, 20 Oct 2023 07:37:07 +0000 (07:37 +0000)] 
upstream: Allow overriding the locations of the Dropbear binaries

similar to what we do for the PuTTY ones.

OpenBSD-Regress-ID: 7de0e00518fb0c8fdc5f243b7f82f523c936049c

2 years agoupstream: Add interop test with Dropbear.
dtucker@openbsd.org [Fri, 20 Oct 2023 06:56:45 +0000 (06:56 +0000)] 
upstream: Add interop test with Dropbear.

Right now this is only dbclient not the Dropbear server since it won't
currently run as a ProxyCommand.

OpenBSD-Regress-ID: 8cb898c414fcdb252ca6328896b0687acdaee496

2 years agoUpdate openssl-devel dependency in RPM spec.
Fabio Pedretti [Mon, 16 Oct 2023 09:59:53 +0000 (11:59 +0200)] 
Update openssl-devel dependency in RPM spec.

Since openssh 9.4p1, openssl >= 1.1.1 is required, so
build with --without-openssl elsewhere.
According to https://repology.org/project/openssl/versions
openssl 1.1.1 is available on fedora >= 29 and rhel >= 8.
Successfully build tested, installed and run on rhel 6

2 years agoRemove reference of dropped sshd.pam.old file
Fabio Pedretti [Mon, 16 Oct 2023 08:13:06 +0000 (10:13 +0200)] 
Remove reference of dropped sshd.pam.old file

The file was removed in openssh 8.8

2 years agoupstream: Move declaration of "len" into the block where it's used.
dtucker@openbsd.org [Mon, 16 Oct 2023 08:40:00 +0000 (08:40 +0000)] 
upstream: Move declaration of "len" into the block where it's used.

This lets us compile Portable with -Werror with when OpenSSL doesn't have
Ed25519 support.

OpenBSD-Commit-ID: e02e4b4af351946562a7caee905da60eff16ba29

2 years agorun t-extra regress tests
Damien Miller [Fri, 13 Oct 2023 04:15:05 +0000 (15:15 +1100)] 
run t-extra regress tests

This exposes the t-extra regress tests (including agent-pkcs11.sh) as
a new extra-tests target in the top level Makefile and runs them by
default. ok dtucker@

2 years agoDon't use make -j2.
Darren Tucker [Thu, 12 Oct 2023 11:01:23 +0000 (22:01 +1100)] 
Don't use make -j2.

While we have 2 cores available on github runners, not using it means
that the most recent log message is the actual failure, rather than
having to search back through the log for it.

2 years agoCorrect arg order for ED255519 AC_LINK_IFELSE test.
Darren Tucker [Thu, 12 Oct 2023 05:23:05 +0000 (16:23 +1100)] 
Correct arg order for ED255519 AC_LINK_IFELSE test.

2 years agoupstream: typos and extra debug trace calls
djm@openbsd.org [Thu, 12 Oct 2023 03:51:08 +0000 (03:51 +0000)] 
upstream: typos and extra debug trace calls

OpenBSD-Regress-ID: 98a2a6b9333743274359e3c0f0e65cf919a591d1

2 years agoupstream: ensure logs are owned by correct user; feedback/ok
djm@openbsd.org [Thu, 12 Oct 2023 03:48:53 +0000 (03:48 +0000)] 
upstream: ensure logs are owned by correct user; feedback/ok

dtucker@

OpenBSD-Regress-ID: c3297af8f07717f1d400a5d34529962f1a76b5a3

2 years agoupstream: 64 %-expansion keys ought to be enough for anybody; ok
djm@openbsd.org [Thu, 12 Oct 2023 03:36:32 +0000 (03:36 +0000)] 
upstream: 64 %-expansion keys ought to be enough for anybody; ok

dtucker (we just hit the previous limit in some cases)

OpenBSD-Commit-ID: 84070f8001ec22ff5d669f836b62f206e08c5787

2 years agoupstream: don't dereference NULL pointer when hashing jumphost
djm@openbsd.org [Thu, 12 Oct 2023 02:48:43 +0000 (02:48 +0000)] 
upstream: don't dereference NULL pointer when hashing jumphost

OpenBSD-Commit-ID: 251c0263e1759a921341c7efe7f1d4c73e1c70f4

2 years agoSolaris: prefer PRIV_XPOLICY to PRIV_LIMIT
Damien Miller [Thu, 12 Oct 2023 02:20:01 +0000 (13:20 +1100)] 
Solaris: prefer PRIV_XPOLICY to PRIV_LIMIT

If the system support PRIV_XPOLICY and one is set, then don't
modify PRIV_LIMIT. bz2833, patch from Ron Jordan, ok dtucker@

2 years agoupstream: add %j token that expands to the configured ProxyJump
djm@openbsd.org [Thu, 12 Oct 2023 02:18:18 +0000 (02:18 +0000)] 
upstream: add %j token that expands to the configured ProxyJump

hostname (or the empty string if this option is not being used). bz3610, ok
dtucker

OpenBSD-Commit-ID: ce9983f7efe6a178db90dc5c1698df025df5e339

2 years agoupstream: release GSS OIDs only at end of authentication; bz2982,
djm@openbsd.org [Thu, 12 Oct 2023 02:15:53 +0000 (02:15 +0000)] 
upstream: release GSS OIDs only at end of authentication; bz2982,

ok dtucker@

OpenBSD-Commit-ID: 0daa41e0525ae63cae4483519ecaa37ac485d94c

2 years agoupstream: mask SIGINT/TERM/QUIT/HUP before checking quit_pending
djm@openbsd.org [Thu, 12 Oct 2023 02:12:53 +0000 (02:12 +0000)] 
upstream: mask SIGINT/TERM/QUIT/HUP before checking quit_pending

and use ppoll() to unmask them in the mainloop. Avoids race condition between
signaling ssh to exit and polling. bz3531; ok dtucker

OpenBSD-Commit-ID: 5c14e1aabcddedb95cdf972283d9c0d5083229e7

2 years agoupstream: sync usage() with ssh.1; spotted by kn@
djm@openbsd.org [Wed, 11 Oct 2023 23:23:58 +0000 (23:23 +0000)] 
upstream: sync usage() with ssh.1; spotted by kn@

OpenBSD-Commit-ID: 191a85639477dcb5fa1616d270d93b7c8d5c1dfd

2 years agoupstream: ssh -Q does not make sense with other command-line options,
djm@openbsd.org [Wed, 11 Oct 2023 23:14:33 +0000 (23:14 +0000)] 
upstream: ssh -Q does not make sense with other command-line options,

so give it its own line in the manpage

OpenBSD-Commit-ID: 00a747f0655c12122bbb77c2796be0013c105361

2 years agoupstream: add ChannelTimeout support to the client, mirroring the
djm@openbsd.org [Wed, 11 Oct 2023 22:42:26 +0000 (22:42 +0000)] 
upstream: add ChannelTimeout support to the client, mirroring the

same option in the server. ok markus@

OpenBSD-Commit-ID: 55630b26f390ac063980cfe7ad8c54b03284ef02

2 years agoupstream: add support for reading ED25519 private keys in PEM PKCS8
djm@openbsd.org [Wed, 11 Oct 2023 22:41:05 +0000 (22:41 +0000)] 
upstream: add support for reading ED25519 private keys in PEM PKCS8

format; ok markus@ tb@

OpenBSD-Commit-ID: 01b85c91757e6b057e9b23b8a23f96415c3c7174

2 years agoupstream: mention "none" is a valid argument to IdentityFile; bz3080
djm@openbsd.org [Wed, 11 Oct 2023 06:40:54 +0000 (06:40 +0000)] 
upstream: mention "none" is a valid argument to IdentityFile; bz3080

OpenBSD-Commit-ID: 1b4fb590ef731099349a7d468b77f02b240ac926

2 years agoupstream: in olde rcp/scp protocol mode, when rejecting a path from the
djm@openbsd.org [Wed, 11 Oct 2023 05:42:08 +0000 (05:42 +0000)] 
upstream: in olde rcp/scp protocol mode, when rejecting a path from the

server as not matching the glob that the client sent, log (at debug level)
the received pathname as well as the list of possible expected paths expanded
from the glob. bz2966

OpenBSD-Commit-ID: 0bd8db8a595334ca86bca8f36e23fc0395315765

2 years agoupstream: s/%.100s/%s/ in SSH- banner construction as there's no
djm@openbsd.org [Wed, 11 Oct 2023 04:46:29 +0000 (04:46 +0000)] 
upstream: s/%.100s/%s/ in SSH- banner construction as there's no

reason to limit its size: the version string bring included is a compile time
constant going into an allocated banner string.

OpenBSD-Commit-ID: 0ef73304b9bf3e534c60900cd84ab699f859ebcd

2 years agoupstream: Garbage collect cipher_get_keyiv_len()
tb@openbsd.org [Tue, 10 Oct 2023 06:49:54 +0000 (06:49 +0000)] 
upstream: Garbage collect cipher_get_keyiv_len()

This is a compat20 leftover, unused since 2017.

ok djm

OpenBSD-Commit-ID: 91fa5497c9dc6883064624ac27813a567883fdce

2 years agoupstream: Reserve a range of "local extension" message numbers that
djm@openbsd.org [Tue, 10 Oct 2023 03:57:45 +0000 (03:57 +0000)] 
upstream: Reserve a range of "local extension" message numbers that

OpenSSH promises not to use (comment change only)

OpenBSD-Commit-ID: e61795b453d4892d2c99ce1039112c4a00250e03

2 years agoupstream: typo in error message
djm@openbsd.org [Fri, 6 Oct 2023 03:32:15 +0000 (03:32 +0000)] 
upstream: typo in error message

OpenBSD-Regress-ID: 6a8edf0dc39941298e3780b147b10c0a600b4fee

2 years agoupstream: Perform the softhsm2 setup as discrete steps rather than
djm@openbsd.org [Fri, 6 Oct 2023 03:25:14 +0000 (03:25 +0000)] 
upstream: Perform the softhsm2 setup as discrete steps rather than

as a long shell pipeline. Makes it easier to figure out what has happened
when it breaks.

OpenBSD-Regress-ID: b3f1292115fed65765d0a95414df16e27772d81c

2 years agoupstream: REGRESS_FAIL_EARLY defaults to yes now. So no need to
claudio@openbsd.org [Sun, 24 Sep 2023 08:14:13 +0000 (08:14 +0000)] 
upstream: REGRESS_FAIL_EARLY defaults to yes now. So no need to

overload the value here anymore. OK tb@ bluhm@

OpenBSD-Regress-ID: f063330f1bebbcd373100afccebc91a965b14496

2 years agoupstream: spelling fix;
jmc@openbsd.org [Wed, 4 Oct 2023 05:42:10 +0000 (05:42 +0000)] 
upstream: spelling fix;

OpenBSD-Commit-ID: 493f95121567e5ab0d9dd1150f873b5535ca0195

2 years agocrank version numbers V_9_5_P1
Damien Miller [Wed, 4 Oct 2023 04:34:10 +0000 (15:34 +1100)] 
crank version numbers

2 years agoupstream: openssh-9.5
djm@openbsd.org [Wed, 4 Oct 2023 04:04:09 +0000 (04:04 +0000)] 
upstream: openssh-9.5

OpenBSD-Commit-ID: 5e0af680480bd3b6f5560cf840ad032d48fd6b16

2 years agoupstream: add some cautionary text about % token expansion and
djm@openbsd.org [Wed, 4 Oct 2023 04:03:50 +0000 (04:03 +0000)] 
upstream: add some cautionary text about % token expansion and

shell metacharacters; based on report from vinci AT protonmail.ch

OpenBSD-Commit-ID: aa1450a54fcee2f153ef70368d90edb1e7019113

2 years agoupstream: fix link to agent draft; spotted by Jann Horn
djm@openbsd.org [Tue, 3 Oct 2023 23:56:10 +0000 (23:56 +0000)] 
upstream: fix link to agent draft; spotted by Jann Horn

OpenBSD-Commit-ID: ff5bda21a83ec013db683e282256a85201d2dc4b

2 years agouse portable provider allowlist path in manpage
Damien Miller [Tue, 3 Oct 2023 23:54:04 +0000 (10:54 +1100)] 
use portable provider allowlist path in manpage

spotted by Jann Horn

2 years agoupstream: typo; from Jim Spath
deraadt@openbsd.org [Tue, 19 Sep 2023 20:37:07 +0000 (20:37 +0000)] 
upstream: typo; from Jim Spath

OpenBSD-Commit-ID: 2f5fba917b5d4fcf93d9e0b0756c7f63189e228e

2 years agoupstream: rename remote_glob() -> sftp_glob() to match other API
djm@openbsd.org [Sun, 10 Sep 2023 23:12:32 +0000 (23:12 +0000)] 
upstream: rename remote_glob() -> sftp_glob() to match other API

OpenBSD-Commit-ID: d9dfb3708d824ec02970a84d96cf5937e0887229

2 years agoupstream: typo in comment
djm@openbsd.org [Sun, 10 Sep 2023 03:51:55 +0000 (03:51 +0000)] 
upstream: typo in comment

OpenBSD-Commit-ID: 69285e0ce962a7c6b0ab5f17a293c60a0a360a18

2 years agoUse zero-call-used-regs=used with Apple compilers.
Darren Tucker [Sun, 10 Sep 2023 05:45:38 +0000 (15:45 +1000)] 
Use zero-call-used-regs=used with Apple compilers.

Apple's versions of clang have version numbers that do not match the
corresponding upstream clang versions.  Unfortunately, they do still
have the clang-15 zero-call-used-regs=all bug, so for now use the value
that doesn't result in segfaults.  We could allowlist future versions
that are known to work.  bz#3584 (and probably also our github CI
failures).

2 years agoupstream: randomise keystroke obfuscation intervals and average
djm@openbsd.org [Sun, 10 Sep 2023 03:25:53 +0000 (03:25 +0000)] 
upstream: randomise keystroke obfuscation intervals and average

interval rate. ok dtucker@

OpenBSD-Commit-ID: 05f61d051ab418fcfc4857ff306e420037502382

2 years agoupstream: fix sizeof(*ptr) instead sizeof(ptr) in realloc (pointer here
djm@openbsd.org [Fri, 8 Sep 2023 06:34:24 +0000 (06:34 +0000)] 
upstream: fix sizeof(*ptr) instead sizeof(ptr) in realloc (pointer here

is char**, so harmless); spotted in CID 416964

OpenBSD-Commit-ID: c61caa4a5a667ee20bb1042098861e6c72c69002

2 years agoupstream: regress test recursive remote-remote directories copies where
djm@openbsd.org [Fri, 8 Sep 2023 06:10:57 +0000 (06:10 +0000)] 
upstream: regress test recursive remote-remote directories copies where

the directory contains a symlink to another directory.

also remove errant `set -x` that snuck in at some point

OpenBSD-Regress-ID: 1c94a48bdbd633ef2285954ee257725cd7bc456f

2 years agoupstream: fix recursive remote-remote copies of directories that
djm@openbsd.org [Fri, 8 Sep 2023 06:10:02 +0000 (06:10 +0000)] 
upstream: fix recursive remote-remote copies of directories that

contain symlinks to other directories (similar to bz3611)

OpenBSD-Commit-ID: 7e19d2ae09b4f941bf8eecc3955c9120171da37f

2 years agoupstream: regress test for recursive copies of directories containing
djm@openbsd.org [Fri, 8 Sep 2023 05:50:57 +0000 (05:50 +0000)] 
upstream: regress test for recursive copies of directories containing

symlinks to other directories. bz3611, ok dtucker@

OpenBSD-Regress-ID: eaa4c29cc5cddff4e72a16bcce14aeb1ecfc94b9

2 years agoupstream: the sftp code was one of my first contributions to
djm@openbsd.org [Fri, 8 Sep 2023 05:56:13 +0000 (05:56 +0000)] 
upstream: the sftp code was one of my first contributions to

OpenSSH and it shows - the function names are terrible.

Rename do_blah() to sftp_blah() to make them less so.

Completely mechanical except for sftp_stat() and sftp_lstat() which
change from returning a pointer to a static variable (error-prone) to
taking a pointer to a caller-provided receiver.

OpenBSD-Commit-ID: eb54d6a72d0bbba4d623e2175cf5cc4c75dc2ba4

2 years agoupstream: fix scp in SFTP mode recursive upload and download of
djm@openbsd.org [Fri, 8 Sep 2023 05:50:12 +0000 (05:50 +0000)] 
upstream: fix scp in SFTP mode recursive upload and download of

directories that contain symlinks to other directories. In scp mode, the
links would be followed, but in SFTP mode they were not. bz3611, ok dtucker@

OpenBSD-Commit-ID: 9760fda668eaa94a992250d7670dfbc62a45197c

2 years agoupstream: regression test for override of subsystem in match blocks
djm@openbsd.org [Wed, 6 Sep 2023 23:36:09 +0000 (23:36 +0000)] 
upstream: regression test for override of subsystem in match blocks

OpenBSD-Regress-ID: 5f8135da3bfda71067084c048d717b0e8793e87c

2 years agoupstream: allow override of Sybsystem directives in sshd Match
djm@openbsd.org [Wed, 6 Sep 2023 23:35:35 +0000 (23:35 +0000)] 
upstream: allow override of Sybsystem directives in sshd Match

blocks

OpenBSD-Commit-ID: 3911d18a826a2d2fe7e4519075cf3e57af439722

2 years agoupstream: allocate the subsystems array as necessary and remove the
djm@openbsd.org [Wed, 6 Sep 2023 23:26:37 +0000 (23:26 +0000)] 
upstream: allocate the subsystems array as necessary and remove the

fixed limit of subsystems. Saves a few kb of memory in the server and makes
it more like the other options.

OpenBSD-Commit-ID: e683dfca6bdcbc3cc339bb6c6517c0c4736a547f