Mailing List Archive

Call for testing: OpenSSH 8.7
Hi,

OpenSSH 8.7p1 is almost ready for release, so we would appreciate testing
on as many platforms and systems as possible. This release has a mix of
bugfixes and new features.

Snapshot releases for portable OpenSSH are available from
http://www.mindrot.org/openssh_snap/

The OpenBSD version is available in CVS HEAD:
http://www.openbsd.org/anoncvs.html

Portable OpenSSH is also available via git using the
instructions at http://www.openssh.com/portable.html#cvs
At https://anongit.mindrot.org/openssh.git/ or via a mirror at Github:
https://github.com/openssh/openssh-portable

Running the regression tests supplied with Portable OpenSSH does not
require installation and is a simply:

$ ./configure && make tests

Live testing on suitable non-production systems is also appreciated.
Please send reports of success or failure to
openssh-unix-dev@mindrot.org. Security bugs should be reported
directly to openssh@openssh.com.

Below is a summary of changes. More detail may be found in the ChangeLog
in the portable OpenSSH tarballs.

Thanks to the many people who contributed to this release.

Potentially-incompatible changes
================================

This release includes a number of changes that may affect existing
configurations:

* scp(1): this release changes the behaviour of remote to remote
copies (e.g. "scp host-a:/path host-b:") to transfer through the
local host by default. This was previously available via the -3
flag. This mode avoids the need to expose credentials on the
origin hop, avoids triplicate interpretation of filenames by the
shell (by the local system, the copy origin and the destination)
and, in conjunction with the SFTP support for scp(1) mentioned
below, allows use of all authentication methods to the remote
hosts (previously, only non-interactive methods could be used).
A -R flag has been added to select the old behaviour.

* ssh(1)/sshd(8): both the client and server are now using a more
strict configuration file parser. The new parser uses more
shell-like rules for quotes, space and escape characters. It is
also more strict in rejecting configurations that include options
lacking arguments. Previously some options (e.g. DenyUsers) to
appear on a line with no subsequent arguments. This release will
reject such configurations. The new parser will also reject
configurations with unterminated quotes and multiple '='
characters after the option name.

* ssh(1): when using SSHFP DNS records for host key verification,
ssh(1) will verify all matching records instead of just those
with the specific signature type requested. This may cause host
key verification problems if stale SSHFP records of a different
or legacy signature type exist alongside other records for a
particular host. bz#3322

* ssh-keygen(1): when generating a FIDO key and specifying an
explicit attestation challenge (using -Ochallenge), the challenge
will now be hashed by the builtin security key middleware. This
removes the (undocumented) requirement that challenges be exactly
32 bytes in length and matches the expectations of libfido2.

* sshd(8): environment="..." directives in authorized_keys files are
now first-match-wins and limited to 1024 discrete environment
variable names.

Changes since OpenSSH 8.6
=========================

This release contains a mix of new features and bug-fixes.

New features
------------

- scp(1): experimental support for transfers using the SFTP protocol
as a replacement for the venerable SCP/RCP protocol that it has
traditionally used. SFTP offers more predictable filename handling
and does not require expansion of glob(3) patterns via the shell
on the remote side.

SFTP support may be enabled via a temporary scp -s flag. It is
intended for SFTP to become the default transfer mode in the
near future, at which time the -s flag will be removed. The -O
flag exists to force use of the original SCP/RCP protocol for
cases where SFTP may be unavailable or incompatible.

- sftp-server(8): add a protocol extension to support expansion of
~/ and ~user/ prefixed paths. This was added to support these
paths when used by scp(1) while in SFTP mode.

- ssh(1): add a ForkAfterAuthentication ssh_config(5) counterpart to
the ssh(1) -f flag. GHPR#231

- ssh(1): add a StdinNull directive to ssh_config(5) that allows the
config file to do the same thing as -n does on the ssh(1) command-
line. GHPR#231

- ssh(1): add a SessionType directive to ssh_config, allowing the
configuration file to offer equivalent control to the -N (no
session) and -s (subsystem) command-line flags. GHPR#231

- ssh-keygen(1): let allowed signers files used by ssh-keygen(1)
signatures support key lifetimes, and allow the verification mode to
specify a signature time to check at. This is intended for use by
git to support signing objects using ssh keys.

- ssh-keygen(8): support printing of the full public key in a sshsig
signature via a -Oprint-pubkey flag.

Bugfixes
--------

* ssh(1)/sshd(8): start time-based re-keying exactly on schedule in
the client and server mainloops. Previously the re-key timeout
could expire but re-keying would not start until a packet was sent
or received, causing a spin in select() if the connection was
quiescent.

* ssh-keygen(1): avoid Y2038 problem in printing certificate
validity lifetimes. Dates past 2^31-1 seconds since epoch were
displayed incorrectly on some platforms. bz#3329

* scp(1): allow spaces to appear in usernames for local to remote
and scp -3 remote to remote copies. bz#1164

* ssh(1)/sshd(8): remove references to ChallengeResponseAuthentication
in favour of KbdInteractiveAuthentication. The former is what was in
SSHv1, the latter is what is in SSHv2 (RFC4256) and they were
treated as somewhat but not entirely equivalent. We retain the old
name as a deprecated alias so configuration files continue to work
as well as a reference in the man page for people looking for it.
bz#3303

* ssh(1)/ssh-add(1)/ssh-keygen(1): fix decoding of X.509 subject name
when extracting a key from a PKCS#11 certificate. bz#3327

* ssh(1): restore blocking status on stdio fds before close. ssh(1)
needs file descriptors in non-blocking mode to operate but it was
not restoring the original state on exit. This could cause
problems with fds shared with other programs via the shell,
bz#3280 and GHPR#246

* ssh(1)/sshd(8): switch both client and server mainloops from
select(3) to pselect(3). Avoids race conditions where a signal
may arrive immediately before select(3) and not be processed until
an event fires. bz#2158

* ssh(1): sessions started with ControlPersist were incorrectly
executing a shell when the -N (no shell) option was specified.
bz#3290

* ssh(1): check if IPQoS or TunnelDevice are already set before
overriding. Prevents values in config files from overriding values
supplied on the command line. bz#3319

* ssh(1): fix debug message when finding a private key to match a
certificate being attempted for user authentication. Previously it
would print the certificate's path, whereas it was supposed to be
showing the private key's path. GHPR#247

* sshd(8): match host certificates against host public keys, not
private keys. Allows use of certificates with private keys held in
a ssh-agent. bz#3524

* ssh(1): add a workaround for a bug in OpenSSH 7.4 sshd(8), which
allows RSA/SHA2 signatures for public key authentication but fails
to advertise this correctly via SSH2_MSG_EXT_INFO. This causes
clients of these server to incorrectly match
PubkeyAcceptedAlgorithmse and potentially refuse to offer valid
keys. bz#3213

* sftp(1)/scp(1): degrade gracefully if a sftp-server offers the
limits@openssh.com extension but fails when the client tries to
invoke it. bz#3318

* ssh(1): allow ssh_config SetEnv to override $TERM, which is
otherwise handled specially by the protocol. Useful in ~/.ssh/config
to set TERM to something generic (e.g. "xterm" instead of
"xterm-256color") for destinations that lack terminfo entries.

* sftp-server(8): the limits@openssh.com extension was incorrectly
marked as an operation that writes to the filesystem, which made it
unavailable in sftp-server read-only mode. bz#3318

* ssh(1): fix SEGV in UpdateHostkeys debug() message, triggered when
the update removed more host keys than remain present.

* many manual page fixes.

Portability
-----------

* ssh(1): move closefrom() to before first malloc. When built against
tcmalloc, the closefrom() would stomp on file descriptors created
for tcmalloc's internal use. bz#3321

* sshd(8): handle GIDs > 2^31 in getgrouplist. When compiled in 32bit
mode, the getgrouplist implementation may fail for GIDs greater than
LONG_MAX.

* ssh(1): xstrdup environment variable used by ForwardAgent. bz#3328

* sshd(8): don't sigdie() in signal handler in privsep child process;
this can end up causing sandbox violations per bz3286

OpenSSH is brought to you by Markus Friedl, Niels Provos, Theo de
Raadt, Kevin Steves, Damien Miller, Darren Tucker, Jason McIntyre,
Tim Rice and Ben Lindstrom.

_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
RE: Call for testing: OpenSSH 8.7 [ In reply to ]
Hi,

Dumb question, where's the Bugzilla? It's been a while for me. There's a typo in the changelog:

In the description of the configfile parser change, the text reads:

"Previously some options (e.g. DenyUsers) *to* appear on a line with no subsequent arguments."

(emphasis mine)

The correct phrasing should be:

"Previously some options (e.g. DenyUsers) *could* appear on a line with no subsequent arguments."

I'd file the bug, but I don't know where Bugzilla is.

Thanks,

ScottN

---
Scott Neugroschl | XYPRO Technology Corporation
4100 Guardian Street | Suite 100 |Simi Valley, CA 93063 | Phone 805 583-2874|Fax 805 583-0124 |


-----Original Message-----
From: openssh-unix-dev <openssh-unix-dev-bounces+scott_n=xypro.com@mindrot.org> On Behalf Of Damien Miller
Sent: Thursday, August 12, 2021 5:10 PM
To: openssh-unix-dev@mindrot.org
Subject: Call for testing: OpenSSH 8.7

Hi,

OpenSSH 8.7p1 is almost ready for release, so we would appreciate testing on as many platforms and systems as possible. This release has a mix of bugfixes and new features.

Snapshot releases for portable OpenSSH are available from
https://linkprotect.cudasvc.com/url?a=http%3a%2f%2fwww.mindrot.org%2fopenssh_snap%2f&c=E,1,8i3Ki8Q7-jZZhaHOpXFwpu6pVw_hEfokJtboa3jt5fzPrv9X33FSAStILgWqksuyQoK8RyR7A47Lsqh8_BR4ONadl7i07cEeXwu8DY2tC2_0LWWvt0rB7fdeNg,,&typo=1

The OpenBSD version is available in CVS HEAD:
https://linkprotect.cudasvc.com/url?a=http%3a%2f%2fwww.openbsd.org%2fanoncvs.html&c=E,1,WB7vNd3D--rOPdr9Dl4uGCgKQPuS6TWCvYXOcSJ6iVWIr5KD1soDcj777jMxxzFmzh_7BfPCtm8yNEY1-Crak6d1ylvx0S4ucdBP_96quNCNGuaPrjEecSw,&typo=1

Portable OpenSSH is also available via git using the instructions at https://linkprotect.cudasvc.com/url?a=http%3a%2f%2fwww.openssh.com%2fportable.html%23cvs&c=E,1,53c5oNbZCh0xDNbsyPMpY_rZ_U6QoEmaWkqcikNCsRZGxHWjG2-RnYPclle8mYyuJOPc1Ol2WPSKzs9Mc84Gv25wrXlEhu35ed5jNxqWJG66LcxFBo5zmQW25w,,&typo=1
At https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fanongit.mindrot.org%2fopenssh.git%2f&c=E,1,5nNaRb8nUIrKsT7lWZjra-mvQUhH0J0BoYOuO9UM7Pf76sTewVIsGHJpf6v4xXJSkXDXFa0nQSAU1E7tqh4U6UtZyVor1g6M8LjbbDyvktIqfXls9Q,,&typo=1 or via a mirror at Github:
https://github.com/openssh/openssh-portable

Running the regression tests supplied with Portable OpenSSH does not require installation and is a simply:

$ ./configure && make tests

Live testing on suitable non-production systems is also appreciated.
Please send reports of success or failure to openssh-unix-dev@mindrot.org. Security bugs should be reported directly to openssh@openssh.com.

Below is a summary of changes. More detail may be found in the ChangeLog in the portable OpenSSH tarballs.

Thanks to the many people who contributed to this release.

Potentially-incompatible changes
================================

This release includes a number of changes that may affect existing
configurations:

* scp(1): this release changes the behaviour of remote to remote
copies (e.g. "scp host-a:/path host-b:") to transfer through the
local host by default. This was previously available via the -3
flag. This mode avoids the need to expose credentials on the
origin hop, avoids triplicate interpretation of filenames by the
shell (by the local system, the copy origin and the destination)
and, in conjunction with the SFTP support for scp(1) mentioned
below, allows use of all authentication methods to the remote
hosts (previously, only non-interactive methods could be used).
A -R flag has been added to select the old behaviour.

* ssh(1)/sshd(8): both the client and server are now using a more
strict configuration file parser. The new parser uses more
shell-like rules for quotes, space and escape characters. It is
also more strict in rejecting configurations that include options
lacking arguments. Previously some options (e.g. DenyUsers) to
appear on a line with no subsequent arguments. This release will
reject such configurations. The new parser will also reject
configurations with unterminated quotes and multiple '='
characters after the option name.

* ssh(1): when using SSHFP DNS records for host key verification,
ssh(1) will verify all matching records instead of just those
with the specific signature type requested. This may cause host
key verification problems if stale SSHFP records of a different
or legacy signature type exist alongside other records for a
particular host. bz#3322

* ssh-keygen(1): when generating a FIDO key and specifying an
explicit attestation challenge (using -Ochallenge), the challenge
will now be hashed by the builtin security key middleware. This
removes the (undocumented) requirement that challenges be exactly
32 bytes in length and matches the expectations of libfido2.

* sshd(8): environment="..." directives in authorized_keys files are
now first-match-wins and limited to 1024 discrete environment
variable names.

Changes since OpenSSH 8.6
=========================

This release contains a mix of new features and bug-fixes.

New features
------------

- scp(1): experimental support for transfers using the SFTP protocol
as a replacement for the venerable SCP/RCP protocol that it has
traditionally used. SFTP offers more predictable filename handling
and does not require expansion of glob(3) patterns via the shell
on the remote side.

SFTP support may be enabled via a temporary scp -s flag. It is
intended for SFTP to become the default transfer mode in the
near future, at which time the -s flag will be removed. The -O
flag exists to force use of the original SCP/RCP protocol for
cases where SFTP may be unavailable or incompatible.

- sftp-server(8): add a protocol extension to support expansion of
~/ and ~user/ prefixed paths. This was added to support these
paths when used by scp(1) while in SFTP mode.

- ssh(1): add a ForkAfterAuthentication ssh_config(5) counterpart to
the ssh(1) -f flag. GHPR#231

- ssh(1): add a StdinNull directive to ssh_config(5) that allows the
config file to do the same thing as -n does on the ssh(1) command-
line. GHPR#231

- ssh(1): add a SessionType directive to ssh_config, allowing the
configuration file to offer equivalent control to the -N (no
session) and -s (subsystem) command-line flags. GHPR#231

- ssh-keygen(1): let allowed signers files used by ssh-keygen(1)
signatures support key lifetimes, and allow the verification mode to
specify a signature time to check at. This is intended for use by
git to support signing objects using ssh keys.

- ssh-keygen(8): support printing of the full public key in a sshsig
signature via a -Oprint-pubkey flag.

Bugfixes
--------

* ssh(1)/sshd(8): start time-based re-keying exactly on schedule in
the client and server mainloops. Previously the re-key timeout
could expire but re-keying would not start until a packet was sent
or received, causing a spin in select() if the connection was
quiescent.

* ssh-keygen(1): avoid Y2038 problem in printing certificate
validity lifetimes. Dates past 2^31-1 seconds since epoch were
displayed incorrectly on some platforms. bz#3329

* scp(1): allow spaces to appear in usernames for local to remote
and scp -3 remote to remote copies. bz#1164

* ssh(1)/sshd(8): remove references to ChallengeResponseAuthentication
in favour of KbdInteractiveAuthentication. The former is what was in
SSHv1, the latter is what is in SSHv2 (RFC4256) and they were
treated as somewhat but not entirely equivalent. We retain the old
name as a deprecated alias so configuration files continue to work
as well as a reference in the man page for people looking for it.
bz#3303

* ssh(1)/ssh-add(1)/ssh-keygen(1): fix decoding of X.509 subject name
when extracting a key from a PKCS#11 certificate. bz#3327

* ssh(1): restore blocking status on stdio fds before close. ssh(1)
needs file descriptors in non-blocking mode to operate but it was
not restoring the original state on exit. This could cause
problems with fds shared with other programs via the shell,
bz#3280 and GHPR#246

* ssh(1)/sshd(8): switch both client and server mainloops from
select(3) to pselect(3). Avoids race conditions where a signal
may arrive immediately before select(3) and not be processed until
an event fires. bz#2158

* ssh(1): sessions started with ControlPersist were incorrectly
executing a shell when the -N (no shell) option was specified.
bz#3290

* ssh(1): check if IPQoS or TunnelDevice are already set before
overriding. Prevents values in config files from overriding values
supplied on the command line. bz#3319

* ssh(1): fix debug message when finding a private key to match a
certificate being attempted for user authentication. Previously it
would print the certificate's path, whereas it was supposed to be
showing the private key's path. GHPR#247

* sshd(8): match host certificates against host public keys, not
private keys. Allows use of certificates with private keys held in
a ssh-agent. bz#3524

* ssh(1): add a workaround for a bug in OpenSSH 7.4 sshd(8), which
allows RSA/SHA2 signatures for public key authentication but fails
to advertise this correctly via SSH2_MSG_EXT_INFO. This causes
clients of these server to incorrectly match
PubkeyAcceptedAlgorithmse and potentially refuse to offer valid
keys. bz#3213

* sftp(1)/scp(1): degrade gracefully if a sftp-server offers the
limits@openssh.com extension but fails when the client tries to
invoke it. bz#3318

* ssh(1): allow ssh_config SetEnv to override $TERM, which is
otherwise handled specially by the protocol. Useful in ~/.ssh/config
to set TERM to something generic (e.g. "xterm" instead of
"xterm-256color") for destinations that lack terminfo entries.

* sftp-server(8): the limits@openssh.com extension was incorrectly
marked as an operation that writes to the filesystem, which made it
unavailable in sftp-server read-only mode. bz#3318

* ssh(1): fix SEGV in UpdateHostkeys debug() message, triggered when
the update removed more host keys than remain present.

* many manual page fixes.

Portability
-----------

* ssh(1): move closefrom() to before first malloc. When built against
tcmalloc, the closefrom() would stomp on file descriptors created
for tcmalloc's internal use. bz#3321

* sshd(8): handle GIDs > 2^31 in getgrouplist. When compiled in 32bit
mode, the getgrouplist implementation may fail for GIDs greater than
LONG_MAX.

* ssh(1): xstrdup environment variable used by ForwardAgent. bz#3328

* sshd(8): don't sigdie() in signal handler in privsep child process;
this can end up causing sandbox violations per bz3286

OpenSSH is brought to you by Markus Friedl, Niels Provos, Theo de Raadt, Kevin Steves, Damien Miller, Darren Tucker, Jason McIntyre, Tim Rice and Ben Lindstrom.

_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://linkprotect.cudasvc.com/url?a=https%3a%2f%2flists.mindrot.org%2fmailman%2flistinfo%2fopenssh-unix-dev&c=E,1,emzL49ETGv93rA6IWF4a3l9ZC63sGJuo3hVF0QBBtBe7g6EXk79qs8xaOeez-N0DhlY0VIIEpmaLybemFJXcIdmrW98A66LGOsmyt2YXBN4PUAs,&typo=1
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
On Fri, 2021-08-13 at 17:03 +0000, Scott Neugroschl wrote:
> Dumb question, where's the Bugzilla?

http://bugzilla.mindrot.org/


But it's buggy, at least for me... searches end up in errors like:
The page isn’t redirecting properly

Firefox has detected that the server is redirecting the request for
this address in a way that will never complete.

This problem can sometimes be caused by disabling or refusing to
accept cookies.


Might also be the new firefox 91 that breaks it, though.

Cheers,
Chris.

_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
RE: Call for testing: OpenSSH 8.7 [ In reply to ]
Looks like Bugzilla doesn't have an option for 8.7 beta.

Can someone correct the description of the config file parser?

-- error description
In the description of the configfile parser change, the text reads:

"Previously some options (e.g. DenyUsers) *to* appear on a line with no subsequent arguments."

(emphasis mine)

The correct phrasing should be:

"Previously some options (e.g. DenyUsers) *could* appear on a line with no subsequent arguments."
-- end error description

Thanks,

ScottN

-----Original Message-----
From: openssh-unix-dev <openssh-unix-dev-bounces+scott_n=xypro.com@mindrot.org> On Behalf Of Christoph Anton Mitterer
Sent: Friday, August 13, 2021 10:13 AM
To: openssh-unix-dev@mindrot.org
Subject: Re: Call for testing: OpenSSH 8.7

On Fri, 2021-08-13 at 17:03 +0000, Scott Neugroschl wrote:
> Dumb question, where's the Bugzilla?

https://linkprotect.cudasvc.com/url?a=http%3a%2f%2fbugzilla.mindrot.org%2f&c=E,1,R4KoWsWDTTohioTR64LYZrU4109sUKKJi_nEc9u0zpQmW1kRNTdgF7xB5jg_xSdb0vybBdX23tbuFmjBoLdQR9BnhvRore7nhXJfyUv3coX6jU5z9MVg_qzaOV8,&typo=1


But it's buggy, at least for me... searches end up in errors like:
The page isn’t redirecting properly

Firefox has detected that the server is redirecting the request for
this address in a way that will never complete.

This problem can sometimes be caused by disabling or refusing to
accept cookies.


Might also be the new firefox 91 that breaks it, though.

Cheers,
Chris.

_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://linkprotect.cudasvc.com/url?a=https%3a%2f%2flists.mindrot.org%2fmailman%2flistinfo%2fopenssh-unix-dev&c=E,1,Ur6RU_dikKZcatFe3IgjPSOnlQKykPzTBIUCesqljMF39SUz9alRyJsYViPfU4ZuNHjkFjfS5kGKklszrGywS2RZVgwZ7sR0dm-WVh9e&typo=1
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
Hi Scott,

Scott Neugroschl wrote on Fri, Aug 13, 2021 at 05:03:02PM +0000:

> Dumb question, where's the Bugzilla?

https://www.openssh.com/report.html says at
https://bugzilla.mindrot.org/

but it also says that reporting bugs to <openssh-unix-dev@mindrot.org>
is OK, which you already did.

The README file in the tarball says as much.

> It's been a while for me. There's a typo in the changelog:
>
> In the description of the configfile parser change, the text reads:
>
> "Previously some options (e.g. DenyUsers) *to* appear on a line
> with no subsequent arguments."

Oh, that is merely in the mail message, neither in the tarball nor
anywhere on the web site.

> (emphasis mine)
>
> The correct phrasing should be:
>
> "Previously some options (e.g. DenyUsers) *could* appear on a line
> with no subsequent arguments."
>
> I'd file the bug, but I don't know where Bugzilla is.

I doubt that's needed for a typo in an email.

Yours,
Ingo
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
RE: Call for testing: OpenSSH 8.7 [ In reply to ]
OK, Thanks, Ingo.

-----Original Message-----
From: Ingo Schwarze <schwarze@usta.de>
Sent: Friday, August 13, 2021 10:50 AM
To: Scott Neugroschl <scott_n@xypro.com>
Cc: Damien Miller <djm@mindrot.org>; openssh-unix-dev@mindrot.org
Subject: Re: Call for testing: OpenSSH 8.7

Hi Scott,

Scott Neugroschl wrote on Fri, Aug 13, 2021 at 05:03:02PM +0000:

> Dumb question, where's the Bugzilla?

https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fwww.openssh.com%2freport.html&c=E,1,zs5uflNQFRcpmUJ8sNHTMxjn649Q4a2C4xiPth4b5VAIjhmTIyxipqh2NttuPx8g4tZpgh3BpNJfFVFHvaKZhYau-_k2hbnMVU1KOZNkTXoT&typo=1 says at
https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fbugzilla.mindrot.org%2f&c=E,1,29tZJz_Xun6iIHv_SD6WhJWMl4KkV2HSZAluVB8cqIPdMBVGai2t8CepFJWiwZdUKRg3bdv-lcL-e37ACZ-bmvk4vyVjJROEKVNizPbKnRHORkmLEHoEv6HjwZs,&typo=1

but it also says that reporting bugs to <openssh-unix-dev@mindrot.org> is OK, which you already did.

The README file in the tarball says as much.

> It's been a while for me. There's a typo in the changelog:
>
> In the description of the configfile parser change, the text reads:
>
> "Previously some options (e.g. DenyUsers) *to* appear on a line with
> no subsequent arguments."

Oh, that is merely in the mail message, neither in the tarball nor anywhere on the web site.

> (emphasis mine)
>
> The correct phrasing should be:
>
> "Previously some options (e.g. DenyUsers) *could* appear on a line
> with no subsequent arguments."
>
> I'd file the bug, but I don't know where Bugzilla is.

I doubt that's needed for a typo in an email.

Yours,
Ingo
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
Dear Damien,

Are there any chances that something from
https://github.com/openssh/openssh-portable/pull/253
https://github.com/openssh/openssh-portable/pull/236

will be added to release?

On Fri, Aug 13, 2021 at 2:12 AM Damien Miller <djm@mindrot.org> wrote:

> Hi,
>
> OpenSSH 8.7p1 is almost ready for release, so we would appreciate testing
> on as many platforms and systems as possible. This release has a mix of
> bugfixes and new features.
>
> Snapshot releases for portable OpenSSH are available from
> http://www.mindrot.org/openssh_snap/
>
> The OpenBSD version is available in CVS HEAD:
> http://www.openbsd.org/anoncvs.html
>
> Portable OpenSSH is also available via git using the
> instructions at http://www.openssh.com/portable.html#cvs
> At https://anongit.mindrot.org/openssh.git/ or via a mirror at Github:
> https://github.com/openssh/openssh-portable
>
> Running the regression tests supplied with Portable OpenSSH does not
> require installation and is a simply:
>
> $ ./configure && make tests
>
> Live testing on suitable non-production systems is also appreciated.
> Please send reports of success or failure to
> openssh-unix-dev@mindrot.org. Security bugs should be reported
> directly to openssh@openssh.com.
>
> Below is a summary of changes. More detail may be found in the ChangeLog
> in the portable OpenSSH tarballs.
>
> Thanks to the many people who contributed to this release.
>
> Potentially-incompatible changes
> ================================
>
> This release includes a number of changes that may affect existing
> configurations:
>
> * scp(1): this release changes the behaviour of remote to remote
> copies (e.g. "scp host-a:/path host-b:") to transfer through the
> local host by default. This was previously available via the -3
> flag. This mode avoids the need to expose credentials on the
> origin hop, avoids triplicate interpretation of filenames by the
> shell (by the local system, the copy origin and the destination)
> and, in conjunction with the SFTP support for scp(1) mentioned
> below, allows use of all authentication methods to the remote
> hosts (previously, only non-interactive methods could be used).
> A -R flag has been added to select the old behaviour.
>
> * ssh(1)/sshd(8): both the client and server are now using a more
> strict configuration file parser. The new parser uses more
> shell-like rules for quotes, space and escape characters. It is
> also more strict in rejecting configurations that include options
> lacking arguments. Previously some options (e.g. DenyUsers) to
> appear on a line with no subsequent arguments. This release will
> reject such configurations. The new parser will also reject
> configurations with unterminated quotes and multiple '='
> characters after the option name.
>
> * ssh(1): when using SSHFP DNS records for host key verification,
> ssh(1) will verify all matching records instead of just those
> with the specific signature type requested. This may cause host
> key verification problems if stale SSHFP records of a different
> or legacy signature type exist alongside other records for a
> particular host. bz#3322
>
> * ssh-keygen(1): when generating a FIDO key and specifying an
> explicit attestation challenge (using -Ochallenge), the challenge
> will now be hashed by the builtin security key middleware. This
> removes the (undocumented) requirement that challenges be exactly
> 32 bytes in length and matches the expectations of libfido2.
>
> * sshd(8): environment="..." directives in authorized_keys files are
> now first-match-wins and limited to 1024 discrete environment
> variable names.
>
> Changes since OpenSSH 8.6
> =========================
>
> This release contains a mix of new features and bug-fixes.
>
> New features
> ------------
>
> - scp(1): experimental support for transfers using the SFTP protocol
> as a replacement for the venerable SCP/RCP protocol that it has
> traditionally used. SFTP offers more predictable filename handling
> and does not require expansion of glob(3) patterns via the shell
> on the remote side.
>
> SFTP support may be enabled via a temporary scp -s flag. It is
> intended for SFTP to become the default transfer mode in the
> near future, at which time the -s flag will be removed. The -O
> flag exists to force use of the original SCP/RCP protocol for
> cases where SFTP may be unavailable or incompatible.
>
> - sftp-server(8): add a protocol extension to support expansion of
> ~/ and ~user/ prefixed paths. This was added to support these
> paths when used by scp(1) while in SFTP mode.
>
> - ssh(1): add a ForkAfterAuthentication ssh_config(5) counterpart to
> the ssh(1) -f flag. GHPR#231
>
> - ssh(1): add a StdinNull directive to ssh_config(5) that allows the
> config file to do the same thing as -n does on the ssh(1) command-
> line. GHPR#231
>
> - ssh(1): add a SessionType directive to ssh_config, allowing the
> configuration file to offer equivalent control to the -N (no
> session) and -s (subsystem) command-line flags. GHPR#231
>
> - ssh-keygen(1): let allowed signers files used by ssh-keygen(1)
> signatures support key lifetimes, and allow the verification mode to
> specify a signature time to check at. This is intended for use by
> git to support signing objects using ssh keys.
>
> - ssh-keygen(8): support printing of the full public key in a sshsig
> signature via a -Oprint-pubkey flag.
>
> Bugfixes
> --------
>
> * ssh(1)/sshd(8): start time-based re-keying exactly on schedule in
> the client and server mainloops. Previously the re-key timeout
> could expire but re-keying would not start until a packet was sent
> or received, causing a spin in select() if the connection was
> quiescent.
>
> * ssh-keygen(1): avoid Y2038 problem in printing certificate
> validity lifetimes. Dates past 2^31-1 seconds since epoch were
> displayed incorrectly on some platforms. bz#3329
>
> * scp(1): allow spaces to appear in usernames for local to remote
> and scp -3 remote to remote copies. bz#1164
>
> * ssh(1)/sshd(8): remove references to ChallengeResponseAuthentication
> in favour of KbdInteractiveAuthentication. The former is what was in
> SSHv1, the latter is what is in SSHv2 (RFC4256) and they were
> treated as somewhat but not entirely equivalent. We retain the old
> name as a deprecated alias so configuration files continue to work
> as well as a reference in the man page for people looking for it.
> bz#3303
>
> * ssh(1)/ssh-add(1)/ssh-keygen(1): fix decoding of X.509 subject name
> when extracting a key from a PKCS#11 certificate. bz#3327
>
> * ssh(1): restore blocking status on stdio fds before close. ssh(1)
> needs file descriptors in non-blocking mode to operate but it was
> not restoring the original state on exit. This could cause
> problems with fds shared with other programs via the shell,
> bz#3280 and GHPR#246
>
> * ssh(1)/sshd(8): switch both client and server mainloops from
> select(3) to pselect(3). Avoids race conditions where a signal
> may arrive immediately before select(3) and not be processed until
> an event fires. bz#2158
>
> * ssh(1): sessions started with ControlPersist were incorrectly
> executing a shell when the -N (no shell) option was specified.
> bz#3290
>
> * ssh(1): check if IPQoS or TunnelDevice are already set before
> overriding. Prevents values in config files from overriding values
> supplied on the command line. bz#3319
>
> * ssh(1): fix debug message when finding a private key to match a
> certificate being attempted for user authentication. Previously it
> would print the certificate's path, whereas it was supposed to be
> showing the private key's path. GHPR#247
>
> * sshd(8): match host certificates against host public keys, not
> private keys. Allows use of certificates with private keys held in
> a ssh-agent. bz#3524
>
> * ssh(1): add a workaround for a bug in OpenSSH 7.4 sshd(8), which
> allows RSA/SHA2 signatures for public key authentication but fails
> to advertise this correctly via SSH2_MSG_EXT_INFO. This causes
> clients of these server to incorrectly match
> PubkeyAcceptedAlgorithmse and potentially refuse to offer valid
> keys. bz#3213
>
> * sftp(1)/scp(1): degrade gracefully if a sftp-server offers the
> limits@openssh.com extension but fails when the client tries to
> invoke it. bz#3318
>
> * ssh(1): allow ssh_config SetEnv to override $TERM, which is
> otherwise handled specially by the protocol. Useful in ~/.ssh/config
> to set TERM to something generic (e.g. "xterm" instead of
> "xterm-256color") for destinations that lack terminfo entries.
>
> * sftp-server(8): the limits@openssh.com extension was incorrectly
> marked as an operation that writes to the filesystem, which made it
> unavailable in sftp-server read-only mode. bz#3318
>
> * ssh(1): fix SEGV in UpdateHostkeys debug() message, triggered when
> the update removed more host keys than remain present.
>
> * many manual page fixes.
>
> Portability
> -----------
>
> * ssh(1): move closefrom() to before first malloc. When built against
> tcmalloc, the closefrom() would stomp on file descriptors created
> for tcmalloc's internal use. bz#3321
>
> * sshd(8): handle GIDs > 2^31 in getgrouplist. When compiled in 32bit
> mode, the getgrouplist implementation may fail for GIDs greater than
> LONG_MAX.
>
> * ssh(1): xstrdup environment variable used by ForwardAgent. bz#3328
>
> * sshd(8): don't sigdie() in signal handler in privsep child process;
> this can end up causing sandbox violations per bz3286
>
> OpenSSH is brought to you by Markus Friedl, Niels Provos, Theo de
> Raadt, Kevin Steves, Damien Miller, Darren Tucker, Jason McIntyre,
> Tim Rice and Ben Lindstrom.
>
> _______________________________________________
> openssh-unix-dev mailing list
> openssh-unix-dev@mindrot.org
> https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
>
>

--
Dmitry Belyavskiy
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
RE: Call for testing: OpenSSH 8.7 [ In reply to ]
On Fri, 13 Aug 2021, Scott Neugroschl wrote:

> Hi,
>
> Dumb question, where's the Bugzilla? It's been a while for me. There's a typo in the changelog:
>
> In the description of the configfile parser change, the text reads:
>
> "Previously some options (e.g. DenyUsers) *to* appear on a line with no subsequent arguments."
>
> (emphasis mine)
>
> The correct phrasing should be:
>
> "Previously some options (e.g. DenyUsers) *could* appear on a line with no subsequent arguments."
>
> I'd file the bug, but I don't know where Bugzilla is.

There's no need to file a bug for my mistakes in the release notes,
I'll fix this before the release.

But for reference, it's https://bugzilla.mindrot.org/

-d
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
On Fri, 13 Aug 2021, Dmitry Belyavskiy wrote:

> Dear Damien,
> Are there any chances that something from
> https://github.com/openssh/openssh-portable/pull/253

No, because it's incompatible with LibreSSL ATM. I'll follow up with
the LibreSSL developers again and see if this can be fixed.

> https://github.com/openssh/openssh-portable/pull/236

That's already in.

-d
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
On Fri, 13 Aug 2021, Christoph Anton Mitterer wrote:

> On Fri, 2021-08-13 at 17:03 +0000, Scott Neugroschl wrote:
> > Dumb question, where's the Bugzilla?
>
> http://bugzilla.mindrot.org/
>
>
> But it's buggy, at least for me... searches end up in errors like:
> The page isn’t redirecting properly
>
> Firefox has detected that the server is redirecting the request for
> this address in a way that will never complete.
>
> This problem can sometimes be caused by disabling or refusing to
> accept cookies.
>
>
> Might also be the new firefox 91 that breaks it, though.

I can't replicate this with Chrome or (older) Firefox.

Anyway, the http instance just redirects to the correct address:

https://bugzilla.mindrot.org/

-d
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
On Sat, 14 Aug 2021 at 10:12, Damien Miller <djm@mindrot.org> wrote:

> On Fri, 13 Aug 2021, Dmitry Belyavskiy wrote:
> [...]
> > https://github.com/openssh/openssh-portable/pull/236
>
> That's already in.
>

I don't think so?

https://github.com/openssh/openssh-portable/blob/e50635640f79920d9375e0155cb3f4adb870eee5/ssh-keygen.c#L965


--
Darren Tucker (dtucker at dtucker.net)
GPG key 11EAA6FA / A86E 3E07 5B19 5880 E860 37F4 9357 ECEF 11EA A6FA (new)
Good judgement comes with experience. Unfortunately, the experience
usually comes from bad judgement.
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
On Sat, 2021-08-14 at 10:11 +1000, Damien Miller wrote:
> I can't replicate this with Chrome or (older) Firefox.

It seems it just happens with HTTPS-only mode enabled... probably
Mozilla just broke something again... FF seems to become more and more
of a cancer.

Cheers,
Chris.

_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
Damien Miller wrote:
> Hi,
>
> OpenSSH 8.7p1 is almost ready for release, so we would appreciate testing
> on as many platforms and systems as possible. This release has a mix of
> bugfixes and new features.
>

On SPARC Solaris 10, using Sun Studio 12.2 and a local build of
OpenSSL 1.1.1k, successfully compiled and completed all tests
of openssh-SNAP-20210814.

--
Jeff Wieland, UNIX Systems Administrator
Purdue University IT Infrastructure Services UNIX Platforms


_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
On Sat, Aug 14, 2021 at 2:02 AM Damien Miller <djm@mindrot.org> wrote:

>
>
> On Fri, 13 Aug 2021, Dmitry Belyavskiy wrote:
>
> > Dear Damien,
> > Are there any chances that something from
> > https://github.com/openssh/openssh-portable/pull/253
>
> No, because it's incompatible with LibreSSL ATM. I'll follow up with
> the LibreSSL developers again and see if this can be fixed.
>

It would be great. BTW, is compile-time detection treated as not enough?


>
> > https://github.com/openssh/openssh-portable/pull/236
>
> That's already in.
>

Sorry, could you please clarify?
I don't see the proposed changes in ssh-keygen.c and at a first glance
don't see any other places when \r is cut.
I also don't see anything about it in the log.

Many thanks!

--
Dmitry Belyavskiy
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
On Sat, 14 Aug 2021, Darren Tucker wrote:

> On Sat, 14 Aug 2021 at 10:12, Damien Miller <djm@mindrot.org> wrote:
>
> > On Fri, 13 Aug 2021, Dmitry Belyavskiy wrote:
> > [...]
> > > https://github.com/openssh/openssh-portable/pull/236
> >
> > That's already in.
> >
>
> I don't think so?
>
> https://github.com/openssh/openssh-portable/blob/e50635640f79920d9375e0155cb3f4adb870eee5/ssh-keygen.c#L965

sorry, you're right - I was looking at the wrong PR
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
Hi Damine,

On Aug 13 10:09, Damien Miller wrote:
> Hi,
>
> OpenSSH 8.7p1 is almost ready for release, so we would appreciate testing
> on as many platforms and systems as possible. This release has a mix of
> bugfixes and new features.

I just built from git master. Building works, but testing fails:

run test dhgex.sh ...
dhgex bits 3072 diffie-hellman-group-exchange-sha1 3des-cbc
dhgex bits 3072 diffie-hellman-group-exchange-sha256 3des-cbc
dhgex bits 3072 diffie-hellman-group-exchange-sha1 aes128-cbc
dhgex unexpected GEX sizes, expected 2048<3072<8192, got
FATAL: dhgex expected 3072 bit group, got
make[1]: *** [Makefile:218: t-exec] Error 1

Can you explain to me where the problem might be? I attached the
files failed-ssh.log and failed-sshd.log.


Thanks,
Corinna
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
Hi Damien,

On Aug 16 17:01, Corinna Vinschen wrote:
> Hi Damine,

Sorry!

> On Aug 13 10:09, Damien Miller wrote:
> > Hi,
> >
> > OpenSSH 8.7p1 is almost ready for release, so we would appreciate testing
> > on as many platforms and systems as possible. This release has a mix of
> > bugfixes and new features.
>
> I just built from git master. Building works, but testing fails:
>
> run test dhgex.sh ...
> dhgex bits 3072 diffie-hellman-group-exchange-sha1 3des-cbc
> dhgex bits 3072 diffie-hellman-group-exchange-sha256 3des-cbc
> dhgex bits 3072 diffie-hellman-group-exchange-sha1 aes128-cbc
> dhgex unexpected GEX sizes, expected 2048<3072<8192, got
> FATAL: dhgex expected 3072 bit group, got
> make[1]: *** [Makefile:218: t-exec] Error 1
>
> Can you explain to me where the problem might be? I attached the
> files failed-ssh.log and failed-sshd.log.

Never mind, I screwed up. After rebuilding and retesting *correctly*,
all tests pass on current Cygwin.


Thanks,
Corinna

_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
On 13/08/2021 02:09, Damien Miller wrote:
> Hi,
>
> OpenSSH 8.7p1 is almost ready for release, so we would appreciate testing
> on as many platforms and systems as possible. This release has a mix of
> bugfixes and new features.
>

These unit tests include <stdint.h> unconditionally:
regress/unittests/authopt/tests.c
regress/unittests/misc/test_argv.c
regress/unittests/misc/test_convtime.c
regress/unittests/misc/test_expand.c
regress/unittests/misc/test_parse.c
regress/unittests/misc/test_strdelim.c
regress/unittests/misc/tests.c

This is a problem for Solaris 2.6 so I guarded the include with #ifdef
HAVE_STDINT_H.

On Solaris 2.6 and 7 the testsuite stops with:
regress/unittests/authopt/tests.c:93 test #51 "sshauthopt_from_cert
source-address"
ASSERT_PTR_NE(opts, NULL) failed:
opts = 0
NULL = 0
gmake[1]: *** [unit] Error 134

This was also happening with 8.6p1.
If I skip the authopt test then the remaining unit tests pass.

On the SPARC systems which are a lot slower than the x86 test systems I
am seeing a problem with hangs in the testsuite, most often in the rekey
tests.
Looking at sshd.log it seems it closed the connection but from what I
can gather from ssh.log the client still thinks it is connected and is
just waiting.
Looking at ps output I see two sshd processes running, one a child of
the other, and then a <defunct> child of the still running child.
With truss I see that the client is still doing poll().

I tried reverting 4bdf7a04797a0ea1c431a9d54588417c29177d19 and it seems
to fix it. I've now run through the rekey test twice and the full
testsuite once with no hangs where before it would always hang at some
point.

-tgc
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
On Tue, 17 Aug 2021 at 04:46, Tom G. Christensen <tgc@jupiterrise.com>
wrote:

> [...]
> These unit tests include <stdint.h> unconditionally:

This is a problem for Solaris 2.6 so I guarded the include with #ifdef
> HAVE_STDINT_H.
>

Fixed.


> On Solaris 2.6 and 7 the testsuite stops with:
> regress/unittests/authopt/tests.c:93 test #51 "sshauthopt_from_cert
> source-address"
>

ignoring this one for now.

On the SPARC systems which are a lot slower than the x86 test systems I
> am seeing a problem with hangs in the testsuite, most often in the rekey
> tests.
>

If you are not already, make sure you are compiling OpenSSH and especially
OpenSSL with SPARC v8 instructions (for gcc, that's -mv8). At least some
versions of gcc default to v7 which has no hardware multiply which slows
down some crypto, Diffie-Hellman in particular. Not sure about other
compilers.


> Looking at sshd.log it seems it closed the connection but from what I
> can gather from ssh.log the client still thinks it is connected and is
> just waiting.
> Looking at ps output I see two sshd processes running, one a child of
> the other, and then a <defunct> child of the still running child.
> With truss I see that the client is still doing poll().
>
> I tried reverting 4bdf7a04797a0ea1c431a9d54588417c29177d19 and it seems
> to fix it. I've now run through the rekey test twice and the full
> testsuite once with no hangs where before it would always hang at some
> point.
>

this one is a concern, and while I have some SPARC hardware I can't
currently access it to repro. Does it have pselect()? If so, try removing
HAVE_PSELECT from config.h and recompiling (this will use the compat code
instead, which should be equivalent to what was there previously. If it
doesn't have pselect then the problem likely relates to the compat code
itself.

Thanks.

--
Darren Tucker (dtucker at dtucker.net)
GPG key 11EAA6FA / A86E 3E07 5B19 5880 E860 37F4 9357 ECEF 11EA A6FA (new)
Good judgement comes with experience. Unfortunately, the experience
usually comes from bad judgement.
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
On 17/08/2021 00:18, Darren Tucker wrote:
> On Tue, 17 Aug 2021 at 04:46, Tom G. Christensen <tgc@jupiterrise.com
> <mailto:tgc@jupiterrise.com>> wrote:
>

> If you are not already, make sure you are compiling OpenSSH and
> especially OpenSSL with SPARC v8 instructions (for gcc, that's -mv8).
> At least some versions of gcc default to v7 which has no hardware
> multiply which slows down some crypto, Diffie-Hellman in particular.
> Not sure about other compilers.
>

I am seeing this both on a 900Mhz US-III Solaris 9 system where I build
with v8 instructions (gcc explicitly defaults to it) and a 336Mhz US-II
Solaris 7 system where currently only openssl is built v8 and the rest
v7 (gcc explicitly defaults to it).

The Solaris 9 system will always hang in the rekey test at some point,
the Solaris 7 system often didn't even get that far before hanging.
After the revert both have completed the full testsuite.
Both systems also completed the testsuite in 8.6p1 with no hangs.

> Looking at sshd.log it seems it closed the connection but from what I
> can gather from ssh.log the client still thinks it is connected and is
> just waiting.
> Looking at ps output I see two sshd processes running, one a child of
> the other, and then a <defunct> child of the still running child.
> With truss I see that the client is still doing poll().
>
> I tried reverting 4bdf7a04797a0ea1c431a9d54588417c29177d19 and it seems
> to fix it. I've now run through the rekey test twice and the full
> testsuite once with no hangs where before it would always hang at some
> point.
>
>
> this one is a concern, and while I have some SPARC hardware I can't
> currently access it to repro.  Does it have pselect()?  If so, try
> removing HAVE_PSELECT from config.h and recompiling (this will use the
> compat code instead, which should be equivalent to what was there
> previously.  If it doesn't have pselect then the problem likely relates
> to the compat code itself.
>

Solaris < 10 does not have pselect() it uses the compat code.

-tgc
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
make tests passed all tests on a RockPro64 (ARM based system with 4 A53
core + 2 A72 cores) running Armbian 20.08.17.

_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
Passes all tests on NetBSD-current and NetBSD-9.2 (both amd64).

--
Hisashi T Fujinaka - htodd@twofifty.com
BSEE + BSChem + BAEnglish + MSCS + $2.50 = coffee
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
On Tue, 17 Aug 2021 at 14:46, Tom G. Christensen <tgc@jupiterrise.com>
wrote:

> [...]
> I am seeing this both on a 900Mhz US-III Solaris 9 system where I build
> with v8 instructions (gcc explicitly defaults to it) and a 336Mhz US-II
> Solaris 7 system where currently only openssl is built v8 and the rest
> v7 (gcc explicitly defaults to it).
>
> The Solaris 9 system will always hang in the rekey test at some point,
> the Solaris 7 system often didn't even get that far before hanging.
> After the revert both have completed the full testsuite.
> Both systems also completed the testsuite in 8.6p1 with no hangs.
> [...]
> Solaris < 10 does not have pselect() it uses the compat code.
>

I have not been able to reproduce this. I've tried:
- disabling HAVE_PSELECT on a Linux system,
- disabling HAVE_PSELECT on a 32bit Solaris 10 VM
- disabling HAVE_PSELECT on a 64bit Solaris 11 VM
- restoring an old Solaris 7 backup onto a qemu 32bit sparc VM

Can I get some more details? Compiler, OpenSSL version, configure options,
exact command used to invoke the test? Oh, and are they multiprocessor
systems (maybe it's a race)?

Also a copy of the ssh.log and sshd.log from a hung instance (off-list is
fine)?

> the other, and then a <defunct> child of the still running child.
> With truss I see that the client is still doing poll().

if you truss the sshd that's still alive and hung what's it doing?

--
Darren Tucker (dtucker at dtucker.net)
GPG key 11EAA6FA / A86E 3E07 5B19 5880 E860 37F4 9357 ECEF 11EA A6FA (new)
Good judgement comes with experience. Unfortunately, the experience
usually comes from bad judgement.
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
On 18/08/2021 11:02, Darren Tucker wrote:
> I have not been able to reproduce this.  I've tried:
>  - disabling HAVE_PSELECT on a Linux system,
>  - disabling HAVE_PSELECT on a 32bit Solaris 10 VM
>  - disabling HAVE_PSELECT on a 64bit Solaris 11 VM
>  - restoring an old Solaris 7 backup onto a qemu 32bit sparc VM
>
> Can I get some more details?  Compiler, OpenSSL version, configure
> options, exact command used to invoke the test?  Oh, and are they
> multiprocessor systems (maybe it's a race)?
>

The Solaris 7 system has:
$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/tgcware/libexec/gcc/sparc-sun-solaris2.7/4.5.4/lto-wrapper
Target: sparc-sun-solaris2.7
Configured with: ../gcc-4.5.4/configure --enable-obsolete
--prefix=/usr/tgcware --with-local-prefix=/usr/tgcware/gcc45
--bindir=/usr/tgcware/gcc45/bin --mandir=/usr/tgcware/gcc45/man
--infodir=/usr/tgcware/gcc45/info --disable-nls --enable-shared
--enable-threads=posix --with-gmp=/usr/tgcware --with-mpfr=/usr/tgcware
--with-mpc=/usr/tgcware --with-cloog=/usr/tgcware
--with-ppl=/usr/tgcware --without-gnu-ld --with-ld=/usr/ccs/bin/ld
--with-gnu-as --with-as=/usr/tgcware/bin/gas
--enable-languages=all,ada,obj-c++ --with-x --enable-java-awt=xlib
--with-cpu=v7
Thread model: posix
gcc version 4.5.4 (tgcware 4.5.4-2)

$ openssl version
OpenSSL 1.0.2u 20 Dec 2019
$ file /usr/tgcware/lib/libssl.so
/usr/tgcware/lib/libssl.so: ELF 32-bit MSB dynamic lib SPARC32PLUS
Version 1, V8+ Required, dynamically linked, stripped
$

The system is a multi-processor system with 4x336Mhz US-II cpus.

The Solaris 9 system has:
$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/tgcware/libexec/gcc/sparc-sun-solaris2.9/4.9.4/lto-wrapper
Target: sparc-sun-solaris2.9
Configured with: ../gcc-4.9.4/configure --enable-obsolete
--prefix=/usr/tgcware --with-local-prefix=/usr/tgcware/gcc49
--bindir=/usr/tgcware/gcc49/bin --mandir=/usr/tgcware/gcc49/man
--infodir=/usr/tgcware/gcc49/info --disable-nls --enable-shared
--enable-threads=posix --with-gmp=/usr/tgcware --with-mpfr=/usr/tgcware
--with-mpc=/usr/tgcware --with-cloog=/usr/tgcware
--with-isl=/usr/tgcware --with-cloog-backend=isl --without-gnu-ld
--with-ld=/usr/ccs/bin/ld --with-gnu-as --with-as=/usr/tgcware/bin/gas
--enable-languages=all,ada,obj-c++,go --with-x --enable-java-awt=xlib
--with-cpu=v9 --with-pkgversion='tgcware 4.9.4-1'
--with-bugurl=http://jupiterrise.com/tgcware
Thread model: posix
gcc version 4.9.4 (tgcware 4.9.4-1)

$ openssl version
OpenSSL 1.1.1k 25 Mar 2021
$ file /usr/tgcware/lib/libssl.so
/usr/tgcware/lib/libssl.so: ELF 32-bit MSB dynamic lib SPARC32PLUS
Version 1, V8+ Required, dynamically linked, stripped
$

The OS is running in a branded zone under Solaris 10 and the host system
is a multi-processor system with 4x900Mhz US-III+ cpus.

On both systems for the purposes of testing I am building openssh like this:
./configure CC=gcc LDFLAGS="-L/usr/tgcware/lib -R/usr/tgcware/lib"
CPPFLAGS="-I/usr/tgcware/include" --prefix=/tmp/ossh
make -j4

Then running the testsuite with 'make tests' or for just the rekey tests
'make tests LTESTS=rekey SKIP_UNIT=1'

I don't have any single processor SPARC systems I can test with but I
can off-line cpus. I just did that on the Solaris 7 system and with just
a single cpu online and no revert the rekey test ran to completion with
no hangs.


> Also a copy of the ssh.log and sshd.log from a hung instance (off-list
> is fine)?
>

This is from the Solaris 9 system with all 4 cpus online.
It hung almost immediately:
make[1]: Entering directory
`/export/home/tgc/buildpkg/openssh/src/openssh-git/regress'
run test rekey.sh ...
client rekey KexAlgorithms=diffie-hellman-group1-sha1
client rekey KexAlgorithms=diffie-hellman-group14-sha1
client rekey KexAlgorithms=diffie-hellman-group14-sha256

At this point all ssh(d) processses are idle.

I've uploaded the logs here:
https://jupiterrise.com/tmp/?C=M;O=D
They should be at the top of the list.

>>     the other, and then a <defunct> child of the still running child.
>>     With truss I see that the client is still doing poll().
>
> if you truss the sshd that's still alive and hung what's it doing?
>

From ps these are the relevant processes:

F UID PID PPID %C PRI NI SZ RSS WCHAN S TT TIME COMMAND
0 3000 27640 27639 0 59 20 5376 3040 300d5f53020 S pts/13 0:00
/bin/bash
/export/home/tgc/buildpkg/openssh/src/openssh-git/regress/test-exec.sh
/export/home/tgc/buildpkg/openssh/src/openssh-git/regress
/export/home/tgc/buildpkg/openssh/src/openssh-git/regress/rekey.sh
0 3000 27640 27639 0 59 20 5376 3040 300d5f53020 S pts/13 0:00
/bin/bash
/export/home/tgc/buildpkg/openssh/src/openssh-git/regress/test-exec.sh
/export/home/tgc/buildpkg/openssh/src/openssh-git/regress
/export/home/tgc/buildpkg/openssh/src/openssh-git/regress/rekey.sh
0 3000 27772 27640 0 59 20 7200 4640 301226e40b2 S pts/13 0:02
/export/home/tgc/buildpkg/openssh/src/openssh-git/ssh
-E/export/home/tgc/buildpkg/openssh/src/openssh-git/regress/ssh.log
-oRekeyLimit=256k -oCompression=no -v -F
/export/home/tgc/buildpkg/openssh/src/openssh-git/regress/ssh_proxy
somehost cat >
/export/home/tgc/buildpkg/openssh/src/openssh-git/regress/copy
0 3000 27773 27772 0 59 20 7336 4696 30043c38b02 S pts/13 0:00
/export/home/tgc/buildpkg/openssh/src/openssh-git/sshd -i -f
/export/home/tgc/buildpkg/openssh/src/openssh-git/regress/sshd_proxy
-E/export/home/tgc/buildpkg/openssh/src/openssh-git/regress/sshd.log
0 3000 27775 27773 0 59 20 7616 2512 300f315a502 S pts/13 0:00
/export/home/tgc/buildpkg/openssh/src/openssh-git/sshd -i -f
/export/home/tgc/buildpkg/openssh/src/openssh-git/regress/sshd_proxy
-E/export/home/tgc/buildpkg/openssh/src/openssh-git/regress/sshd.log
0 3000 27776 27775 0 0 0 0 Z 0:00
<defunct>


Not much to see with truss:

$ truss -p 27772
poll(0xFFBFCD28, 1, -1) (sleeping...)

$ truss -p 27773
poll(0xFFBFDB5C, 1, -1) (sleeping...)

$ truss -p 27775
poll(0xFFBFD8C8, 1, -1) (sleeping...)


-tgc
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: Call for testing: OpenSSH 8.7 [ In reply to ]
On Wed, 18 Aug 2021, Tom G. Christensen wrote:

> I've uploaded the logs here:
> https://jupiterrise.com/tmp/?C=M;O=D
> They should be at the top of the list.

I don't have permission to read
https://jupiterrise.com/tmp/openssh-pre-8.7p1-solaris9-rekey-hang-ssh.log

-d
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev

1 2  View All