crypto/ssh
Han-Wen Nienhuys 6fb066875c ssh: make sure we execute the initial key exchange only once
The initial kex is started from both sides simultaneously, and before,
we could consume the the incoming kex request before we consumed from
our internal channel. This would result in initiating a key exchange
just after completing the initial one, which is not only an extra
delay, but also an error when using OpenSSH (OpenSSH does not support
key exchanges during user authentication).

Change-Id: Ia7e0748ea2bca80ae97d187bcf2931ab6422276b
Reviewed-on: https://go-review.googlesource.com/35851
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Adam Langley <agl@golang.org>
2017-01-30 08:21:40 +00:00
..
agent x/crypto/ssh/agent: honor constraints on keys in the keyring. 2016-09-22 17:06:29 +00:00
terminal ssh/terminal: consume data before checking for an error. 2017-01-17 00:48:27 +00:00
test x/crypto: fix typos 2016-07-06 16:40:51 +00:00
testdata x/crypto/ssh: ParsePrivateKey errors out with encrypted private keys 2016-09-29 09:05:14 +00:00
benchmark_test.go go.crypto/ssh: import gosshnew. 2014-04-09 13:57:52 -07:00
buffer.go go.crypto/ssh: import gosshnew. 2014-04-09 13:57:52 -07:00
buffer_test.go go.crypto/ssh: import gosshnew. 2014-04-09 13:57:52 -07:00
certs.go x/crypto/ssh: add support for ed25519 keys 2016-05-12 13:28:31 +00:00
certs_test.go ssh: fix flake in TestHostKeyCert 2015-08-02 23:53:45 +00:00
channel.go ssh: soft code internal channel size for testing purposes 2017-01-23 10:44:52 +00:00
cipher.go x/crypto/ssh: add 3des-cbc as a non-default cipher 2016-05-15 12:48:58 +00:00
cipher_test.go x/crypto: fix typos 2016-07-06 16:40:51 +00:00
client.go ssh: soft code internal channel size for testing purposes 2017-01-23 10:44:52 +00:00
client_auth.go ssh: rewrite (re)keying logic. 2017-01-16 13:08:31 +00:00
client_auth_test.go ssh: make client auth tests less chatty. 2017-01-13 19:40:33 +00:00
client_test.go go.crypto/ssh: import gosshnew. 2014-04-09 13:57:52 -07:00
common.go x/crypto/ssh: add ed25519 certs to supportedHostKeyAlgos 2016-07-14 17:11:52 +00:00
connection.go crypto/ssh: keep user in ConnMetadata if NoClientAuth is used 2016-08-24 15:16:49 +00:00
doc.go crypto/ssh: fix the links to the SSH protocol documents 2015-04-16 17:18:06 +00:00
example_test.go ssh: fix height/width order in RequestPty example 2016-10-04 13:31:33 +00:00
handshake.go ssh: make sure we execute the initial key exchange only once 2017-01-30 08:21:40 +00:00
handshake_test.go ssh: soft code internal channel size for testing purposes 2017-01-23 10:44:52 +00:00
kex.go ssh: bound DH public values to [2, p-2]. 2016-10-10 21:14:46 +00:00
kex_test.go x/crypto/ssh: close memPipe after running kex test. 2015-08-17 22:17:06 +00:00
keys.go crypto/ssh: fix parsing order for ssh.ParseDSAPrivateKey 2017-01-18 01:33:05 +00:00
keys_test.go x/crypto/ssh: Add FingerprintLegacyMD5 and FingerprintSHA256 methods 2016-11-22 14:27:12 +00:00
mac.go ssh: add hmac-sha2-256. 2015-05-14 18:39:32 +00:00
mempipe_test.go ssh: fix spelling of test so that it runs 2015-07-15 23:39:58 +00:00
messages.go x/crypto/ssh: support more keytypes in the agent. 2016-04-25 17:01:51 +00:00
messages_test.go x/crypto/ssh: support more keytypes in the agent. 2016-04-25 17:01:51 +00:00
mux.go ssh: soft code internal channel size for testing purposes 2017-01-23 10:44:52 +00:00
mux_test.go x/crypto/ssh: interpret disconnect message as error in the transport layer. 2016-03-29 14:38:23 +00:00
server.go ssh: rewrite (re)keying logic. 2017-01-16 13:08:31 +00:00
session.go x/crypto/ssh: handle missing exit status more gracefully. 2016-07-06 18:05:22 +00:00
session_test.go x/crypto/ssh: handle missing exit status more gracefully. 2016-07-06 18:05:22 +00:00
tcpip.go crypto/ssh: Handle error in dial to avoid a goroutine leak 2015-08-08 08:51:02 +00:00
tcpip_test.go go.crypto/ssh: import gosshnew. 2014-04-09 13:57:52 -07:00
testdata_test.go x/crypto: fix typos 2016-07-06 16:40:51 +00:00
transport.go ssh: rewrite (re)keying logic. 2017-01-16 13:08:31 +00:00
transport_test.go go.crypto/ssh: import gosshnew. 2014-04-09 13:57:52 -07:00