diff options
author | Ryosuke Yamazaki <ryosuke.yamazaki@mac.com> | 2011-12-16 17:11:53 +0900 |
---|---|---|
committer | Ryosuke Yamazaki <ryosuke.yamazaki@mac.com> | 2011-12-16 17:11:53 +0900 |
commit | 27a6556e404f1c80570fcbb53e7cb01a7ea9f615 (patch) | |
tree | d983c431c7912530b3361e3bc1e6f2db4ce57bfe | |
parent | 4339264156536df1466c4d8433592d1e06cf7f54 (diff) | |
download | net-ssh-27a6556e404f1c80570fcbb53e7cb01a7ea9f615.tar.gz |
Compatibile with OpenSSH
-rw-r--r-- | lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb | 7 | ||||
-rw-r--r-- | test/transport/kex/test_diffie_hellman_group_exchange_sha1.rb | 4 |
2 files changed, 7 insertions, 4 deletions
diff --git a/lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb b/lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb index da47ec2..8fb69e8 100644 --- a/lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb +++ b/lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb @@ -19,7 +19,10 @@ module Net::SSH::Transport::Kex # Compute the number of bits needed for the given number of bytes. def compute_need_bits - need_bits = data[:need_bytes] * 8 + + # for Compatibility: OpenSSH requires (need_bits * 2 + 1) length of parameter + need_bits = data[:need_bytes] * 8 * 2 + 1 + if need_bits < MINIMUM_BITS need_bits = MINIMUM_BITS elsif need_bits > MAXIMUM_BITS @@ -74,4 +77,4 @@ module Net::SSH::Transport::Kex end end -end
\ No newline at end of file +end diff --git a/test/transport/kex/test_diffie_hellman_group_exchange_sha1.rb b/test/transport/kex/test_diffie_hellman_group_exchange_sha1.rb index dc5a2bc..b19afae 100644 --- a/test/transport/kex/test_diffie_hellman_group_exchange_sha1.rb +++ b/test/transport/kex/test_diffie_hellman_group_exchange_sha1.rb @@ -18,7 +18,7 @@ module Transport; module Kex def test_exchange_with_fewer_than_maximum_bits_uses_need_bits dh_options :need_bytes => 500 - need_bits(4000) + need_bits(8001) assert_nothing_raised { exchange! } end @@ -89,4 +89,4 @@ module Transport; module Kex end end -end; end
\ No newline at end of file +end; end |