]> git.ipfire.org Git - thirdparty/openssh-portable.git/log
thirdparty/openssh-portable.git
8 days agodepend master anongit/master
Damien Miller [Thu, 2 Apr 2026 07:56:48 +0000 (18:56 +1100)] 
depend

8 days agoUpdate versions in RPM spec files
Damien Miller [Thu, 2 Apr 2026 07:55:50 +0000 (18:55 +1100)] 
Update versions in RPM spec files

8 days agoupstream: adapt to username validity check change
djm@openbsd.org [Thu, 2 Apr 2026 07:52:15 +0000 (07:52 +0000)] 
upstream: adapt to username validity check change

OpenBSD-Regress-ID: d22c66ca60f0d934a75e6ca752c4c11b9f4a5324

8 days agoupstream: openssh-10.3
djm@openbsd.org [Thu, 2 Apr 2026 07:51:12 +0000 (07:51 +0000)] 
upstream: openssh-10.3

OpenBSD-Commit-ID: 05e22de74e090e5a174998fa5799317d70ad19c4

8 days agoupstream: move username validity check for usernames specified on
djm@openbsd.org [Thu, 2 Apr 2026 07:50:55 +0000 (07:50 +0000)] 
upstream: move username validity check for usernames specified on

the commandline to earlier in main(), specifically before some contexts where
a username with shell characters might be expanded by a %u directive in
ssh_config.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

We continue to recommend against using untrusted input on
the SSH commandline. Mitigations like this are not 100%
guarantees of safety because we can't control every
combination of user shell and configuration where they are
used.

Reported by Florian Kohnhäuser

OpenBSD-Commit-ID: 25ef72223f5ccf1c38d307ae77c23c03f59acc55

8 days agoupstream: correctly match ECDSA signature algorithms against
djm@openbsd.org [Thu, 2 Apr 2026 07:48:13 +0000 (07:48 +0000)] 
upstream: correctly match ECDSA signature algorithms against

algorithm allowlists: HostKeyAlgorithms, PubkeyAcceptedAlgorithms and
HostbasedAcceptedAlgorithms.

Previously, if any ECDSA type (say "ecdsa-sha2-nistp521") was
present in one of these lists, then all ECDSA algorithms would
be permitted.

Reported by Christos Papakonstantinou of Cantina and Spearbit.

OpenBSD-Commit-ID: c790e2687c35989ae34a00e709be935c55b16a86

8 days agoupstream: when downloading files as root in legacy (-O) mode and
djm@openbsd.org [Thu, 2 Apr 2026 07:42:16 +0000 (07:42 +0000)] 
upstream: when downloading files as root in legacy (-O) mode and

without the -p (preserve modes) flag set, clear setuid/setgid bits from
downloaded files as one might expect.

AFAIK this bug dates back to the original Berkeley rcp program.

Reported by Christos Papakonstantinou of Cantina and Spearbit.

OpenBSD-Commit-ID: 49e902fca8dd933a92a9b547ab31f63e86729fa1

8 days agoupstream: add missing askpass check when using
djm@openbsd.org [Thu, 2 Apr 2026 07:39:57 +0000 (07:39 +0000)] 
upstream: add missing askpass check when using

ControlMaster=ask/autoask and "ssh -O proxy ..."; reported by Michalis
Vasileiadis

OpenBSD-Commit-ID: 8dd7b9b96534e9a8726916b96d36bed466d3836a

8 days agoupstream: Fix possible sshd crash when sshd_config set MaxStartups
djm@openbsd.org [Thu, 2 Apr 2026 07:38:14 +0000 (07:38 +0000)] 
upstream: Fix possible sshd crash when sshd_config set MaxStartups

to a value <10 using the single-argument form of MaxStartups (e.g.
MaxStartups=3). This doesn't affect the three-argument form of the directive
(e.g. MaxStartups 3:20:5).

Patch from Peter Kaestle via bz3941

OpenBSD-Commit-ID: 1ad093cae69f55ebfdea1ab24318aefd593d63b8

8 days agoproperly bail out when PAM changes username
Damien Miller [Thu, 2 Apr 2026 07:32:00 +0000 (18:32 +1100)] 
properly bail out when PAM changes username

OpenSSH doesn't support PAM changing its conception of the
username via a module calling pam_set_item(h, PAM_USER, ...).
We were supposed to bail out here, but I messed up while "fixing"
this last time and dropped a return statement.

Reported by Mike Damm

9 days agoavoid k suffix in dd count operand in sftp-resume test github-selfhosted/master github/master
Michael Forney [Wed, 1 Apr 2026 01:09:00 +0000 (12:09 +1100)] 
avoid k suffix in dd count operand in sftp-resume test

Not all dd implementations support this. POSIX only specifies
suffixes for block size operands.

Instead, just use 1024k to avoid the special case. This also removes
an incorrect redirection operator that appeared in the 1m case.

10 days agoadd missing <stdio.h> include to unit tests for printf
Michael Forney [Tue, 31 Mar 2026 01:54:22 +0000 (12:54 +1100)] 
add missing <stdio.h> include to unit tests for printf

This fixes the build with --without-openssl on musl. glibc worked
previously because it got stdio.h implicitly through resolv.h.

11 days agoAdd proxyjump.sh omitted from previous commit.
Darren Tucker [Mon, 30 Mar 2026 10:58:44 +0000 (21:58 +1100)] 
Add proxyjump.sh omitted from previous commit.

11 days agoupstream: add a regression test for ProxyJump/-J; ok dtucker
djm@openbsd.org [Mon, 30 Mar 2026 07:19:02 +0000 (07:19 +0000)] 
upstream: add a regression test for ProxyJump/-J; ok dtucker

OpenBSD-Regress-ID: 400dc1b5fb7f2437d0dfbd2eb9a3583dafb412b3

11 days agoupstream: Use ~/.shosts for Hostbased test.
dtucker@openbsd.org [Tue, 24 Mar 2026 12:31:35 +0000 (12:31 +0000)] 
upstream: Use ~/.shosts for Hostbased test.

OpenBSD-Regress-ID: ab64fd0a86422df1eadacde56c0a2cff5d93425d

11 days agoupstream: Ensure known_hosts file exists when setting up.
dtucker@openbsd.org [Tue, 24 Mar 2026 10:21:14 +0000 (10:21 +0000)] 
upstream: Ensure known_hosts file exists when setting up.

OpenBSD-Regress-ID: 92721cad4c219fe62b7b795a73505c22e56f09e0

11 days agoupstream: Check if host keys exist before adding them, and expand
dtucker@openbsd.org [Mon, 23 Mar 2026 09:53:52 +0000 (09:53 +0000)] 
upstream: Check if host keys exist before adding them, and expand

on the warning about modifying the system config.

OpenBSD-Regress-ID: 68038da909f9c992375b7665dab0331d6af426b7

11 days agoupstream: Add special handling of
dtucker@openbsd.org [Mon, 23 Mar 2026 09:09:36 +0000 (09:09 +0000)] 
upstream: Add special handling of

TEST_SSH_HOSTBASED_AUTH=setupandrun.

This will MODIFY THE CONFIG OF THE SYSTEM IT IS RUNNING ON to enable
hostbased authentication to/from itself and run the hostbased tests.  It
won't undo these changes, so don't do this on a system where this matters.

OpenBSD-Regress-ID: ae5a86db1791a2b8f999b07b5c8cc756d40bf645

11 days agoupstream: apply the same validity rules to usernames and hostnames
djm@openbsd.org [Mon, 30 Mar 2026 07:18:24 +0000 (07:18 +0000)] 
upstream: apply the same validity rules to usernames and hostnames

set for ProxyJump/-J on the commandline as we do for destination user/host
names.

Specifically, they are no longer allowed to contain most characters
that have special meaning for common shells. Special characters are
still allowed in ProxyJump commands that are specified in the config
files.

This _reduces_ the chance that shell characters from a hostile -J
option from ending up in a shell execution context.

Don't pass untrusted stuff to the ssh commandline, it's not intended
to be a security boundary. We try to make it safe where we can, but
we can't make guarantees, because we can't know the parsing rules
and special characters for all the shells in the world, nor can we
know what the user does with this data in their ssh_config wrt
percent expansion, LocalCommand, match exec, etc.

While I'm in there, make ProxyJump and ProxyCommand first-match-wins
between each other.

reported by rabbit; ok dtucker@

OpenBSD-Commit-ID: f05ad8a1eb5f6735f9a935a71a90580226759263

11 days agoupstream: switch from int to long long for bandwidth calculations;
djm@openbsd.org [Sun, 29 Mar 2026 01:08:13 +0000 (01:08 +0000)] 
upstream: switch from int to long long for bandwidth calculations;

fixes rate display when rate > 2GB/s; based on patch from Cyril Servant
feedback/ok deraadt@

OpenBSD-Commit-ID: 071eb48c4cba598d70ea3854bef7c49ddfabf8d3

12 days agodepend
Damien Miller [Sun, 29 Mar 2026 05:43:59 +0000 (16:43 +1100)] 
depend

12 days agouse nonnull attribute when available
Damien Miller [Sun, 29 Mar 2026 05:42:33 +0000 (16:42 +1100)] 
use nonnull attribute when available

Set this attribute on a few string to avoid compiler warnings from
-Wunterminated-string-initialization warnings in recent gcc.

12 days agofix state confusion between PAM and privsep code
Damien Miller [Sun, 29 Mar 2026 05:24:59 +0000 (16:24 +1100)] 
fix state confusion between PAM and privsep code

Commits b9a6dd4d6 and df2b28163 introduced a potential desynchronisation
between the PAM code and the sshd-session monitor that could result in
authentication bypass if the unprivileged sshd-auth process had been
compromised.

Reported by Ben Edelman of NIST. Only git HEAD is affected, these
changes have not yet been included in an OpenSSH release.

13 days agoopenbsd-compat: reword EAI_NONAME error string
Laurent Chardon [Sat, 28 Mar 2026 08:22:54 +0000 (04:22 -0400)] 
openbsd-compat: reword EAI_NONAME error string

Reword the EAI_NONAME message in fake-rfc2553.c to make it
clearer and grammatically correct.

While there, remove a couple of stray periods from other error
strings to keep the messages consistent.

No functional change.

13 days agoseccomp sandbox: allow riscv_hwprobe syscall if present
Icenowy Zheng [Sun, 22 Mar 2026 07:13:31 +0000 (15:13 +0800)] 
seccomp sandbox: allow riscv_hwprobe syscall if present

The development branch of zlib-ng now contains code for utilizing
riscv_hwprobe syscall to retrieve availability information for several
RISC-V extensions (and accelerate deflate algorithm with them).

As the seccomp sandbox of OpenSSH will raise SIGSYS for filtered out
syscalls, this will abruptly terminate the process when the
riscv_hwprobe syscall is tried.

Put it into the allowlist to prevent process termination. As all
syscalls here are guarded by #ifdef's, the same will be done for
riscv_hwprobe, and thus on non-RISC-V builds nothing will happen.

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
13 days agoupstream: ensure c->local_window doesn't underflow during updates;
djm@openbsd.org [Sat, 28 Mar 2026 05:16:18 +0000 (05:16 +0000)] 
upstream: ensure c->local_window doesn't underflow during updates;

similar to checks performed elsewhere. From Renaud Allard

OpenBSD-Commit-ID: 4827c10807936e9ab9af2cf1c7379e1f56dbdeac

13 days agoupstream: fix base16 parsing; currently unused. From Renaud Allard
djm@openbsd.org [Sat, 28 Mar 2026 05:10:25 +0000 (05:10 +0000)] 
upstream: fix base16 parsing; currently unused. From Renaud Allard

OpenBSD-Commit-ID: 3f6e5d4c6a2550d5a7e3c33bcd895b7f8e42196b

13 days agoupstream: mention that RevokedKeys is read by the server at each
djm@openbsd.org [Sat, 28 Mar 2026 05:07:12 +0000 (05:07 +0000)] 
upstream: mention that RevokedKeys is read by the server at each

authentication time and should only ever be replaced atomically.

OpenBSD-Commit-ID: eeedf5a10331ac4e39fbd2fc41e4a11c38b2ef9b

13 days agoupstream: fix potential hang if /etc/moduli doesn't contain the
djm@openbsd.org [Sat, 28 Mar 2026 05:06:16 +0000 (05:06 +0000)] 
upstream: fix potential hang if /etc/moduli doesn't contain the

requested DH group values; from 77c9ca, ok dtucker@, markus@

OpenBSD-Commit-ID: 1bf402cdb8876237c280ac77fbf7fafd2c16c5ae

2 weeks agoAdd a VM-based test for OpenBSD-current.
Darren Tucker [Thu, 19 Mar 2026 06:57:26 +0000 (17:57 +1100)] 
Add a VM-based test for OpenBSD-current.

2 weeks agoAdd a Valgrind test of the PAM config.
Darren Tucker [Mon, 23 Mar 2026 06:50:40 +0000 (17:50 +1100)] 
Add a Valgrind test of the PAM config.

2 weeks agoUpstream tests don't use the config file.
Darren Tucker [Thu, 19 Mar 2026 06:52:54 +0000 (17:52 +1100)] 
Upstream tests don't use the config file.

2 weeks agoupstream: clarify that Authorized(Keys|Principals)(File|Command)
djm@openbsd.org [Mon, 23 Mar 2026 01:33:46 +0000 (01:33 +0000)] 
upstream: clarify that Authorized(Keys|Principals)(File|Command)

are only consulted for valid users.

clarify that TOKENS are expanded without sanitisation or escaping
and that it's the user's reponsibility to ensure their usage is
safe.

prompted by bz3936; feedback/ok deraadt@

OpenBSD-Commit-ID: cd58abad1137346ba2dee55fa9ebb975f5fa7a06

2 weeks agoupstream: repair ssh-keysign after pledge changes; spotted/tested
djm@openbsd.org [Thu, 19 Mar 2026 02:36:28 +0000 (02:36 +0000)] 
upstream: repair ssh-keysign after pledge changes; spotted/tested

by naddy@ ok deraadt@

OpenBSD-Commit-ID: fccc6c7994c8f45c4417efe490d23154d9caaa6d

4 weeks agoupstream: Check return values of fcntl(... O_CLOEXEC)
dtucker@openbsd.org [Wed, 11 Mar 2026 09:10:59 +0000 (09:10 +0000)] 
upstream: Check return values of fcntl(... O_CLOEXEC)

calls by reusing the macro in monitor.c.  Flagged by Coverity CID
901297 in ssh-sk-client.c, a few other instances added for good measure.
begrudging ok deraadt@

OpenBSD-Commit-ID: b9de92e17ac0b04348770e5a25cb15a02b416926

4 weeks agoupstream: Fix potential 1-byte array overrun
dtucker@openbsd.org [Wed, 11 Mar 2026 09:04:17 +0000 (09:04 +0000)] 
upstream: Fix potential 1-byte array overrun

in the case where read() returns exactly 100 bytes.  Flagged by Coverity
CID 901296, ok djm@

OpenBSD-Commit-ID: 66a96b08166e63dcbeed00297c33f09c4f22c1f7

4 weeks agoupstream: whitespace
djm@openbsd.org [Tue, 10 Mar 2026 07:27:14 +0000 (07:27 +0000)] 
upstream: whitespace

OpenBSD-Commit-ID: b16d2b4a96406538fa181053926cba44abca7f29

4 weeks agoupstream: when unveils error our, use correct variable
deraadt@openbsd.org [Tue, 10 Mar 2026 06:35:29 +0000 (06:35 +0000)] 
upstream: when unveils error our, use correct variable

OpenBSD-Commit-ID: 6b496c10965e70413a9916a8823839c553c6b2c4

4 weeks agoupstream: When execve() failure is indicated on the pipe, replicate
deraadt@openbsd.org [Tue, 10 Mar 2026 03:45:01 +0000 (03:45 +0000)] 
upstream: When execve() failure is indicated on the pipe, replicate

the same error conditions as the previous access() check did ok djm

OpenBSD-Commit-ID: 875a77dddf0809a3501de2b913cb3bfd4b64f3f7

4 weeks agoupstream: unveil ssh-pkcs11-helper too; fixes breakage spotted by
djm@openbsd.org [Tue, 10 Mar 2026 03:40:26 +0000 (03:40 +0000)] 
upstream: unveil ssh-pkcs11-helper too; fixes breakage spotted by

anton@

If SK/P11/askpass is overridden by environment, only unveil the requested
path and not both the requested one and the default.

feedback/ok deraadt@

OpenBSD-Commit-ID: 84356c6a44f35e66fe73fc1524a7c8e908521eb2

4 weeks agoupstream: With it's own daemonization / fd cleaning code, ssh-agent
deraadt@openbsd.org [Sat, 7 Mar 2026 18:35:43 +0000 (18:35 +0000)] 
upstream: With it's own daemonization / fd cleaning code, ssh-agent

opens /dev/null O_RDWR after a pledge without "wpath".  This is allowed in
current pledge because "/dev/null" is implicitly allowed to be opened even
with the most restrictive pledges or unveils.  This is a design decision in
pledge made at the very beginning, to satisfy libc requirements.  We've
finally had enough experience and know how to fix that in the near-future,
but need to review and fix all code which opens these implicit paths. The fix
is to add "wpath", so that "/dev/null" can be opened O_RDWR. But that is
uncomfortable, so we add unveil() allowing "/" with "r", 4 unveil "x" for the
potential askpass and helpers to be execve'd, and "/dev/null" with "wr".  As
a result filesystem access is substantially more restricted than before, and
ssh-agent is ready for the future pledge change. ok djm dtucker

OpenBSD-Commit-ID: f223b11d2db3c0b14e53c1de59966dd5f372a977

4 weeks agoupstream: Stop doing access() before execve(). It is a TOCTOU, but
deraadt@openbsd.org [Sat, 7 Mar 2026 18:27:52 +0000 (18:27 +0000)] 
upstream: Stop doing access() before execve(). It is a TOCTOU, but

also it forces use of unveil "rx" instead of "x". This is done by using a
pipe() through the fork+execve attempt to expose execve failure and create
the same error return as the access() used to do. ok djm dtucker

OpenBSD-Commit-ID: f9ee96e20352f35dc6f39127e0cc6b804700200a

4 weeks agostubs for OpenBSD unveil(2)
Damien Miller [Tue, 10 Mar 2026 03:43:30 +0000 (14:43 +1100)] 
stubs for OpenBSD unveil(2)

5 weeks agoupstream: Move OpenBSD CVS ID marker to top of file to avoid conflicts
dtucker@openbsd.org [Fri, 6 Mar 2026 07:06:45 +0000 (07:06 +0000)] 
upstream: Move OpenBSD CVS ID marker to top of file to avoid conflicts

when syncing changes to portable.

OpenBSD-Regress-ID: 6b7a9ef354e13e26ed474e98d04ec1d74e56e54e

5 weeks agoupstream: Replace u_intXX_t types with the equivalent C99 uintXX_t
dtucker@openbsd.org [Fri, 6 Mar 2026 06:57:33 +0000 (06:57 +0000)] 
upstream: Replace u_intXX_t types with the equivalent C99 uintXX_t

types to match similar change to the main ssh code.

OpenBSD-Regress-ID: a62b6499f784f75a4fcb865aebb83f5936917a91

5 weeks agoupstream: ssh-agent supports a "query" extension that allows a
djm@openbsd.org [Thu, 5 Mar 2026 05:44:15 +0000 (05:44 +0000)] 
upstream: ssh-agent supports a "query" extension that allows a

client to request a list of extensions it support. This makes this capability
available to ssh-add via the -Q flag.

ok markus@

OpenBSD-Commit-ID: f211630568ff1a7d6bb4983a94f05ddac1c2d4eb

5 weeks agoupstream: With IANA codepoints for draft-ietf-sshm-ssh-agent now
djm@openbsd.org [Thu, 5 Mar 2026 05:40:35 +0000 (05:40 +0000)] 
upstream: With IANA codepoints for draft-ietf-sshm-ssh-agent now

allocated, it's safe to start using the standard names for requesting agent
forwarding over the @openssh.com extension names we've used to date.

Support for the standard names is advertised via EXT_INFO. When the
client sees such support it will use the new names preferentially,
but the existing names remain supported unconditionally.

ok markus@

OpenBSD-Commit-ID: 1ab4a0b4de01e81a432875c2b7e5f7357e231af3

5 weeks agoupstream: correctness wrt draft-ietf-sshm-ssh-agent:
djm@openbsd.org [Thu, 5 Mar 2026 05:35:44 +0000 (05:35 +0000)] 
upstream: correctness wrt draft-ietf-sshm-ssh-agent:

extension requests should indicate failure using
SSH_AGENT_EXTENSION_FAILURE rather than the generic SSH_AGENT_FAILURE
error code. This allows the client to discern between "the request
failed" and "the agent doesn't support this extension".

ok markus@

OpenBSD-Commit-ID: d15d89f210cc973271d68147f09550163df731c9

5 weeks agoupstream: Replace all remaining instances of u_intXX_t types with the
dtucker@openbsd.org [Tue, 3 Mar 2026 09:57:25 +0000 (09:57 +0000)] 
upstream: Replace all remaining instances of u_intXX_t types with the

C99 equivalent uintXX_t types.  ok djm@

OpenBSD-Commit-ID: d9b81151266adb129574ce268af49f14ac23e65b

5 weeks agoupstream: Move banner exchange to sshd-auth process
djm@openbsd.org [Mon, 2 Mar 2026 02:40:15 +0000 (02:40 +0000)] 
upstream: Move banner exchange to sshd-auth process

Previously, exchange of the initial SSH- banners was performed
by the privileged sshd-session monitor. This moves it to the
unprivileged sshd-auth subprocess, removing ~200 LoC from the
monitor's privileged attack surface.

The monitor gains a new "setcompat" RPC to allow sshd-auth to
inform it of bug compat flags picked up from the client's banner.

feedback dtucker@, ok markus@ deraadt@

OpenBSD-Commit-ID: d767eb1183630d754d521d9f0d84a6c72fbe7fc8

5 weeks agoTry -lstdc++ for libcrypto before giving up.
Darren Tucker [Sat, 28 Feb 2026 22:46:39 +0000 (09:46 +1100)] 
Try -lstdc++ for libcrypto before giving up.

BoringSSL recently added destructors to libcrypto, which requires
linking against libstdc++, so when checking for a working libcrypto if
at first the link fails, try again with -lstdc++ before giving up.

5 weeks agoRemove BoringSSL rpath as it's statically linked.
Darren Tucker [Sat, 28 Feb 2026 22:41:39 +0000 (09:41 +1100)] 
Remove BoringSSL rpath as it's statically linked.

5 weeks agoupstream: Use fmprintf instead of logit for challenge-response name and
dtucker@openbsd.org [Tue, 24 Feb 2026 01:50:51 +0000 (01:50 +0000)] 
upstream: Use fmprintf instead of logit for challenge-response name and

info to preserve UTF-8 characters where appropriate.  Prompted by github
PR#452, with & ok djm@.

OpenBSD-Commit-ID: e6361242329ec6925571478f60f4739726aad308

6 weeks agoAdd AWS-LC and BoringSSL as potential libcryptos.
Darren Tucker [Tue, 24 Feb 2026 16:28:11 +0000 (11:28 -0500)] 
Add AWS-LC and BoringSSL as potential libcryptos.

6 weeks agoAdd self-hosted status to main README now it's public.
Darren Tucker [Tue, 24 Feb 2026 16:16:11 +0000 (11:16 -0500)] 
Add self-hosted status to main README now it's public.

6 weeks agoRemove anchor to specific release notes version.
Darren Tucker [Tue, 24 Feb 2026 16:10:16 +0000 (11:10 -0500)] 
Remove anchor to specific release notes version.

6 weeks agoRemove potentially leftover include compat shims.
Darren Tucker [Tue, 24 Feb 2026 02:34:48 +0000 (21:34 -0500)] 
Remove potentially leftover include compat shims.

If we don't need a specific shim, ensure it does not exist.  Prevents
confusion if configurations change or the directory is reused across
different platforms.

6 weeks agoCheck regress passwd is set before enabling kbdint.
Darren Tucker [Tue, 24 Feb 2026 01:54:55 +0000 (20:54 -0500)] 
Check regress passwd is set before enabling kbdint.

6 weeks agoupstream: Remove leftover debugging.
dtucker@openbsd.org [Tue, 24 Feb 2026 00:39:59 +0000 (00:39 +0000)] 
upstream: Remove leftover debugging.

OpenBSD-Regress-ID: e778d76b21696a14db80f31b9e79601f2d7a9abf

6 weeks agoActivate kbdint test on PAM configs.
Darren Tucker [Mon, 23 Feb 2026 20:22:10 +0000 (15:22 -0500)] 
Activate kbdint test on PAM configs.

7 weeks agoInstall libaudit-dev for --with-audit=linux test.
Darren Tucker [Wed, 18 Feb 2026 17:39:31 +0000 (12:39 -0500)] 
Install libaudit-dev for --with-audit=linux test.

7 weeks agoEnable BSM audit test on FreeBSD VMs.
Darren Tucker [Wed, 18 Feb 2026 16:22:37 +0000 (11:22 -0500)] 
Enable BSM audit test on FreeBSD VMs.

7 weeks agoMove BSM audit test to selfhosted runner.
Darren Tucker [Wed, 18 Feb 2026 15:59:02 +0000 (10:59 -0500)] 
Move BSM audit test to selfhosted runner.

The vmactions VM on Github does not have the required libraries
installed.

7 weeks agoIncrease riscv64 test coverage.
Darren Tucker [Wed, 18 Feb 2026 15:51:09 +0000 (10:51 -0500)] 
Increase riscv64 test coverage.

The machine running the tests has been replaced with a faster one.

7 weeks agoWhitespace fix.
Darren Tucker [Wed, 18 Feb 2026 15:49:35 +0000 (10:49 -0500)] 
Whitespace fix.

7 weeks agoAdd test coverage for all of the --audit= configs.
Darren Tucker [Wed, 18 Feb 2026 14:48:55 +0000 (09:48 -0500)] 
Add test coverage for all of the --audit= configs.

7 weeks agoupstream: same treatment for remote/remote copies (i.e. scp -3):
djm@openbsd.org [Wed, 18 Feb 2026 03:04:12 +0000 (03:04 +0000)] 
upstream: same treatment for remote/remote copies (i.e. scp -3):

adjust permissions on destination directory only if we created it or -p was
requested. bz3925

OpenBSD-Commit-ID: d977006df7b8330e06ceaa319383b347f1aca3ef

7 weeks agoupstream: when uploading a directory using sftp/sftp (e.g. during a
djm@openbsd.org [Wed, 18 Feb 2026 02:59:27 +0000 (02:59 +0000)] 
upstream: when uploading a directory using sftp/sftp (e.g. during a

recursive transfer), don't clobber the remote directory permissions unless
either we created the directory during the transfer or the -p flag was set.
bz3925 ok dtucker@

OpenBSD-Commit-ID: d66f40d01de05c9ec4029fab5413325301039b3a

7 weeks agoupstream: make IPQoS first-match-wins in sshd_config as it's
djm@openbsd.org [Tue, 17 Feb 2026 21:45:07 +0000 (21:45 +0000)] 
upstream: make IPQoS first-match-wins in sshd_config as it's

intended to be bz3924

OpenBSD-Commit-ID: 42753eb8400ab09713c69ace6fa8bfdde133f942

7 weeks agoupstream: remove duplicate includes; ok dtucker@
jsg@openbsd.org [Mon, 16 Feb 2026 23:47:06 +0000 (23:47 +0000)] 
upstream: remove duplicate includes; ok dtucker@

OpenBSD-Commit-ID: 6b9191bc1a0f4320c926d5ccd9f36b09f0f3bcaf

7 weeks agoRestore utf8.h removed earlier as it's needed.
Darren Tucker [Mon, 16 Feb 2026 23:58:04 +0000 (18:58 -0500)] 
Restore utf8.h removed earlier as it's needed.

... for msetlocale prototype.

7 weeks agoRemoved duplicate includes; spotted by jsg@.
Darren Tucker [Mon, 16 Feb 2026 23:32:41 +0000 (18:32 -0500)] 
Removed duplicate includes; spotted by jsg@.

7 weeks agoRemove "draining" of PAM prompts.
Darren Tucker [Sun, 15 Feb 2026 19:16:56 +0000 (14:16 -0500)] 
Remove "draining" of PAM prompts.

With the previous commit, both prompts and info/error error messages are
returned to keyboard-interactive immedately and none are accumulated, so
there will never be any un-drained prompts.  ok djm@

7 weeks agoauth-pam: Immediately report interactive instructions to clients
Marco Trevisan (Treviño) [Tue, 17 Oct 2023 02:27:32 +0000 (04:27 +0200)] 
auth-pam: Immediately report interactive instructions to clients

SSH keyboard-interactive authentication method supports instructions but
sshd didn't show them until an user prompt was requested.

This is quite inconvenient for various PAM modules that need to notify
an user without requiring for their explicit input.

So, properly implement RFC4256 making instructions to be shown to users
when they are requested from PAM.

Closes: https://bugzilla.mindrot.org/show_bug.cgi?id=2876
7 weeks agofix duplicate PAM msgs, missing loginmsg reset
Matthew Heller [Mon, 14 Oct 2024 14:25:41 +0000 (09:25 -0500)] 
fix duplicate PAM msgs, missing loginmsg reset

without this change in mm_answer_pam_account all messages added in
auth-pam.c sshpam_query(...) case PAM_SUCCESS end up sent here, then are
still sitting in the loginmsg buffer and printed a second time in
session.c do_login(...)

7 weeks agoupstream: Reorder headers to match KNF and Portable.
dtucker@openbsd.org [Mon, 16 Feb 2026 00:45:41 +0000 (00:45 +0000)] 
upstream: Reorder headers to match KNF and Portable.

ID sync only.

OpenBSD-Commit-ID: b7f9700d07b532eb3720f7bd722b952e31b1752f

7 weeks agoupstream: Add basic test for keyboard-interactive auth.
dtucker@openbsd.org [Sun, 15 Feb 2026 22:29:30 +0000 (22:29 +0000)] 
upstream: Add basic test for keyboard-interactive auth.

Not enabled by default since it requires some setup on the host.

OpenBSD-Regress-ID: aa8a9608a2ea2e5aaa094c5a5cc453e4797cd902

7 weeks agoupstream: remove unneeded includes; ok dtucker@
jsg@openbsd.org [Sat, 14 Feb 2026 00:18:34 +0000 (00:18 +0000)] 
upstream: remove unneeded includes; ok dtucker@

OpenBSD-Commit-ID: bba6e85492276c30c7a9d27dfd3c4c55fa033335

7 weeks agoRemove obsolete comment referencing auth-chall.c.
Darren Tucker [Sun, 15 Feb 2026 18:31:52 +0000 (13:31 -0500)] 
Remove obsolete comment referencing auth-chall.c.

It was removed in commit 6cb6dcff along with the rest of the SSH1 server
support.

7 weeks agoauth-pam: Add an enum to define the PAM done status
Marco Trevisan (Treviño) [Mon, 16 Oct 2023 19:15:45 +0000 (21:15 +0200)] 
auth-pam: Add an enum to define the PAM done status

Makes things more readable and easier to extend

7 weeks agoauth-pam: Add debugging information when we receive PAM messages
Marco Trevisan (Treviño) [Tue, 17 Oct 2023 02:35:17 +0000 (04:35 +0200)] 
auth-pam: Add debugging information when we receive PAM messages

7 weeks agoRemove DragonFlyBSD workaround for sys/mount.h.
Darren Tucker [Fri, 13 Feb 2026 20:34:44 +0000 (15:34 -0500)] 
Remove DragonFlyBSD workaround for sys/mount.h.

... since we're not not including it at all any more.

7 weeks agoupstream: Replace <sys/mount.h> with <limits.h>
dtucker@openbsd.org [Fri, 13 Feb 2026 19:06:18 +0000 (19:06 +0000)] 
upstream: Replace <sys/mount.h> with <limits.h>

The former is a portability hassle, but it turns out the only thing we
need from it is PATH_MAX which we can get directly from limits.h.

OpenBSD-Commit-ID: ccfbbd678bef3a3930ae89da456645c3ee5f83c0

7 weeks agoupstream: remove unneeded forward struct declaration ok djm@
jsg@openbsd.org [Fri, 13 Feb 2026 01:04:47 +0000 (01:04 +0000)] 
upstream: remove unneeded forward struct declaration ok djm@

OpenBSD-Commit-ID: a0c97e919667394bef8dbf31df72af3ba07542e9

8 weeks agoupstream: very basic testing of multiple files in RevokedKeys and
djm@openbsd.org [Wed, 11 Feb 2026 22:58:23 +0000 (22:58 +0000)] 
upstream: very basic testing of multiple files in RevokedKeys and

RevokedHostkeys

OpenBSD-Regress-ID: 6cee76bcc4bd6840bc8d39dd0d32d724e1427aa7

8 weeks agoupstream: support multiple files in a ssh_config RevokedHostKeys
djm@openbsd.org [Wed, 11 Feb 2026 22:57:55 +0000 (22:57 +0000)] 
upstream: support multiple files in a ssh_config RevokedHostKeys

directive bz3918; ok dtucker

OpenBSD-Commit-ID: 0ad2eacf836f912f347846ab84760799033dd348

8 weeks agoupstream: support multiple files in a sshd_config RevokedKeys
djm@openbsd.org [Wed, 11 Feb 2026 22:57:16 +0000 (22:57 +0000)] 
upstream: support multiple files in a sshd_config RevokedKeys

directive bz3918; ok dtucker

OpenBSD-Commit-ID: 9fc58c4e676f8e9ed2e3a0da666242a17b8a55b2

8 weeks agoupstream: Add includes used in Portable to reduce diffs.
dtucker@openbsd.org [Wed, 11 Feb 2026 17:05:32 +0000 (17:05 +0000)] 
upstream: Add includes used in Portable to reduce diffs.

OpenBSD-Commit-ID: 186c60cf2da0ddb075d5bc4879e87bbd8779b7e4

8 weeks agoupstream: Remove unused sys/queue.h include.
dtucker@openbsd.org [Wed, 11 Feb 2026 17:03:17 +0000 (17:03 +0000)] 
upstream: Remove unused sys/queue.h include.

OpenBSD-Commit-ID: 564f75672e27f1006f280614934eb304abe69167

8 weeks agoupstream: Reorder includes and defines to match both KNF and
dtucker@openbsd.org [Wed, 11 Feb 2026 17:01:34 +0000 (17:01 +0000)] 
upstream: Reorder includes and defines to match both KNF and

Portable.

OpenBSD-Commit-ID: f3f179c095f8e4787ded5f450e2842881f6b8ab2

8 weeks agoFactor out RNG reseeding in to a single function.
Darren Tucker [Wed, 11 Feb 2026 22:36:42 +0000 (17:36 -0500)] 
Factor out RNG reseeding in to a single function.

sshd and sshd-session both reseed the RNG after a fork.  Move the
existing reseed_prngs() function into entropy.c and use for both.
Clean up entropy.h too.  ok djm@

8 weeks agoRemove do_pam_chauthtok since it's no longer used.
Darren Tucker [Wed, 11 Feb 2026 21:47:27 +0000 (16:47 -0500)] 
Remove do_pam_chauthtok since it's no longer used.

8 weeks agoupstream: Pass actual size of the buffer to hostname() instead of a
dtucker@openbsd.org [Wed, 11 Feb 2026 16:57:38 +0000 (16:57 +0000)] 
upstream: Pass actual size of the buffer to hostname() instead of a

define that's probably the same.  ok millert@ djm@

OpenBSD-Commit-ID: 7c97b22439100b4193404ccfa1e5f539c5a8d039

8 weeks agoupstream: De-underscore __inline__ to match -portable
dtucker@openbsd.org [Mon, 9 Feb 2026 22:15:45 +0000 (22:15 +0000)] 
upstream: De-underscore __inline__ to match -portable

(and every other use of it in ssh).  ID sync only.

OpenBSD-Commit-ID: 83c913d5e2345635bc5434167ed67cec5409d494

8 weeks agoupstream: Remove references to skey auth which is long gone.
dtucker@openbsd.org [Mon, 9 Feb 2026 22:12:48 +0000 (22:12 +0000)] 
upstream: Remove references to skey auth which is long gone.

ID sync only.

OpenBSD-Commit-ID: 0c2340566c399f7f74fe4c5366394974cd6fd122

8 weeks agoupstream: Remove unused OpenSSL includes,
dtucker@openbsd.org [Mon, 9 Feb 2026 22:11:39 +0000 (22:11 +0000)] 
upstream: Remove unused OpenSSL includes,

that are no longer used, even when building with OPENSSL=yes.

OpenBSD-Commit-ID: e97e3e551ade9aee994b80a1d5851be6f32288e3

8 weeks agoupstream: Use https for URLs.
dtucker@openbsd.org [Mon, 9 Feb 2026 22:09:48 +0000 (22:09 +0000)] 
upstream: Use https for URLs.

ID sync only.

OpenBSD-Commit-ID: 85b2919e95e6d2bfdeddf5e3b0709fb5b6b4c438

8 weeks agoupstream: Remove unused OpenSSL includes,
dtucker@openbsd.org [Mon, 9 Feb 2026 21:38:14 +0000 (21:38 +0000)] 
upstream: Remove unused OpenSSL includes,

which are no longer used even when building with OPENSSL=yes.

OpenBSD-Commit-ID: 31adb21bf3f8f5c13cde59229f1b85c20f19a858

8 weeks agoupstream: Remove now-unused SKEYQUERY enums from monitor_reqtype.
dtucker@openbsd.org [Mon, 9 Feb 2026 21:23:35 +0000 (21:23 +0000)] 
upstream: Remove now-unused SKEYQUERY enums from monitor_reqtype.

ID sync only.

OpenBSD-Commit-ID: dab93b58e69c754887507e5557a81a0b5b84d734

8 weeks agoupstream: Remove now-unused openssl includes since sshd.c no longer
dtucker@openbsd.org [Mon, 9 Feb 2026 21:21:39 +0000 (21:21 +0000)] 
upstream: Remove now-unused openssl includes since sshd.c no longer

needs them, even when built with OpenSSL.

OpenBSD-Commit-ID: ceaa0394db1520e92d75c37eea58130d44ba93c9