ssh: permit empty but non-nil HostKeyAlgorithms, KeyExchanges, Ciphers, MACs The documentation of ClientConfig.HostKeyAlgorithms says: If empty, a reasonable default is used. However, if HostKeyAlgorithms is empty but non-nil, the reasonable default won't be applied, and the SSH handshake will fail. Fix this by changing the nil check to a length check. While here, do the same for KeyExchanges, Ciphers, MACs in Config. Change-Id: I1b3d2d2159f3c7d57a9a690ad04f1f6818b39a5c Reviewed-on: https://go-review.googlesource.com/c/crypto/+/800080 Reviewed-by: Nicola Murino <nicola.murino@gmail.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Filippo Valsorda <filippo@golang.org> Reviewed-by: Carlos Amedee <carlos@golang.org> Reviewed-by: Cherry Mui <cherryyz@google.com> Auto-Submit: Nicola Murino <nicola.murino@gmail.com>
This repository holds supplementary Go cryptography packages.
This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://go.dev/doc/contribute.
The git repository is https://go.googlesource.com/crypto.
The main issue tracker for the crypto repository is located at https://go.dev/issues. Prefix your issue with “x/crypto:” in the subject line, so it is easy to find.
Note that contributions to the cryptography package receive additional scrutiny due to their sensitive nature. Patches may take longer than normal to receive feedback.