]> git.ipfire.org Git - thirdparty/openssh-portable.git/log
thirdparty/openssh-portable.git
61 min agoupstream: sk-usbhid: skip unsupported key types in read_rks() master anongit/master
djm@openbsd.org [Mon, 1 Jun 2026 05:49:20 +0000 (05:49 +0000)] 
upstream: sk-usbhid: skip unsupported key types in read_rks()

When enumerating resident keys, encountering a credential with an
unsupported COSE key type (not ES256 or EdDSA) caused the entire
enumeration to abort via goto out, discarding all valid keys.

Move the key type check before the per-credential allocation so
unsupported types can be skipped with continue instead. This
preserves all valid resident keys on the token.

Patch from Akhilesh Arora via GHPR657

OpenBSD-Commit-ID: b344a44ff97d26faf099b8e0cad72ad1e793ac0f

70 min agoupstream: Actually set pollfd.events correctly for socket type github-selfhosted/master github/master
djm@openbsd.org [Mon, 1 Jun 2026 05:40:13 +0000 (05:40 +0000)] 
upstream: Actually set pollfd.events correctly for socket type

channels; previously we were throwing away the events we computed if the
channel had a c->sock distinct from it's other read and write fds.
Fortunately, it appears that this case happens rarely, if ever.

Reported by Darafei Praliaskouski via GHPR660

OpenBSD-Commit-ID: d3f483b7919946c5649e8c697d5b927af35aac4b

17 hours agoupstream: handle compiled-time unsupported options in servconf.h
djm@openbsd.org [Sun, 31 May 2026 13:12:07 +0000 (13:12 +0000)] 
upstream: handle compiled-time unsupported options in servconf.h

better; leave a zero placeholder variable so we don't have #ifdef around
their absence elsehwere in the tree

OpenBSD-Commit-ID: 9601de2c67042aacb0ea12ca424e67c092fa7801

18 hours agodepend
Damien Miller [Sun, 31 May 2026 12:03:56 +0000 (22:03 +1000)] 
depend

18 hours agoupstream: unit test for new servconf.[ch] code, including a basic
djm@openbsd.org [Sun, 31 May 2026 11:39:44 +0000 (11:39 +0000)] 
upstream: unit test for new servconf.[ch] code, including a basic

fuzz test for deserialisation

OpenBSD-Regress-ID: f182c21485dc37a41a125f067b59bee48adbfe6c

18 hours agoupstream: the new configuration dump code emits configuration
djm@openbsd.org [Sun, 31 May 2026 11:31:57 +0000 (11:31 +0000)] 
upstream: the new configuration dump code emits configuration

directives with capitalisation (previously they were all lowercase), so make
the tests that consume them insensitive to case

OpenBSD-Regress-ID: 9a81d8501b8b8fc1c1a0d268d4cc91cbb19668f5

18 hours agoupstream: flesh out match_pattern() tests, including a new
djm@openbsd.org [Sun, 31 May 2026 04:20:58 +0000 (04:20 +0000)] 
upstream: flesh out match_pattern() tests, including a new

comparison test of the new NFA-based implementation against the original one
for all possible combinations of short inputs and patterns constructed from a
small dictionary of possibilities.

OpenBSD-Regress-ID: a18e86c95afb6243ac270468f5dd0ab4a78c8074

18 hours agoupstream: big refactor of sshd config management code.
djm@openbsd.org [Sun, 31 May 2026 11:30:50 +0000 (11:30 +0000)] 
upstream: big refactor of sshd config management code.

This generates much of the initialisation, defaults and keyword table
code from a set of macros rather than hand coding them. These same
macros are also used to generate serialisation and deserialisation
code.

The macros are admittedly ugly but have the advantage of forcing a
good degree of consistency across places that need to stay in sync
with each other.

The new de/serialisation code is used to pass configurations across
the various sshd-* process boundaries. This removes the need to pass
around raw text configurations that need to be re-parsed as well as
eliminating some raw pointer leakage across the processes where
structures were previously clumsily serialised.

feedback/ok markus@

OpenBSD-Commit-ID: 9a5109a480637e08c290eeb82aa8ef2ca7e848ce

24 hours agoupstream: avoid strlen(NULL) crash if an X11 channel was created before
djm@openbsd.org [Sun, 31 May 2026 06:14:42 +0000 (06:14 +0000)] 
upstream: avoid strlen(NULL) crash if an X11 channel was created before

the x11-req SSH_MSG_CHANNEL_REQUEST was sent. Reported by Ben Perry via
GHPR679

OpenBSD-Commit-ID: 31db0da9ab6c73e6bbf4021ffd53dc3ce5c65f23

24 hours agoupstream: DNS0x20[1] can randomise the case of domain names returned by
djm@openbsd.org [Sun, 31 May 2026 05:55:21 +0000 (05:55 +0000)] 
upstream: DNS0x20[1] can randomise the case of domain names returned by

lookup to force some more uniqueness in queries to reduce the likelihood of
spoofing attacks succeeding.

Normally this should be hidden from the user by the resolver, but
in some cases it can leak through. When it does, it can mess up
ssh's CanonicalizePermittedCNAMEs.

Fix this by forcing the name we received from the system resolver to
lowercase.

bz3966, report and fix by Martin D Kealey

[1] https://datatracker.ietf.org/doc/html/draft-vixie-dnsext-dns0x20-00

OpenBSD-Commit-ID: e0b300d3b3af289e053d928380af71949f95bfb0

25 hours agoupstream: disallow use of the copy-data extension to read and write
djm@openbsd.org [Sun, 31 May 2026 04:59:51 +0000 (04:59 +0000)] 
upstream: disallow use of the copy-data extension to read and write

to the same inode simultaneously; reported by Qifan Zhang of Palo Alto
Networks; ok markus@

OpenBSD-Commit-ID: 94ceb85146d92dbc1289c55d308498d5f56f274a

25 hours agoupstream: Fix two separate one-byte out-of-cound reads
djm@openbsd.org [Sun, 31 May 2026 04:51:45 +0000 (04:51 +0000)] 
upstream: Fix two separate one-byte out-of-cound reads

1) if a server sent an empty reply to a SSH2_FXP_REALPATH request
2) if a batch command used the full 2048 byte buffer but ended in a
  literal backslash character

Both reported by Zhenpeng (Leo) Lin from depthfirst

ok markus@

OpenBSD-Commit-ID: d1ccc1f5a6eb109065ce8a552fea8e502381ce59

25 hours agoupstream: DisableForwarding=yes didn't override PermitTunnel=yes
djm@openbsd.org [Sun, 31 May 2026 04:47:29 +0000 (04:47 +0000)] 
upstream: DisableForwarding=yes didn't override PermitTunnel=yes

Reported independently by Huzaifa Sidhpurwala of Redhat and Marko
Jevtic; ok markus@

OpenBSD-Commit-ID: b5c13f0746cf079b21f8deba47407fad49ccbf4c

25 hours agoupstream: make the transport protocol stricter by disconnecting if
djm@openbsd.org [Sun, 31 May 2026 04:44:38 +0000 (04:44 +0000)] 
upstream: make the transport protocol stricter by disconnecting if

the peer sends non-KEX messages during a key re-exchange.

Previously an evil peer could continue sending non-KEX messages
without penalty, causing memory to be wasted up until the
connection terminated or the server/client hit a OOM limit.

reported by Marko Jevtic; ok markus@

OpenBSD-Commit-ID: 8937f0f2096156f5c68ae2dce77956373589d757

25 hours agoupstream: stricter validation of the transport state passed from
djm@openbsd.org [Sun, 31 May 2026 04:37:56 +0000 (04:37 +0000)] 
upstream: stricter validation of the transport state passed from

the unprivileged preauth sshd-auth process to the user-privileged postauth
sshd-session process.

These are harmless unless an attacker had an exploit for sshd-auth
in which case they could be used for post-auth memory DoS or to
crash you own session in a new and exciting way.

Reported by bylee3 and Kayky Vinicius

ok markus

OpenBSD-Commit-ID: 214e256904a4ae4f83d2083096796c9689c1d7b5

25 hours agoupstream: Enforce a maximum size for usernames in agent key use
djm@openbsd.org [Sun, 31 May 2026 04:31:04 +0000 (04:31 +0000)] 
upstream: Enforce a maximum size for usernames in agent key use

constraints

Along with the match_pattern() performance change that was just
committed this avoids a denial-of-service where an agent client could
waste CPU on an agent by sending user constraints with lots of
wildcards.

Reported by Huzaifa Sidhpurwala of Redhat

ok markus

OpenBSD-Commit-ID: 0483817f1a8accf4dbff42b7073ee4d119105d71

25 hours agoupstream: fix client use-after-free on error path if cipher_init()
djm@openbsd.org [Sun, 31 May 2026 04:24:39 +0000 (04:24 +0000)] 
upstream: fix client use-after-free on error path if cipher_init()

fails; reported by Qualys Security Advisory Team, ok markus@

OpenBSD-Commit-ID: a8731da0c462b2b9d11314ba505c26ee0cdada83

25 hours agoupstream: Replace the old recursive match_pattern() with an
djm@openbsd.org [Sun, 31 May 2026 04:19:16 +0000 (04:19 +0000)] 
upstream: Replace the old recursive match_pattern() with an

implementation that uses a NFA for matching. This avoids the exponential
worst- case behaviour for the old implementation.

ok markus@

OpenBSD-Commit-ID: fc6b75a52f4c0acb52b7900658c8d25ff873cbae

41 hours agoMake failure to set SECCOMP or NO_NEW_PRIVS fatal
Damien Miller [Sat, 30 May 2026 13:24:01 +0000 (23:24 +1000)] 
Make failure to set SECCOMP or NO_NEW_PRIVS fatal

If your Linux system lacks support for these then please don't
enable the seccomp sandbox.

Prompted by manfred.kaiser@ssh-mitm.at

41 hours agosandbox-seccomp-filter: remove duplicate SC_ALLOW(__NR_clock_gettime64)
Manfred Kaiser [Sun, 24 May 2026 07:53:42 +0000 (09:53 +0200)] 
sandbox-seccomp-filter: remove duplicate SC_ALLOW(__NR_clock_gettime64)

The syscall is already permitted at line 297 in its own ifdef guard.
No functional change.

41 hours agoupstream: Use the new RELINK feature in bsd.prog.mk to build the
deraadt@openbsd.org [Wed, 27 May 2026 13:57:26 +0000 (13:57 +0000)] 
upstream: Use the new RELINK feature in bsd.prog.mk to build the

relink kits.

OpenBSD-Commit-ID: df5c950444e208b320265fa8a1afd676e2edfa6e

41 hours agoupstream: ssh: use sentinel idiom for timegm(3) and mktime(3)
tb@openbsd.org [Wed, 27 May 2026 13:54:15 +0000 (13:54 +0000)] 
upstream: ssh: use sentinel idiom for timegm(3) and mktime(3)

There is nothing wrong with times before the epoch, even -1, so use the
idiom recently added to the CAVEATS section to figure out whether there
was an error in the timegm() or mktime() calls.

We should sweep the tree for this. If anyone is bored, feel free to beat
me to it...

ok deraadt djm

OpenBSD-Commit-ID: e2b1721966dc782e776db5d6cfb18958534f9d4b

41 hours agoupstream: ssh-agent: add -V to usage()
tb@openbsd.org [Wed, 27 May 2026 03:28:07 +0000 (03:28 +0000)] 
upstream: ssh-agent: add -V to usage()

ok djm

OpenBSD-Commit-ID: ea9bc250ce34c4c8317896673ca37f3ee17223c7

41 hours agoupstream: use "ssh-agent -V" to test the binary is functional after
djm@openbsd.org [Wed, 27 May 2026 03:05:21 +0000 (03:05 +0000)] 
upstream: use "ssh-agent -V" to test the binary is functional after

relinking requested deraadt@

OpenBSD-Commit-ID: eb4169949bf61188fb7336b11b73833019d10d7b

41 hours agoupstream: add a -V flag to print the version, but mostly as a way
djm@openbsd.org [Wed, 27 May 2026 03:04:30 +0000 (03:04 +0000)] 
upstream: add a -V flag to print the version, but mostly as a way

to check the binary is functional; ok deraadt@

OpenBSD-Commit-ID: 0cc5cb22cbfe09ac4c316dd5da0af7a4193a42af

3 days agoupstream: Test all mutually supported algorithms,
dtucker@openbsd.org [Wed, 27 May 2026 23:04:36 +0000 (23:04 +0000)] 
upstream: Test all mutually supported algorithms,

using dropbear's new -Q option to query its algorithms where possible.

OpenBSD-Regress-ID: 7e1fa733dec3bfa9f8931e535a9397209b5953f3

3 days agoupstream: Dropbear recently added a -Q option;
dtucker@openbsd.org [Tue, 12 May 2026 13:02:40 +0000 (13:02 +0000)] 
upstream: Dropbear recently added a -Q option;

use it to query KEX if available.

OpenBSD-Regress-ID: beab781f357e27e75dfdd2ec600a7dff2c63cb5b

3 days agoupstream: Fix skip message.
dtucker@openbsd.org [Mon, 4 May 2026 10:57:24 +0000 (10:57 +0000)] 
upstream: Fix skip message.

OpenBSD-Regress-ID: d192bbc19cc5914e64a3bb35a347eca0318729af

6 days agoRun hardenedmalloc test on ubuntu-latest.
Darren Tucker [Tue, 26 May 2026 00:48:19 +0000 (10:48 +1000)] 
Run hardenedmalloc test on ubuntu-latest.

Needed for newer clang that supports -std=c23.

6 days agoHardenedmalloc needs -std=c23 so build with clang.
Darren Tucker [Mon, 25 May 2026 23:33:51 +0000 (09:33 +1000)] 
Hardenedmalloc needs -std=c23 so build with clang.

8 days agoFix IPTOS_DSCP_VA fallback
Michael Forney [Thu, 21 May 2026 17:02:00 +0000 (03:02 +1000)] 
Fix IPTOS_DSCP_VA fallback

0x2c is the unshifted value, and was copied over from openbsd before
it was fixed to be 0xb0 in [0].

Source of discrepancy identified by Leah Neukirchen.

[0] https://cvsweb.openbsd.org/log/src/sys/netinet/ip.h#rev1.22

10 days agoAdd OpenBSD 7.9 test VM.
Darren Tucker [Thu, 21 May 2026 08:39:54 +0000 (18:39 +1000)] 
Add OpenBSD 7.9 test VM.

10 days agoAnother shell portability fix for Solaris.
Darren Tucker [Thu, 21 May 2026 08:38:47 +0000 (18:38 +1000)] 
Another shell portability fix for Solaris.

10 days agoUse backticks for shell portability w/ Solaris.
Darren Tucker [Thu, 21 May 2026 08:25:50 +0000 (18:25 +1000)] 
Use backticks for shell portability w/ Solaris.

10 days agoAdd interop tests against Dropbear >= 2020.79
Darren Tucker [Tue, 19 May 2026 08:37:26 +0000 (18:37 +1000)] 
Add interop tests against Dropbear >= 2020.79

11 days agoupstream: mention that compression could potentially leak
djm@openbsd.org [Thu, 21 May 2026 04:04:57 +0000 (04:04 +0000)] 
upstream: mention that compression could potentially leak

information about session contents (cf. the CRIME attack on TLS) if a
connection allows attacker- controlled traffic over it alongside trused
traffic. This might occur in some forwarding scenarios.

with deraadt@

OpenBSD-Commit-ID: 03d145cdbf3a8713e8309724b5c9a9b76c317749

11 days agoupstream: mention usefulness of request type allow/denylisting for
djm@openbsd.org [Thu, 21 May 2026 02:50:59 +0000 (02:50 +0000)] 
upstream: mention usefulness of request type allow/denylisting for

servers accepting untrusted clients

OpenBSD-Commit-ID: 8b991bd263b46374a8e73f02d05cdccca73ae520

11 days agoupstream: chacha: avoid -Wunterminated-string-initialization
tb@openbsd.org [Mon, 18 May 2026 04:14:57 +0000 (04:14 +0000)] 
upstream: chacha: avoid -Wunterminated-string-initialization

warning

The sizes of sigma[] and tau[] aren't used, so include a trailing NUL and
thereby avoid upsetting modern compilers about use of dangerous, valid C.

ok deraadt djm

OpenBSD-Commit-ID: 030a71ff16bb1e6135170c6507bc558eabe7345c

11 days agoupstream: avoid validating bad cipher or mac lists in config files
djm@openbsd.org [Wed, 13 May 2026 05:58:58 +0000 (05:58 +0000)] 
upstream: avoid validating bad cipher or mac lists in config files

/ commandline arguments as valid.

Identified by SUSE and reported by Camila Camargo de Matos

ok deraadt@ tb@

OpenBSD-Commit-ID: 45d51154f2418549e08b80fa33df6c6532046054

2 weeks agoupstream: fix hard-to-reach NULL deref during pubkey auth
djm@openbsd.org [Wed, 13 May 2026 05:11:02 +0000 (05:11 +0000)] 
upstream: fix hard-to-reach NULL deref during pubkey auth

To hit this, the user must be using a PEM style private key with no
corresponding .pub key adjacent to it.

OpenBSD-Commit-ID: b7150acc5322fa33f21491834d9471fbe3d30f20

2 weeks agoRetire OmniOS r151046 & r151054 test configs.
Darren Tucker [Tue, 12 May 2026 09:53:54 +0000 (19:53 +1000)] 
Retire OmniOS r151046 & r151054 test configs.

They require packages from an external mirror which has been unreliable
lately, so stop relying on it.

2 weeks agoHandle missing packages for FreeBSD 12.4.
Darren Tucker [Tue, 12 May 2026 09:43:48 +0000 (19:43 +1000)] 
Handle missing packages for FreeBSD 12.4.

(Most) FreeBSD mirrors no longer have packages for 12.x, so install the
only thing we need (sudo) from source on.

2 weeks agoOmniOS: check for gcc before installing.
Darren Tucker [Tue, 12 May 2026 08:50:20 +0000 (18:50 +1000)] 
OmniOS: check for gcc before installing.

2 weeks agoAdd VM test versions for : OmniOS and FreeBSD.
Darren Tucker [Tue, 12 May 2026 08:05:24 +0000 (18:05 +1000)] 
Add VM test versions for : OmniOS and FreeBSD.

Add OmniOS r151056 and r151058 (with build-essentials, so hopefully
faster and lower dependency) and FreeBSD 12.4 for better coverage.

2 weeks agoupdate getrrsetbyname.c from OpenBSD upstream
Damien Miller [Tue, 12 May 2026 04:36:27 +0000 (14:36 +1000)] 
update getrrsetbyname.c from OpenBSD upstream

revision 1.15
date: 2026/05/09 01:54:51;  author: tb;  state: Exp;  lines: +14 -13;  commitid: zZPVUWycKAslGJtO;
Avoid recursive cleanup in getrrsetbyname()

Instead of freeing struct dns_query and struct dns_rr by walking the
linked lists recursively, use a simple loop. This avoids a possible
stack exhaustion unlikely to be reachable with the limits modern
resolvers impose.

From Dhiraj Mishra

2 weeks agoci: avoid rsync dependency in NetBSD VM jobs
Darafei Praliaskouski [Sat, 9 May 2026 15:50:31 +0000 (19:50 +0400)] 
ci: avoid rsync dependency in NetBSD VM jobs

3 weeks agoupstream: unbreak; spotted by Darren's test army
djm@openbsd.org [Tue, 5 May 2026 06:21:14 +0000 (06:21 +0000)] 
upstream: unbreak; spotted by Darren's test army

OpenBSD-Commit-ID: e95ceda842a2c7a08fc00ac3a529877d87fee7b2

3 weeks agoupstream: classify dynamic-tcpip channels as bulk, not interactive;
djm@openbsd.org [Tue, 5 May 2026 05:34:27 +0000 (05:34 +0000)] 
upstream: classify dynamic-tcpip channels as bulk, not interactive;

bz3958, ok markus@

OpenBSD-Commit-ID: b18f1c1eaff8423bf069ff6103e8865cec18d64b

3 weeks agoImprove NetBSD PAM tests.
Darren Tucker [Mon, 4 May 2026 13:33:57 +0000 (23:33 +1000)] 
Improve NetBSD PAM tests.

 - Set random password and use for password auth test.
 - When testing PAM builds, test with and without UsePAM.

3 weeks agoImprove FreeBSD PAM tests.
Darren Tucker [Mon, 4 May 2026 13:15:05 +0000 (23:15 +1000)] 
Improve FreeBSD PAM tests.

 - Set random password and use for password auth test.
 - When testing PAM builds, test with and without UsePAM.

3 weeks agoUpdate to FreeBSD 14.4, add 15.0.
Darren Tucker [Mon, 4 May 2026 12:57:58 +0000 (22:57 +1000)] 
Update to FreeBSD 14.4, add 15.0.

3 weeks agoImprove Solaris PAM tests.
Darren Tucker [Mon, 4 May 2026 11:40:52 +0000 (21:40 +1000)] 
Improve Solaris PAM tests.

 - Set up and run tests with SUDO.
 - Set random password to use for password & kbdint auth tests.
 - Only run t-exec when re-testing with PAM, don't rerun unit tests.
 - When testing PAM builds, test with and without UsePAM.

3 weeks agoOnly run t-exec when re-testing with PAM.
Darren Tucker [Mon, 4 May 2026 11:39:01 +0000 (21:39 +1000)] 
Only run t-exec when re-testing with PAM.

There's no point rerunning unit tests.

3 weeks agoAdd Solaris 11.4-clang-19 test.
Darren Tucker [Mon, 4 May 2026 08:47:03 +0000 (18:47 +1000)] 
Add Solaris 11.4-clang-19 test.

3 weeks agoAdd RUN_ONLY_PLATFORM to run a subset of tests.
Darren Tucker [Mon, 4 May 2026 07:41:37 +0000 (17:41 +1000)] 
Add RUN_ONLY_PLATFORM to run a subset of tests.

4 weeks agoskip ("#if 0") strvisx and stravis
Damien Miller [Mon, 4 May 2026 06:05:34 +0000 (16:05 +1000)] 
skip ("#if 0") strvisx and stravis

we don't use the in OpenSSH and some compilers throw warnings
compiling them that break -Werror

4 weeks agoRemove 9.9 and 10.0 branches from build status page.
Darren Tucker [Thu, 30 Apr 2026 23:19:56 +0000 (09:19 +1000)] 
Remove 9.9 and 10.0 branches from build status page.

4 weeks agovm.yml: fix solaris PAM tests
Renaud Allard [Sat, 21 Mar 2026 18:23:04 +0000 (19:23 +0100)] 
vm.yml: fix solaris PAM tests

Add missing SSHD_CONFOPTS="UsePam yes" to the solaris PAM test
step so it actually tests PAM functionality instead of re-running
the default tests with a PAM-enabled binary.

4 weeks agoupstream: fiddle with mask after umask call and not before; avoids
djm@openbsd.org [Wed, 29 Apr 2026 22:22:10 +0000 (22:22 +0000)] 
upstream: fiddle with mask after umask call and not before; avoids

fortify warnings on android. bz3954

OpenBSD-Commit-ID: 82224426b2ee989c68f305caa50aa3d3b4993a84

4 weeks agoupstream: unveil the actual listening socket path and its directory
djm@openbsd.org [Tue, 28 Apr 2026 21:32:05 +0000 (21:32 +0000)] 
upstream: unveil the actual listening socket path and its directory

so it can be cleaned up at exit.

Reported by / tested by David Krause, ok markus@

OpenBSD-Commit-ID: b45d740e9a63dec0fad436ed78f6912b39f0cd53

4 weeks agoupstream: Clarify comment on what setting extended types for
job@openbsd.org [Mon, 20 Apr 2026 07:43:52 +0000 (07:43 +0000)] 
upstream: Clarify comment on what setting extended types for

channels does

OK djm@

OpenBSD-Commit-ID: fa035fb19b74571992fa3adca4396a4c572a7a8a

4 weeks agoAdd tracking for 10.3 branch.
Darren Tucker [Tue, 28 Apr 2026 23:14:31 +0000 (09:14 +1000)] 
Add tracking for 10.3 branch.

4 weeks agoRename obsd arm64 snapshot VM for consistency.
Darren Tucker [Mon, 27 Apr 2026 23:09:57 +0000 (09:09 +1000)] 
Rename obsd arm64 snapshot VM for consistency.

4 weeks agoupstream: Use supported hostkeyalgorithms specifically in
dtucker@openbsd.org [Mon, 27 Apr 2026 05:49:41 +0000 (05:49 +0000)] 
upstream: Use supported hostkeyalgorithms specifically in

sshd_config instead of supported key types, which is almost but not
completely correct.

OpenBSD-Regress-ID: 43c3b348576900f3e710bff5d6a87f0e803c5b3d

4 weeks agoupstream: Drop -Winline from CDIAGFLAGS it breaks on sparc64
claudio@openbsd.org [Thu, 23 Apr 2026 12:57:47 +0000 (12:57 +0000)] 
upstream: Drop -Winline from CDIAGFLAGS it breaks on sparc64

On sparc64 ssh/unittests/kex fails to build with:
 usr.bin/ssh/libcrux_mlkem768_sha3.h:8196: warning: inlining failed
 in call to 'libcrux_ml_kem_polynomial_ZERO_89_ea':
 --param max-inline-insns-single limit reached

OK djm@ (long time ago) reminded by tb@

OpenBSD-Regress-ID: c32094e3436536474039a4aeefabdbf0bd826554

4 weeks agoUpdate OpenSSL tested versions.
Darren Tucker [Mon, 27 Apr 2026 11:53:36 +0000 (21:53 +1000)] 
Update OpenSSL tested versions.

4 weeks agoComment out new PAM valgrind test until debugged.
Darren Tucker [Mon, 27 Apr 2026 11:16:56 +0000 (21:16 +1000)] 
Comment out new PAM valgrind test until debugged.

4 weeks agoSimplify Cygwin permissions setting.
Darren Tucker [Mon, 20 Apr 2026 08:47:23 +0000 (18:47 +1000)] 
Simplify Cygwin permissions setting.

4 weeks agoReorder steps to change perms before displaying.
Darren Tucker [Mon, 20 Apr 2026 08:45:37 +0000 (18:45 +1000)] 
Reorder steps to change perms before displaying.

4 weeks agoAllow setting TEST_SSH_TRACE via Github.
Darren Tucker [Mon, 20 Apr 2026 12:46:17 +0000 (22:46 +1000)] 
Allow setting TEST_SSH_TRACE via Github.

4 weeks agoAdd tests for libressl-4.3.1.
Darren Tucker [Mon, 20 Apr 2026 12:55:48 +0000 (22:55 +1000)] 
Add tests for libressl-4.3.1.

4 weeks agoRe-enable SHA1 sigs in OpenSSL on Cygwin for tests.
Darren Tucker [Mon, 27 Apr 2026 10:51:17 +0000 (20:51 +1000)] 
Re-enable SHA1 sigs in OpenSSL on Cygwin for tests.

Recently Cygwin imported changes from Fedora which disable SHA1
signatures by default.  This breaks the unit tests (and a couple of
regression tests), so set rh-allow-sha1-signatures=yes in the OpenSSL
config to re-enable them.

5 weeks agoCheck for OPENSSL_NO_ENGINE for --with-ssl-engine.
Darren Tucker [Sat, 25 Apr 2026 10:00:38 +0000 (20:00 +1000)] 
Check for OPENSSL_NO_ENGINE for --with-ssl-engine.

OpenSSL 4 removes support for ENGINE, but it provides no-op stubs
for the ENGINE functions in addition to setting OPENSSL_NO_ENGINE.

The presence of the stubs fooled the old configure test, so if someone
tried --with-ssl-engine with OpenSSL 4.0.0 it'd try but fail at build
time.  Explicitly check for OPENSSL_NO_ENGINE. before trying to enable
ENGINE support.  bz#3952.

6 weeks agoupstream: correctly set extended type for client-side channels.
djm@openbsd.org [Sun, 19 Apr 2026 23:37:22 +0000 (23:37 +0000)] 
upstream: correctly set extended type for client-side channels.

Fixes interactive vs bulk IPQoS for client->server traffic. ok job@

OpenBSD-Commit-ID: 34f5131face8d6dc4ae6955196e5fcafb3570cfe

6 weeks agoupstream: Also show the duration of the current session through the
job@openbsd.org [Mon, 13 Apr 2026 08:18:33 +0000 (08:18 +0000)] 
upstream: Also show the duration of the current session through the

~I escape

OK dtucker@

OpenBSD-Commit-ID: 695c1a09c4cc8b417a1bd3eb207b0cc7fa831c7a

6 weeks agoupstream: want stdint.h here now that we've switched from u_intXX_t
djm@openbsd.org [Tue, 7 Apr 2026 07:40:40 +0000 (07:40 +0000)] 
upstream: want stdint.h here now that we've switched from u_intXX_t

-> uintXX_t

OpenBSD-Commit-ID: 6d5e80bd6f29a9db18b18beeb1cbe5423b59de44

6 weeks agoMake ci work for OpenSSL 4 variants
Bob Beck [Thu, 16 Apr 2026 16:09:02 +0000 (10:09 -0600)] 
Make ci work for OpenSSL 4 variants

6 weeks agoTest against OpenSSL 3.6.2, 4.0.0 and 4.0-stable.
Darren Tucker [Thu, 16 Apr 2026 10:55:23 +0000 (20:55 +1000)] 
Test against OpenSSL 3.6.2, 4.0.0 and 4.0-stable.

6 weeks agoaccount newer openssl versions in .github/setup_ci.sh
Dmitry Misharov [Mon, 16 Mar 2026 08:08:57 +0000 (09:08 +0100)] 
account newer openssl versions in .github/setup_ci.sh

6 weeks agoMatch case with other messages.
Darren Tucker [Thu, 16 Apr 2026 09:32:34 +0000 (19:32 +1000)] 
Match case with other messages.

6 weeks agoregen signature on allowed_signers file
Damien Miller [Tue, 14 Apr 2026 22:14:58 +0000 (08:14 +1000)] 
regen signature on allowed_signers file

This was missed after the file was updated, but nobody noticed it
until now.

8 weeks agodepend
Damien Miller [Thu, 2 Apr 2026 07:56:48 +0000 (18:56 +1100)] 
depend

8 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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

2 months agoavoid k suffix in dd count operand in sftp-resume test
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.

2 months 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.

2 months 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.

2 months 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

2 months 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

2 months 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

2 months 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

2 months 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

2 months 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