summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Fazekas <mfazekas@szemafor.com>2019-10-25 19:30:38 +0200
committerMiklos Fazekas <mfazekas@szemafor.com>2019-10-25 19:30:38 +0200
commitf52ea64977dd7dd30fbc49ac651cb5f784b0818c (patch)
tree0ff3a2f29c8a24dc814037c30de1140c90293428
parent51c0dce218783c7eb82e5b45d65cfcb20f733288 (diff)
downloadnet-ssh-gh-pages.tar.gz
Update docsgh-pages
-rw-r--r--CHANGES_txt.html88
-rw-r--r--DL.html2
-rw-r--r--DL/Fiddle.html2
-rw-r--r--LICENSE_txt.html4
-rw-r--r--Net.html2
-rw-r--r--Net/SSH.html66
-rw-r--r--Net/SSH/Authentication.html2
-rw-r--r--Net/SSH/Authentication/Agent.html40
-rw-r--r--Net/SSH/Authentication/Agent/Comment.html2
-rw-r--r--Net/SSH/Authentication/AgentError.html2
-rw-r--r--Net/SSH/Authentication/AgentNotAvailable.html2
-rw-r--r--Net/SSH/Authentication/Certificate.html24
-rw-r--r--Net/SSH/Authentication/Constants.html2
-rw-r--r--Net/SSH/Authentication/DisallowedMethod.html2
-rw-r--r--Net/SSH/Authentication/ED25519.html2
-rw-r--r--Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader.html235
-rw-r--r--Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader/DecryptError.html203
-rw-r--r--Net/SSH/Authentication/ED25519/PrivKey.html114
-rw-r--r--Net/SSH/Authentication/ED25519/PubKey.html53
-rw-r--r--Net/SSH/Authentication/ED25519/SigningKeyFromFile.html19
-rw-r--r--Net/SSH/Authentication/ED25519Loader.html11
-rw-r--r--Net/SSH/Authentication/KeyManager.html43
-rw-r--r--Net/SSH/Authentication/KeyManagerError.html2
-rw-r--r--Net/SSH/Authentication/Methods.html2
-rw-r--r--Net/SSH/Authentication/Methods/Abstract.html14
-rw-r--r--Net/SSH/Authentication/Methods/Hostbased.html2
-rw-r--r--Net/SSH/Authentication/Methods/KeyboardInteractive.html4
-rw-r--r--Net/SSH/Authentication/Methods/None.html22
-rw-r--r--Net/SSH/Authentication/Methods/Password.html26
-rw-r--r--Net/SSH/Authentication/Methods/Publickey.html2
-rw-r--r--Net/SSH/Authentication/Pageant.html2
-rw-r--r--Net/SSH/Authentication/Pageant/Socket.html42
-rw-r--r--Net/SSH/Authentication/Pageant/Win.html8
-rw-r--r--Net/SSH/Authentication/Pageant/Win/LibC.html2
-rw-r--r--Net/SSH/Authentication/Pageant/Win/LibC/FFI.html2
-rw-r--r--Net/SSH/Authentication/Pageant/Win/LibC/FFI/Library.html2
-rw-r--r--Net/SSH/Authentication/Session.html23
-rw-r--r--Net/SSH/AuthenticationFailed.html2
-rw-r--r--Net/SSH/Buffer.html233
-rw-r--r--Net/SSH/BufferedIo.html18
-rw-r--r--Net/SSH/ChannelOpenFailed.html4
-rw-r--r--Net/SSH/ChannelRequestFailed.html2
-rw-r--r--Net/SSH/Config.html79
-rw-r--r--Net/SSH/Connection.html2
-rw-r--r--Net/SSH/Connection/Channel.html102
-rw-r--r--Net/SSH/Connection/Constants.html2
-rw-r--r--Net/SSH/Connection/EventLoop.html32
-rw-r--r--Net/SSH/Connection/Keepalive.html22
-rw-r--r--Net/SSH/Connection/Session.html94
-rw-r--r--Net/SSH/Connection/Session/NilChannel.html6
-rw-r--r--Net/SSH/Connection/Session/StringWithExitstatus.html4
-rw-r--r--Net/SSH/Connection/SingleSessionEventLoop.html10
-rw-r--r--Net/SSH/Connection/Term.html2
-rw-r--r--Net/SSH/ConnectionTimeout.html2
-rw-r--r--Net/SSH/Disconnect.html2
-rw-r--r--Net/SSH/Exception.html2
-rw-r--r--Net/SSH/ForwardedBufferedIo.html2
-rw-r--r--Net/SSH/HostKeyError.html16
-rw-r--r--Net/SSH/HostKeyMismatch.html2
-rw-r--r--Net/SSH/HostKeyUnknown.html2
-rw-r--r--Net/SSH/HostKeys.html24
-rw-r--r--Net/SSH/KeyFactory.html27
-rw-r--r--Net/SSH/KeyFactory/KeyType.html226
-rw-r--r--Net/SSH/KeyFactory/OpenSSHPrivateKeyType.html224
-rw-r--r--Net/SSH/KeyFactory/OpenSSLDSAKeyType.html189
-rw-r--r--Net/SSH/KeyFactory/OpenSSLECKeyType.html189
-rw-r--r--Net/SSH/KeyFactory/OpenSSLKeyTypeBase.html224
-rw-r--r--Net/SSH/KeyFactory/OpenSSLPKeyType.html224
-rw-r--r--Net/SSH/KeyFactory/OpenSSLRSAKeyType.html189
-rw-r--r--Net/SSH/KnownHosts.html110
-rw-r--r--Net/SSH/Loggable.html12
-rw-r--r--Net/SSH/Packet.html12
-rw-r--r--Net/SSH/Prompt.html8
-rw-r--r--Net/SSH/Prompt/Prompter.html8
-rw-r--r--Net/SSH/Proxy.html2
-rw-r--r--Net/SSH/Proxy/Command.html74
-rw-r--r--Net/SSH/Proxy/ConnectError.html2
-rw-r--r--Net/SSH/Proxy/Error.html2
-rw-r--r--Net/SSH/Proxy/HTTP.html33
-rw-r--r--Net/SSH/Proxy/HTTPS.html6
-rw-r--r--Net/SSH/Proxy/HTTPS/SSLSocketCompatibility.html4
-rw-r--r--Net/SSH/Proxy/Jump.html12
-rw-r--r--Net/SSH/Proxy/SOCKS4.html6
-rw-r--r--Net/SSH/Proxy/SOCKS5.html4
-rw-r--r--Net/SSH/Proxy/UnauthorizedError.html2
-rw-r--r--Net/SSH/Service.html2
-rw-r--r--Net/SSH/Service/Forward.html36
-rw-r--r--Net/SSH/Test.html16
-rw-r--r--Net/SSH/Test/Channel.html32
-rw-r--r--Net/SSH/Test/Extensions.html2
-rw-r--r--Net/SSH/Test/Extensions/BufferedIo.html4
-rw-r--r--Net/SSH/Test/Extensions/Channel.html4
-rw-r--r--Net/SSH/Test/Extensions/IO.html6
-rw-r--r--Net/SSH/Test/Extensions/IO/ClassMethods.html16
-rw-r--r--Net/SSH/Test/Extensions/PacketStream.html14
-rw-r--r--Net/SSH/Test/Kex.html10
-rw-r--r--Net/SSH/Test/LocalPacket.html18
-rw-r--r--Net/SSH/Test/Packet.html68
-rw-r--r--Net/SSH/Test/RemotePacket.html8
-rw-r--r--Net/SSH/Test/Script.html16
-rw-r--r--Net/SSH/Test/Socket.html18
-rw-r--r--Net/SSH/Timeout.html2
-rw-r--r--Net/SSH/Transport.html2
-rw-r--r--Net/SSH/Transport/Algorithms.html75
-rw-r--r--Net/SSH/Transport/CTR.html62
-rw-r--r--Net/SSH/Transport/CipherFactory.html53
-rw-r--r--Net/SSH/Transport/Constants.html22
-rw-r--r--Net/SSH/Transport/HMAC.html6
-rw-r--r--Net/SSH/Transport/HMAC/Abstract.html98
-rw-r--r--Net/SSH/Transport/HMAC/MD5.html2
-rw-r--r--Net/SSH/Transport/HMAC/MD5/OpenSSL.html2
-rw-r--r--Net/SSH/Transport/HMAC/MD5/OpenSSL/Digest.html2
-rw-r--r--Net/SSH/Transport/HMAC/MD5_96.html2
-rw-r--r--Net/SSH/Transport/HMAC/None.html2
-rw-r--r--Net/SSH/Transport/HMAC/RIPEMD160.html2
-rw-r--r--Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL.html2
-rw-r--r--Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL/Digest.html2
-rw-r--r--Net/SSH/Transport/HMAC/SHA1.html2
-rw-r--r--Net/SSH/Transport/HMAC/SHA1/OpenSSL.html2
-rw-r--r--Net/SSH/Transport/HMAC/SHA1/OpenSSL/Digest.html2
-rw-r--r--Net/SSH/Transport/HMAC/SHA1_96.html2
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_256.html2
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_256/OpenSSL.html96
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_256/OpenSSL/Digest.html96
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_256_96.html2
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_256_Etm.html106
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL.html96
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL/Digest.html96
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_512.html2
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_512/OpenSSL.html96
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_512/OpenSSL/Digest.html96
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_512_96.html2
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_512_Etm.html106
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL.html96
-rw-r--r--Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL/Digest.html96
-rw-r--r--Net/SSH/Transport/IdentityCipher.html20
-rw-r--r--Net/SSH/Transport/Kex.html2
-rw-r--r--Net/SSH/Transport/Kex/Abstract.html342
-rw-r--r--Net/SSH/Transport/Kex/Abstract5656.html158
-rw-r--r--Net/SSH/Transport/Kex/Curve25519Sha256.html158
-rw-r--r--Net/SSH/Transport/Kex/Curve25519Sha256Loader.html207
-rw-r--r--Net/SSH/Transport/Kex/DiffieHellmanGroup14SHA1.html19
-rw-r--r--Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html212
-rw-r--r--Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA1.html22
-rw-r--r--Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA256.html29
-rw-r--r--Net/SSH/Transport/Kex/EcdhSHA2NistP256.html95
-rw-r--r--Net/SSH/Transport/Kex/EcdhSHA2NistP384.html6
-rw-r--r--Net/SSH/Transport/Kex/EcdhSHA2NistP521.html6
-rw-r--r--Net/SSH/Transport/KeyExpander.html12
-rw-r--r--Net/SSH/Transport/OpenSSLAESCTR.html313
-rw-r--r--Net/SSH/Transport/PacketStream.html105
-rw-r--r--Net/SSH/Transport/ServerVersion.html4
-rw-r--r--Net/SSH/Transport/Session.html37
-rw-r--r--Net/SSH/Transport/Session/CompatibleVerifier.html235
-rw-r--r--Net/SSH/Transport/State.html46
-rw-r--r--Net/SSH/Verifiers.html2
-rw-r--r--Net/SSH/Verifiers/AcceptNew.html209
-rw-r--r--Net/SSH/Verifiers/AcceptNewOrLocalTunnel.html167
-rw-r--r--Net/SSH/Verifiers/Always.html213
-rw-r--r--Net/SSH/Verifiers/Never.html193
-rw-r--r--Net/SSH/Version.html12
-rw-r--r--OpenSSL.html2
-rw-r--r--OpenSSL/BN.html4
-rw-r--r--OpenSSL/PKey.html2
-rw-r--r--OpenSSL/PKey/DH.html14
-rw-r--r--OpenSSL/PKey/DSA.html40
-rw-r--r--OpenSSL/PKey/EC.html53
-rw-r--r--OpenSSL/PKey/EC/Point.html193
-rw-r--r--OpenSSL/PKey/PKey.html53
-rw-r--r--OpenSSL/PKey/RSA.html20
-rw-r--r--README_md.html429
-rw-r--r--String.html4
-rw-r--r--THANKS_txt.html4
-rw-r--r--created.rid169
-rw-r--r--index.html328
-rw-r--r--js/navigation.js.gzbin1021 -> 1021 bytes
-rw-r--r--js/search_index.js2
-rw-r--r--js/search_index.js.gzbin28799 -> 30262 bytes
-rw-r--r--js/searcher.js.gzbin1694 -> 1694 bytes
-rw-r--r--table_of_contents.html966
180 files changed, 8178 insertions, 2061 deletions
diff --git a/CHANGES_txt.html b/CHANGES_txt.html
index 43fc74d..9895a06 100644
--- a/CHANGES_txt.html
+++ b/CHANGES_txt.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>CHANGES - net-ssh 4.2.0</title>
+<title>CHANGES - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "./";
@@ -56,6 +56,20 @@
<h3>Table of Contents</h3>
<ul class="link-list" role="directory">
+ <li><a href="#label-6.0.0+beta1">6.0.0 beta1</a>
+ <li><a href="#label-5.2.0">5.2.0</a>
+ <li><a href="#label-5.2.0.rc3">5.2.0.rc3</a>
+ <li><a href="#label-5.2.0.rc2">5.2.0.rc2</a>
+ <li><a href="#label-5.2.0.rc1">5.2.0.rc1</a>
+ <li><a href="#label-5.1.0">5.1.0</a>
+ <li><a href="#label-5.1.0.rc1">5.1.0.rc1</a>
+ <li><a href="#label-5.0.2">5.0.2</a>
+ <li><a href="#label-5.0.1">5.0.1</a>
+ <li><a href="#label-5.0.0">5.0.0</a>
+ <li><a href="#label-5.0.0.rc2">5.0.0.rc2</a>
+ <li><a href="#label-5.0.0.rc1">5.0.0.rc1</a>
+ <li><a href="#label-5.0.0.beta2">5.0.0.beta2</a>
+ <li><a href="#label-5.0.0.beta1">5.0.0.beta1</a>
<li><a href="#label-4.2.0.rc2">4.2.0.rc2</a>
<li><a href="#label-4.2.0.rc1">4.2.0.rc1</a>
<li><a href="#label-4.1.0">4.1.0</a>
@@ -165,7 +179,7 @@
<li><a href="./LICENSE_txt.html">LICENSE</a>
- <li><a href="./README_rdoc.html">README</a>
+ <li><a href="./README_md.html">README</a>
<li><a href="./THANKS_txt.html">THANKS</a>
@@ -177,6 +191,74 @@
<main role="main" aria-label="Page CHANGES.txt">
+<h3 id="label-6.0.0+beta1">6.0.0 beta1<span><a href="#label-6.0.0+beta1">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<pre>* curve25519sha256 support [Florian Wininger ,#690]
+* disabled insecure algs [Florian Wininger , #709]</pre>
+
+<h3 id="label-5.2.0">5.2.0<span><a href="#label-5.2.0">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<h3 id="label-5.2.0.rc3">5.2.0.rc3<span><a href="#label-5.2.0.rc3">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<pre>* Fix check_host_ip read from config
+* Support ssh-ed25519 in kown hosts</pre>
+
+<h3 id="label-5.2.0.rc2">5.2.0.rc2<span><a href="#label-5.2.0.rc2">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<pre>* Read check_host_ip from ssh config files</pre>
+
+<h3 id="label-5.2.0.rc1">5.2.0.rc1<span><a href="#label-5.2.0.rc1">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<pre>* Interpret * and ? in know_hosts file [Romain Tartière, #660]
+* New :check_host_ip so ip checking can be disabled in known hosts [Romain Tartière, #656]</pre>
+
+<h3 id="label-5.1.0">5.1.0<span><a href="#label-5.1.0">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<h3 id="label-5.1.0.rc1">5.1.0.rc1<span><a href="#label-5.1.0.rc1">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<pre>* Support new OpenSSH private key format for rsa - bcrypt for rsa (ed25519 already supported) [#646]
+* Support IdentityAgent is ssh config [Frank Groeneveld, #645]
+* Improve Match processing in ssh config [Aleksandrs Ļedovskis, #642]
+* Ignore signature verification when verify_host_key is never [Piotr Kliczewski, #641]
+* Alg preference was changed to prefer stronger encryptions [Tray, #637]</pre>
+
+<h3 id="label-5.0.2">5.0.2<span><a href="#label-5.0.2">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<pre>* fix ctr for jruby [#612]</pre>
+
+<h3 id="label-5.0.1">5.0.1<span><a href="#label-5.0.1">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<pre>* default_keys were not loaded even if no keys or key_data options specified [#607]</pre>
+
+<h3 id="label-5.0.0">5.0.0<span><a href="#label-5.0.0">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<pre>* Breaking change: ed25519 now requires ed25519 gem instead of RbNaCl gem [#563]
+* Verify_host_key options rename (true, false, :very, :secure depreacted new equivalents are :never, :accept_new_or_local_tunnel :accept_new :always) [Jared Beck, #595]</pre>
+
+<h3 id="label-5.0.0.rc2">5.0.0.rc2<span><a href="#label-5.0.0.rc2">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<pre>* Add .dll extensions to dlopen on cygwin [#603]
+* Fix host certificate validation [#601]</pre>
+
+<h3 id="label-5.0.0.rc1">5.0.0.rc1<span><a href="#label-5.0.0.rc1">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<pre>* Fix larger than 4GB file transfers [#599]
+* Update HTTP proxy to version 1.1 [Connor Dunn, #597]</pre>
+
+<h3 id="label-5.0.0.beta2">5.0.0.beta2<span><a href="#label-5.0.0.beta2">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<pre>* Support for sha256 pubkey fingerprint [Tom Maher, #585]
+* Don&#39;t try to load default_keys if key_data option is used [Josh Larson, #589]
+* Added fingerprint_hash defaulting to SHA256 as fingerprint format, and MD5 can be used as an option [Miklós Fazekas, #591]</pre>
+
+<h3 id="label-5.0.0.beta1">5.0.0.beta1<span><a href="#label-5.0.0.beta1">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<pre>* Don&#39;t leave proxy command as zombie on timeout [DimitriosLisenko, #560]
+* Use OpenSSL for aes*-ctr for up to 5x throughput improvement [Miklós Fazekas, Harald Sitter, #570]
+* Optimize slice! usage in CTR for up to 2x throughput improvement [Harald Sitter, #569]
+* Replace RbNaCl dependency with ed25519 gem [Tony Arcieri ,#563]
+* Add initial Match support [Kasumi Hanazuki, #553]</pre>
+
<h3 id="label-4.2.0.rc2">4.2.0.rc2<span><a href="#label-4.2.0.rc2">&para;</a> <a href="#top">&uarr;</a></span></h3>
<pre>* Fix double close bug on auth failure (or ruby 2.2 or earlier) [#538]</pre>
@@ -447,7 +529,7 @@ versions [mfazekas]</p>
<p>Remove advertised algorithms that were not working (ssh-rsa-cert-* *ed25519
acm*-gcm@openssh.com) [mfazekas]</p>
</li><li>
-<p>Unkown algorithms now ignored instead of failed [mfazekas]</p>
+<p>Unknown algorithms now ignored instead of failed [mfazekas]</p>
</li><li>
<p>Configuration change: Asks for password with password auth (up to
number_of_password_prompts) [mfazekas]</p>
diff --git a/DL.html b/DL.html
index 5e135dd..9180f96 100644
--- a/DL.html
+++ b/DL.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module DL - net-ssh 4.2.0</title>
+<title>module DL - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "./";
diff --git a/DL/Fiddle.html b/DL/Fiddle.html
index 63513ff..4285349 100644
--- a/DL/Fiddle.html
+++ b/DL/Fiddle.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module DL::Fiddle - net-ssh 4.2.0</title>
+<title>module DL::Fiddle - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
diff --git a/LICENSE_txt.html b/LICENSE_txt.html
index fa06967..1c530a8 100644
--- a/LICENSE_txt.html
+++ b/LICENSE_txt.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>LICENSE - net-ssh 4.2.0</title>
+<title>LICENSE - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "./";
@@ -63,7 +63,7 @@
<li><a href="./LICENSE_txt.html">LICENSE</a>
- <li><a href="./README_rdoc.html">README</a>
+ <li><a href="./README_md.html">README</a>
<li><a href="./THANKS_txt.html">THANKS</a>
diff --git a/Net.html b/Net.html
index 3b08631..77ea3dc 100644
--- a/Net.html
+++ b/Net.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net - net-ssh 4.2.0</title>
+<title>module Net - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "./";
diff --git a/Net/SSH.html b/Net/SSH.html
index eb045ca..2ca9c4d 100644
--- a/Net/SSH.html
+++ b/Net/SSH.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH - net-ssh 4.2.0</title>
+<title>module Net::SSH - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
@@ -207,7 +207,7 @@ option.</p>
<div class="method-source-code" id="assign_defaults-source">
- <pre><span class="ruby-comment"># File lib/net/ssh.rb, line 277</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh.rb, line 286</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">assign_defaults</span>(<span class="ruby-identifier">options</span>)
<span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">options</span>[<span class="ruby-value">:logger</span>]
<span class="ruby-identifier">options</span>[<span class="ruby-value">:logger</span>] = <span class="ruby-constant">Logger</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">STDERR</span>)
@@ -216,7 +216,7 @@ option.</p>
<span class="ruby-identifier">options</span>[<span class="ruby-value">:password_prompt</span>] <span class="ruby-operator">||=</span> <span class="ruby-constant">Prompt</span>.<span class="ruby-identifier">default</span>(<span class="ruby-identifier">options</span>)
- [<span class="ruby-value">:password</span>, <span class="ruby-value">:passphrase</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span><span class="ruby-operator">|</span>
+ <span class="ruby-operator">%</span>[<span class="ruby-identifier">password</span> <span class="ruby-identifier">passphrase</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">key</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-identifier">key</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">key</span>].<span class="ruby-identifier">nil?</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
@@ -259,13 +259,13 @@ of all supported options.</p>
<div class="method-source-code" id="configuration_for-source">
- <pre><span class="ruby-comment"># File lib/net/ssh.rb, line 267</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh.rb, line 276</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">configuration_for</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">use_ssh_config</span>)
<span class="ruby-identifier">files</span> = <span class="ruby-keyword">case</span> <span class="ruby-identifier">use_ssh_config</span>
- <span class="ruby-keyword">when</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">then</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Config</span>.<span class="ruby-identifier">expandable_default_files</span>
- <span class="ruby-keyword">when</span> <span class="ruby-keyword">false</span>, <span class="ruby-keyword">nil</span> <span class="ruby-keyword">then</span> <span class="ruby-keyword">return</span> {}
- <span class="ruby-keyword">else</span> <span class="ruby-constant">Array</span>(<span class="ruby-identifier">use_ssh_config</span>)
- <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">then</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Config</span>.<span class="ruby-identifier">expandable_default_files</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-keyword">false</span>, <span class="ruby-keyword">nil</span> <span class="ruby-keyword">then</span> <span class="ruby-keyword">return</span> {}
+ <span class="ruby-keyword">else</span> <span class="ruby-constant">Array</span>(<span class="ruby-identifier">use_ssh_config</span>)
+ <span class="ruby-keyword">end</span>
<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Config</span>.<span class="ruby-identifier">for</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">files</span>)
<span class="ruby-keyword">end</span></pre>
@@ -329,6 +329,9 @@ href="SSH/Service/Forward.html">Net::SSH::Service::Forward</a>.)</p>
<p>:bind_address =&gt; the IP address on the connecting machine to use in
establishing connection. (:bind_address is discarded if :proxy is set.)</p>
</li><li>
+<p>:check_host_ip =&gt; Also ckeck IP address when connecting to remote host.
+Defaults to <code>true</code>.</p>
+</li><li>
<p>:compression =&gt; the compression algorithm to use, or <code>true</code>
to use whatever is supported.</p>
</li><li>
@@ -466,17 +469,34 @@ href="SSH/Prompt.html">Net::SSH::Prompt</a></p>
<p>:agent_socket_factory =&gt; enables the user to pass a lambda/block that
will serve as the socket factory</p>
-<pre>Net::SSH::start(user,host,agent_socket_factory: -&gt;{ UNIXSocket.open(&#39;/foo/bar&#39;) })
+<pre>Net::SSH.start(host,user,agent_socket_factory: -&gt;{ UNIXSocket.open(&#39;/foo/bar&#39;) })
example: -&gt;{ UNIXSocket.open(&#39;/foo/bar&#39;)}</pre>
</li><li>
-<p>:verify_host_key =&gt; either false, true, :very, or :secure specifying how
-strict host-key verification should be (in increasing order here). You can
-also provide an own Object which responds to <code>verify</code>. The
-argument given to <code>verify</code> is a hash consisting of the
+<p>:verify_host_key =&gt; specify how strict host-key verification should be.
+In order of increasing strictness:</p>
+<ul><li>
+<p>:never (very insecure) <a
+href="SSH/Verifiers/Never.html">::Net::SSH::Verifiers::Never</a></p>
+</li><li>
+<p>:accept_new_or_local_tunnel (insecure) <a
+href="SSH/Verifiers/AcceptNewOrLocalTunnel.html">::Net::SSH::Verifiers::AcceptNewOrLocalTunnel</a></p>
+</li><li>
+<p>:accept_new (insecure) <a
+href="SSH/Verifiers/AcceptNew.html">::Net::SSH::Verifiers::AcceptNew</a></p>
+</li><li>
+<p>:always (secure) <a
+href="SSH/Verifiers/Always.html">::Net::SSH::Verifiers::Always</a></p>
+</li></ul>
+
+<p>You can also provide an own Object which responds to <code>verify</code>.
+The argument given to <code>verify</code> is a hash consisting of the
<code>:key</code>, the <code>:key_blob</code>, the
<code>:fingerprint</code> and the <code>:session</code>. Returning true
accepts the host key, returning false declines it and closes the
connection.</p>
+</li><li>
+<p>:fingerprint_hash =&gt; &#39;MD5&#39; or &#39;SHA256&#39;, defaults to
+&#39;SHA256&#39;</p>
</li></ul>
<p>If <code>user</code> parameter is nil it defaults to USER from ssh_config,
@@ -486,7 +506,7 @@ or local username</p>
<div class="method-source-code" id="start-source">
- <pre><span class="ruby-comment"># File lib/net/ssh.rb, line 206</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh.rb, line 213</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">start</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">user</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={}, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">invalid_options</span> = <span class="ruby-identifier">options</span>.<span class="ruby-identifier">keys</span> <span class="ruby-operator">-</span> <span class="ruby-constant">VALID_OPTIONS</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">invalid_options</span>.<span class="ruby-identifier">any?</span>
@@ -500,6 +520,8 @@ or local username</p>
<span class="ruby-identifier">options</span> = <span class="ruby-identifier">configuration_for</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">options</span>.<span class="ruby-identifier">fetch</span>(<span class="ruby-value">:config</span>, <span class="ruby-keyword">true</span>)).<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">options</span>)
<span class="ruby-identifier">host</span> = <span class="ruby-identifier">options</span>.<span class="ruby-identifier">fetch</span>(<span class="ruby-value">:host_name</span>, <span class="ruby-identifier">host</span>)
+ <span class="ruby-identifier">options</span>[<span class="ruby-value">:check_host_ip</span>] = <span class="ruby-keyword">true</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:check_host_ip</span>)
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:non_interactive</span>]
<span class="ruby-identifier">options</span>[<span class="ruby-value">:number_of_password_prompts</span>] = <span class="ruby-value">0</span>
<span class="ruby-keyword">end</span>
@@ -508,14 +530,14 @@ or local username</p>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:verbose</span>]
<span class="ruby-identifier">options</span>[<span class="ruby-value">:logger</span>].<span class="ruby-identifier">level</span> = <span class="ruby-keyword">case</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:verbose</span>]
- <span class="ruby-keyword">when</span> <span class="ruby-constant">Integer</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:verbose</span>]
- <span class="ruby-keyword">when</span> <span class="ruby-value">:debug</span> <span class="ruby-keyword">then</span> <span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">DEBUG</span>
- <span class="ruby-keyword">when</span> <span class="ruby-value">:info</span> <span class="ruby-keyword">then</span> <span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">INFO</span>
- <span class="ruby-keyword">when</span> <span class="ruby-value">:warn</span> <span class="ruby-keyword">then</span> <span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">WARN</span>
- <span class="ruby-keyword">when</span> <span class="ruby-value">:error</span> <span class="ruby-keyword">then</span> <span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">ERROR</span>
- <span class="ruby-keyword">when</span> <span class="ruby-value">:fatal</span> <span class="ruby-keyword">then</span> <span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">FATAL</span>
- <span class="ruby-keyword">else</span> <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;can&#39;t convert #{options[:verbose].inspect} to any of the Logger level constants&quot;</span>
- <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">Integer</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:verbose</span>]
+ <span class="ruby-keyword">when</span> <span class="ruby-value">:debug</span> <span class="ruby-keyword">then</span> <span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">DEBUG</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-value">:info</span> <span class="ruby-keyword">then</span> <span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">INFO</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-value">:warn</span> <span class="ruby-keyword">then</span> <span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">WARN</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-value">:error</span> <span class="ruby-keyword">then</span> <span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">ERROR</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-value">:fatal</span> <span class="ruby-keyword">then</span> <span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">FATAL</span>
+ <span class="ruby-keyword">else</span> <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;can&#39;t convert #{options[:verbose].inspect} to any of the Logger level constants&quot;</span>
+ <span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">transport</span> = <span class="ruby-constant">Transport</span><span class="ruby-operator">::</span><span class="ruby-constant">Session</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">options</span>)
diff --git a/Net/SSH/Authentication.html b/Net/SSH/Authentication.html
index 6bf4960..59d2459 100644
--- a/Net/SSH/Authentication.html
+++ b/Net/SSH/Authentication.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Authentication - net-ssh 4.2.0</title>
+<title>module Net::SSH::Authentication - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/Authentication/Agent.html b/Net/SSH/Authentication/Agent.html
index 487984a..f33c77d 100644
--- a/Net/SSH/Authentication/Agent.html
+++ b/Net/SSH/Authentication/Agent.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::Agent - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::Agent - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -294,7 +294,7 @@ href="../../SSH.html">SSH</a> agent.</p>
<div class="method-heading">
<span class="method-name">connect</span><span
- class="method-args">(logger=nil, agent_socket_factory = nil)</span>
+ class="method-args">(logger=nil, agent_socket_factory = nil, identity_agent = nil)</span>
<span class="method-click-advice">click to toggle source</span>
@@ -311,10 +311,10 @@ and returns the agent object.</p>
<div class="method-source-code" id="connect-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 63</span>
-<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">connect</span>(<span class="ruby-identifier">logger</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">agent_socket_factory</span> = <span class="ruby-keyword">nil</span>)
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 65</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">connect</span>(<span class="ruby-identifier">logger</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">agent_socket_factory</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">identity_agent</span> = <span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">agent</span> = <span class="ruby-identifier">new</span>(<span class="ruby-identifier">logger</span>)
- <span class="ruby-identifier">agent</span>.<span class="ruby-identifier">connect!</span>(<span class="ruby-identifier">agent_socket_factory</span>)
+ <span class="ruby-identifier">agent</span>.<span class="ruby-identifier">connect!</span>(<span class="ruby-identifier">agent_socket_factory</span>, <span class="ruby-identifier">identity_agent</span>)
<span class="ruby-identifier">agent</span>.<span class="ruby-identifier">negotiate!</span>
<span class="ruby-identifier">agent</span>
<span class="ruby-keyword">end</span></pre>
@@ -348,7 +348,7 @@ logger instance to report status.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 72</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 74</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">logger</span>=<span class="ruby-keyword">nil</span>)
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span> = <span class="ruby-identifier">logger</span>
<span class="ruby-keyword">end</span></pre>
@@ -391,7 +391,7 @@ true, confirmation will be required for each agent signing operation.</p>
<div class="method-source-code" id="add_identity-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 158</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 166</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_identity</span>(<span class="ruby-identifier">priv_key</span>, <span class="ruby-identifier">comment</span>, <span class="ruby-identifier">lifetime</span><span class="ruby-operator">:</span> <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">confirm</span><span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>)
<span class="ruby-identifier">constraints</span> = <span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">lifetime</span>
@@ -402,7 +402,7 @@ true, confirmation will be required for each agent signing operation.</p>
<span class="ruby-identifier">req_type</span> = <span class="ruby-identifier">constraints</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">?</span> <span class="ruby-constant">SSH2_AGENT_ADD_IDENTITY</span> <span class="ruby-operator">:</span> <span class="ruby-constant">SSH2_AGENT_ADD_ID_CONSTRAINED</span>
<span class="ruby-identifier">type</span>, = <span class="ruby-identifier">send_and_wait</span>(<span class="ruby-identifier">req_type</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">priv_key</span>.<span class="ruby-identifier">ssh_type</span>, <span class="ruby-value">:raw</span>, <span class="ruby-identifier">blob_for_add</span>(<span class="ruby-identifier">priv_key</span>),
- <span class="ruby-value">:string</span>, <span class="ruby-identifier">comment</span>, <span class="ruby-value">:raw</span>, <span class="ruby-identifier">constraints</span>)
+ <span class="ruby-value">:string</span>, <span class="ruby-identifier">comment</span>, <span class="ruby-value">:raw</span>, <span class="ruby-identifier">constraints</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-constant">AgentError</span>, <span class="ruby-string">&quot;could not add identity to agent&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">!=</span> <span class="ruby-constant">SSH_AGENT_SUCCESS</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -435,7 +435,7 @@ agent.</p>
<div class="method-source-code" id="close-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 138</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 146</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">close</span>
<span class="ruby-ivar">@socket</span>.<span class="ruby-identifier">close</span>
<span class="ruby-keyword">end</span></pre>
@@ -453,7 +453,7 @@ agent.</p>
<div class="method-heading">
<span class="method-name">connect!</span><span
- class="method-args">(agent_socket_factory = nil)</span>
+ class="method-args">(agent_socket_factory = nil, identity_agent = nil)</span>
<span class="method-click-advice">click to toggle source</span>
@@ -471,12 +471,14 @@ supports the ssh-agent distributed by OpenSSH).</p>
<div class="method-source-code" id="connect-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 80</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">connect!</span>(<span class="ruby-identifier">agent_socket_factory</span> = <span class="ruby-keyword">nil</span>)
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 82</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">connect!</span>(<span class="ruby-identifier">agent_socket_factory</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">identity_agent</span> = <span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;connecting to ssh-agent&quot;</span> }
<span class="ruby-ivar">@socket</span> =
<span class="ruby-keyword">if</span> <span class="ruby-identifier">agent_socket_factory</span>
<span class="ruby-identifier">agent_socket_factory</span>.<span class="ruby-identifier">call</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">identity_agent</span>
+ <span class="ruby-identifier">unix_socket_class</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">identity_agent</span>)
<span class="ruby-keyword">elsif</span> <span class="ruby-constant">ENV</span>[<span class="ruby-string">&#39;SSH_AUTH_SOCK&#39;</span>] <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">unix_socket_class</span>
<span class="ruby-identifier">unix_socket_class</span>.<span class="ruby-identifier">open</span>(<span class="ruby-constant">ENV</span>[<span class="ruby-string">&#39;SSH_AUTH_SOCK&#39;</span>])
<span class="ruby-keyword">elsif</span> <span class="ruby-constant">Gem</span>.<span class="ruby-identifier">win_platform?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-constant">RUBY_ENGINE</span> <span class="ruby-operator">!=</span> <span class="ruby-string">&quot;jruby&quot;</span>
@@ -519,7 +521,7 @@ to the comment returned by the agent for that key.</p>
<div class="method-source-code" id="identities-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 114</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 118</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">identities</span>
<span class="ruby-identifier">type</span>, <span class="ruby-identifier">body</span> = <span class="ruby-identifier">send_and_wait</span>(<span class="ruby-constant">SSH2_AGENT_REQUEST_IDENTITIES</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-constant">AgentError</span>, <span class="ruby-string">&quot;could not get identity count&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">agent_failed</span>(<span class="ruby-identifier">type</span>)
@@ -531,6 +533,10 @@ to the comment returned by the agent for that key.</p>
<span class="ruby-identifier">comment_str</span> = <span class="ruby-identifier">body</span>.<span class="ruby-identifier">read_string</span>
<span class="ruby-keyword">begin</span>
<span class="ruby-identifier">key</span> = <span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">key_str</span>).<span class="ruby-identifier">read_key</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">key</span>.<span class="ruby-identifier">nil?</span>
+ <span class="ruby-identifier">error</span> { <span class="ruby-node">&quot;ignoring invalid key: #{comment_str}&quot;</span> }
+ <span class="ruby-keyword">next</span>
+ <span class="ruby-keyword">end</span>
<span class="ruby-identifier">key</span>.<span class="ruby-identifier">extend</span>(<span class="ruby-constant">Comment</span>)
<span class="ruby-identifier">key</span>.<span class="ruby-identifier">comment</span> = <span class="ruby-identifier">comment_str</span>
<span class="ruby-identifier">identities</span>.<span class="ruby-identifier">push</span> <span class="ruby-identifier">key</span>
@@ -572,7 +578,7 @@ successfully.</p>
<div class="method-source-code" id="negotiate-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 99</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 103</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">negotiate!</span>
<span class="ruby-comment"># determine what type of agent we&#39;re communicating with</span>
<span class="ruby-identifier">type</span>, <span class="ruby-identifier">body</span> = <span class="ruby-identifier">send_and_wait</span>(<span class="ruby-constant">SSH2_AGENT_REQUEST_VERSION</span>, <span class="ruby-value">:string</span>, <span class="ruby-constant">Transport</span><span class="ruby-operator">::</span><span class="ruby-constant">ServerVersion</span><span class="ruby-operator">::</span><span class="ruby-constant">PROTO_VERSION</span>)
@@ -613,7 +619,7 @@ successfully.</p>
<div class="method-source-code" id="remove_all_identities-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 179</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 187</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">remove_all_identities</span>
<span class="ruby-identifier">type</span>, = <span class="ruby-identifier">send_and_wait</span>(<span class="ruby-constant">SSH2_AGENT_REMOVE_ALL_IDENTITIES</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-constant">AgentError</span>, <span class="ruby-string">&quot;could not remove all identity from agent&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">!=</span> <span class="ruby-constant">SSH_AGENT_SUCCESS</span>
@@ -647,7 +653,7 @@ successfully.</p>
<div class="method-source-code" id="remove_identity-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 173</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 181</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">remove_identity</span>(<span class="ruby-identifier">key</span>)
<span class="ruby-identifier">type</span>, = <span class="ruby-identifier">send_and_wait</span>(<span class="ruby-constant">SSH2_AGENT_REMOVE_IDENTITY</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">key</span>.<span class="ruby-identifier">to_blob</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-constant">AgentError</span>, <span class="ruby-string">&quot;could not remove identity from agent&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">!=</span> <span class="ruby-constant">SSH_AGENT_SUCCESS</span>
@@ -682,7 +688,7 @@ signature is returned in SSH2 format.</p>
<div class="method-source-code" id="sign-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 144</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/agent.rb, line 152</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">sign</span>(<span class="ruby-identifier">key</span>, <span class="ruby-identifier">data</span>, <span class="ruby-identifier">flags</span> = <span class="ruby-value">0</span>)
<span class="ruby-identifier">type</span>, <span class="ruby-identifier">reply</span> = <span class="ruby-identifier">send_and_wait</span>(<span class="ruby-constant">SSH2_AGENT_SIGN_REQUEST</span>, <span class="ruby-value">:string</span>, <span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:key</span>, <span class="ruby-identifier">key</span>), <span class="ruby-value">:string</span>, <span class="ruby-identifier">data</span>, <span class="ruby-value">:long</span>, <span class="ruby-identifier">flags</span>)
diff --git a/Net/SSH/Authentication/Agent/Comment.html b/Net/SSH/Authentication/Agent/Comment.html
index cf1ff16..ff91b12 100644
--- a/Net/SSH/Authentication/Agent/Comment.html
+++ b/Net/SSH/Authentication/Agent/Comment.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Authentication::Agent::Comment - net-ssh 4.2.0</title>
+<title>module Net::SSH::Authentication::Agent::Comment - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
diff --git a/Net/SSH/Authentication/AgentError.html b/Net/SSH/Authentication/AgentError.html
index 51c71a7..6444c4f 100644
--- a/Net/SSH/Authentication/AgentError.html
+++ b/Net/SSH/Authentication/AgentError.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::AgentError - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::AgentError - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Authentication/AgentNotAvailable.html b/Net/SSH/Authentication/AgentNotAvailable.html
index 3517def..c39c518 100644
--- a/Net/SSH/Authentication/AgentNotAvailable.html
+++ b/Net/SSH/Authentication/AgentNotAvailable.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::AgentNotAvailable - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::AgentNotAvailable - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Authentication/Certificate.html b/Net/SSH/Authentication/Certificate.html
index c31ed27..c8d123f 100644
--- a/Net/SSH/Authentication/Certificate.html
+++ b/Net/SSH/Authentication/Certificate.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::Certificate - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::Certificate - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -328,7 +328,7 @@ href="http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/usr.bin/ssh/PROTOC
<div class="method-source-code" id="read_certblob-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 23</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 25</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read_certblob</span>(<span class="ruby-identifier">buffer</span>, <span class="ruby-identifier">type</span>)
<span class="ruby-identifier">cert</span> = <span class="ruby-constant">Certificate</span>.<span class="ruby-identifier">new</span>
<span class="ruby-identifier">cert</span>.<span class="ruby-identifier">nonce</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>
@@ -383,7 +383,7 @@ href="http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/usr.bin/ssh/PROTOC
<div class="method-source-code" id="fingerprint-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 69</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 71</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">fingerprint</span>
<span class="ruby-identifier">key</span>.<span class="ruby-identifier">fingerprint</span>
<span class="ruby-keyword">end</span></pre>
@@ -416,7 +416,7 @@ href="http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/usr.bin/ssh/PROTOC
<div class="method-source-code" id="sign-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 85</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 87</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">sign</span>(<span class="ruby-identifier">key</span>, <span class="ruby-identifier">sign_nonce</span>=<span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">cert</span> = <span class="ruby-identifier">clone</span>
<span class="ruby-identifier">cert</span>.<span class="ruby-identifier">sign!</span>(<span class="ruby-identifier">key</span>, <span class="ruby-identifier">sign_nonce</span>)
@@ -450,7 +450,7 @@ href="http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/usr.bin/ssh/PROTOC
<div class="method-source-code" id="sign-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 74</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 76</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">sign!</span>(<span class="ruby-identifier">key</span>, <span class="ruby-identifier">sign_nonce</span>=<span class="ruby-keyword">nil</span>)
<span class="ruby-comment"># ssh-keygen uses 32 bytes of nonce.</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">nonce</span> = <span class="ruby-identifier">sign_nonce</span> <span class="ruby-operator">||</span> <span class="ruby-constant">SecureRandom</span>.<span class="ruby-identifier">random_bytes</span>(<span class="ruby-value">32</span>)
@@ -490,7 +490,7 @@ href="http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/usr.bin/ssh/PROTOC
<div class="method-source-code" id="signature_valid-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 91</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 93</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">signature_valid?</span>
<span class="ruby-identifier">buffer</span> = <span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">signature</span>)
<span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span> <span class="ruby-comment"># skip signature format</span>
@@ -525,7 +525,7 @@ href="http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/usr.bin/ssh/PROTOC
<div class="method-source-code" id="ssh_do_sign-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 57</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 59</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_do_sign</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">key</span>.<span class="ruby-identifier">ssh_do_sign</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span></pre>
@@ -558,7 +558,7 @@ href="http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/usr.bin/ssh/PROTOC
<div class="method-source-code" id="ssh_do_verify-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 61</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 63</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_do_verify</span>(<span class="ruby-identifier">sig</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-identifier">key</span>.<span class="ruby-identifier">ssh_do_verify</span>(<span class="ruby-identifier">sig</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span></pre>
@@ -591,7 +591,7 @@ href="http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/usr.bin/ssh/PROTOC
<div class="method-source-code" id="ssh_signature_type-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 45</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 47</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_signature_type</span>
<span class="ruby-identifier">key</span>.<span class="ruby-identifier">ssh_type</span>
<span class="ruby-keyword">end</span></pre>
@@ -624,7 +624,7 @@ href="http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/usr.bin/ssh/PROTOC
<div class="method-source-code" id="ssh_type-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 41</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 43</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_type</span>
<span class="ruby-identifier">key</span>.<span class="ruby-identifier">ssh_type</span> <span class="ruby-operator">+</span> <span class="ruby-string">&quot;-cert-v01@openssh.com&quot;</span>
<span class="ruby-keyword">end</span></pre>
@@ -657,7 +657,7 @@ href="http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/usr.bin/ssh/PROTOC
<div class="method-source-code" id="to_blob-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 50</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 52</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_blob</span>
<span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(
<span class="ruby-value">:raw</span>, <span class="ruby-identifier">to_blob_without_signature</span>,
@@ -693,7 +693,7 @@ href="http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/usr.bin/ssh/PROTOC
<div class="method-source-code" id="to_pem-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 65</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/certificate.rb, line 67</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_pem</span>
<span class="ruby-identifier">key</span>.<span class="ruby-identifier">to_pem</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Authentication/Constants.html b/Net/SSH/Authentication/Constants.html
index bbd41a9..0e634cb 100644
--- a/Net/SSH/Authentication/Constants.html
+++ b/Net/SSH/Authentication/Constants.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Authentication::Constants - net-ssh 4.2.0</title>
+<title>module Net::SSH::Authentication::Constants - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Authentication/DisallowedMethod.html b/Net/SSH/Authentication/DisallowedMethod.html
index 630f095..46398d2 100644
--- a/Net/SSH/Authentication/DisallowedMethod.html
+++ b/Net/SSH/Authentication/DisallowedMethod.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::DisallowedMethod - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::DisallowedMethod - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Authentication/ED25519.html b/Net/SSH/Authentication/ED25519.html
index d2275e8..f1b3132 100644
--- a/Net/SSH/Authentication/ED25519.html
+++ b/Net/SSH/Authentication/ED25519.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Authentication::ED25519 - net-ssh 4.2.0</title>
+<title>module Net::SSH::Authentication::ED25519 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader.html b/Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader.html
new file mode 100644
index 0000000..004910e
--- /dev/null
+++ b/Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader.html
@@ -0,0 +1,235 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../";
+ var index_rel_prefix = "../../../../";
+</script>
+
+<script src="../../../../js/jquery.js"></script>
+<script src="../../../../js/darkfish.js"></script>
+
+<link href="../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link">Object
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-c-read">::read</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader">
+ <h1 id="class-Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader" class="class">
+ class Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+ <section class="constants-list">
+ <header>
+ <h3>Constants</h3>
+ </header>
+ <dl>
+
+ <dt id="CipherFactory">CipherFactory
+
+ <dd>
+
+
+ <dt id="MAGIC">MAGIC
+
+ <dd>
+
+
+ <dt id="MBEGIN">MBEGIN
+
+ <dd>
+
+
+ <dt id="MEND">MEND
+
+ <dd>
+
+
+ </dl>
+ </section>
+
+
+
+
+
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Class Methods</h3>
+ </header>
+
+
+ <div id="method-c-read" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">read</span><span
+ class="method-args">(datafull, password)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="read-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 43</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">datafull</span>, <span class="ruby-identifier">password</span>)
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;Expected #{MBEGIN} at start of private key&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">datafull</span>.<span class="ruby-identifier">start_with?</span>(<span class="ruby-constant">MBEGIN</span>)
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;Expected #{MEND} at end of private key&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">datafull</span>.<span class="ruby-identifier">end_with?</span>(<span class="ruby-constant">MEND</span>)
+ <span class="ruby-identifier">datab64</span> = <span class="ruby-identifier">datafull</span>[<span class="ruby-constant">MBEGIN</span>.<span class="ruby-identifier">size</span><span class="ruby-operator">...</span><span class="ruby-operator">-</span><span class="ruby-constant">MEND</span>.<span class="ruby-identifier">size</span>]
+ <span class="ruby-identifier">data</span> = <span class="ruby-constant">Base64</span>.<span class="ruby-identifier">decode64</span>(<span class="ruby-identifier">datab64</span>)
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;Expected #{MAGIC} at start of decoded private key&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">start_with?</span>(<span class="ruby-constant">MAGIC</span>)
+ <span class="ruby-identifier">buffer</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">data</span>[<span class="ruby-constant">MAGIC</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>])
+
+ <span class="ruby-identifier">ciphername</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;#{ciphername} in private key is not supported&quot;</span>) <span class="ruby-keyword">unless</span>
+ <span class="ruby-constant">CipherFactory</span>.<span class="ruby-identifier">supported?</span>(<span class="ruby-identifier">ciphername</span>)
+
+ <span class="ruby-identifier">kdfname</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;Expected #{kdfname} to be or none or bcrypt&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-node">%w[none bcrypt]</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">kdfname</span>)
+
+ <span class="ruby-identifier">kdfopts</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>)
+ <span class="ruby-identifier">num_keys</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_long</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;Only 1 key is supported in ssh keys #{num_keys} was in private key&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">num_keys</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
+ <span class="ruby-identifier">_pubkey</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>
+
+ <span class="ruby-identifier">len</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_long</span>
+
+ <span class="ruby-identifier">keylen</span>, <span class="ruby-identifier">blocksize</span>, <span class="ruby-identifier">ivlen</span> = <span class="ruby-constant">CipherFactory</span>.<span class="ruby-identifier">get_lengths</span>(<span class="ruby-identifier">ciphername</span>, <span class="ruby-identifier">iv_len</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>)
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;Private key len:#{len} is not a multiple of #{blocksize}&quot;</span>) <span class="ruby-keyword">if</span>
+ ((<span class="ruby-identifier">len</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">blocksize</span>) <span class="ruby-operator">||</span> ((<span class="ruby-identifier">blocksize</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>) <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">len</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">blocksize</span>) <span class="ruby-operator">!=</span> <span class="ruby-value">0</span>))
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">kdfname</span> <span class="ruby-operator">==</span> <span class="ruby-string">&#39;bcrypt&#39;</span>
+ <span class="ruby-identifier">salt</span> = <span class="ruby-identifier">kdfopts</span>.<span class="ruby-identifier">read_string</span>
+ <span class="ruby-identifier">rounds</span> = <span class="ruby-identifier">kdfopts</span>.<span class="ruby-identifier">read_long</span>
+
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;BCryptPbkdf is not implemented for jruby&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-constant">RUBY_PLATFORM</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;java&quot;</span>
+ <span class="ruby-identifier">key</span> = <span class="ruby-constant">BCryptPbkdf</span><span class="ruby-operator">::</span><span class="ruby-identifier">key</span>(<span class="ruby-identifier">password</span>, <span class="ruby-identifier">salt</span>, <span class="ruby-identifier">keylen</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">ivlen</span>, <span class="ruby-identifier">rounds</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">key</span> = <span class="ruby-string">&#39;\x00&#39;</span> <span class="ruby-operator">*</span> (<span class="ruby-identifier">keylen</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">ivlen</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">cipher</span> = <span class="ruby-constant">CipherFactory</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">ciphername</span>, <span class="ruby-identifier">key</span><span class="ruby-operator">:</span> <span class="ruby-identifier">key</span>[<span class="ruby-value">0</span><span class="ruby-operator">...</span><span class="ruby-identifier">keylen</span>], <span class="ruby-identifier">iv</span><span class="ruby-value">:key</span>[<span class="ruby-identifier">keylen</span><span class="ruby-operator">...</span><span class="ruby-identifier">keylen</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">ivlen</span>], <span class="ruby-identifier">decrypt</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>)
+
+ <span class="ruby-identifier">decoded</span> = <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">update</span>(<span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">remainder_as_buffer</span>.<span class="ruby-identifier">to_s</span>)
+ <span class="ruby-identifier">decoded</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">final</span>
+
+ <span class="ruby-identifier">decoded</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">decoded</span>)
+ <span class="ruby-identifier">check1</span> = <span class="ruby-identifier">decoded</span>.<span class="ruby-identifier">read_long</span>
+ <span class="ruby-identifier">check2</span> = <span class="ruby-identifier">decoded</span>.<span class="ruby-identifier">read_long</span>
+
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">DecryptError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-string">&quot;Decrypt failed on private key&quot;</span>, <span class="ruby-identifier">encrypted_key</span><span class="ruby-operator">:</span> <span class="ruby-identifier">kdfname</span> <span class="ruby-operator">==</span> <span class="ruby-string">&#39;bcrypt&#39;</span>) <span class="ruby-keyword">if</span> (<span class="ruby-identifier">check1</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">check2</span>)
+
+ <span class="ruby-identifier">type_name</span> = <span class="ruby-identifier">decoded</span>.<span class="ruby-identifier">read_string</span>
+ <span class="ruby-keyword">case</span> <span class="ruby-identifier">type_name</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;ssh-ed25519&quot;</span>
+ <span class="ruby-constant">PrivKey</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">decoded</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">decoded</span>.<span class="ruby-identifier">read_private_keyblob</span>(<span class="ruby-identifier">type_name</span>)
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader/DecryptError.html b/Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader/DecryptError.html
new file mode 100644
index 0000000..d524b17
--- /dev/null
+++ b/Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader/DecryptError.html
@@ -0,0 +1,203 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader::DecryptError - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../../";
+ var index_rel_prefix = "../../../../../";
+</script>
+
+<script src="../../../../../js/jquery.js"></script>
+<script src="../../../../../js/darkfish.js"></script>
+
+<link href="../../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link">ArgumentError
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li class="calls-super" ><a href="#method-c-new">::new</a>
+
+ <li ><a href="#method-i-encrypted_key-3F">#encrypted_key?</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader::DecryptError">
+ <h1 id="class-Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader::DecryptError" class="class">
+ class Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader::DecryptError
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Class Methods</h3>
+ </header>
+
+
+ <div id="method-c-new" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">(message, encrypted_key: false)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+ <div class="method-calls-super">
+ Calls superclass method
+
+ </div>
+
+
+
+ <div class="method-source-code" id="new-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 33</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">message</span>, <span class="ruby-identifier">encrypted_key</span><span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>)
+ <span class="ruby-keyword">super</span>(<span class="ruby-identifier">message</span>)
+ <span class="ruby-ivar">@encrypted_key</span> = <span class="ruby-identifier">encrypted_key</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Instance Methods</h3>
+ </header>
+
+
+ <div id="method-i-encrypted_key-3F" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">encrypted_key?</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="encrypted_key-3F-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 38</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">encrypted_key?</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-ivar">@encrypted_key</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Authentication/ED25519/PrivKey.html b/Net/SSH/Authentication/ED25519/PrivKey.html
index 878719b..255f6f4 100644
--- a/Net/SSH/Authentication/ED25519/PrivKey.html
+++ b/Net/SSH/Authentication/ED25519/PrivKey.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::ED25519::PrivKey - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::ED25519::PrivKey - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -75,8 +75,6 @@
<li ><a href="#method-c-read">::read</a>
- <li ><a href="#method-c-read_keyblob">::read_keyblob</a>
-
<li ><a href="#method-i-public_key">#public_key</a>
<li ><a href="#method-i-ssh_do_sign">#ssh_do_sign</a>
@@ -175,7 +173,7 @@
<div class="method-heading">
<span class="method-name">new</span><span
- class="method-args">(datafull,password)</span>
+ class="method-args">(buffer)</span>
<span class="method-click-advice">click to toggle source</span>
@@ -190,58 +188,11 @@
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 75</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">datafull</span>,<span class="ruby-identifier">password</span>)
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;Expected #{MBEGIN} at start of private key&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">datafull</span>.<span class="ruby-identifier">start_with?</span>(<span class="ruby-constant">MBEGIN</span>)
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;Expected #{MEND} at end of private key&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">datafull</span>.<span class="ruby-identifier">end_with?</span>(<span class="ruby-constant">MEND</span>)
- <span class="ruby-identifier">datab64</span> = <span class="ruby-identifier">datafull</span>[<span class="ruby-constant">MBEGIN</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">...</span> <span class="ruby-operator">-</span><span class="ruby-constant">MEND</span>.<span class="ruby-identifier">size</span>]
- <span class="ruby-identifier">data</span> = <span class="ruby-constant">Base64</span>.<span class="ruby-identifier">decode64</span>(<span class="ruby-identifier">datab64</span>)
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;Expected #{MAGIC} at start of decoded private key&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">start_with?</span>(<span class="ruby-constant">MAGIC</span>)
- <span class="ruby-identifier">buffer</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">data</span>[<span class="ruby-constant">MAGIC</span>.<span class="ruby-identifier">size</span><span class="ruby-operator">+</span><span class="ruby-value">1</span> <span class="ruby-operator">..</span> <span class="ruby-value">-1</span>])
-
- <span class="ruby-identifier">ciphername</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;#{ciphername} in private key is not supported&quot;</span>) <span class="ruby-keyword">unless</span>
- <span class="ruby-constant">CipherFactory</span>.<span class="ruby-identifier">supported?</span>(<span class="ruby-identifier">ciphername</span>)
-
- <span class="ruby-identifier">kdfname</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;Expected #{kdfname} to be or none or bcrypt&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-node">%w(none bcrypt)</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">kdfname</span>)
-
- <span class="ruby-identifier">kdfopts</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>)
- <span class="ruby-identifier">num_keys</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_long</span>
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;Only 1 key is supported in ssh keys #{num_keys} was in private key&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">num_keys</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
- <span class="ruby-identifier">_pubkey</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>
-
- <span class="ruby-identifier">len</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_long</span>
-
- <span class="ruby-identifier">keylen</span>, <span class="ruby-identifier">blocksize</span>, <span class="ruby-identifier">ivlen</span> = <span class="ruby-constant">CipherFactory</span>.<span class="ruby-identifier">get_lengths</span>(<span class="ruby-identifier">ciphername</span>, <span class="ruby-identifier">iv_len</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>)
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;Private key len:#{len} is not a multiple of #{blocksize}&quot;</span>) <span class="ruby-keyword">if</span>
- ((<span class="ruby-identifier">len</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">blocksize</span>) <span class="ruby-operator">||</span> ((<span class="ruby-identifier">blocksize</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>) <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">len</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">blocksize</span>) <span class="ruby-operator">!=</span> <span class="ruby-value">0</span>))
-
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">kdfname</span> <span class="ruby-operator">==</span> <span class="ruby-string">&#39;bcrypt&#39;</span>
- <span class="ruby-identifier">salt</span> = <span class="ruby-identifier">kdfopts</span>.<span class="ruby-identifier">read_string</span>
- <span class="ruby-identifier">rounds</span> = <span class="ruby-identifier">kdfopts</span>.<span class="ruby-identifier">read_long</span>
-
- <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;BCryptPbkdf is not implemented for jruby&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-constant">RUBY_PLATFORM</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;java&quot;</span>
- <span class="ruby-identifier">key</span> = <span class="ruby-constant">BCryptPbkdf</span><span class="ruby-operator">::</span><span class="ruby-identifier">key</span>(<span class="ruby-identifier">password</span>, <span class="ruby-identifier">salt</span>, <span class="ruby-identifier">keylen</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">ivlen</span>, <span class="ruby-identifier">rounds</span>)
- <span class="ruby-keyword">else</span>
- <span class="ruby-identifier">key</span> = <span class="ruby-string">&#39;\x00&#39;</span> <span class="ruby-operator">*</span> (<span class="ruby-identifier">keylen</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">ivlen</span>)
- <span class="ruby-keyword">end</span>
-
- <span class="ruby-identifier">cipher</span> = <span class="ruby-constant">CipherFactory</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">ciphername</span>, <span class="ruby-identifier">key</span><span class="ruby-operator">:</span> <span class="ruby-identifier">key</span>[<span class="ruby-value">0</span><span class="ruby-operator">...</span><span class="ruby-identifier">keylen</span>], <span class="ruby-identifier">iv</span><span class="ruby-value">:key</span>[<span class="ruby-identifier">keylen</span><span class="ruby-operator">...</span><span class="ruby-identifier">keylen</span><span class="ruby-operator">+</span><span class="ruby-identifier">ivlen</span>], <span class="ruby-identifier">decrypt</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>)
-
- <span class="ruby-identifier">decoded</span> = <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">update</span>(<span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">remainder_as_buffer</span>.<span class="ruby-identifier">to_s</span>)
- <span class="ruby-identifier">decoded</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">final</span>
-
- <span class="ruby-identifier">decoded</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">decoded</span>)
- <span class="ruby-identifier">check1</span> = <span class="ruby-identifier">decoded</span>.<span class="ruby-identifier">read_long</span>
- <span class="ruby-identifier">check2</span> = <span class="ruby-identifier">decoded</span>.<span class="ruby-identifier">read_long</span>
-
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Decrypt failed on private key&quot;</span> <span class="ruby-keyword">if</span> (<span class="ruby-identifier">check1</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">check2</span>)
-
- <span class="ruby-identifier">_type_name</span> = <span class="ruby-identifier">decoded</span>.<span class="ruby-identifier">read_string</span>
- <span class="ruby-identifier">pk</span> = <span class="ruby-identifier">decoded</span>.<span class="ruby-identifier">read_string</span>
- <span class="ruby-identifier">sk</span> = <span class="ruby-identifier">decoded</span>.<span class="ruby-identifier">read_string</span>
- <span class="ruby-identifier">_comment</span> = <span class="ruby-identifier">decoded</span>.<span class="ruby-identifier">read_string</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 144</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">buffer</span>)
+ <span class="ruby-identifier">pk</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>
+ <span class="ruby-identifier">sk</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>
+ <span class="ruby-identifier">_comment</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>
<span class="ruby-ivar">@pk</span> = <span class="ruby-identifier">pk</span>
<span class="ruby-ivar">@sign_key</span> = <span class="ruby-constant">SigningKeyFromFile</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">pk</span>,<span class="ruby-identifier">sk</span>)
@@ -260,7 +211,7 @@
<div class="method-heading">
<span class="method-name">read</span><span
- class="method-args">(data,password)</span>
+ class="method-args">(data, password)</span>
<span class="method-click-advice">click to toggle source</span>
@@ -275,42 +226,9 @@
<div class="method-source-code" id="read-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 151</span>
-<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">data</span>,<span class="ruby-identifier">password</span>)
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">data</span>,<span class="ruby-identifier">password</span>)
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
-
-
-
-
- </div>
-
-
- <div id="method-c-read_keyblob" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">read_keyblob</span><span
- class="method-args">(buffer)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
-
- <div class="method-description">
-
-
-
-
-
-
- <div class="method-source-code" id="read_keyblob-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 155</span>
-<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read_keyblob</span>(<span class="ruby-identifier">buffer</span>)
- <span class="ruby-constant">ED25519</span><span class="ruby-operator">::</span><span class="ruby-constant">PubKey</span>.<span class="ruby-identifier">read_keyblob</span>(<span class="ruby-identifier">buffer</span>)
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 173</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">data</span>, <span class="ruby-identifier">password</span>)
+ <span class="ruby-constant">OpenSSHPrivateKeyLoader</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">data</span>, <span class="ruby-identifier">password</span>)
<span class="ruby-keyword">end</span></pre>
</div>
@@ -349,7 +267,7 @@
<div class="method-source-code" id="public_key-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 143</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 165</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">public_key</span>
<span class="ruby-constant">PubKey</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@pk</span>)
<span class="ruby-keyword">end</span></pre>
@@ -382,7 +300,7 @@
<div class="method-source-code" id="ssh_do_sign-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 147</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 169</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_do_sign</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-ivar">@sign_key</span>.<span class="ruby-identifier">sign</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span></pre>
@@ -415,7 +333,7 @@
<div class="method-source-code" id="ssh_signature_type-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 139</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 161</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_signature_type</span>
<span class="ruby-identifier">ssh_type</span>
<span class="ruby-keyword">end</span></pre>
@@ -448,7 +366,7 @@
<div class="method-source-code" id="ssh_type-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 135</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 157</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_type</span>
<span class="ruby-string">&quot;ssh-ed25519&quot;</span>
<span class="ruby-keyword">end</span></pre>
@@ -481,7 +399,7 @@
<div class="method-source-code" id="to_blob-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 131</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 153</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_blob</span>
<span class="ruby-identifier">public_key</span>.<span class="ruby-identifier">to_blob</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Authentication/ED25519/PubKey.html b/Net/SSH/Authentication/ED25519/PubKey.html
index 0985027..268c9d3 100644
--- a/Net/SSH/Authentication/ED25519/PubKey.html
+++ b/Net/SSH/Authentication/ED25519/PubKey.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::ED25519::PubKey - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::ED25519::PubKey - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -75,8 +75,6 @@
<li ><a href="#method-c-read_keyblob">::read_keyblob</a>
- <li ><a href="#method-i-fingerprint">#fingerprint</a>
-
<li ><a href="#method-i-ssh_do_verify">#ssh_do_verify</a>
<li ><a href="#method-i-ssh_signature_type">#ssh_signature_type</a>
@@ -161,9 +159,9 @@
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 32</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 105</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">data</span>)
- <span class="ruby-ivar">@verify_key</span> = <span class="ruby-constant">RbNaCl</span><span class="ruby-operator">::</span><span class="ruby-constant">Signatures</span><span class="ruby-operator">::</span><span class="ruby-constant">Ed25519</span><span class="ruby-operator">::</span><span class="ruby-constant">VerifyKey</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">data</span>)
+ <span class="ruby-ivar">@verify_key</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Ed25519</span><span class="ruby-operator">::</span><span class="ruby-constant">VerifyKey</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span></pre>
</div>
@@ -194,7 +192,7 @@
<div class="method-source-code" id="read_keyblob-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 36</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 109</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read_keyblob</span>(<span class="ruby-identifier">buffer</span>)
<span class="ruby-constant">PubKey</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>)
<span class="ruby-keyword">end</span></pre>
@@ -216,39 +214,6 @@
</header>
- <div id="method-i-fingerprint" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">fingerprint</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
-
- <div class="method-description">
-
-
-
-
-
-
- <div class="method-source-code" id="fingerprint-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 61</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">fingerprint</span>
- <span class="ruby-ivar">@fingerprint</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">MD5</span>.<span class="ruby-identifier">hexdigest</span>(<span class="ruby-identifier">to_blob</span>).<span class="ruby-identifier">scan</span>(<span class="ruby-regexp">/../</span>).<span class="ruby-identifier">join</span>(<span class="ruby-string">&quot;:&quot;</span>)
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
-
-
-
-
- </div>
-
-
<div id="method-i-ssh_do_verify" class="method-detail ">
<div class="method-heading">
@@ -268,7 +233,7 @@
<div class="method-source-code" id="ssh_do_verify-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 52</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 125</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_do_verify</span>(<span class="ruby-identifier">sig</span>,<span class="ruby-identifier">data</span>)
<span class="ruby-ivar">@verify_key</span>.<span class="ruby-identifier">verify</span>(<span class="ruby-identifier">sig</span>,<span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span></pre>
@@ -301,7 +266,7 @@
<div class="method-source-code" id="ssh_signature_type-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 48</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 121</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_signature_type</span>
<span class="ruby-identifier">ssh_type</span>
<span class="ruby-keyword">end</span></pre>
@@ -334,7 +299,7 @@
<div class="method-source-code" id="ssh_type-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 44</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 117</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_type</span>
<span class="ruby-string">&quot;ssh-ed25519&quot;</span>
<span class="ruby-keyword">end</span></pre>
@@ -367,7 +332,7 @@
<div class="method-source-code" id="to_blob-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 40</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 113</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_blob</span>
<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:mstring</span>,<span class="ruby-string">&quot;ssh-ed25519&quot;</span>,<span class="ruby-value">:string</span>,<span class="ruby-ivar">@verify_key</span>.<span class="ruby-identifier">to_bytes</span>).<span class="ruby-identifier">to_s</span>
<span class="ruby-keyword">end</span></pre>
@@ -400,7 +365,7 @@
<div class="method-source-code" id="to_pem-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 56</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 129</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_pem</span>
<span class="ruby-comment"># TODO this is not pem</span>
<span class="ruby-identifier">ssh_type</span> <span class="ruby-operator">+</span> <span class="ruby-constant">Base64</span>.<span class="ruby-identifier">encode64</span>(<span class="ruby-ivar">@verify_key</span>.<span class="ruby-identifier">to_bytes</span>)
diff --git a/Net/SSH/Authentication/ED25519/SigningKeyFromFile.html b/Net/SSH/Authentication/ED25519/SigningKeyFromFile.html
index 13b6236..78841ec 100644
--- a/Net/SSH/Authentication/ED25519/SigningKeyFromFile.html
+++ b/Net/SSH/Authentication/ED25519/SigningKeyFromFile.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::ED25519::SigningKeyFromFile - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::ED25519::SigningKeyFromFile - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -59,7 +59,7 @@
<h3>Parent</h3>
- <p class="link">RbNaCl::Signatures::Ed25519::SigningKey
+ <p class="link">SimpleDelegator
</div>
@@ -71,7 +71,7 @@
<ul class="link-list" role="directory">
- <li ><a href="#method-c-new">::new</a>
+ <li class="calls-super" ><a href="#method-c-new">::new</a>
</ul>
</div>
@@ -123,13 +123,20 @@
+ <div class="method-calls-super">
+ Calls superclass method
+
+ </div>
+
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 23</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519.rb, line 17</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">pk</span>,<span class="ruby-identifier">sk</span>)
- <span class="ruby-ivar">@signing_key</span> = <span class="ruby-identifier">sk</span>
- <span class="ruby-ivar">@verify_key</span> = <span class="ruby-constant">RbNaCl</span><span class="ruby-operator">::</span><span class="ruby-constant">Signatures</span><span class="ruby-operator">::</span><span class="ruby-constant">Ed25519</span><span class="ruby-operator">::</span><span class="ruby-constant">VerifyKey</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">pk</span>)
+ <span class="ruby-identifier">key</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Ed25519</span><span class="ruby-operator">::</span><span class="ruby-constant">SigningKey</span>.<span class="ruby-identifier">from_keypair</span>(<span class="ruby-identifier">sk</span>)
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;pk does not match sk&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">pk</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">key</span>.<span class="ruby-identifier">verify_key</span>.<span class="ruby-identifier">to_bytes</span>
+
+ <span class="ruby-keyword">super</span>(<span class="ruby-identifier">key</span>)
<span class="ruby-keyword">end</span></pre>
</div>
diff --git a/Net/SSH/Authentication/ED25519Loader.html b/Net/SSH/Authentication/ED25519Loader.html
index e35425a..173a8d5 100644
--- a/Net/SSH/Authentication/ED25519Loader.html
+++ b/Net/SSH/Authentication/ED25519Loader.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Authentication::ED25519Loader - net-ssh 4.2.0</title>
+<title>module Net::SSH::Authentication::ED25519Loader - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -143,13 +143,12 @@ dependecies like rbnacl, bcrypt_pbkdf</p>
<div class="method-source-code" id="dependenciesRequiredForED25519-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519_loader.rb, line 22</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519_loader.rb, line 24</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">dependenciesRequiredForED25519</span>
<span class="ruby-identifier">result</span> = <span class="ruby-string">&quot;net-ssh requires the following gems for ed25519 support:\n&quot;</span>
- <span class="ruby-identifier">result</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot; * rbnacl (&gt;= 3.2, &lt; 5.0)\n&quot;</span>
- <span class="ruby-identifier">result</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot; * rbnacl-libsodium, if your system doesn&#39;t have libsodium installed.\n&quot;</span>
+ <span class="ruby-identifier">result</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot; * ed25519 (&gt;= 1.2, &lt; 2.0)\n&quot;</span>
<span class="ruby-identifier">result</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot; * bcrypt_pbkdf (&gt;= 1.0, &lt; 2.0)\n&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-constant">RUBY_PLATFORM</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;java&quot;</span>
- <span class="ruby-identifier">result</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot;See https://github.com/net-ssh/net-ssh/issues/478 for more information\n&quot;</span>
+ <span class="ruby-identifier">result</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot;See https://github.com/net-ssh/net-ssh/issues/565 for more information\n&quot;</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -180,7 +179,7 @@ dependecies like rbnacl, bcrypt_pbkdf</p>
<div class="method-source-code" id="raiseUnlessLoaded-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519_loader.rb, line 16</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/ed25519_loader.rb, line 18</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">raiseUnlessLoaded</span>(<span class="ruby-identifier">message</span>)
<span class="ruby-identifier">description</span> = <span class="ruby-constant">ERROR</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">LoadError</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">dependenciesRequiredForED25519</span> <span class="ruby-operator">:</span> <span class="ruby-string">&#39;&#39;</span>
<span class="ruby-identifier">description</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;#{ERROR.class} : \&quot;#{ERROR.message}\&quot;\n&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-constant">ERROR</span>
diff --git a/Net/SSH/Authentication/KeyManager.html b/Net/SSH/Authentication/KeyManager.html
index a55d128..5242b46 100644
--- a/Net/SSH/Authentication/KeyManager.html
+++ b/Net/SSH/Authentication/KeyManager.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::KeyManager - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::KeyManager - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -96,6 +96,8 @@
<li ><a href="#method-i-finish">#finish</a>
+ <li ><a href="#method-i-no_keys-3F">#no_keys?</a>
+
<li ><a href="#method-i-sign">#sign</a>
<li ><a href="#method-i-use_agent-3D">#use_agent=</a>
@@ -234,7 +236,7 @@ is not false.</p>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span> = <span class="ruby-identifier">logger</span>
<span class="ruby-ivar">@key_files</span> = []
<span class="ruby-ivar">@key_data</span> = []
- <span class="ruby-ivar">@use_agent</span> = <span class="ruby-operator">!</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:use_agent</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>)
+ <span class="ruby-ivar">@use_agent</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:use_agent</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">false</span>
<span class="ruby-ivar">@known_identities</span> = {}
<span class="ruby-ivar">@agent</span> = <span class="ruby-keyword">nil</span>
<span class="ruby-ivar">@options</span> = <span class="ruby-identifier">options</span>
@@ -350,7 +352,7 @@ agent is otherwise not available.</p>
<pre><span class="ruby-comment"># File lib/net/ssh/authentication/key_manager.rb, line 177</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">agent</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">use_agent?</span>
- <span class="ruby-ivar">@agent</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Agent</span>.<span class="ruby-identifier">connect</span>(<span class="ruby-identifier">logger</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:agent_socket_factory</span>])
+ <span class="ruby-ivar">@agent</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Agent</span>.<span class="ruby-identifier">connect</span>(<span class="ruby-identifier">logger</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:agent_socket_factory</span>], <span class="ruby-identifier">options</span>[<span class="ruby-value">:identity_agent</span>])
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">AgentNotAvailable</span>
<span class="ruby-ivar">@use_agent</span> = <span class="ruby-keyword">false</span>
<span class="ruby-keyword">nil</span>
@@ -513,6 +515,39 @@ immediate future.</p>
</div>
+ <div id="method-i-no_keys-3F" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">no_keys?</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="no_keys-3F-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/key_manager.rb, line 185</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">no_keys?</span>
+ <span class="ruby-identifier">key_files</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">key_data</span>.<span class="ruby-identifier">empty?</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
<div id="method-i-sign" class="method-detail ">
<div class="method-heading">
@@ -545,7 +580,7 @@ always return the signature in an SSH2-specified “signature blob” format.</p
<span class="ruby-keyword">if</span> <span class="ruby-identifier">info</span>[<span class="ruby-value">:key</span>].<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">info</span>[<span class="ruby-value">:from</span>] <span class="ruby-operator">==</span> <span class="ruby-value">:file</span>
<span class="ruby-keyword">begin</span>
- <span class="ruby-identifier">info</span>[<span class="ruby-value">:key</span>] = <span class="ruby-constant">KeyFactory</span>.<span class="ruby-identifier">load_private_key</span>(<span class="ruby-identifier">info</span>[<span class="ruby-value">:file</span>], <span class="ruby-identifier">options</span>[<span class="ruby-value">:passphrase</span>], <span class="ruby-operator">!</span><span class="ruby-identifier">options</span>[<span class="ruby-value">:non_interactive</span>])
+ <span class="ruby-identifier">info</span>[<span class="ruby-value">:key</span>] = <span class="ruby-constant">KeyFactory</span>.<span class="ruby-identifier">load_private_key</span>(<span class="ruby-identifier">info</span>[<span class="ruby-value">:file</span>], <span class="ruby-identifier">options</span>[<span class="ruby-value">:passphrase</span>], <span class="ruby-operator">!</span><span class="ruby-identifier">options</span>[<span class="ruby-value">:non_interactive</span>], <span class="ruby-identifier">options</span>[<span class="ruby-value">:password_prompt</span>])
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">OpenSSLError</span>, <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">KeyManagerError</span>, <span class="ruby-node">&quot;the given identity is known, but the private key could not be loaded: #{e.class} (#{e.message})&quot;</span>
<span class="ruby-keyword">end</span>
diff --git a/Net/SSH/Authentication/KeyManagerError.html b/Net/SSH/Authentication/KeyManagerError.html
index aa34fa8..c3eab2d 100644
--- a/Net/SSH/Authentication/KeyManagerError.html
+++ b/Net/SSH/Authentication/KeyManagerError.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::KeyManagerError - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::KeyManagerError - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Authentication/Methods.html b/Net/SSH/Authentication/Methods.html
index 846792a..b130a96 100644
--- a/Net/SSH/Authentication/Methods.html
+++ b/Net/SSH/Authentication/Methods.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Authentication::Methods - net-ssh 4.2.0</title>
+<title>module Net::SSH::Authentication::Methods - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Authentication/Methods/Abstract.html b/Net/SSH/Authentication/Methods/Abstract.html
index 131fa1e..de5d684 100644
--- a/Net/SSH/Authentication/Methods/Abstract.html
+++ b/Net/SSH/Authentication/Methods/Abstract.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::Methods::Abstract - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::Methods::Abstract - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -69,11 +69,11 @@
<ul class="link-list">
- <li><a class="include" href="../Constants.html">Net::SSH::Authentication::Constants</a>
+ <li><a class="include" href="../../Loggable.html">Net::SSH::Loggable</a>
- <li><a class="include" href="../../Loggable.html">Net::SSH::Loggable</a>
+ <li><a class="include" href="../Constants.html">Net::SSH::Authentication::Constants</a>
</ul>
@@ -184,7 +184,7 @@ of common functionality.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/methods/abstract.rb, line 21</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/methods/abstract.rb, line 25</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">session</span>, <span class="ruby-identifier">options</span>={})
<span class="ruby-ivar">@session</span> = <span class="ruby-identifier">session</span>
<span class="ruby-ivar">@key_manager</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:key_manager</span>]
@@ -230,7 +230,7 @@ block until the message is completely sent.</p>
<div class="method-source-code" id="send_message-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/methods/abstract.rb, line 37</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/methods/abstract.rb, line 41</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">send_message</span>(<span class="ruby-identifier">msg</span>)
<span class="ruby-identifier">session</span>.<span class="ruby-identifier">transport</span>.<span class="ruby-identifier">send_message</span>(<span class="ruby-identifier">msg</span>)
<span class="ruby-keyword">end</span></pre>
@@ -264,7 +264,7 @@ href="../../../SSH.html">SSH</a> connection.</p>
<div class="method-source-code" id="session_id-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/methods/abstract.rb, line 31</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/methods/abstract.rb, line 35</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">session_id</span>
<span class="ruby-identifier">session</span>.<span class="ruby-identifier">transport</span>.<span class="ruby-identifier">algorithms</span>.<span class="ruby-identifier">session_id</span>
<span class="ruby-keyword">end</span></pre>
@@ -299,7 +299,7 @@ packet. The new packet is returned, ready for sending.</p>
<div class="method-source-code" id="userauth_request-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/methods/abstract.rb, line 44</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/methods/abstract.rb, line 48</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">userauth_request</span>(<span class="ruby-identifier">username</span>, <span class="ruby-identifier">next_service</span>, <span class="ruby-identifier">auth_method</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">others</span>)
<span class="ruby-identifier">buffer</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:byte</span>, <span class="ruby-constant">USERAUTH_REQUEST</span>,
<span class="ruby-value">:string</span>, <span class="ruby-identifier">username</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">next_service</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">auth_method</span>)
diff --git a/Net/SSH/Authentication/Methods/Hostbased.html b/Net/SSH/Authentication/Methods/Hostbased.html
index 34c3a46..e0e0ba6 100644
--- a/Net/SSH/Authentication/Methods/Hostbased.html
+++ b/Net/SSH/Authentication/Methods/Hostbased.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::Methods::Hostbased - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::Methods::Hostbased - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
diff --git a/Net/SSH/Authentication/Methods/KeyboardInteractive.html b/Net/SSH/Authentication/Methods/KeyboardInteractive.html
index 9243a2e..7679c4b 100644
--- a/Net/SSH/Authentication/Methods/KeyboardInteractive.html
+++ b/Net/SSH/Authentication/Methods/KeyboardInteractive.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::Methods::KeyboardInteractive - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::Methods::KeyboardInteractive - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -184,7 +184,7 @@ authentication method.</p>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">_</span> = <span class="ruby-identifier">message</span>.<span class="ruby-identifier">read_string</span> <span class="ruby-comment"># lang_tag</span>
- <span class="ruby-identifier">responses</span> =[]
+ <span class="ruby-identifier">responses</span> = []
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">read_long</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword">do</span>
<span class="ruby-identifier">text</span> = <span class="ruby-identifier">message</span>.<span class="ruby-identifier">read_string</span>
diff --git a/Net/SSH/Authentication/Methods/None.html b/Net/SSH/Authentication/Methods/None.html
index 24f4b71..8d944f9 100644
--- a/Net/SSH/Authentication/Methods/None.html
+++ b/Net/SSH/Authentication/Methods/None.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::Methods::None - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::Methods::None - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -135,18 +135,18 @@ method.</p>
<span class="ruby-identifier">message</span> = <span class="ruby-identifier">session</span>.<span class="ruby-identifier">next_message</span>
<span class="ruby-keyword">case</span> <span class="ruby-identifier">message</span>.<span class="ruby-identifier">type</span>
- <span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_SUCCESS</span>
- <span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;none succeeded&quot;</span> }
- <span class="ruby-keyword">return</span> <span class="ruby-keyword">true</span>
- <span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_FAILURE</span>
- <span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;none failed&quot;</span> }
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_SUCCESS</span>
+ <span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;none succeeded&quot;</span> }
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">true</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_FAILURE</span>
+ <span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;none failed&quot;</span> }
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Authentication</span><span class="ruby-operator">::</span><span class="ruby-constant">DisallowedMethod</span> <span class="ruby-keyword">unless</span>
- <span class="ruby-identifier">message</span>[<span class="ruby-value">:authentications</span>].<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/,/</span>).<span class="ruby-identifier">include?</span> <span class="ruby-string">&#39;none&#39;</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Authentication</span><span class="ruby-operator">::</span><span class="ruby-constant">DisallowedMethod</span> <span class="ruby-keyword">unless</span>
+ <span class="ruby-identifier">message</span>[<span class="ruby-value">:authentications</span>].<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/,/</span>).<span class="ruby-identifier">include?</span> <span class="ruby-string">&#39;none&#39;</span>
- <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
- <span class="ruby-keyword">else</span>
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;unexpected reply to USERAUTH_REQUEST: #{message.type} (#{message.inspect})&quot;</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;unexpected reply to USERAUTH_REQUEST: #{message.type} (#{message.inspect})&quot;</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Authentication/Methods/Password.html b/Net/SSH/Authentication/Methods/Password.html
index d739385..11bd74a 100644
--- a/Net/SSH/Authentication/Methods/Password.html
+++ b/Net/SSH/Authentication/Methods/Password.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::Methods::Password - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::Methods::Password - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -148,7 +148,7 @@ password parameter is nil, this will ask for password</p>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">authenticate</span>(<span class="ruby-identifier">next_service</span>, <span class="ruby-identifier">username</span>, <span class="ruby-identifier">password</span>=<span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">clear_prompter!</span>
<span class="ruby-identifier">retries</span> = <span class="ruby-value">0</span>
- <span class="ruby-identifier">max_retries</span> = <span class="ruby-identifier">get_max_retries</span>
+ <span class="ruby-identifier">max_retries</span> = <span class="ruby-identifier">get_max_retries</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">password</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">max_retries</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
<span class="ruby-keyword">begin</span>
@@ -168,17 +168,17 @@ password parameter is nil, this will ask for password</p>
<span class="ruby-keyword">end</span> <span class="ruby-keyword">until</span> (<span class="ruby-identifier">message</span>.<span class="ruby-identifier">type</span> <span class="ruby-operator">!=</span> <span class="ruby-constant">USERAUTH_FAILURE</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">retries</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-identifier">max_retries</span>)
<span class="ruby-keyword">case</span> <span class="ruby-identifier">message</span>.<span class="ruby-identifier">type</span>
- <span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_SUCCESS</span>
- <span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;password succeeded&quot;</span> }
- <span class="ruby-ivar">@prompter</span>.<span class="ruby-identifier">success</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@prompter</span>
- <span class="ruby-keyword">return</span> <span class="ruby-keyword">true</span>
- <span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_FAILURE</span>
- <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
- <span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_PASSWD_CHANGEREQ</span>
- <span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;password change request received, failing&quot;</span> }
- <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
- <span class="ruby-keyword">else</span>
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;unexpected reply to USERAUTH_REQUEST: #{message.type} (#{message.inspect})&quot;</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_SUCCESS</span>
+ <span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;password succeeded&quot;</span> }
+ <span class="ruby-ivar">@prompter</span>.<span class="ruby-identifier">success</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@prompter</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">true</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_FAILURE</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_PASSWD_CHANGEREQ</span>
+ <span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;password change request received, failing&quot;</span> }
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;unexpected reply to USERAUTH_REQUEST: #{message.type} (#{message.inspect})&quot;</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div>
diff --git a/Net/SSH/Authentication/Methods/Publickey.html b/Net/SSH/Authentication/Methods/Publickey.html
index 85b0ad7..4a2d273 100644
--- a/Net/SSH/Authentication/Methods/Publickey.html
+++ b/Net/SSH/Authentication/Methods/Publickey.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::Methods::Publickey - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::Methods::Publickey - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
diff --git a/Net/SSH/Authentication/Pageant.html b/Net/SSH/Authentication/Pageant.html
index 775a576..5a97ac1 100644
--- a/Net/SSH/Authentication/Pageant.html
+++ b/Net/SSH/Authentication/Pageant.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Authentication::Pageant - net-ssh 4.2.0</title>
+<title>module Net::SSH::Authentication::Pageant - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Authentication/Pageant/Socket.html b/Net/SSH/Authentication/Pageant/Socket.html
index be1d947..0d0dd2d 100644
--- a/Net/SSH/Authentication/Pageant/Socket.html
+++ b/Net/SSH/Authentication/Pageant/Socket.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::Pageant::Socket - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::Pageant::Socket - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -143,15 +143,15 @@ If no such instance is running, this will cause an error.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 402</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 403</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>
<span class="ruby-ivar">@win</span> = <span class="ruby-constant">Win</span>.<span class="ruby-constant">FindWindow</span>(<span class="ruby-string">&quot;Pageant&quot;</span>, <span class="ruby-string">&quot;Pageant&quot;</span>)
-
+
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@win</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>,
<span class="ruby-string">&quot;pageant process not running&quot;</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-ivar">@input_buffer</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>
<span class="ruby-ivar">@output_buffer</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>
<span class="ruby-keyword">end</span></pre>
@@ -185,7 +185,7 @@ instance.</p>
<div class="method-source-code" id="open-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 396</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 397</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">open</span>
<span class="ruby-identifier">new</span>
<span class="ruby-keyword">end</span></pre>
@@ -226,7 +226,7 @@ instance.</p>
<div class="method-source-code" id="close-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 438</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 439</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">close</span>; <span class="ruby-keyword">end</span></pre>
</div>
@@ -259,7 +259,7 @@ last query.</p>
<div class="method-source-code" id="read-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 434</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 435</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read</span>(<span class="ruby-identifier">n</span> = <span class="ruby-keyword">nil</span>)
<span class="ruby-ivar">@output_buffer</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">n</span>)
<span class="ruby-keyword">end</span></pre>
@@ -294,17 +294,17 @@ arguments after the first.</p>
<div class="method-source-code" id="send-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 416</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 417</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">send</span>(<span class="ruby-identifier">data</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-ivar">@input_buffer</span>.<span class="ruby-identifier">append</span>(<span class="ruby-identifier">data</span>)
-
+
<span class="ruby-identifier">ret</span> = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">length</span>
-
+
<span class="ruby-keyword">while</span> <span class="ruby-keyword">true</span>
<span class="ruby-keyword">return</span> <span class="ruby-identifier">ret</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@input_buffer</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">4</span>
<span class="ruby-identifier">msg_length</span> = <span class="ruby-ivar">@input_buffer</span>.<span class="ruby-identifier">read_long</span> <span class="ruby-operator">+</span> <span class="ruby-value">4</span>
<span class="ruby-ivar">@input_buffer</span>.<span class="ruby-identifier">reset!</span>
-
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">ret</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@input_buffer</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">msg_length</span>
<span class="ruby-identifier">msg</span> = <span class="ruby-ivar">@input_buffer</span>.<span class="ruby-identifier">read!</span>(<span class="ruby-identifier">msg_length</span>)
<span class="ruby-ivar">@output_buffer</span>.<span class="ruby-identifier">append</span>(<span class="ruby-identifier">send_query</span>(<span class="ruby-identifier">msg</span>))
@@ -341,35 +341,35 @@ piece-wise when <a href="Socket.html#method-i-read">read</a> is called.</p>
<div class="method-source-code" id="send_query-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 443</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 444</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">send_query</span>(<span class="ruby-identifier">query</span>)
<span class="ruby-identifier">res</span> = <span class="ruby-keyword">nil</span>
<span class="ruby-identifier">filemap</span> = <span class="ruby-value">0</span>
<span class="ruby-identifier">ptr</span> = <span class="ruby-keyword">nil</span>
<span class="ruby-identifier">id</span> = <span class="ruby-constant">Win</span>.<span class="ruby-identifier">malloc_ptr</span>(<span class="ruby-constant">Win</span><span class="ruby-operator">::</span><span class="ruby-constant">SIZEOF_DWORD</span>)
-
+
<span class="ruby-identifier">mapname</span> = <span class="ruby-string">&quot;PageantRequest%08x&quot;</span> <span class="ruby-operator">%</span> <span class="ruby-constant">Win</span>.<span class="ruby-constant">GetCurrentThreadId</span>()
<span class="ruby-identifier">security_attributes</span> = <span class="ruby-constant">Win</span>.<span class="ruby-identifier">get_ptr</span> <span class="ruby-constant">Win</span>.<span class="ruby-identifier">get_security_attributes_for_user</span>
-
+
<span class="ruby-identifier">filemap</span> = <span class="ruby-constant">Win</span>.<span class="ruby-constant">CreateFileMapping</span>(<span class="ruby-constant">Win</span><span class="ruby-operator">::</span><span class="ruby-constant">INVALID_HANDLE_VALUE</span>,
<span class="ruby-identifier">security_attributes</span>,
<span class="ruby-constant">Win</span><span class="ruby-operator">::</span><span class="ruby-constant">PAGE_READWRITE</span>, <span class="ruby-value">0</span>,
<span class="ruby-constant">AGENT_MAX_MSGLEN</span>, <span class="ruby-identifier">mapname</span>)
-
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">filemap</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">filemap</span> <span class="ruby-operator">==</span> <span class="ruby-constant">Win</span><span class="ruby-operator">::</span><span class="ruby-constant">INVALID_HANDLE_VALUE</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>,
<span class="ruby-node">&quot;Creation of file mapping failed with error: #{Win.GetLastError}&quot;</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-identifier">ptr</span> = <span class="ruby-constant">Win</span>.<span class="ruby-constant">MapViewOfFile</span>(<span class="ruby-identifier">filemap</span>, <span class="ruby-constant">Win</span><span class="ruby-operator">::</span><span class="ruby-constant">FILE_MAP_WRITE</span>, <span class="ruby-value">0</span>, <span class="ruby-value">0</span>,
<span class="ruby-value">0</span>)
-
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">ptr</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">ptr</span>.<span class="ruby-identifier">null?</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-string">&quot;Mapping of file failed&quot;</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-constant">Win</span>.<span class="ruby-identifier">set_ptr_data</span>(<span class="ruby-identifier">ptr</span>, <span class="ruby-identifier">query</span>)
-
+
<span class="ruby-comment"># using struct to achieve proper alignment and field size on 64-bit platform</span>
<span class="ruby-identifier">cds</span> = <span class="ruby-constant">Win</span><span class="ruby-operator">::</span><span class="ruby-constant">COPYDATASTRUCT</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Win</span>.<span class="ruby-identifier">malloc_ptr</span>(<span class="ruby-constant">Win</span><span class="ruby-operator">::</span><span class="ruby-constant">COPYDATASTRUCT</span>.<span class="ruby-identifier">size</span>))
<span class="ruby-identifier">cds</span>.<span class="ruby-identifier">dwData</span> = <span class="ruby-constant">AGENT_COPYDATA_ID</span>
@@ -377,14 +377,14 @@ piece-wise when <a href="Socket.html#method-i-read">read</a> is called.</p>
<span class="ruby-identifier">cds</span>.<span class="ruby-identifier">lpData</span> = <span class="ruby-constant">Win</span>.<span class="ruby-identifier">get_cstr</span>(<span class="ruby-identifier">mapname</span>)
<span class="ruby-identifier">succ</span> = <span class="ruby-constant">Win</span>.<span class="ruby-constant">SendMessageTimeout</span>(<span class="ruby-ivar">@win</span>, <span class="ruby-constant">Win</span><span class="ruby-operator">::</span><span class="ruby-constant">WM_COPYDATA</span>, <span class="ruby-constant">Win</span><span class="ruby-operator">::</span><span class="ruby-constant">NULL</span>,
<span class="ruby-identifier">cds</span>.<span class="ruby-identifier">to_ptr</span>, <span class="ruby-constant">Win</span><span class="ruby-operator">::</span><span class="ruby-constant">SMTO_NORMAL</span>, <span class="ruby-value">5000</span>, <span class="ruby-identifier">id</span>)
-
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">succ</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
<span class="ruby-identifier">retlen</span> = <span class="ruby-value">4</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">ptr</span>.<span class="ruby-identifier">to_s</span>(<span class="ruby-value">4</span>).<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&quot;N&quot;</span>)[<span class="ruby-value">0</span>]
<span class="ruby-identifier">res</span> = <span class="ruby-identifier">ptr</span>.<span class="ruby-identifier">to_s</span>(<span class="ruby-identifier">retlen</span>)
<span class="ruby-keyword">else</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;Message failed with error: #{Win.GetLastError}&quot;</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">res</span>
<span class="ruby-keyword">ensure</span>
<span class="ruby-constant">Win</span>.<span class="ruby-constant">UnmapViewOfFile</span>(<span class="ruby-identifier">ptr</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">ptr</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">ptr</span>.<span class="ruby-identifier">null?</span>
diff --git a/Net/SSH/Authentication/Pageant/Win.html b/Net/SSH/Authentication/Pageant/Win.html
index 840ce0c..6663e9a 100644
--- a/Net/SSH/Authentication/Pageant/Win.html
+++ b/Net/SSH/Authentication/Pageant/Win.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Authentication::Pageant::Win - net-ssh 4.2.0</title>
+<title>module Net::SSH::Authentication::Pageant::Win - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -250,7 +250,7 @@ TOKEN_INFORMATION_CLASS enum.</p>
<div class="method-source-code" id="get_ptr-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 202</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 204</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">get_ptr</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-keyword">return</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">to_ptr</span>
<span class="ruby-keyword">end</span></pre>
@@ -283,7 +283,7 @@ TOKEN_INFORMATION_CLASS enum.</p>
<div class="method-source-code" id="malloc_ptr-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 198</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 200</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">malloc_ptr</span>(<span class="ruby-identifier">size</span>)
<span class="ruby-keyword">return</span> <span class="ruby-constant">DL</span>.<span class="ruby-identifier">malloc</span>(<span class="ruby-identifier">size</span>)
<span class="ruby-keyword">end</span></pre>
@@ -316,7 +316,7 @@ TOKEN_INFORMATION_CLASS enum.</p>
<div class="method-source-code" id="set_ptr_data-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 206</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/pageant.rb, line 208</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">set_ptr_data</span>(<span class="ruby-identifier">ptr</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-identifier">ptr</span>[<span class="ruby-value">0</span>] = <span class="ruby-identifier">data</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Authentication/Pageant/Win/LibC.html b/Net/SSH/Authentication/Pageant/Win/LibC.html
index cc729d3..5309a20 100644
--- a/Net/SSH/Authentication/Pageant/Win/LibC.html
+++ b/Net/SSH/Authentication/Pageant/Win/LibC.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Authentication::Pageant::Win::LibC - net-ssh 4.2.0</title>
+<title>module Net::SSH::Authentication::Pageant::Win::LibC - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../../";
diff --git a/Net/SSH/Authentication/Pageant/Win/LibC/FFI.html b/Net/SSH/Authentication/Pageant/Win/LibC/FFI.html
index 7191cdd..b0c79cd 100644
--- a/Net/SSH/Authentication/Pageant/Win/LibC/FFI.html
+++ b/Net/SSH/Authentication/Pageant/Win/LibC/FFI.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Authentication::Pageant::Win::LibC::FFI - net-ssh 4.2.0</title>
+<title>module Net::SSH::Authentication::Pageant::Win::LibC::FFI - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../../../";
diff --git a/Net/SSH/Authentication/Pageant/Win/LibC/FFI/Library.html b/Net/SSH/Authentication/Pageant/Win/LibC/FFI/Library.html
index 6a9f098..737cb00 100644
--- a/Net/SSH/Authentication/Pageant/Win/LibC/FFI/Library.html
+++ b/Net/SSH/Authentication/Pageant/Win/LibC/FFI/Library.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Authentication::Pageant::Win::LibC::FFI::Library - net-ssh 4.2.0</title>
+<title>module Net::SSH::Authentication::Pageant::Win::LibC::FFI::Library - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../../../../";
diff --git a/Net/SSH/Authentication/Session.html b/Net/SSH/Authentication/Session.html
index 1bb6512..0f99e5f 100644
--- a/Net/SSH/Authentication/Session.html
+++ b/Net/SSH/Authentication/Session.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Authentication::Session - net-ssh 4.2.0</title>
+<title>class Net::SSH::Authentication::Session - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -69,7 +69,7 @@
<ul class="link-list">
- <li><a class="include" href="../Transport/Constants.html">Net::SSH::Transport::Constants</a>
+ <li><a class="include" href="../Loggable.html">Net::SSH::Loggable</a>
@@ -77,7 +77,7 @@
- <li><a class="include" href="../Loggable.html">Net::SSH::Loggable</a>
+ <li><a class="include" href="../Transport/Constants.html">Net::SSH::Transport::Constants</a>
</ul>
@@ -222,7 +222,7 @@ object over the given transport layer abstraction.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/session.rb, line 41</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/session.rb, line 45</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">transport</span>, <span class="ruby-identifier">options</span>={})
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span> = <span class="ruby-identifier">transport</span>.<span class="ruby-identifier">logger</span>
<span class="ruby-ivar">@transport</span> = <span class="ruby-identifier">transport</span>
@@ -271,7 +271,7 @@ authenticating the user, and false otherwise.</p>
<div class="method-source-code" id="authenticate-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/session.rb, line 54</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/session.rb, line 58</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">authenticate</span>(<span class="ruby-identifier">next_service</span>, <span class="ruby-identifier">username</span>, <span class="ruby-identifier">password</span>=<span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">debug</span> { <span class="ruby-node">&quot;beginning authentication of `#{username}&#39;&quot;</span> }
@@ -281,6 +281,7 @@ authenticating the user, and false otherwise.</p>
<span class="ruby-identifier">key_manager</span> = <span class="ruby-constant">KeyManager</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">logger</span>, <span class="ruby-identifier">options</span>)
<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">key</span><span class="ruby-operator">|</span> <span class="ruby-identifier">key_manager</span>.<span class="ruby-identifier">add</span>(<span class="ruby-identifier">key</span>) } <span class="ruby-keyword">unless</span> <span class="ruby-identifier">keys</span>.<span class="ruby-identifier">empty?</span>
<span class="ruby-identifier">key_data</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">key2</span><span class="ruby-operator">|</span> <span class="ruby-identifier">key_manager</span>.<span class="ruby-identifier">add_key_data</span>(<span class="ruby-identifier">key2</span>) } <span class="ruby-keyword">unless</span> <span class="ruby-identifier">key_data</span>.<span class="ruby-identifier">empty?</span>
+ <span class="ruby-identifier">default_keys</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">key</span><span class="ruby-operator">|</span> <span class="ruby-identifier">key_manager</span>.<span class="ruby-identifier">add</span>(<span class="ruby-identifier">key</span>) } <span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:keys</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:key_data</span>)
<span class="ruby-identifier">attempted</span> = []
@@ -294,7 +295,7 @@ authenticating the user, and false otherwise.</p>
<span class="ruby-identifier">auth_class</span> = <span class="ruby-constant">Methods</span>.<span class="ruby-identifier">const_get</span>(<span class="ruby-identifier">name</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/\W+/</span>).<span class="ruby-identifier">map</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">p</span><span class="ruby-operator">|</span> <span class="ruby-identifier">p</span>.<span class="ruby-identifier">capitalize</span> }.<span class="ruby-identifier">join</span>)
<span class="ruby-identifier">method</span> = <span class="ruby-identifier">auth_class</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>, <span class="ruby-identifier">key_manager</span><span class="ruby-operator">:</span> <span class="ruby-identifier">key_manager</span>, <span class="ruby-identifier">password_prompt</span><span class="ruby-operator">:</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:password_prompt</span>])
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">NameError</span>
- <span class="ruby-identifier">debug</span>{<span class="ruby-node">&quot;Mechanism #{name} was requested, but isn&#39;t a known type. Ignoring it.&quot;</span>}
+ <span class="ruby-identifier">debug</span> {<span class="ruby-node">&quot;Mechanism #{name} was requested, but isn&#39;t a known type. Ignoring it.&quot;</span>}
<span class="ruby-keyword">next</span>
<span class="ruby-keyword">end</span>
@@ -338,12 +339,10 @@ type. If it is not, an exception is raised.</p>
<div class="method-source-code" id="expect_message-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/session.rb, line 123</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/session.rb, line 128</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">expect_message</span>(<span class="ruby-identifier">type</span>)
<span class="ruby-identifier">message</span> = <span class="ruby-identifier">next_message</span>
- <span class="ruby-keyword">unless</span> <span class="ruby-identifier">message</span>.<span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">type</span>
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;expected #{type}, got #{message.type} (#{message})&quot;</span>
- <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;expected #{type}, got #{message.type} (#{message})&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">message</span>.<span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">type</span>
<span class="ruby-identifier">message</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -377,7 +376,7 @@ valid during user authentication.</p>
<div class="method-source-code" id="next_message-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/authentication/session.rb, line 94</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/authentication/session.rb, line 99</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">next_message</span>
<span class="ruby-identifier">loop</span> <span class="ruby-keyword">do</span>
<span class="ruby-identifier">packet</span> = <span class="ruby-identifier">transport</span>.<span class="ruby-identifier">next_message</span>
@@ -385,7 +384,7 @@ valid during user authentication.</p>
<span class="ruby-keyword">case</span> <span class="ruby-identifier">packet</span>.<span class="ruby-identifier">type</span>
<span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_BANNER</span>
<span class="ruby-identifier">info</span> { <span class="ruby-identifier">packet</span>[<span class="ruby-value">:message</span>] }
- <span class="ruby-comment"># TODO add a hook for people to retrieve the banner when it is sent</span>
+ <span class="ruby-comment"># TODO add a hook for people to retrieve the banner when it is sent</span>
<span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_FAILURE</span>
<span class="ruby-ivar">@allowed_auth_methods</span> = <span class="ruby-identifier">packet</span>[<span class="ruby-value">:authentications</span>].<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/,/</span>)
diff --git a/Net/SSH/AuthenticationFailed.html b/Net/SSH/AuthenticationFailed.html
index ec26789..565ef63 100644
--- a/Net/SSH/AuthenticationFailed.html
+++ b/Net/SSH/AuthenticationFailed.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::AuthenticationFailed - net-ssh 4.2.0</title>
+<title>class Net::SSH::AuthenticationFailed - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/Buffer.html b/Net/SSH/Buffer.html
index 395e821..a3bc175 100644
--- a/Net/SSH/Buffer.html
+++ b/Net/SSH/Buffer.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Buffer - net-ssh 4.2.0</title>
+<title>class Net::SSH::Buffer - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -113,6 +113,8 @@
<li ><a href="#method-i-read_long">#read_long</a>
+ <li ><a href="#method-i-read_private_keyblob">#read_private_keyblob</a>
+
<li ><a href="#method-i-read_string">#read_string</a>
<li ><a href="#method-i-read_to">#read_to</a>
@@ -279,14 +281,14 @@ to write multiple values of the same type in a briefer manner.</p>
<div class="method-source-code" id="from-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 47</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 48</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">from</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;odd number of arguments given&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">%</span> <span class="ruby-value">2</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
<span class="ruby-identifier">buffer</span> = <span class="ruby-identifier">new</span>
- <span class="ruby-value">0</span>.<span class="ruby-identifier">step</span>(<span class="ruby-identifier">args</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>, <span class="ruby-value">2</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">index</span><span class="ruby-operator">|</span>
+ <span class="ruby-value">0</span>.<span class="ruby-identifier">step</span>(<span class="ruby-identifier">args</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>, <span class="ruby-value">2</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">index</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">type</span> = <span class="ruby-identifier">args</span>[<span class="ruby-identifier">index</span>]
- <span class="ruby-identifier">value</span> = <span class="ruby-identifier">args</span>[<span class="ruby-identifier">index</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>]
+ <span class="ruby-identifier">value</span> = <span class="ruby-identifier">args</span>[<span class="ruby-identifier">index</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>]
<span class="ruby-keyword">if</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-value">:raw</span>
<span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">append</span>(<span class="ruby-identifier">value</span>.<span class="ruby-identifier">to_s</span>)
<span class="ruby-keyword">elsif</span> <span class="ruby-constant">Array</span> <span class="ruby-operator">===</span> <span class="ruby-identifier">value</span>
@@ -328,7 +330,7 @@ initialized to the beginning of the buffer.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 74</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 75</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">content</span>=<span class="ruby-string">&quot;&quot;</span>)
<span class="ruby-ivar">@content</span> = <span class="ruby-identifier">content</span>.<span class="ruby-identifier">to_s</span>
<span class="ruby-ivar">@position</span> = <span class="ruby-value">0</span>
@@ -371,7 +373,7 @@ if they are identical in size and content.</p>
<div class="method-source-code" id="3D-3D-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 97</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 98</span>
<span class="ruby-keyword">def</span> <span class="ruby-operator">==</span>(<span class="ruby-identifier">buffer</span>)
<span class="ruby-identifier">to_s</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">to_s</span>
<span class="ruby-keyword">end</span></pre>
@@ -405,7 +407,7 @@ position. Returns the buffer object itself.</p>
<div class="method-source-code" id="append-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 146</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 147</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">append</span>(<span class="ruby-identifier">text</span>)
<span class="ruby-ivar">@content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">text</span>
<span class="ruby-keyword">self</span>
@@ -440,7 +442,7 @@ remain between the current position and the end of the buffer).</p>
<div class="method-source-code" id="available-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 86</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 87</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">available</span>
<span class="ruby-identifier">length</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">position</span>
<span class="ruby-keyword">end</span></pre>
@@ -473,7 +475,7 @@ remain between the current position and the end of the buffer).</p>
<div class="method-source-code" id="clear-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 120</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 121</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">clear!</span>
<span class="ruby-ivar">@content</span> = <span class="ruby-string">&quot;&quot;</span>
<span class="ruby-ivar">@position</span> = <span class="ruby-value">0</span>
@@ -513,7 +515,7 @@ grow without bound.</p>
<div class="method-source-code" id="consume-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 132</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 133</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">consume!</span>(<span class="ruby-identifier">n</span>=<span class="ruby-identifier">position</span>)
<span class="ruby-keyword">if</span> <span class="ruby-identifier">n</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-identifier">length</span>
<span class="ruby-comment"># optimize for a fairly common case</span>
@@ -555,7 +557,7 @@ zero length).</p>
<div class="method-source-code" id="empty-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 102</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 103</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">empty?</span>
<span class="ruby-ivar">@content</span>.<span class="ruby-identifier">empty?</span>
<span class="ruby-keyword">end</span></pre>
@@ -589,7 +591,7 @@ will return nil, in this case.</p>
<div class="method-source-code" id="eof-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 114</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 115</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">eof?</span>
<span class="ruby-ivar">@position</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-identifier">length</span>
<span class="ruby-keyword">end</span></pre>
@@ -622,7 +624,7 @@ will return nil, in this case.</p>
<div class="method-source-code" id="length-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 80</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 81</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">length</span>
<span class="ruby-ivar">@content</span>.<span class="ruby-identifier">length</span>
<span class="ruby-keyword">end</span></pre>
@@ -658,12 +660,12 @@ increment the pointer.</p>
<div class="method-source-code" id="read-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 175</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 176</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read</span>(<span class="ruby-identifier">count</span>=<span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">count</span> <span class="ruby-operator">||=</span> <span class="ruby-identifier">length</span>
<span class="ruby-identifier">count</span> = <span class="ruby-identifier">length</span> <span class="ruby-operator">-</span> <span class="ruby-ivar">@position</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@position</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">count</span> <span class="ruby-operator">&gt;</span> <span class="ruby-identifier">length</span>
<span class="ruby-ivar">@position</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">count</span>
- <span class="ruby-ivar">@content</span>[<span class="ruby-ivar">@position</span><span class="ruby-operator">-</span><span class="ruby-identifier">count</span>, <span class="ruby-identifier">count</span>]
+ <span class="ruby-ivar">@content</span>[<span class="ruby-ivar">@position</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">count</span>, <span class="ruby-identifier">count</span>]
<span class="ruby-keyword">end</span></pre>
</div>
@@ -697,7 +699,7 @@ read position.</p>
<div class="method-source-code" id="read-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 184</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 185</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read!</span>(<span class="ruby-identifier">count</span>=<span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">data</span> = <span class="ruby-identifier">read</span>(<span class="ruby-identifier">count</span>)
<span class="ruby-identifier">consume!</span>
@@ -732,7 +734,7 @@ read position.</p>
<div class="method-source-code" id="read_all-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 191</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 192</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_all</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-constant">Enumerator</span>.<span class="ruby-identifier">new</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">e</span><span class="ruby-operator">|</span> <span class="ruby-identifier">e</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-keyword">yield</span>(<span class="ruby-keyword">self</span>) <span class="ruby-keyword">until</span> <span class="ruby-identifier">eof?</span> }.<span class="ruby-identifier">to_a</span>
<span class="ruby-keyword">end</span></pre>
@@ -767,7 +769,7 @@ format.</p>
<div class="method-source-code" id="read_bignum-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 237</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 238</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_bignum</span>
<span class="ruby-identifier">data</span> = <span class="ruby-identifier">read_string</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">data</span>
@@ -803,7 +805,7 @@ format.</p>
<div class="method-source-code" id="read_bool-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 229</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 230</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_bool</span>
<span class="ruby-identifier">b</span> = <span class="ruby-identifier">read_byte</span> <span class="ruby-keyword">or</span> <span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span>
<span class="ruby-identifier">b</span> <span class="ruby-operator">!=</span> <span class="ruby-value">0</span>
@@ -838,7 +840,7 @@ href="Buffer.html">Buffer</a> object that wraps it.</p>
<div class="method-source-code" id="read_buffer-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 303</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 336</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_buffer</span>
<span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">read_string</span>)
<span class="ruby-keyword">end</span></pre>
@@ -872,7 +874,7 @@ end of the buffer.</p>
<div class="method-source-code" id="read_byte-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 214</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 215</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_byte</span>
<span class="ruby-identifier">b</span> = <span class="ruby-identifier">read</span>(<span class="ruby-value">1</span>) <span class="ruby-keyword">or</span> <span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span>
<span class="ruby-identifier">b</span>.<span class="ruby-identifier">getbyte</span>(<span class="ruby-value">0</span>)
@@ -908,7 +910,7 @@ buffer.</p>
<div class="method-source-code" id="read_int64-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 198</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 199</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_int64</span>
<span class="ruby-identifier">hi</span> = <span class="ruby-identifier">read_long</span> <span class="ruby-keyword">or</span> <span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span>
<span class="ruby-identifier">lo</span> = <span class="ruby-identifier">read_long</span> <span class="ruby-keyword">or</span> <span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span>
@@ -944,7 +946,7 @@ type. The remainder of the key is defined by the type that was read.</p>
<div class="method-source-code" id="read_key-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 246</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 247</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_key</span>
<span class="ruby-identifier">type</span> = <span class="ruby-identifier">read_string</span>
<span class="ruby-keyword">return</span> (<span class="ruby-identifier">type</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">read_keyblob</span>(<span class="ruby-identifier">type</span>) <span class="ruby-operator">:</span> <span class="ruby-keyword">nil</span>)
@@ -979,50 +981,42 @@ Only RSA, DSA, and ECDSA keys are supported.</p>
<div class="method-source-code" id="read_keyblob-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 253</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 294</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_keyblob</span>(<span class="ruby-identifier">type</span>)
<span class="ruby-keyword">case</span> <span class="ruby-identifier">type</span>
- <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^(.*)-cert-v01@openssh\.com$/</span>
- <span class="ruby-identifier">key</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Authentication</span><span class="ruby-operator">::</span><span class="ruby-constant">Certificate</span>.<span class="ruby-identifier">read_certblob</span>(<span class="ruby-keyword">self</span>, <span class="ruby-node">$1</span>)
- <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^ssh-dss$/</span>
- <span class="ruby-identifier">key</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">DSA</span>.<span class="ruby-identifier">new</span>
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">key</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:set_pqg</span>)
- <span class="ruby-identifier">key</span>.<span class="ruby-identifier">set_pqg</span>(<span class="ruby-identifier">read_bignum</span>, <span class="ruby-identifier">read_bignum</span>, <span class="ruby-identifier">read_bignum</span>)
- <span class="ruby-keyword">else</span>
- <span class="ruby-identifier">key</span>.<span class="ruby-identifier">p</span> = <span class="ruby-identifier">read_bignum</span>
- <span class="ruby-identifier">key</span>.<span class="ruby-identifier">q</span> = <span class="ruby-identifier">read_bignum</span>
- <span class="ruby-identifier">key</span>.<span class="ruby-identifier">g</span> = <span class="ruby-identifier">read_bignum</span>
- <span class="ruby-keyword">end</span>
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">key</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:set_key</span>)
- <span class="ruby-identifier">key</span>.<span class="ruby-identifier">set_key</span>(<span class="ruby-identifier">read_bignum</span>, <span class="ruby-keyword">nil</span>)
- <span class="ruby-keyword">else</span>
- <span class="ruby-identifier">key</span>.<span class="ruby-identifier">pub_key</span> = <span class="ruby-identifier">read_bignum</span>
- <span class="ruby-keyword">end</span>
- <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^ssh-rsa$/</span>
- <span class="ruby-identifier">key</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">RSA</span>.<span class="ruby-identifier">new</span>
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">key</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:set_key</span>)
- <span class="ruby-identifier">e</span> = <span class="ruby-identifier">read_bignum</span>
- <span class="ruby-identifier">n</span> = <span class="ruby-identifier">read_bignum</span>
- <span class="ruby-identifier">key</span>.<span class="ruby-identifier">set_key</span>(<span class="ruby-identifier">n</span>, <span class="ruby-identifier">e</span>, <span class="ruby-keyword">nil</span>)
- <span class="ruby-keyword">else</span>
- <span class="ruby-identifier">key</span>.<span class="ruby-identifier">e</span> = <span class="ruby-identifier">read_bignum</span>
- <span class="ruby-identifier">key</span>.<span class="ruby-identifier">n</span> = <span class="ruby-identifier">read_bignum</span>
- <span class="ruby-keyword">end</span>
- <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^ssh-ed25519$/</span>
- <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Authentication</span><span class="ruby-operator">::</span><span class="ruby-constant">ED25519Loader</span>.<span class="ruby-identifier">raiseUnlessLoaded</span>(<span class="ruby-node">&quot;unsupported key type `#{type}&#39;&quot;</span>)
- <span class="ruby-identifier">key</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Authentication</span><span class="ruby-operator">::</span><span class="ruby-constant">ED25519</span><span class="ruby-operator">::</span><span class="ruby-constant">PubKey</span>.<span class="ruby-identifier">read_keyblob</span>(<span class="ruby-keyword">self</span>)
- <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^ecdsa\-sha2\-(\w*)$/</span>
- <span class="ruby-keyword">unless</span> <span class="ruby-keyword">defined?</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">EC</span>)
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>, <span class="ruby-node">&quot;unsupported key type `#{type}&#39;&quot;</span>
- <span class="ruby-keyword">else</span>
- <span class="ruby-keyword">begin</span>
- <span class="ruby-identifier">key</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">EC</span>.<span class="ruby-identifier">read_keyblob</span>(<span class="ruby-node">$1</span>, <span class="ruby-keyword">self</span>)
- <span class="ruby-keyword">rescue</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">ECError</span>
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>, <span class="ruby-node">&quot;unsupported key type `#{type}&#39;&quot;</span>
- <span class="ruby-keyword">end</span>
- <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^(.*)-cert-v01@openssh\.com$/</span>
+ <span class="ruby-identifier">key</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Authentication</span><span class="ruby-operator">::</span><span class="ruby-constant">Certificate</span>.<span class="ruby-identifier">read_certblob</span>(<span class="ruby-keyword">self</span>, <span class="ruby-node">$1</span>)
+ <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^ssh-dss$/</span>
+ <span class="ruby-identifier">key</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">DSA</span>.<span class="ruby-identifier">new</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">key</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:set_pqg</span>)
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">set_pqg</span>(<span class="ruby-identifier">read_bignum</span>, <span class="ruby-identifier">read_bignum</span>, <span class="ruby-identifier">read_bignum</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">p</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">q</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">g</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">key</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:set_key</span>)
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">set_key</span>(<span class="ruby-identifier">read_bignum</span>, <span class="ruby-keyword">nil</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">pub_key</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^ssh-rsa$/</span>
+ <span class="ruby-identifier">key</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">RSA</span>.<span class="ruby-identifier">new</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">key</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:set_key</span>)
+ <span class="ruby-identifier">e</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-identifier">n</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">set_key</span>(<span class="ruby-identifier">n</span>, <span class="ruby-identifier">e</span>, <span class="ruby-keyword">nil</span>)
<span class="ruby-keyword">else</span>
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>, <span class="ruby-node">&quot;unsupported key type `#{type}&#39;&quot;</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">e</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">n</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^ssh-ed25519$/</span>
+ <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Authentication</span><span class="ruby-operator">::</span><span class="ruby-constant">ED25519Loader</span>.<span class="ruby-identifier">raiseUnlessLoaded</span>(<span class="ruby-node">&quot;unsupported key type `#{type}&#39;&quot;</span>)
+ <span class="ruby-identifier">key</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Authentication</span><span class="ruby-operator">::</span><span class="ruby-constant">ED25519</span><span class="ruby-operator">::</span><span class="ruby-constant">PubKey</span>.<span class="ruby-identifier">read_keyblob</span>(<span class="ruby-keyword">self</span>)
+ <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^ecdsa\-sha2\-(\w*)$/</span>
+ <span class="ruby-identifier">key</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">EC</span>.<span class="ruby-identifier">read_keyblob</span>(<span class="ruby-node">$1</span>, <span class="ruby-keyword">self</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>, <span class="ruby-node">&quot;unsupported key type `#{type}&#39;&quot;</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">return</span> <span class="ruby-identifier">key</span>
@@ -1058,7 +1052,7 @@ buffer.</p>
<div class="method-source-code" id="read_long-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 207</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 208</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_long</span>
<span class="ruby-identifier">b</span> = <span class="ruby-identifier">read</span>(<span class="ruby-value">4</span>) <span class="ruby-keyword">or</span> <span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span>
<span class="ruby-identifier">b</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&quot;N&quot;</span>).<span class="ruby-identifier">first</span>
@@ -1073,6 +1067,75 @@ buffer.</p>
</div>
+ <div id="method-i-read_private_keyblob" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">read_private_keyblob</span><span
+ class="method-args">(type)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="read_private_keyblob-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 252</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_private_keyblob</span>(<span class="ruby-identifier">type</span>)
+ <span class="ruby-keyword">case</span> <span class="ruby-identifier">type</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^ssh-rsa$/</span>
+ <span class="ruby-identifier">key</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">RSA</span>.<span class="ruby-identifier">new</span>
+ <span class="ruby-identifier">n</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-identifier">e</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-identifier">d</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-identifier">iqmp</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-identifier">p</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-identifier">q</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-identifier">_unkown1</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-identifier">_unkown2</span> = <span class="ruby-identifier">read_bignum</span>
+ <span class="ruby-identifier">dmp1</span> = <span class="ruby-identifier">d</span> <span class="ruby-operator">%</span> (<span class="ruby-identifier">p</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>)
+ <span class="ruby-identifier">dmq1</span> = <span class="ruby-identifier">d</span> <span class="ruby-operator">%</span> (<span class="ruby-identifier">q</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">key</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:set_key</span>)
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">set_key</span>(<span class="ruby-identifier">n</span>, <span class="ruby-identifier">e</span>, <span class="ruby-identifier">d</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">e</span> = <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">n</span> = <span class="ruby-identifier">n</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">d</span> = <span class="ruby-identifier">d</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">key</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:set_factors</span>)
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">set_factors</span>(<span class="ruby-identifier">p</span>, <span class="ruby-identifier">q</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">p</span> = <span class="ruby-identifier">p</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">q</span> = <span class="ruby-identifier">q</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">key</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:set_crt_params</span>)
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">set_crt_params</span>(<span class="ruby-identifier">dmp1</span>, <span class="ruby-identifier">dmq1</span>, <span class="ruby-identifier">iqmp</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">dmp1</span> = <span class="ruby-identifier">dmp1</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">dmq1</span> = <span class="ruby-identifier">dmq1</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">iqmp</span> = <span class="ruby-identifier">iqmp</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">key</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;Cannot decode private key of type #{type}&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
<div id="method-i-read_string" class="method-detail ">
<div class="method-heading">
@@ -1094,7 +1157,7 @@ nil if there are not enough bytes to satisfy the request.</p>
<div class="method-source-code" id="read_string-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 222</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 223</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_string</span>
<span class="ruby-identifier">length</span> = <span class="ruby-identifier">read_long</span> <span class="ruby-keyword">or</span> <span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span>
<span class="ruby-identifier">read</span>(<span class="ruby-identifier">length</span>)
@@ -1132,15 +1195,15 @@ Returns all data up to and including the text that matched the pattern.</p>
<div class="method-source-code" id="read_to-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 162</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 163</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_to</span>(<span class="ruby-identifier">pattern</span>)
<span class="ruby-identifier">index</span> = <span class="ruby-ivar">@content</span>.<span class="ruby-identifier">index</span>(<span class="ruby-identifier">pattern</span>, <span class="ruby-ivar">@position</span>) <span class="ruby-keyword">or</span> <span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span>
<span class="ruby-identifier">length</span> = <span class="ruby-keyword">case</span> <span class="ruby-identifier">pattern</span>
- <span class="ruby-keyword">when</span> <span class="ruby-constant">String</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">length</span>
- <span class="ruby-keyword">when</span> <span class="ruby-constant">Integer</span> <span class="ruby-keyword">then</span> <span class="ruby-value">1</span>
- <span class="ruby-keyword">when</span> <span class="ruby-constant">Regexp</span> <span class="ruby-keyword">then</span> <span class="ruby-node">$&amp;</span>.<span class="ruby-identifier">length</span>
- <span class="ruby-keyword">end</span>
- <span class="ruby-identifier">index</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">read</span>(<span class="ruby-identifier">index</span><span class="ruby-operator">+</span><span class="ruby-identifier">length</span>)
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">String</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">length</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">Integer</span> <span class="ruby-keyword">then</span> <span class="ruby-value">1</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">Regexp</span> <span class="ruby-keyword">then</span> <span class="ruby-node">$&amp;</span>.<span class="ruby-identifier">length</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">index</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">read</span>(<span class="ruby-identifier">index</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">length</span>)
<span class="ruby-keyword">end</span></pre>
</div>
@@ -1172,7 +1235,7 @@ Returns all data up to and including the text that matched the pattern.</p>
<div class="method-source-code" id="remainder_as_buffer-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 153</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 154</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">remainder_as_buffer</span>
<span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@content</span>[<span class="ruby-ivar">@position</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>])
<span class="ruby-keyword">end</span></pre>
@@ -1206,7 +1269,7 @@ at position 0.</p>
<div class="method-source-code" id="reset-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 108</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 109</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">reset!</span>
<span class="ruby-ivar">@position</span> = <span class="ruby-value">0</span>
<span class="ruby-keyword">end</span></pre>
@@ -1239,7 +1302,7 @@ at position 0.</p>
<div class="method-source-code" id="to_s-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 91</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 92</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_s</span>
(<span class="ruby-ivar">@content</span> <span class="ruby-operator">||</span> <span class="ruby-string">&quot;&quot;</span>).<span class="ruby-identifier">dup</span>
<span class="ruby-keyword">end</span></pre>
@@ -1273,7 +1336,7 @@ position. Returns the buffer object.</p>
<div class="method-source-code" id="write-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 309</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 342</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">write</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">data</span>)
<span class="ruby-identifier">data</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">datum</span><span class="ruby-operator">|</span> <span class="ruby-ivar">@content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">datum</span>.<span class="ruby-identifier">dup</span>.<span class="ruby-identifier">force_encoding</span>(<span class="ruby-string">&#39;BINARY&#39;</span>) }
<span class="ruby-keyword">self</span>
@@ -1309,7 +1372,7 @@ read position. Returns the buffer object.</p>
<div class="method-source-code" id="write_bignum-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 384</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 417</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">write_bignum</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">n</span>)
<span class="ruby-ivar">@content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">n</span>.<span class="ruby-identifier">map</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">b</span><span class="ruby-operator">|</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">to_ssh</span> }.<span class="ruby-identifier">join</span>
<span class="ruby-keyword">self</span>
@@ -1345,7 +1408,7 @@ buffer object.</p>
<div class="method-source-code" id="write_bool-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 376</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 409</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">write_bool</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">b</span>)
<span class="ruby-identifier">b</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-ivar">@content</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">v</span> <span class="ruby-operator">?</span> <span class="ruby-string">&quot;\1&quot;</span> <span class="ruby-operator">:</span> <span class="ruby-string">&quot;\0&quot;</span>) }
<span class="ruby-keyword">self</span>
@@ -1380,7 +1443,7 @@ position. Returns the buffer object.</p>
<div class="method-source-code" id="write_byte-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 343</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 376</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">write_byte</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">n</span>)
<span class="ruby-identifier">n</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">b</span><span class="ruby-operator">|</span> <span class="ruby-ivar">@content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">chr</span> }
<span class="ruby-keyword">self</span>
@@ -1416,7 +1479,7 @@ object.</p>
<div class="method-source-code" id="write_int64-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 324</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 357</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">write_int64</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">n</span>)
<span class="ruby-identifier">n</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">hi</span> = (<span class="ruby-identifier">i</span> <span class="ruby-operator">&gt;&gt;</span> <span class="ruby-value">32</span>) <span class="ruby-operator">&amp;</span> <span class="ruby-value">0xFFFFFFFF</span>
@@ -1455,7 +1518,7 @@ alter the read position. Returns the buffer object.</p>
<div class="method-source-code" id="write_key-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 391</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 424</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">write_key</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">key</span>)
<span class="ruby-identifier">key</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">k</span><span class="ruby-operator">|</span> <span class="ruby-identifier">append</span>(<span class="ruby-identifier">k</span>.<span class="ruby-identifier">to_blob</span>) }
<span class="ruby-keyword">self</span>
@@ -1491,7 +1554,7 @@ object.</p>
<div class="method-source-code" id="write_long-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 336</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 369</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">write_long</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">n</span>)
<span class="ruby-ivar">@content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">n</span>.<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;N*&quot;</span>)
<span class="ruby-keyword">self</span>
@@ -1526,7 +1589,7 @@ the method. This way we can mutate the string.</p>
<div class="method-source-code" id="write_moved-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 316</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 349</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">write_moved</span>(<span class="ruby-identifier">string</span>)
<span class="ruby-ivar">@content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">string</span>.<span class="ruby-identifier">force_encoding</span>(<span class="ruby-string">&#39;BINARY&#39;</span>)
<span class="ruby-keyword">self</span>
@@ -1563,7 +1626,7 @@ href="Buffer.html#method-i-write_moved">#write_moved</a></p>
<div class="method-source-code" id="write_mstring-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 364</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 397</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">write_mstring</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">text</span>)
<span class="ruby-identifier">text</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">string</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">s</span> = <span class="ruby-identifier">string</span>.<span class="ruby-identifier">to_s</span>
@@ -1603,7 +1666,7 @@ the read position. Returns the buffer object.</p>
<div class="method-source-code" id="write_string-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 351</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffer.rb, line 384</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">write_string</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">text</span>)
<span class="ruby-identifier">text</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">string</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">s</span> = <span class="ruby-identifier">string</span>.<span class="ruby-identifier">to_s</span>
diff --git a/Net/SSH/BufferedIo.html b/Net/SSH/BufferedIo.html
index 52030e3..a5698c5 100644
--- a/Net/SSH/BufferedIo.html
+++ b/Net/SSH/BufferedIo.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::BufferedIo - net-ssh 4.2.0</title>
+<title>module Net::SSH::BufferedIo - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -197,7 +197,7 @@ class&#39; initialize method:</p>
<div class="method-source-code" id="available-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 82</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 83</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">available</span>
<span class="ruby-identifier">input</span>.<span class="ruby-identifier">available</span>
<span class="ruby-keyword">end</span></pre>
@@ -232,7 +232,7 @@ Note that the data is <em>not</em> sent immediately by this method!</p>
<div class="method-source-code" id="enqueue-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 88</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 89</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">enqueue</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">output</span>.<span class="ruby-identifier">append</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span></pre>
@@ -267,7 +267,7 @@ or 0 if no data was available to be read.</p>
<div class="method-source-code" id="fill-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 63</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 64</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">fill</span>(<span class="ruby-identifier">n</span>=<span class="ruby-value">8192</span>)
<span class="ruby-identifier">input</span>.<span class="ruby-identifier">consume!</span>
<span class="ruby-identifier">data</span> = <span class="ruby-identifier">recv</span>(<span class="ruby-identifier">n</span>)
@@ -308,7 +308,7 @@ and <code>false</code> otherwise.</p>
<div class="method-source-code" id="pending_write-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 94</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 95</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">pending_write?</span>
<span class="ruby-identifier">output</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
<span class="ruby-keyword">end</span></pre>
@@ -343,7 +343,7 @@ and <code>false</code> otherwise.</p>
<div class="method-source-code" id="read_available-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 76</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 77</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_available</span>(<span class="ruby-identifier">length</span>=<span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">input</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">length</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">available</span>)
<span class="ruby-keyword">end</span></pre>
@@ -377,7 +377,7 @@ if any data was sent, and <code>false</code> otherwise.</p>
<div class="method-source-code" id="send_pending-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 100</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 101</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">send_pending</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">output</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
<span class="ruby-identifier">sent</span> = <span class="ruby-identifier">send</span>(<span class="ruby-identifier">output</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">0</span>)
@@ -418,11 +418,11 @@ repeatedly, if necessary, blocking until the output buffer is empty.</p>
<div class="method-source-code" id="wait_for_pending_sends-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 113</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/buffered_io.rb, line 114</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">wait_for_pending_sends</span>
<span class="ruby-identifier">send_pending</span>
<span class="ruby-keyword">while</span> <span class="ruby-identifier">output</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
- <span class="ruby-identifier">result</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Compat</span>.<span class="ruby-identifier">io_select</span>(<span class="ruby-keyword">nil</span>, [<span class="ruby-keyword">self</span>]) <span class="ruby-keyword">or</span> <span class="ruby-keyword">next</span>
+ <span class="ruby-identifier">result</span> = <span class="ruby-constant">IO</span>.<span class="ruby-identifier">select</span>(<span class="ruby-keyword">nil</span>, [<span class="ruby-keyword">self</span>]) <span class="ruby-keyword">or</span> <span class="ruby-keyword">next</span>
<span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">result</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">any?</span>
<span class="ruby-identifier">send_pending</span>
<span class="ruby-keyword">end</span>
diff --git a/Net/SSH/ChannelOpenFailed.html b/Net/SSH/ChannelOpenFailed.html
index b208c17..3ffd57b 100644
--- a/Net/SSH/ChannelOpenFailed.html
+++ b/Net/SSH/ChannelOpenFailed.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::ChannelOpenFailed - net-ssh 4.2.0</title>
+<title>class Net::SSH::ChannelOpenFailed - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -172,7 +172,7 @@ will translate that into a “channel open failed” message.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 36</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 37</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">code</span>, <span class="ruby-identifier">reason</span>)
<span class="ruby-ivar">@code</span>, <span class="ruby-ivar">@reason</span> = <span class="ruby-identifier">code</span>, <span class="ruby-identifier">reason</span>
<span class="ruby-keyword">super</span> <span class="ruby-node">&quot;#{reason} (#{code})&quot;</span>
diff --git a/Net/SSH/ChannelRequestFailed.html b/Net/SSH/ChannelRequestFailed.html
index 50371cd..b9263c1 100644
--- a/Net/SSH/ChannelRequestFailed.html
+++ b/Net/SSH/ChannelRequestFailed.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::ChannelRequestFailed - net-ssh 4.2.0</title>
+<title>class Net::SSH::ChannelRequestFailed - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/Config.html b/Net/SSH/Config.html
index 4ca6b3b..c15df24 100644
--- a/Net/SSH/Config.html
+++ b/Net/SSH/Config.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Config - net-ssh 4.2.0</title>
+<title>class Net::SSH::Config - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -133,8 +133,12 @@ keyboard-interactive</p>
</li><li>
<p>IdentityFile =&gt; maps to the :keys option</p>
</li><li>
+<p>IdentityAgent =&gt; :identity_agent</p>
+</li><li>
<p>IdentitiesOnly =&gt; :keys_only</p>
</li><li>
+<p>CheckHostIP =&gt; :check_host_ip</p>
+</li><li>
<p>Macs =&gt; maps to the :hmac option</p>
</li><li>
<p>PasswordAuthentication =&gt; maps to the :auth_methods option password</p>
@@ -151,11 +155,15 @@ keyboard-interactive</p>
</li><li>
<p>RekeyLimit =&gt; :rekey_limit</p>
</li><li>
+<p>StrictHostKeyChecking =&gt; :strict_host_key_checking</p>
+</li><li>
<p>User =&gt; :user</p>
</li><li>
<p>UserKnownHostsFile =&gt; :user_known_hosts_file</p>
</li><li>
<p>NumberOfPasswordPrompts =&gt; :number_of_password_prompts</p>
+</li><li>
+<p>FingerprintHash =&gt; :fingerprint_hash</p>
</li></ul>
<p>Note that you will never need to use this class directly–you can control
@@ -203,9 +211,9 @@ are, by default.)</p>
<div class="method-source-code" id="default_auth_methods-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/config.rb, line 55</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/config.rb, line 60</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">default_auth_methods</span>
- <span class="ruby-identifier">@@default_auth_methods</span>
+ <span class="ruby-identifier">@@default_auth_methods</span>.<span class="ruby-identifier">clone</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -237,9 +245,9 @@ default.</p>
<div class="method-source-code" id="default_files-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/config.rb, line 51</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/config.rb, line 56</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">default_files</span>
- <span class="ruby-identifier">@@default_files</span>
+ <span class="ruby-identifier">@@default_files</span>.<span class="ruby-identifier">clone</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -271,7 +279,7 @@ down to the files that are expandable.</p>
<div class="method-source-code" id="expandable_default_files-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/config.rb, line 176</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/config.rb, line 186</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">expandable_default_files</span>
<span class="ruby-identifier">default_files</span>.<span class="ruby-identifier">keep_if</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">path</span><span class="ruby-operator">|</span>
<span class="ruby-keyword">begin</span>
@@ -314,7 +322,7 @@ by <a href="../SSH.html">Net::SSH</a>, and returns them.</p>
<div class="method-source-code" id="for-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/config.rb, line 63</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/config.rb, line 68</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">for</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">files</span>=<span class="ruby-identifier">expandable_default_files</span>)
<span class="ruby-identifier">translate</span>(<span class="ruby-identifier">files</span>.<span class="ruby-identifier">inject</span>({}) { <span class="ruby-operator">|</span><span class="ruby-identifier">settings</span>, <span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">load</span>(<span class="ruby-identifier">file</span>, <span class="ruby-identifier">host</span>, <span class="ruby-identifier">settings</span>)
@@ -354,15 +362,15 @@ href="../SSH.html">Net::SSH</a> options.)</p>
<div class="method-source-code" id="load-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/config.rb, line 75</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/config.rb, line 80</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">load</span>(<span class="ruby-identifier">path</span>, <span class="ruby-identifier">host</span>, <span class="ruby-identifier">settings</span>={}, <span class="ruby-identifier">base_dir</span> = <span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">file</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">path</span>)
<span class="ruby-identifier">base_dir</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">dirname</span>(<span class="ruby-identifier">file</span>)
<span class="ruby-keyword">return</span> <span class="ruby-identifier">settings</span> <span class="ruby-keyword">unless</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">readable?</span>(<span class="ruby-identifier">file</span>)
<span class="ruby-identifier">globals</span> = {}
- <span class="ruby-identifier">host_matched</span> = <span class="ruby-keyword">false</span>
- <span class="ruby-identifier">seen_host</span> = <span class="ruby-keyword">false</span>
+ <span class="ruby-identifier">block_matched</span> = <span class="ruby-keyword">false</span>
+ <span class="ruby-identifier">block_seen</span> = <span class="ruby-keyword">false</span>
<span class="ruby-constant">IO</span>.<span class="ruby-identifier">foreach</span>(<span class="ruby-identifier">file</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
<span class="ruby-keyword">next</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">line</span> <span class="ruby-operator">=~</span> <span class="ruby-node">/^\s*(?:#.*)?$/</span>
@@ -376,14 +384,14 @@ href="../SSH.html">Net::SSH</a> options.)</p>
<span class="ruby-keyword">next</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-identifier">key</span>.<span class="ruby-identifier">downcase!</span>
- <span class="ruby-identifier">value</span> = <span class="ruby-node">$1</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/^&quot;(.*)&quot;$/</span>
+ <span class="ruby-identifier">value</span> = <span class="ruby-identifier">unquote</span>(<span class="ruby-identifier">value</span>)
<span class="ruby-identifier">value</span> = <span class="ruby-keyword">case</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">strip</span>
- <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^\d+$/</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">to_i</span>
- <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^no$/i</span> <span class="ruby-keyword">then</span> <span class="ruby-keyword">false</span>
- <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^yes$/i</span> <span class="ruby-keyword">then</span> <span class="ruby-keyword">true</span>
- <span class="ruby-keyword">else</span> <span class="ruby-identifier">value</span>
- <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^\d+$/</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">to_i</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^no$/i</span> <span class="ruby-keyword">then</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^yes$/i</span> <span class="ruby-keyword">then</span> <span class="ruby-keyword">true</span>
+ <span class="ruby-keyword">else</span> <span class="ruby-identifier">value</span>
+ <span class="ruby-keyword">end</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">key</span> <span class="ruby-operator">==</span> <span class="ruby-string">&#39;host&#39;</span>
<span class="ruby-comment"># Support &quot;Host host1 host2 hostN&quot;.</span>
@@ -395,14 +403,17 @@ href="../SSH.html">Net::SSH</a> options.)</p>
<span class="ruby-identifier">negative_matched</span> = <span class="ruby-identifier">negative_hosts</span>.<span class="ruby-identifier">any?</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">h</span><span class="ruby-operator">|</span> <span class="ruby-identifier">host</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">pattern2regex</span>(<span class="ruby-identifier">h</span>[<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>]) }
<span class="ruby-keyword">if</span> <span class="ruby-identifier">negative_matched</span>
- <span class="ruby-identifier">host_matched</span> = <span class="ruby-keyword">false</span>
+ <span class="ruby-identifier">block_matched</span> = <span class="ruby-keyword">false</span>
<span class="ruby-keyword">else</span>
- <span class="ruby-identifier">host_matched</span> = <span class="ruby-identifier">positive_hosts</span>.<span class="ruby-identifier">any?</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">h</span><span class="ruby-operator">|</span> <span class="ruby-identifier">host</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">pattern2regex</span>(<span class="ruby-identifier">h</span>) }
+ <span class="ruby-identifier">block_matched</span> = <span class="ruby-identifier">positive_hosts</span>.<span class="ruby-identifier">any?</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">h</span><span class="ruby-operator">|</span> <span class="ruby-identifier">host</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">pattern2regex</span>(<span class="ruby-identifier">h</span>) }
<span class="ruby-keyword">end</span>
- <span class="ruby-identifier">seen_host</span> = <span class="ruby-keyword">true</span>
+ <span class="ruby-identifier">block_seen</span> = <span class="ruby-keyword">true</span>
<span class="ruby-identifier">settings</span>[<span class="ruby-identifier">key</span>] = <span class="ruby-identifier">host</span>
- <span class="ruby-keyword">elsif</span> <span class="ruby-operator">!</span><span class="ruby-identifier">seen_host</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">key</span> <span class="ruby-operator">==</span> <span class="ruby-string">&#39;match&#39;</span>
+ <span class="ruby-identifier">block_matched</span> = <span class="ruby-identifier">eval_match_conditions</span>(<span class="ruby-identifier">value</span>, <span class="ruby-identifier">host</span>, <span class="ruby-identifier">settings</span>)
+ <span class="ruby-identifier">block_seen</span> = <span class="ruby-keyword">true</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-operator">!</span><span class="ruby-identifier">block_seen</span>
<span class="ruby-keyword">case</span> <span class="ruby-identifier">key</span>
<span class="ruby-keyword">when</span> <span class="ruby-string">&#39;identityfile&#39;</span>
(<span class="ruby-identifier">globals</span>[<span class="ruby-identifier">key</span>] <span class="ruby-operator">||=</span> []) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">value</span>
@@ -413,7 +424,7 @@ href="../SSH.html">Net::SSH</a> options.)</p>
<span class="ruby-keyword">else</span>
<span class="ruby-identifier">globals</span>[<span class="ruby-identifier">key</span>] = <span class="ruby-identifier">value</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">settings</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-identifier">key</span>)
<span class="ruby-keyword">end</span>
- <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">host_matched</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">block_matched</span>
<span class="ruby-keyword">case</span> <span class="ruby-identifier">key</span>
<span class="ruby-keyword">when</span> <span class="ruby-string">&#39;identityfile&#39;</span>
(<span class="ruby-identifier">settings</span>[<span class="ruby-identifier">key</span>] <span class="ruby-operator">||=</span> []) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">value</span>
@@ -425,20 +436,23 @@ href="../SSH.html">Net::SSH</a> options.)</p>
<span class="ruby-identifier">settings</span>[<span class="ruby-identifier">key</span>] = <span class="ruby-identifier">value</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">settings</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-identifier">key</span>)
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
- <span class="ruby-keyword">end</span>
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">globals</span>
- <span class="ruby-identifier">settings</span> = <span class="ruby-identifier">globals</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">settings</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">oldval</span>, <span class="ruby-identifier">newval</span><span class="ruby-operator">|</span>
- <span class="ruby-keyword">case</span> <span class="ruby-identifier">key</span>
- <span class="ruby-keyword">when</span> <span class="ruby-string">&#39;identityfile&#39;</span>
- <span class="ruby-identifier">oldval</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">newval</span>
- <span class="ruby-keyword">else</span>
- <span class="ruby-identifier">newval</span>
+ <span class="ruby-comment"># ProxyCommand and ProxyJump override each other so they need to be tracked togeather</span>
+ <span class="ruby-node">%w[proxyjump proxycommand]</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">proxy_key</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">if</span> (<span class="ruby-identifier">proxy_value</span> = <span class="ruby-identifier">settings</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">proxy_key</span>))
+ <span class="ruby-identifier">settings</span>[<span class="ruby-string">&#39;proxy&#39;</span>] <span class="ruby-operator">||=</span> [<span class="ruby-identifier">proxy_key</span>, <span class="ruby-identifier">proxy_value</span>]
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
- <span class="ruby-keyword">return</span> <span class="ruby-identifier">settings</span>
+ <span class="ruby-identifier">globals</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">settings</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">oldval</span>, <span class="ruby-identifier">newval</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">case</span> <span class="ruby-identifier">key</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&#39;identityfile&#39;</span>
+ <span class="ruby-identifier">oldval</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">newval</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">newval</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -472,13 +486,12 @@ downcased, and the returned hash will have Symbols for keys.</p>
<div class="method-source-code" id="translate-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/config.rb, line 165</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/config.rb, line 176</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">translate</span>(<span class="ruby-identifier">settings</span>)
<span class="ruby-identifier">auth_methods</span> = <span class="ruby-identifier">default_auth_methods</span>.<span class="ruby-identifier">clone</span>
(<span class="ruby-identifier">auth_methods</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&#39;challenge-response&#39;</span>).<span class="ruby-identifier">uniq!</span>
- <span class="ruby-identifier">ret</span> = <span class="ruby-identifier">settings</span>.<span class="ruby-identifier">inject</span>({<span class="ruby-identifier">auth_methods</span><span class="ruby-operator">:</span> <span class="ruby-identifier">auth_methods</span>}) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">hash</span>, (<span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span>)<span class="ruby-operator">|</span>
+ <span class="ruby-identifier">ret</span> = <span class="ruby-identifier">settings</span>.<span class="ruby-identifier">each_with_object</span>({ <span class="ruby-identifier">auth_methods</span><span class="ruby-operator">:</span> <span class="ruby-identifier">auth_methods</span> }) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span>(<span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span>), <span class="ruby-identifier">hash</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">translate_config_key</span>(<span class="ruby-identifier">hash</span>, <span class="ruby-identifier">key</span>.<span class="ruby-identifier">to_sym</span>, <span class="ruby-identifier">value</span>, <span class="ruby-identifier">settings</span>)
- <span class="ruby-identifier">hash</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">merge_challenge_response_with_keyboard_interactive</span>(<span class="ruby-identifier">ret</span>)
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Connection.html b/Net/SSH/Connection.html
index ba3b850..8b59508 100644
--- a/Net/SSH/Connection.html
+++ b/Net/SSH/Connection.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Connection - net-ssh 4.2.0</title>
+<title>module Net::SSH::Connection - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/Connection/Channel.html b/Net/SSH/Connection/Channel.html
index 44b098c..493c038 100644
--- a/Net/SSH/Connection/Channel.html
+++ b/Net/SSH/Connection/Channel.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Connection::Channel - net-ssh 4.2.0</title>
+<title>class Net::SSH::Connection::Channel - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -69,11 +69,11 @@
<ul class="link-list">
- <li><a class="include" href="Constants.html">Net::SSH::Connection::Constants</a>
+ <li><a class="include" href="../Loggable.html">Net::SSH::Loggable</a>
- <li><a class="include" href="../Loggable.html">Net::SSH::Loggable</a>
+ <li><a class="include" href="Constants.html">Net::SSH::Connection::Constants</a>
</ul>
@@ -234,6 +234,16 @@ attributes for those values.</p>
</header>
<dl>
+ <dt id="GOOD_LOCAL_MAXIUMUM_WINDOW_SIZE">GOOD_LOCAL_MAXIUMUM_WINDOW_SIZE
+
+ <dd>
+
+
+ <dt id="LOCAL_WINDOW_SIZE_INCREMENT">LOCAL_WINDOW_SIZE_INCREMENT
+
+ <dd>
+
+
<dt id="VALID_PTY_OPTIONS">VALID_PTY_OPTIONS
<dd><p>A hash of the valid PTY options (see <a
@@ -437,23 +447,23 @@ channel is confirmed open by the server, and will be invoked at that time
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 110</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 113</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">connection</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">local_id</span>, <span class="ruby-identifier">max_pkt_size</span> = <span class="ruby-value">0x8000</span>, <span class="ruby-identifier">max_win_size</span> = <span class="ruby-value">0x20000</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">on_confirm_open</span>)
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span> = <span class="ruby-identifier">connection</span>.<span class="ruby-identifier">logger</span>
-
+
<span class="ruby-ivar">@connection</span> = <span class="ruby-identifier">connection</span>
<span class="ruby-ivar">@type</span> = <span class="ruby-identifier">type</span>
<span class="ruby-ivar">@local_id</span> = <span class="ruby-identifier">local_id</span>
-
+
<span class="ruby-ivar">@local_maximum_packet_size</span> = <span class="ruby-identifier">max_pkt_size</span>
<span class="ruby-ivar">@local_window_size</span> = <span class="ruby-ivar">@local_maximum_window_size</span> = <span class="ruby-identifier">max_win_size</span>
-
+
<span class="ruby-ivar">@on_confirm_open</span> = <span class="ruby-identifier">on_confirm_open</span>
-
+
<span class="ruby-ivar">@output</span> = <span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>
-
+
<span class="ruby-ivar">@properties</span> = {}
-
+
<span class="ruby-ivar">@pending_requests</span> = []
<span class="ruby-ivar">@on_open_failed</span> = <span class="ruby-ivar">@on_data</span> = <span class="ruby-ivar">@on_extended_data</span> = <span class="ruby-ivar">@on_process</span> = <span class="ruby-ivar">@on_close</span> = <span class="ruby-ivar">@on_eof</span> = <span class="ruby-keyword">nil</span>
<span class="ruby-ivar">@on_request</span> = {}
@@ -497,7 +507,7 @@ href="Channel.html#attribute-i-properties">properties</a>).</p>
<div class="method-source-code" id="5B-5D-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 133</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 136</span>
<span class="ruby-keyword">def</span> <span class="ruby-operator">[]</span>(<span class="ruby-identifier">name</span>)
<span class="ruby-ivar">@properties</span>[<span class="ruby-identifier">name</span>]
<span class="ruby-keyword">end</span></pre>
@@ -531,7 +541,7 @@ href="Channel.html#attribute-i-properties">properties</a>).</p>
<div class="method-source-code" id="5B-5D-3D-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 138</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 141</span>
<span class="ruby-keyword">def</span> <span class="ruby-operator">[]=</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">value</span>)
<span class="ruby-ivar">@properties</span>[<span class="ruby-identifier">name</span>] = <span class="ruby-identifier">value</span>
<span class="ruby-keyword">end</span></pre>
@@ -569,7 +579,7 @@ closed or not.</p>
<div class="method-source-code" id="active-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 259</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 262</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">active?</span>
<span class="ruby-identifier">connection</span>.<span class="ruby-identifier">channels</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-identifier">local_id</span>)
<span class="ruby-keyword">end</span></pre>
@@ -603,7 +613,7 @@ the CHANNEL_CLOSE message will be sent from event loop</p>
<div class="method-source-code" id="close-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 296</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 299</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">close</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@closing</span>
<span class="ruby-ivar">@closing</span> = <span class="ruby-keyword">true</span>
@@ -641,7 +651,7 @@ sending buffered output to server.</p>
<div class="method-source-code" id="closing-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 277</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 280</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">closing?</span>
<span class="ruby-ivar">@closing</span>
<span class="ruby-keyword">end</span></pre>
@@ -675,7 +685,7 @@ when the server closes a channel. The channel is the only argument.</p>
<div class="method-source-code" id="do_close-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 606</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 609</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">do_close</span>
<span class="ruby-ivar">@on_close</span>.<span class="ruby-identifier">call</span>(<span class="ruby-keyword">self</span>) <span class="ruby-keyword">if</span> <span class="ruby-ivar">@on_close</span>
<span class="ruby-keyword">end</span></pre>
@@ -710,7 +720,7 @@ invoked with the channel as the argument.</p>
<div class="method-source-code" id="do_eof-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 600</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 603</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">do_eof</span>
<span class="ruby-ivar">@on_eof</span>.<span class="ruby-identifier">call</span>(<span class="ruby-keyword">self</span>) <span class="ruby-keyword">if</span> <span class="ruby-ivar">@on_eof</span>
<span class="ruby-keyword">end</span></pre>
@@ -747,7 +757,7 @@ channel, type, and data.</p>
<div class="method-source-code" id="do_extended_data-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 592</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 595</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">do_extended_data</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-identifier">update_local_window_size</span>(<span class="ruby-identifier">data</span>.<span class="ruby-identifier">length</span>)
<span class="ruby-ivar">@on_extended_data</span>.<span class="ruby-identifier">call</span>(<span class="ruby-keyword">self</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span>) <span class="ruby-keyword">if</span> <span class="ruby-ivar">@on_extended_data</span>
@@ -782,7 +792,7 @@ second argument.</p>
<div class="method-source-code" id="do_failure-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 612</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 615</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">do_failure</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">callback</span> = <span class="ruby-identifier">pending_requests</span>.<span class="ruby-identifier">shift</span>
<span class="ruby-identifier">callback</span>.<span class="ruby-identifier">call</span>(<span class="ruby-keyword">self</span>, <span class="ruby-keyword">false</span>)
@@ -824,7 +834,7 @@ raised.</p>
<div class="method-source-code" id="do_open_failed-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 537</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 540</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">do_open_failed</span>(<span class="ruby-identifier">reason_code</span>, <span class="ruby-identifier">description</span>)
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@on_open_failed</span>
<span class="ruby-ivar">@on_open_failed</span>.<span class="ruby-identifier">call</span>(<span class="ruby-keyword">self</span>, <span class="ruby-identifier">reason_code</span>, <span class="ruby-identifier">description</span>)
@@ -862,7 +872,7 @@ second argument.</p>
<div class="method-source-code" id="do_success-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 622</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 625</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">do_success</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">callback</span> = <span class="ruby-identifier">pending_requests</span>.<span class="ruby-identifier">shift</span>
<span class="ruby-identifier">callback</span>.<span class="ruby-identifier">call</span>(<span class="ruby-keyword">self</span>, <span class="ruby-keyword">true</span>)
@@ -907,7 +917,7 @@ variables you want to send.</p>
<div class="method-source-code" id="env-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 187</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 190</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">env</span>(<span class="ruby-identifier">variable_name</span>, <span class="ruby-identifier">variable_value</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">send_channel_request</span>(<span class="ruby-string">&quot;env&quot;</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">variable_name</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">variable_value</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-keyword">end</span></pre>
@@ -942,7 +952,7 @@ CHANNEL_EOF packet will be sent once the output buffer is empty.</p>
<div class="method-source-code" id="eof-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 311</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 314</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">eof!</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">eof?</span>
<span class="ruby-ivar">@eof</span> = <span class="ruby-keyword">true</span>
@@ -980,7 +990,7 @@ result in an exception being raised.</p>
<div class="method-source-code" id="eof-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 304</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 307</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">eof?</span>
<span class="ruby-ivar">@eof</span>
<span class="ruby-keyword">end</span></pre>
@@ -1029,7 +1039,7 @@ to be executed.</p>
<div class="method-source-code" id="exec-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 158</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 161</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">exec</span>(<span class="ruby-identifier">command</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">send_channel_request</span>(<span class="ruby-string">&quot;exec&quot;</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">command</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-keyword">end</span></pre>
@@ -1062,7 +1072,7 @@ to be executed.</p>
<div class="method-source-code" id="local_closed-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 282</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 285</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">local_closed?</span>
<span class="ruby-ivar">@local_closed</span>
<span class="ruby-keyword">end</span></pre>
@@ -1101,7 +1111,7 @@ channel is closed. This is invoked with the channel as the sole argument.</p>
<div class="method-source-code" id="on_close-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 398</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 401</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">on_close</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">old</span>, <span class="ruby-ivar">@on_close</span> = <span class="ruby-ivar">@on_close</span>, <span class="ruby-identifier">block</span>
<span class="ruby-identifier">old</span>
@@ -1145,7 +1155,7 @@ to its <code>stdout</code> stream.</p>
<div class="method-source-code" id="on_data-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 345</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 348</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">on_data</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">old</span>, <span class="ruby-ivar">@on_data</span> = <span class="ruby-ivar">@on_data</span>, <span class="ruby-identifier">block</span>
<span class="ruby-identifier">old</span>
@@ -1186,7 +1196,7 @@ to the server). The channel is the sole argument to the callback.</p>
<div class="method-source-code" id="on_eof-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 410</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 413</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">on_eof</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">old</span>, <span class="ruby-ivar">@on_eof</span> = <span class="ruby-ivar">@on_eof</span>, <span class="ruby-identifier">block</span>
<span class="ruby-identifier">old</span>
@@ -1230,7 +1240,7 @@ the <a href="../../SSH.html">SSH</a> protocol.</p>
<div class="method-source-code" id="on_extended_data-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 360</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 363</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">on_extended_data</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">old</span>, <span class="ruby-ivar">@on_extended_data</span> = <span class="ruby-ivar">@on_extended_data</span>, <span class="ruby-identifier">block</span>
<span class="ruby-identifier">old</span>
@@ -1273,7 +1283,7 @@ channel.on_open_failed { |ch, code, desc| ... }</pre>
<div class="method-source-code" id="on_open_failed-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 425</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 428</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">on_open_failed</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">old</span>, <span class="ruby-ivar">@on_open_failed</span> = <span class="ruby-ivar">@on_open_failed</span>, <span class="ruby-identifier">block</span>
<span class="ruby-identifier">old</span>
@@ -1329,7 +1339,7 @@ time when the channel is processed:</p>
<div class="method-source-code" id="on_process-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 387</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 390</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">on_process</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">old</span>, <span class="ruby-ivar">@on_process</span> = <span class="ruby-ivar">@on_process</span>, <span class="ruby-identifier">block</span>
<span class="ruby-identifier">old</span>
@@ -1391,7 +1401,7 @@ this channel request type.)</p>
<div class="method-source-code" id="on_request-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 456</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 459</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">on_request</span>(<span class="ruby-identifier">type</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">old</span>, <span class="ruby-ivar">@on_request</span>[<span class="ruby-identifier">type</span>] = <span class="ruby-ivar">@on_request</span>[<span class="ruby-identifier">type</span>], <span class="ruby-identifier">block</span>
<span class="ruby-identifier">old</span>
@@ -1428,16 +1438,16 @@ CHANNEL_DATA packets (see enqueue_pending_output).</p>
<div class="method-source-code" id="process-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 319</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 322</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">process</span>
<span class="ruby-ivar">@on_process</span>.<span class="ruby-identifier">call</span>(<span class="ruby-keyword">self</span>) <span class="ruby-keyword">if</span> <span class="ruby-ivar">@on_process</span>
<span class="ruby-identifier">enqueue_pending_output</span>
-
+
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@eof</span> <span class="ruby-keyword">and</span> <span class="ruby-keyword">not</span> <span class="ruby-ivar">@sent_eof</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">output</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">remote_id</span> <span class="ruby-keyword">and</span> <span class="ruby-keyword">not</span> <span class="ruby-ivar">@local_closed</span>
<span class="ruby-identifier">connection</span>.<span class="ruby-identifier">send_message</span>(<span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:byte</span>, <span class="ruby-constant">CHANNEL_EOF</span>, <span class="ruby-value">:long</span>, <span class="ruby-identifier">remote_id</span>))
<span class="ruby-ivar">@sent_eof</span> = <span class="ruby-keyword">true</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@closing</span> <span class="ruby-keyword">and</span> <span class="ruby-keyword">not</span> <span class="ruby-ivar">@local_closed</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">output</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">remote_id</span>
<span class="ruby-identifier">connection</span>.<span class="ruby-identifier">send_message</span>(<span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:byte</span>, <span class="ruby-constant">CHANNEL_CLOSE</span>, <span class="ruby-value">:long</span>, <span class="ruby-identifier">remote_id</span>))
<span class="ruby-ivar">@local_closed</span> = <span class="ruby-keyword">true</span>
@@ -1473,7 +1483,7 @@ CHANNEL_DATA packets (see enqueue_pending_output).</p>
<div class="method-source-code" id="remote_closed-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 290</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 293</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">remote_closed!</span>
<span class="ruby-ivar">@remote_closed</span> = <span class="ruby-keyword">true</span>
<span class="ruby-keyword">end</span></pre>
@@ -1506,7 +1516,7 @@ CHANNEL_DATA packets (see enqueue_pending_output).</p>
<div class="method-source-code" id="remote_closed-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 286</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 289</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">remote_closed?</span>
<span class="ruby-ivar">@remote_closed</span>
<span class="ruby-keyword">end</span></pre>
@@ -1558,19 +1568,19 @@ when a pty is not present.</p>
<div class="method-source-code" id="request_pty-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 218</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 221</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">request_pty</span>(<span class="ruby-identifier">opts</span>={}, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">extra</span> = <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">keys</span> <span class="ruby-operator">-</span> <span class="ruby-constant">VALID_PTY_OPTIONS</span>.<span class="ruby-identifier">keys</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;invalid option(s) to request_pty: #{extra.inspect}&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">extra</span>.<span class="ruby-identifier">any?</span>
-
+
<span class="ruby-identifier">opts</span> = <span class="ruby-constant">VALID_PTY_OPTIONS</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">opts</span>)
-
+
<span class="ruby-identifier">modes</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:modes</span>].<span class="ruby-identifier">inject</span>(<span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">memo</span>, (<span class="ruby-identifier">mode</span>, <span class="ruby-identifier">data</span>)<span class="ruby-operator">|</span>
<span class="ruby-identifier">memo</span>.<span class="ruby-identifier">write_byte</span>(<span class="ruby-identifier">mode</span>).<span class="ruby-identifier">write_long</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span>
<span class="ruby-comment"># mark the end of the mode opcode list with a 0 byte</span>
<span class="ruby-identifier">modes</span>.<span class="ruby-identifier">write_byte</span>(<span class="ruby-value">0</span>)
-
+
<span class="ruby-identifier">send_channel_request</span>(<span class="ruby-string">&quot;pty-req&quot;</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">opts</span>[<span class="ruby-value">:term</span>],
<span class="ruby-value">:long</span>, <span class="ruby-identifier">opts</span>[<span class="ruby-value">:chars_wide</span>], <span class="ruby-value">:long</span>, <span class="ruby-identifier">opts</span>[<span class="ruby-value">:chars_high</span>],
<span class="ruby-value">:long</span>, <span class="ruby-identifier">opts</span>[<span class="ruby-value">:pixels_wide</span>], <span class="ruby-value">:long</span>, <span class="ruby-identifier">opts</span>[<span class="ruby-value">:pixels_high</span>],
@@ -1630,7 +1640,7 @@ href="Channel.html#method-i-subsystem">subsystem</a>).</p>
<div class="method-source-code" id="send_channel_request-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 483</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 486</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">send_channel_request</span>(<span class="ruby-identifier">request_name</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">data</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">callback</span>)
<span class="ruby-identifier">info</span> { <span class="ruby-node">&quot;sending channel request #{request_name.inspect}&quot;</span> }
<span class="ruby-identifier">fail</span> <span class="ruby-string">&quot;Channel open not yet confirmed, please call send_channel_request(or exec) from block of open_channel&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">remote_id</span>
@@ -1683,7 +1693,7 @@ href="Channel.html#method-i-eof-21">eof!</a>).</p>
<div class="method-source-code" id="send_data-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 249</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 252</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">send_data</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-constant">EOFError</span>, <span class="ruby-string">&quot;cannot send data if channel has declared eof&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">eof?</span>
<span class="ruby-identifier">output</span>.<span class="ruby-identifier">append</span>(<span class="ruby-identifier">data</span>.<span class="ruby-identifier">to_s</span>)
@@ -1730,7 +1740,7 @@ consumes an <a href="../../SSH.html">SSH</a> subsystem, like SFTP.</p>
<div class="method-source-code" id="subsystem-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 175</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 178</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">subsystem</span>(<span class="ruby-identifier">subsystem</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">send_channel_request</span>(<span class="ruby-string">&quot;subsystem&quot;</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">subsystem</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-keyword">end</span></pre>
@@ -1768,7 +1778,7 @@ channel.wait</pre>
<div class="method-source-code" id="wait-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 268</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/channel.rb, line 271</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">wait</span>
<span class="ruby-identifier">connection</span>.<span class="ruby-identifier">loop</span> { <span class="ruby-identifier">active?</span> }
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Connection/Constants.html b/Net/SSH/Connection/Constants.html
index c061412..0567d3f 100644
--- a/Net/SSH/Connection/Constants.html
+++ b/Net/SSH/Connection/Constants.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Connection::Constants - net-ssh 4.2.0</title>
+<title>module Net::SSH::Connection::Constants - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Connection/EventLoop.html b/Net/SSH/Connection/EventLoop.html
index 92107b1..e9a31f6 100644
--- a/Net/SSH/Connection/EventLoop.html
+++ b/Net/SSH/Connection/EventLoop.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Connection::EventLoop - net-ssh 4.2.0</title>
+<title>class Net::SSH::Connection::EventLoop - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -154,7 +154,7 @@ event loop it doesnt makes sense and we don&#39;t pass session.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 14</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 16</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">logger</span>=<span class="ruby-keyword">nil</span>)
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span> = <span class="ruby-identifier">logger</span>
<span class="ruby-ivar">@sessions</span> = []
@@ -197,7 +197,7 @@ then we exit the processing</p>
<div class="method-source-code" id="ev_preprocess-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 46</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 48</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ev_preprocess</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-keyword">yield</span>(<span class="ruby-keyword">self</span>)
<span class="ruby-ivar">@sessions</span>.<span class="ruby-identifier">each</span>(<span class="ruby-operator">&amp;</span><span class="ruby-value">:ev_preprocess</span>)
@@ -233,7 +233,7 @@ then we exit the processing</p>
<div class="method-source-code" id="ev_select_and_postprocess-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 53</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 55</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ev_select_and_postprocess</span>(<span class="ruby-identifier">wait</span>)
<span class="ruby-identifier">owners</span> = {}
<span class="ruby-identifier">r</span> = []
@@ -247,28 +247,28 @@ then we exit the processing</p>
<span class="ruby-identifier">sr</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">ri</span><span class="ruby-operator">|</span> <span class="ruby-identifier">owners</span>[<span class="ruby-identifier">ri</span>] = <span class="ruby-identifier">session</span> }
<span class="ruby-identifier">sw</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">wi</span><span class="ruby-operator">|</span> <span class="ruby-identifier">owners</span>[<span class="ruby-identifier">wi</span>] = <span class="ruby-identifier">session</span> }
<span class="ruby-keyword">end</span>
-
- <span class="ruby-identifier">readers</span>, <span class="ruby-identifier">writers</span>, = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Compat</span>.<span class="ruby-identifier">io_select</span>(<span class="ruby-identifier">r</span>, <span class="ruby-identifier">w</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">minwait</span>)
-
+
+ <span class="ruby-identifier">readers</span>, <span class="ruby-identifier">writers</span>, = <span class="ruby-constant">IO</span>.<span class="ruby-identifier">select</span>(<span class="ruby-identifier">r</span>, <span class="ruby-identifier">w</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">minwait</span>)
+
<span class="ruby-identifier">fired_sessions</span> = {}
-
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">readers</span>
<span class="ruby-identifier">readers</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">reader</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">session</span> = <span class="ruby-identifier">owners</span>[<span class="ruby-identifier">reader</span>]
- (<span class="ruby-identifier">fired_sessions</span>[<span class="ruby-identifier">session</span>] <span class="ruby-operator">||=</span> {<span class="ruby-identifier">r</span><span class="ruby-operator">:</span> [],<span class="ruby-identifier">w</span><span class="ruby-operator">:</span> []})[<span class="ruby-value">:r</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">reader</span>
+ (<span class="ruby-identifier">fired_sessions</span>[<span class="ruby-identifier">session</span>] <span class="ruby-operator">||=</span> { <span class="ruby-identifier">r</span><span class="ruby-operator">:</span> [],<span class="ruby-identifier">w</span><span class="ruby-operator">:</span> [] })[<span class="ruby-value">:r</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">reader</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">writers</span>
<span class="ruby-identifier">writers</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">writer</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">session</span> = <span class="ruby-identifier">owners</span>[<span class="ruby-identifier">writer</span>]
- (<span class="ruby-identifier">fired_sessions</span>[<span class="ruby-identifier">session</span>] <span class="ruby-operator">||=</span> {<span class="ruby-identifier">r</span><span class="ruby-operator">:</span> [],<span class="ruby-identifier">w</span><span class="ruby-operator">:</span> []})[<span class="ruby-value">:w</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">writer</span>
+ (<span class="ruby-identifier">fired_sessions</span>[<span class="ruby-identifier">session</span>] <span class="ruby-operator">||=</span> { <span class="ruby-identifier">r</span><span class="ruby-operator">:</span> [],<span class="ruby-identifier">w</span><span class="ruby-operator">:</span> [] })[<span class="ruby-value">:w</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">writer</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-identifier">fired_sessions</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">s</span>,<span class="ruby-identifier">rw</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">s</span>.<span class="ruby-identifier">ev_do_handle_events</span>(<span class="ruby-identifier">rw</span>[<span class="ruby-value">:r</span>],<span class="ruby-identifier">rw</span>[<span class="ruby-value">:w</span>])
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-ivar">@sessions</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">ev_do_postprocess</span>(<span class="ruby-identifier">fired_sessions</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-identifier">s</span>)) }
<span class="ruby-keyword">true</span>
<span class="ruby-keyword">end</span></pre>
@@ -302,10 +302,10 @@ loop if block returns false for that session</p>
<div class="method-source-code" id="process-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 26</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 28</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">wait</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">ev_preprocess</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
-
+
<span class="ruby-identifier">ev_select_and_postprocess</span>(<span class="ruby-identifier">wait</span>)
<span class="ruby-keyword">end</span></pre>
</div>
@@ -337,7 +337,7 @@ loop if block returns false for that session</p>
<div class="method-source-code" id="process_only-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 33</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 35</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">process_only</span>(<span class="ruby-identifier">session</span>, <span class="ruby-identifier">wait</span> = <span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">orig_sessions</span> = <span class="ruby-ivar">@sessions</span>
<span class="ruby-keyword">begin</span>
@@ -377,7 +377,7 @@ loop if block returns false for that session</p>
<div class="method-source-code" id="register-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 19</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 21</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">register</span>(<span class="ruby-identifier">session</span>)
<span class="ruby-ivar">@sessions</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">session</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Connection/Keepalive.html b/Net/SSH/Connection/Keepalive.html
index 853b5f5..32eebb8 100644
--- a/Net/SSH/Connection/Keepalive.html
+++ b/Net/SSH/Connection/Keepalive.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Connection::Keepalive - net-ssh 4.2.0</title>
+<title>class Net::SSH::Connection::Keepalive - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -149,7 +149,7 @@
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 7</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 9</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">session</span>)
<span class="ruby-ivar">@last_keepalive_sent_at</span> = <span class="ruby-keyword">nil</span>
<span class="ruby-ivar">@unresponded_keepalive_count</span> = <span class="ruby-value">0</span>
@@ -193,7 +193,7 @@
<div class="method-source-code" id="enabled-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 18</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 20</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">enabled?</span>
<span class="ruby-identifier">options</span>[<span class="ruby-value">:keepalive</span>]
<span class="ruby-keyword">end</span></pre>
@@ -226,7 +226,7 @@
<div class="method-source-code" id="interval-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 22</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 24</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">interval</span>
<span class="ruby-identifier">options</span>[<span class="ruby-value">:keepalive_interval</span>] <span class="ruby-operator">||</span> <span class="ruby-constant">Session</span><span class="ruby-operator">::</span><span class="ruby-constant">DEFAULT_IO_SELECT_TIMEOUT</span>
<span class="ruby-keyword">end</span></pre>
@@ -259,7 +259,7 @@
<div class="method-source-code" id="keepalive_maxcount-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 32</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 34</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">keepalive_maxcount</span>
(<span class="ruby-identifier">options</span>[<span class="ruby-value">:keepalive_maxcount</span>] <span class="ruby-operator">||</span> <span class="ruby-value">3</span>).<span class="ruby-identifier">to_i</span>
<span class="ruby-keyword">end</span></pre>
@@ -292,7 +292,7 @@
<div class="method-source-code" id="options-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 14</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 16</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">options</span>
<span class="ruby-ivar">@session</span>.<span class="ruby-identifier">options</span>
<span class="ruby-keyword">end</span></pre>
@@ -325,20 +325,20 @@
<div class="method-source-code" id="send_as_needed-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 36</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 38</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">send_as_needed</span>(<span class="ruby-identifier">was_events</span>)
<span class="ruby-keyword">return</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">was_events</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">should_send?</span>
<span class="ruby-identifier">info</span> { <span class="ruby-node">&quot;sending keepalive #{@unresponded_keepalive_count}&quot;</span> }
-
+
<span class="ruby-ivar">@unresponded_keepalive_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
<span class="ruby-ivar">@session</span>.<span class="ruby-identifier">send_global_request</span>(<span class="ruby-string">&quot;keepalive@openssh.com&quot;</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">success</span>, <span class="ruby-identifier">response</span><span class="ruby-operator">|</span>
- <span class="ruby-identifier">debug</span> { <span class="ruby-node">&quot;keepalive response successful. Missed #{@unresponded_keepalive_count-1} keepalives&quot;</span> }
+ <span class="ruby-identifier">debug</span> { <span class="ruby-node">&quot;keepalive response successful. Missed #{@unresponded_keepalive_count - 1} keepalives&quot;</span> }
<span class="ruby-ivar">@unresponded_keepalive_count</span> = <span class="ruby-value">0</span>
}
<span class="ruby-ivar">@last_keepalive_sent_at</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">keepalive_maxcount</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@unresponded_keepalive_count</span> <span class="ruby-operator">&gt;</span> <span class="ruby-identifier">keepalive_maxcount</span>
- <span class="ruby-identifier">error</span> { <span class="ruby-node">&quot;Timeout, server #{@session.host} not responding. Missed #{@unresponded_keepalive_count-1} timeouts.&quot;</span> }
+ <span class="ruby-identifier">error</span> { <span class="ruby-node">&quot;Timeout, server #{@session.host} not responding. Missed #{@unresponded_keepalive_count - 1} timeouts.&quot;</span> }
<span class="ruby-ivar">@unresponded_keepalive_count</span> = <span class="ruby-value">0</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Timeout</span>, <span class="ruby-node">&quot;Timeout, server #{@session.host} not responding.&quot;</span>
<span class="ruby-keyword">end</span>
@@ -372,7 +372,7 @@
<div class="method-source-code" id="should_send-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 26</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/keepalive.rb, line 28</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">should_send?</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">enabled?</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@last_keepalive_sent_at</span>
diff --git a/Net/SSH/Connection/Session.html b/Net/SSH/Connection/Session.html
index 34ebbe2..0f51f1c 100644
--- a/Net/SSH/Connection/Session.html
+++ b/Net/SSH/Connection/Session.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Connection::Session - net-ssh 4.2.0</title>
+<title>class Net::SSH::Connection::Session - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -69,11 +69,11 @@
<ul class="link-list">
- <li><a class="include" href="Constants.html">Net::SSH::Connection::Constants</a>
+ <li><a class="include" href="../Loggable.html">Net::SSH::Loggable</a>
- <li><a class="include" href="../Loggable.html">Net::SSH::Loggable</a>
+ <li><a class="include" href="Constants.html">Net::SSH::Connection::Constants</a>
</ul>
@@ -290,13 +290,13 @@ Initializes the listeners to be only the underlying socket object.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 67</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 70</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">transport</span>, <span class="ruby-identifier">options</span>={})
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span> = <span class="ruby-identifier">transport</span>.<span class="ruby-identifier">logger</span>
-
+
<span class="ruby-ivar">@transport</span> = <span class="ruby-identifier">transport</span>
<span class="ruby-ivar">@options</span> = <span class="ruby-identifier">options</span>
-
+
<span class="ruby-ivar">@channel_id_counter</span> = <span class="ruby-value">-1</span>
<span class="ruby-ivar">@channels</span> = <span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">NilChannel</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>))
<span class="ruby-ivar">@listeners</span> = { <span class="ruby-identifier">transport</span>.<span class="ruby-identifier">socket</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">nil</span> }
@@ -304,12 +304,12 @@ Initializes the listeners to be only the underlying socket object.</p>
<span class="ruby-ivar">@channel_open_handlers</span> = {}
<span class="ruby-ivar">@on_global_request</span> = {}
<span class="ruby-ivar">@properties</span> = (<span class="ruby-identifier">options</span>[<span class="ruby-value">:properties</span>] <span class="ruby-operator">||</span> {}).<span class="ruby-identifier">dup</span>
-
+
<span class="ruby-ivar">@max_pkt_size</span> = (<span class="ruby-identifier">options</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:max_pkt_size</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:max_pkt_size</span>] <span class="ruby-operator">:</span> <span class="ruby-value">0x8000</span>)
<span class="ruby-ivar">@max_win_size</span> = (<span class="ruby-identifier">options</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:max_win_size</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:max_win_size</span>] <span class="ruby-operator">:</span> <span class="ruby-value">0x20000</span>)
-
+
<span class="ruby-ivar">@keepalive</span> = <span class="ruby-constant">Keepalive</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>)
-
+
<span class="ruby-ivar">@event_loop</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:event_loop</span>] <span class="ruby-operator">||</span> <span class="ruby-constant">SingleSessionEventLoop</span>.<span class="ruby-identifier">new</span>
<span class="ruby-ivar">@event_loop</span>.<span class="ruby-identifier">register</span>(<span class="ruby-keyword">self</span>)
<span class="ruby-keyword">end</span></pre>
@@ -352,7 +352,7 @@ href="../../SSH.html">SSH</a> connections.</p>
<div class="method-source-code" id="5B-5D-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 93</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 96</span>
<span class="ruby-keyword">def</span> <span class="ruby-operator">[]</span>(<span class="ruby-identifier">key</span>)
<span class="ruby-ivar">@properties</span>[<span class="ruby-identifier">key</span>]
<span class="ruby-keyword">end</span></pre>
@@ -385,7 +385,7 @@ href="../../SSH.html">SSH</a> connections.</p>
<div class="method-source-code" id="5B-5D-3D-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 98</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 101</span>
<span class="ruby-keyword">def</span> <span class="ruby-operator">[]=</span>(<span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span>)
<span class="ruby-ivar">@properties</span>[<span class="ruby-identifier">key</span>] = <span class="ruby-identifier">value</span>
<span class="ruby-keyword">end</span></pre>
@@ -428,7 +428,7 @@ to be run.</p>
<div class="method-source-code" id="busy-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 151</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 154</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">busy?</span>(<span class="ruby-identifier">include_invisible</span>=<span class="ruby-keyword">false</span>)
<span class="ruby-keyword">if</span> <span class="ruby-identifier">include_invisible</span>
<span class="ruby-identifier">channels</span>.<span class="ruby-identifier">any?</span>
@@ -465,7 +465,7 @@ to be run.</p>
<div class="method-source-code" id="cleanup_channel-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 519</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 522</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">cleanup_channel</span>(<span class="ruby-identifier">channel</span>)
<span class="ruby-keyword">if</span> <span class="ruby-identifier">channel</span>.<span class="ruby-identifier">local_closed?</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">channel</span>.<span class="ruby-identifier">remote_closed?</span>
<span class="ruby-identifier">info</span> { <span class="ruby-node">&quot;#{host} delete channel #{channel.local_id} which closed locally and remotely&quot;</span> }
@@ -503,7 +503,7 @@ connection.</p>
<div class="method-source-code" id="close-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 120</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 123</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">close</span>
<span class="ruby-identifier">info</span> { <span class="ruby-node">&quot;closing remaining channels (#{channels.length} open)&quot;</span> }
<span class="ruby-identifier">channels</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">id</span>, <span class="ruby-identifier">channel</span><span class="ruby-operator">|</span> <span class="ruby-identifier">channel</span>.<span class="ruby-identifier">close</span> }
@@ -547,7 +547,7 @@ just want to know if <em>you</em> have closed the connection.</p>
<div class="method-source-code" id="closed-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 113</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 116</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">closed?</span>
<span class="ruby-identifier">transport</span>.<span class="ruby-identifier">closed?</span>
<span class="ruby-keyword">end</span></pre>
@@ -581,7 +581,7 @@ events, we also return the max wait</p>
<div class="method-source-code" id="ev_do_calculate_rw_wait-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 252</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 255</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ev_do_calculate_rw_wait</span>(<span class="ruby-identifier">wait</span>)
<span class="ruby-identifier">r</span> = <span class="ruby-identifier">listeners</span>.<span class="ruby-identifier">keys</span>
<span class="ruby-identifier">w</span> = <span class="ruby-identifier">r</span>.<span class="ruby-identifier">select</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">w2</span><span class="ruby-operator">|</span> <span class="ruby-identifier">w2</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:pending_write?</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">w2</span>.<span class="ruby-identifier">pending_write?</span> }
@@ -619,7 +619,7 @@ to allow the transport layer to rekey. Then returns true.</p>
<div class="method-source-code" id="ev_do_handle_events-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 267</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 270</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ev_do_handle_events</span>(<span class="ruby-identifier">readers</span>, <span class="ruby-identifier">writers</span>)
<span class="ruby-constant">Array</span>(<span class="ruby-identifier">readers</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">reader</span><span class="ruby-operator">|</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">listeners</span>[<span class="ruby-identifier">reader</span>]
@@ -631,7 +631,7 @@ to allow the transport layer to rekey. Then returns true.</p>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-constant">Array</span>(<span class="ruby-identifier">writers</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">writer</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">writer</span>.<span class="ruby-identifier">send_pending</span>
<span class="ruby-keyword">end</span>
@@ -667,7 +667,7 @@ to allow the transport layer to rekey</p>
<div class="method-source-code" id="ev_do_postprocess-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 286</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 289</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ev_do_postprocess</span>(<span class="ruby-identifier">was_events</span>)
<span class="ruby-ivar">@keepalive</span>.<span class="ruby-identifier">send_as_needed</span>(<span class="ruby-identifier">was_events</span>)
<span class="ruby-identifier">transport</span>.<span class="ruby-identifier">rekey_as_needed</span>
@@ -703,7 +703,7 @@ multiplexing</p>
<div class="method-source-code" id="ev_preprocess-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 245</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 248</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ev_preprocess</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">dispatch_incoming_packets</span>(<span class="ruby-identifier">raise_disconnect_errors</span><span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>)
<span class="ruby-identifier">each_channel</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">id</span>, <span class="ruby-identifier">channel</span><span class="ruby-operator">|</span> <span class="ruby-identifier">channel</span>.<span class="ruby-identifier">process</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">channel</span>.<span class="ruby-identifier">local_closed?</span> }
@@ -760,22 +760,22 @@ will be sufficient.</p>
<div class="method-source-code" id="exec-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 376</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 379</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">exec</span>(<span class="ruby-identifier">command</span>, <span class="ruby-identifier">status</span><span class="ruby-operator">:</span> <span class="ruby-keyword">nil</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">open_channel</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">channel</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">channel</span>.<span class="ruby-identifier">exec</span>(<span class="ruby-identifier">command</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ch</span>, <span class="ruby-identifier">success</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;could not execute command: #{command.inspect}&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">success</span>
-
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">status</span>
<span class="ruby-identifier">channel</span>.<span class="ruby-identifier">on_request</span>(<span class="ruby-string">&quot;exit-status&quot;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ch2</span>,<span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">status</span>[<span class="ruby-value">:exit_code</span>] = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">read_long</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-identifier">channel</span>.<span class="ruby-identifier">on_request</span>(<span class="ruby-string">&quot;exit-signal&quot;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ch2</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">status</span>[<span class="ruby-value">:exit_signal</span>] = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">read_long</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-identifier">channel</span>.<span class="ruby-identifier">on_data</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ch2</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">block</span>
<span class="ruby-identifier">block</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">ch2</span>, <span class="ruby-value">:stdout</span>, <span class="ruby-identifier">data</span>)
@@ -783,7 +783,7 @@ will be sufficient.</p>
<span class="ruby-identifier">$stdout</span>.<span class="ruby-identifier">print</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-identifier">channel</span>.<span class="ruby-identifier">on_extended_data</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ch2</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">block</span>
<span class="ruby-identifier">block</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">ch2</span>, <span class="ruby-value">:stderr</span>, <span class="ruby-identifier">data</span>)
@@ -830,20 +830,20 @@ return all output (stdout and stderr) as a single string.</p>
<div class="method-source-code" id="exec-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 417</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 420</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">exec!</span>(<span class="ruby-identifier">command</span>, <span class="ruby-identifier">status</span><span class="ruby-operator">:</span> <span class="ruby-keyword">nil</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">block_or_concat</span> = <span class="ruby-identifier">block</span> <span class="ruby-operator">||</span> <span class="ruby-constant">Proc</span>.<span class="ruby-identifier">new</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ch</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">ch</span>[<span class="ruby-value">:result</span>] <span class="ruby-operator">||=</span> <span class="ruby-string">&quot;&quot;</span>
<span class="ruby-identifier">ch</span>[<span class="ruby-value">:result</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">data</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-identifier">status</span> <span class="ruby-operator">||=</span> {}
<span class="ruby-identifier">channel</span> = <span class="ruby-identifier">exec</span>(<span class="ruby-identifier">command</span>, <span class="ruby-identifier">status</span><span class="ruby-operator">:</span> <span class="ruby-identifier">status</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block_or_concat</span>)
<span class="ruby-identifier">channel</span>.<span class="ruby-identifier">wait</span>
-
+
<span class="ruby-identifier">channel</span>[<span class="ruby-value">:result</span>] <span class="ruby-operator">||=</span> <span class="ruby-string">&quot;&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">block</span>
<span class="ruby-identifier">channel</span>[<span class="ruby-value">:result</span>] <span class="ruby-operator">&amp;&amp;=</span> <span class="ruby-identifier">channel</span>[<span class="ruby-value">:result</span>].<span class="ruby-identifier">force_encoding</span>(<span class="ruby-string">&quot;UTF-8&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">block</span>
-
+
<span class="ruby-constant">StringWithExitstatus</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">channel</span>[<span class="ruby-value">:result</span>], <span class="ruby-identifier">status</span>[<span class="ruby-value">:exit_code</span>]) <span class="ruby-keyword">if</span> <span class="ruby-identifier">channel</span>[<span class="ruby-value">:result</span>]
<span class="ruby-keyword">end</span></pre>
</div>
@@ -878,7 +878,7 @@ href="../../SSH.html">SSH</a>.</p>
<div class="method-source-code" id="forward-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 490</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 493</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">forward</span>
<span class="ruby-ivar">@forward</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Service</span><span class="ruby-operator">::</span><span class="ruby-constant">Forward</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>)
<span class="ruby-keyword">end</span></pre>
@@ -912,7 +912,7 @@ connect to.</p>
<div class="method-source-code" id="host-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 104</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 107</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">host</span>
<span class="ruby-identifier">transport</span>.<span class="ruby-identifier">host</span>
<span class="ruby-keyword">end</span></pre>
@@ -979,7 +979,7 @@ process&#39; stdin stream:</p>
<div class="method-source-code" id="listen_to-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 478</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 481</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">listen_to</span>(<span class="ruby-identifier">io</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">callback</span>)
<span class="ruby-identifier">listeners</span>[<span class="ruby-identifier">io</span>] = <span class="ruby-identifier">callback</span>
<span class="ruby-keyword">end</span></pre>
@@ -1034,7 +1034,7 @@ as the maximum number of seconds to wait for IO.select to return).</p>
<div class="method-source-code" id="loop-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 176</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 179</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">loop</span>(<span class="ruby-identifier">wait</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">running</span> = <span class="ruby-identifier">block</span> <span class="ruby-operator">||</span> <span class="ruby-constant">Proc</span>.<span class="ruby-identifier">new</span> { <span class="ruby-identifier">busy?</span> }
<span class="ruby-identifier">loop_forever</span> { <span class="ruby-keyword">break</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">wait</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">running</span>) }
@@ -1112,7 +1112,7 @@ seconds which may pass between callbacks.</p>
<div class="method-source-code" id="max_select_wait_time-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 529</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 532</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">max_select_wait_time</span>
<span class="ruby-ivar">@keepalive</span>.<span class="ruby-identifier">interval</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@keepalive</span>.<span class="ruby-identifier">enabled?</span>
<span class="ruby-keyword">end</span></pre>
@@ -1150,7 +1150,7 @@ returns false, REQUEST_FAILURE will be sent.</p>
<div class="method-source-code" id="on_global_request-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 514</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 517</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">on_global_request</span>(<span class="ruby-identifier">type</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">old</span>, <span class="ruby-ivar">@on_global_request</span>[<span class="ruby-identifier">type</span>] = <span class="ruby-ivar">@on_global_request</span>[<span class="ruby-identifier">type</span>], <span class="ruby-identifier">block</span>
<span class="ruby-identifier">old</span>
@@ -1194,7 +1194,7 @@ you are welcome to register handlers for other channel types, as needed.</p>
<div class="method-source-code" id="on_open_channel-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 504</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 507</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">on_open_channel</span>(<span class="ruby-identifier">type</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">channel_open_handlers</span>[<span class="ruby-identifier">type</span>] = <span class="ruby-identifier">block</span>
<span class="ruby-keyword">end</span></pre>
@@ -1249,16 +1249,16 @@ channel.wait</pre>
<div class="method-source-code" id="open_channel-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 335</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 338</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">open_channel</span>(<span class="ruby-identifier">type</span>=<span class="ruby-string">&quot;session&quot;</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">extra</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">on_confirm</span>)
<span class="ruby-identifier">local_id</span> = <span class="ruby-identifier">get_next_channel_id</span>
-
+
<span class="ruby-identifier">channel</span> = <span class="ruby-constant">Channel</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">local_id</span>, <span class="ruby-ivar">@max_pkt_size</span>, <span class="ruby-ivar">@max_win_size</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">on_confirm</span>)
<span class="ruby-identifier">msg</span> = <span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:byte</span>, <span class="ruby-constant">CHANNEL_OPEN</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">type</span>, <span class="ruby-value">:long</span>, <span class="ruby-identifier">local_id</span>,
<span class="ruby-value">:long</span>, <span class="ruby-identifier">channel</span>.<span class="ruby-identifier">local_maximum_window_size</span>,
<span class="ruby-value">:long</span>, <span class="ruby-identifier">channel</span>.<span class="ruby-identifier">local_maximum_packet_size</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">extra</span>)
<span class="ruby-identifier">send_message</span>(<span class="ruby-identifier">msg</span>)
-
+
<span class="ruby-identifier">channels</span>[<span class="ruby-identifier">local_id</span>] = <span class="ruby-identifier">channel</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -1291,7 +1291,7 @@ href="Session.html#method-i-process">process</a>.</p>
<div class="method-source-code" id="postprocess-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 259</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 262</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">postprocess</span>(<span class="ruby-identifier">readers</span>, <span class="ruby-identifier">writers</span>)
<span class="ruby-identifier">ev_do_handle_events</span>(<span class="ruby-identifier">readers</span>, <span class="ruby-identifier">writers</span>)
<span class="ruby-keyword">end</span></pre>
@@ -1330,7 +1330,7 @@ method returns false. Otherwise, it returns true.</p>
<div class="method-source-code" id="preprocess-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 236</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 239</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">preprocess</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-keyword">yield</span>(<span class="ruby-keyword">self</span>)
<span class="ruby-identifier">ev_preprocess</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
@@ -1400,10 +1400,10 @@ end</pre>
<div class="method-source-code" id="process-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 224</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 227</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">wait</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-ivar">@event_loop</span>.<span class="ruby-identifier">process</span>(<span class="ruby-identifier">wait</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
-<span class="ruby-keyword">rescue</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">StandardError</span>
<span class="ruby-identifier">force_channel_cleanup_on_close</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">closed?</span>
<span class="ruby-identifier">raise</span>
<span class="ruby-keyword">end</span></pre>
@@ -1454,7 +1454,7 @@ href="../../SSH.html">Net::SSH</a>, and so this method is available to you.</p>
<div class="method-source-code" id="send_global_request-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 308</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 311</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">send_global_request</span>(<span class="ruby-identifier">type</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">extra</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">callback</span>)
<span class="ruby-identifier">info</span> { <span class="ruby-node">&quot;sending global request #{type}&quot;</span> }
<span class="ruby-identifier">msg</span> = <span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:byte</span>, <span class="ruby-constant">GLOBAL_REQUEST</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">type</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">:bool</span>, <span class="ruby-operator">!</span><span class="ruby-identifier">callback</span>.<span class="ruby-identifier">nil?</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">extra</span>)
@@ -1499,7 +1499,7 @@ this to send it.</p>
<div class="method-source-code" id="send_message-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 440</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 443</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">send_message</span>(<span class="ruby-identifier">message</span>)
<span class="ruby-identifier">transport</span>.<span class="ruby-identifier">enqueue_message</span>(<span class="ruby-identifier">message</span>)
<span class="ruby-keyword">end</span></pre>
@@ -1535,7 +1535,7 @@ underlying protocol&#39;s state).</p>
<div class="method-source-code" id="shutdown-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 135</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 138</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">shutdown!</span>
<span class="ruby-identifier">transport</span>.<span class="ruby-identifier">shutdown!</span>
<span class="ruby-keyword">end</span></pre>
@@ -1569,7 +1569,7 @@ event loop will no longer monitor it.</p>
<div class="method-source-code" id="stop_listening_to-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 484</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 487</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">stop_listening_to</span>(<span class="ruby-identifier">io</span>)
<span class="ruby-identifier">listeners</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">io</span>)
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Connection/Session/NilChannel.html b/Net/SSH/Connection/Session/NilChannel.html
index 67d6b55..08469d2 100644
--- a/Net/SSH/Connection/Session/NilChannel.html
+++ b/Net/SSH/Connection/Session/NilChannel.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Connection::Session::NilChannel - net-ssh 4.2.0</title>
+<title>class Net::SSH::Connection::Session::NilChannel - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -128,7 +128,7 @@
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 56</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 59</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">session</span>)
<span class="ruby-ivar">@session</span> = <span class="ruby-identifier">session</span>
<span class="ruby-keyword">end</span></pre>
@@ -169,7 +169,7 @@
<div class="method-source-code" id="method_missing-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 60</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 63</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">method_missing</span>(<span class="ruby-identifier">sym</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-ivar">@session</span>.<span class="ruby-identifier">lwarn</span> { <span class="ruby-node">&quot;ignoring request #{sym.inspect} for non-existent (closed?) channel; probably ssh server bug&quot;</span> }
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Connection/Session/StringWithExitstatus.html b/Net/SSH/Connection/Session/StringWithExitstatus.html
index 6ff8cdb..c5167ea 100644
--- a/Net/SSH/Connection/Session/StringWithExitstatus.html
+++ b/Net/SSH/Connection/Session/StringWithExitstatus.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Connection::Session::StringWithExitstatus - net-ssh 4.2.0</title>
+<title>class Net::SSH::Connection::Session::StringWithExitstatus - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -152,7 +152,7 @@
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 348</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/session.rb, line 351</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">str</span>, <span class="ruby-identifier">exitstatus</span>)
<span class="ruby-keyword">super</span>(<span class="ruby-identifier">str</span>)
<span class="ruby-ivar">@exitstatus</span> = <span class="ruby-identifier">exitstatus</span>
diff --git a/Net/SSH/Connection/SingleSessionEventLoop.html b/Net/SSH/Connection/SingleSessionEventLoop.html
index d63fde9..70d0e01 100644
--- a/Net/SSH/Connection/SingleSessionEventLoop.html
+++ b/Net/SSH/Connection/SingleSessionEventLoop.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Connection::SingleSessionEventLoop - net-ssh 4.2.0</title>
+<title>class Net::SSH::Connection::SingleSessionEventLoop - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -131,7 +131,7 @@ session as argument</p>
<div class="method-source-code" id="ev_preprocess-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 97</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 99</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ev_preprocess</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-keyword">yield</span>(<span class="ruby-ivar">@sessions</span>.<span class="ruby-identifier">first</span>)
<span class="ruby-ivar">@sessions</span>.<span class="ruby-identifier">each</span>(<span class="ruby-operator">&amp;</span><span class="ruby-value">:ev_preprocess</span>)
@@ -167,13 +167,13 @@ session as argument</p>
<div class="method-source-code" id="ev_select_and_postprocess-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 104</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/connection/event_loop.rb, line 106</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ev_select_and_postprocess</span>(<span class="ruby-identifier">wait</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;Only one session expected&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@sessions</span>.<span class="ruby-identifier">count</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
<span class="ruby-identifier">session</span> = <span class="ruby-ivar">@sessions</span>.<span class="ruby-identifier">first</span>
<span class="ruby-identifier">sr</span>,<span class="ruby-identifier">sw</span>,<span class="ruby-identifier">actwait</span> = <span class="ruby-identifier">session</span>.<span class="ruby-identifier">ev_do_calculate_rw_wait</span>(<span class="ruby-identifier">wait</span>)
- <span class="ruby-identifier">readers</span>, <span class="ruby-identifier">writers</span>, = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Compat</span>.<span class="ruby-identifier">io_select</span>(<span class="ruby-identifier">sr</span>, <span class="ruby-identifier">sw</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">actwait</span>)
-
+ <span class="ruby-identifier">readers</span>, <span class="ruby-identifier">writers</span>, = <span class="ruby-constant">IO</span>.<span class="ruby-identifier">select</span>(<span class="ruby-identifier">sr</span>, <span class="ruby-identifier">sw</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">actwait</span>)
+
<span class="ruby-identifier">session</span>.<span class="ruby-identifier">ev_do_handle_events</span>(<span class="ruby-identifier">readers</span>,<span class="ruby-identifier">writers</span>)
<span class="ruby-identifier">session</span>.<span class="ruby-identifier">ev_do_postprocess</span>(<span class="ruby-operator">!</span>((<span class="ruby-identifier">readers</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">readers</span>.<span class="ruby-identifier">empty?</span>) <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">writers</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">writers</span>.<span class="ruby-identifier">empty?</span>)))
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Connection/Term.html b/Net/SSH/Connection/Term.html
index 433e897..caee111 100644
--- a/Net/SSH/Connection/Term.html
+++ b/Net/SSH/Connection/Term.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Connection::Term - net-ssh 4.2.0</title>
+<title>module Net::SSH::Connection::Term - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/ConnectionTimeout.html b/Net/SSH/ConnectionTimeout.html
index 1cc7e43..c01f0cf 100644
--- a/Net/SSH/ConnectionTimeout.html
+++ b/Net/SSH/ConnectionTimeout.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::ConnectionTimeout - net-ssh 4.2.0</title>
+<title>class Net::SSH::ConnectionTimeout - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/Disconnect.html b/Net/SSH/Disconnect.html
index 1f84ad2..a395077 100644
--- a/Net/SSH/Disconnect.html
+++ b/Net/SSH/Disconnect.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Disconnect - net-ssh 4.2.0</title>
+<title>class Net::SSH::Disconnect - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/Exception.html b/Net/SSH/Exception.html
index edf774f..47b81a4 100644
--- a/Net/SSH/Exception.html
+++ b/Net/SSH/Exception.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Exception - net-ssh 4.2.0</title>
+<title>class Net::SSH::Exception - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/ForwardedBufferedIo.html b/Net/SSH/ForwardedBufferedIo.html
index b448c4e..67f76b6 100644
--- a/Net/SSH/ForwardedBufferedIo.html
+++ b/Net/SSH/ForwardedBufferedIo.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::ForwardedBufferedIo - net-ssh 4.2.0</title>
+<title>module Net::SSH::ForwardedBufferedIo - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/HostKeyError.html b/Net/SSH/HostKeyError.html
index 69bbe8d..57b616e 100644
--- a/Net/SSH/HostKeyError.html
+++ b/Net/SSH/HostKeyError.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::HostKeyError - net-ssh 4.2.0</title>
+<title>class Net::SSH::HostKeyError - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -147,7 +147,7 @@ href="HostKeyError.html#method-i-key">key</a>).</p>
<div class="method-source-code" id="5B-5D-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 54</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 55</span>
<span class="ruby-keyword">def</span> <span class="ruby-operator">[]</span>(<span class="ruby-identifier">key</span>)
<span class="ruby-ivar">@data</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@data</span>[<span class="ruby-identifier">key</span>]
<span class="ruby-keyword">end</span></pre>
@@ -181,7 +181,7 @@ or did not match.</p>
<div class="method-source-code" id="fingerprint-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 60</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 61</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">fingerprint</span>
<span class="ruby-ivar">@data</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">:fingerprint</span>]
<span class="ruby-keyword">end</span></pre>
@@ -214,7 +214,7 @@ or did not match.</p>
<div class="method-source-code" id="host-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 65</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 66</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">host</span>
<span class="ruby-ivar">@data</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">:peer</span>] <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">:peer</span>][<span class="ruby-value">:host</span>]
<span class="ruby-keyword">end</span></pre>
@@ -247,7 +247,7 @@ or did not match.</p>
<div class="method-source-code" id="ip-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 75</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 76</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ip</span>
<span class="ruby-ivar">@data</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">:peer</span>] <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">:peer</span>][<span class="ruby-value">:ip</span>]
<span class="ruby-keyword">end</span></pre>
@@ -280,7 +280,7 @@ or did not match.</p>
<div class="method-source-code" id="key-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 80</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 81</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">key</span>
<span class="ruby-ivar">@data</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">:key</span>]
<span class="ruby-keyword">end</span></pre>
@@ -313,7 +313,7 @@ or did not match.</p>
<div class="method-source-code" id="port-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 70</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 71</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">port</span>
<span class="ruby-ivar">@data</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">:peer</span>] <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">:peer</span>][<span class="ruby-value">:port</span>]
<span class="ruby-keyword">end</span></pre>
@@ -347,7 +347,7 @@ known hosts file, so that subsequent connections will remember them.</p>
<div class="method-source-code" id="remember_host-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 86</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/errors.rb, line 87</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">remember_host!</span>
<span class="ruby-ivar">@callback</span>.<span class="ruby-identifier">call</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/HostKeyMismatch.html b/Net/SSH/HostKeyMismatch.html
index 98879ec..dcb1858 100644
--- a/Net/SSH/HostKeyMismatch.html
+++ b/Net/SSH/HostKeyMismatch.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::HostKeyMismatch - net-ssh 4.2.0</title>
+<title>class Net::SSH::HostKeyMismatch - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/HostKeyUnknown.html b/Net/SSH/HostKeyUnknown.html
index 3ac7701..531d611 100644
--- a/Net/SSH/HostKeyUnknown.html
+++ b/Net/SSH/HostKeyUnknown.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::HostKeyUnknown - net-ssh 4.2.0</title>
+<title>class Net::SSH::HostKeyUnknown - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/HostKeys.html b/Net/SSH/HostKeys.html
index bca9110..86a913d 100644
--- a/Net/SSH/HostKeys.html
+++ b/Net/SSH/HostKeys.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::HostKeys - net-ssh 4.2.0</title>
+<title>class Net::SSH::HostKeys - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -166,12 +166,12 @@
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 14</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 16</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">host_keys</span>, <span class="ruby-identifier">host</span>, <span class="ruby-identifier">known_hosts</span>, <span class="ruby-identifier">options</span> = {})
- <span class="ruby-ivar">@host_keys</span> = <span class="ruby-identifier">host_keys</span>
- <span class="ruby-ivar">@host</span> = <span class="ruby-identifier">host</span>
- <span class="ruby-ivar">@known_hosts</span> = <span class="ruby-identifier">known_hosts</span>
- <span class="ruby-ivar">@options</span> = <span class="ruby-identifier">options</span>
+ <span class="ruby-ivar">@host_keys</span> = <span class="ruby-identifier">host_keys</span>
+ <span class="ruby-ivar">@host</span> = <span class="ruby-identifier">host</span>
+ <span class="ruby-ivar">@known_hosts</span> = <span class="ruby-identifier">known_hosts</span>
+ <span class="ruby-ivar">@options</span> = <span class="ruby-identifier">options</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -210,10 +210,10 @@
<div class="method-source-code" id="add_host_key-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 21</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 23</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_host_key</span>(<span class="ruby-identifier">key</span>)
- <span class="ruby-ivar">@known_hosts</span>.<span class="ruby-identifier">add</span>(<span class="ruby-ivar">@host</span>, <span class="ruby-identifier">key</span>, <span class="ruby-ivar">@options</span>)
- <span class="ruby-ivar">@host_keys</span>.<span class="ruby-identifier">push</span>(<span class="ruby-identifier">key</span>)
+ <span class="ruby-ivar">@known_hosts</span>.<span class="ruby-identifier">add</span>(<span class="ruby-ivar">@host</span>, <span class="ruby-identifier">key</span>, <span class="ruby-ivar">@options</span>)
+ <span class="ruby-ivar">@host_keys</span>.<span class="ruby-identifier">push</span>(<span class="ruby-identifier">key</span>)
<span class="ruby-keyword">end</span></pre>
</div>
@@ -244,9 +244,9 @@
<div class="method-source-code" id="each-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 26</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 28</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">each</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
- <span class="ruby-ivar">@host_keys</span>.<span class="ruby-identifier">each</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
+ <span class="ruby-ivar">@host_keys</span>.<span class="ruby-identifier">each</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-keyword">end</span></pre>
</div>
@@ -277,7 +277,7 @@
<div class="method-source-code" id="empty-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 30</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 32</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">empty?</span>
<span class="ruby-ivar">@host_keys</span>.<span class="ruby-identifier">empty?</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/KeyFactory.html b/Net/SSH/KeyFactory.html
index c4c27bf..a6bb7c5 100644
--- a/Net/SSH/KeyFactory.html
+++ b/Net/SSH/KeyFactory.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::KeyFactory - net-ssh 4.2.0</title>
+<title>class Net::SSH::KeyFactory - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -95,7 +95,7 @@
<section class="description">
<p>A factory class for returning new Key classes. It is used for obtaining <a
-href="KeyFactory/OpenSSL.html">OpenSSL</a> key instances via their <a
+href="../../OpenSSL.html">OpenSSL</a> key instances via their <a
href="../SSH.html">SSH</a> names, and for loading both public and private
keys. It used used primarily by <a href="../SSH.html">Net::SSH</a> itself,
internally, and will rarely (if ever) be directly used by consumers of the
@@ -127,7 +127,7 @@ library.</p>
<dt id="MAP">MAP
<dd><p>Specifies the mapping of <a href="../SSH.html">SSH</a> names to <a
-href="KeyFactory/OpenSSL.html">OpenSSL</a> key classes.</p>
+href="../../OpenSSL.html">OpenSSL</a> key classes.</p>
</dl>
@@ -156,15 +156,15 @@ href="KeyFactory/OpenSSL.html">OpenSSL</a> key classes.</p>
<div class="method-description">
- <p>Fetch an <a href="KeyFactory/OpenSSL.html">OpenSSL</a> key instance by its
-<a href="../SSH.html">SSH</a> name. It will be a new, empty key of the
-given type.</p>
+ <p>Fetch an <a href="../../OpenSSL.html">OpenSSL</a> key instance by its <a
+href="../SSH.html">SSH</a> name. It will be a new, empty key of the given
+type.</p>
<div class="method-source-code" id="get-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 32</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 31</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get</span>(<span class="ruby-identifier">name</span>)
<span class="ruby-constant">MAP</span>.<span class="ruby-identifier">fetch</span>(<span class="ruby-identifier">name</span>).<span class="ruby-identifier">new</span>
<span class="ruby-keyword">end</span></pre>
@@ -200,18 +200,19 @@ will be prompted to enter their password unless passphrase works.</p>
<div class="method-source-code" id="load_data_private_key-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 51</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 50</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">load_data_private_key</span>(<span class="ruby-identifier">data</span>, <span class="ruby-identifier">passphrase</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">ask_passphrase</span>=<span class="ruby-keyword">true</span>, <span class="ruby-identifier">filename</span>=<span class="ruby-string">&quot;&quot;</span>, <span class="ruby-identifier">prompt</span>=<span class="ruby-constant">Prompt</span>.<span class="ruby-identifier">default</span>)
- <span class="ruby-identifier">key_read</span>, <span class="ruby-identifier">error_classes</span> = <span class="ruby-identifier">classify_key</span>(<span class="ruby-identifier">data</span>, <span class="ruby-identifier">filename</span>)
+ <span class="ruby-identifier">key_type</span> = <span class="ruby-identifier">classify_key</span>(<span class="ruby-identifier">data</span>, <span class="ruby-identifier">filename</span>)
- <span class="ruby-identifier">encrypted_key</span> = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">match</span>(<span class="ruby-regexp">/ENCRYPTED/</span>)
+ <span class="ruby-identifier">encrypted_key</span> = <span class="ruby-keyword">nil</span>
<span class="ruby-identifier">tries</span> = <span class="ruby-value">0</span>
<span class="ruby-identifier">prompter</span> = <span class="ruby-keyword">nil</span>
<span class="ruby-identifier">result</span> =
<span class="ruby-keyword">begin</span>
- <span class="ruby-identifier">key_read</span>[<span class="ruby-identifier">data</span>, <span class="ruby-identifier">passphrase</span> <span class="ruby-operator">||</span> <span class="ruby-string">&#39;invalid&#39;</span>]
- <span class="ruby-keyword">rescue</span> <span class="ruby-operator">*</span><span class="ruby-identifier">error_classes</span>
+ <span class="ruby-identifier">key_type</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">data</span>, <span class="ruby-identifier">passphrase</span> <span class="ruby-operator">||</span> <span class="ruby-string">&#39;invalid&#39;</span>)
+ <span class="ruby-keyword">rescue</span> <span class="ruby-operator">*</span><span class="ruby-identifier">key_type</span>.<span class="ruby-identifier">error_classes</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">encrypted_key</span> = <span class="ruby-operator">!</span><span class="ruby-operator">!</span><span class="ruby-identifier">key_type</span>.<span class="ruby-identifier">encrypted_key?</span>(<span class="ruby-identifier">data</span>, <span class="ruby-identifier">e</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">encrypted_key</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">encrypted_key</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">ask_passphrase</span>
<span class="ruby-identifier">tries</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">tries</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-value">3</span>
@@ -308,7 +309,7 @@ works.</p>
<div class="method-source-code" id="load_private_key-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 41</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 40</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">load_private_key</span>(<span class="ruby-identifier">filename</span>, <span class="ruby-identifier">passphrase</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">ask_passphrase</span>=<span class="ruby-keyword">true</span>, <span class="ruby-identifier">prompt</span>=<span class="ruby-constant">Prompt</span>.<span class="ruby-identifier">default</span>)
<span class="ruby-identifier">data</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">filename</span>))
<span class="ruby-identifier">load_data_private_key</span>(<span class="ruby-identifier">data</span>, <span class="ruby-identifier">passphrase</span>, <span class="ruby-identifier">ask_passphrase</span>, <span class="ruby-identifier">filename</span>, <span class="ruby-identifier">prompt</span>)
diff --git a/Net/SSH/KeyFactory/KeyType.html b/Net/SSH/KeyFactory/KeyType.html
new file mode 100644
index 0000000..5f0312b
--- /dev/null
+++ b/Net/SSH/KeyFactory/KeyType.html
@@ -0,0 +1,226 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::KeyFactory::KeyType - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../";
+ var index_rel_prefix = "../../../";
+</script>
+
+<script src="../../../js/jquery.js"></script>
+<script src="../../../js/darkfish.js"></script>
+
+<link href="../../../css/fonts.css" rel="stylesheet">
+<link href="../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link">Object
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-c-encrypted_key-3F">::encrypted_key?</a>
+
+ <li ><a href="#method-c-error_classes">::error_classes</a>
+
+ <li ><a href="#method-c-read">::read</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="sclass-Net::SSH::KeyFactory::KeyType">
+ <h1 id="sclass-Net::SSH::KeyFactory::KeyType" class="class">
+ class Net::SSH::KeyFactory::KeyType
+ </h1>
+
+ <section class="description">
+
+<p>rubocop:disable Style/Documentation, Lint/DuplicateMethods</p>
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Class Methods</h3>
+ </header>
+
+
+ <div id="method-c-encrypted_key-3F" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">encrypted_key?</span><span
+ class="method-args">(data, error)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="encrypted_key-3F-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 118</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">encrypted_key?</span>(<span class="ruby-identifier">data</span>, <span class="ruby-identifier">error</span>)
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">&quot;TODO subclasses should implement is_encrypted_key&quot;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-c-error_classes" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">error_classes</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="error_classes-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 114</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">error_classes</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">&quot;TODO subclasses should implement read&quot;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-c-read" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">read</span><span
+ class="method-args">(key_data, passphrase)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="read-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 110</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">key_data</span>, <span class="ruby-identifier">passphrase</span>)
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">&quot;TODO subclasses should implement read&quot;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/KeyFactory/OpenSSHPrivateKeyType.html b/Net/SSH/KeyFactory/OpenSSHPrivateKeyType.html
new file mode 100644
index 0000000..7d4af64
--- /dev/null
+++ b/Net/SSH/KeyFactory/OpenSSHPrivateKeyType.html
@@ -0,0 +1,224 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::KeyFactory::OpenSSHPrivateKeyType - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../";
+ var index_rel_prefix = "../../../";
+</script>
+
+<script src="../../../js/jquery.js"></script>
+<script src="../../../js/darkfish.js"></script>
+
+<link href="../../../css/fonts.css" rel="stylesheet">
+<link href="../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link"><a href="KeyType.html">Net::SSH::KeyFactory::KeyType</a>
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-c-encrypted_key-3F">::encrypted_key?</a>
+
+ <li ><a href="#method-c-error_classes">::error_classes</a>
+
+ <li ><a href="#method-c-read">::read</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="sclass-Net::SSH::KeyFactory::OpenSSHPrivateKeyType">
+ <h1 id="sclass-Net::SSH::KeyFactory::OpenSSHPrivateKeyType" class="class">
+ class Net::SSH::KeyFactory::OpenSSHPrivateKeyType
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Class Methods</h3>
+ </header>
+
+
+ <div id="method-c-encrypted_key-3F" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">encrypted_key?</span><span
+ class="method-args">(key_data, decode_error)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="encrypted_key-3F-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 132</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">encrypted_key?</span>(<span class="ruby-identifier">key_data</span>, <span class="ruby-identifier">decode_error</span>)
+ <span class="ruby-identifier">decode_error</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Authentication</span><span class="ruby-operator">::</span><span class="ruby-constant">ED25519</span><span class="ruby-operator">::</span><span class="ruby-constant">OpenSSHPrivateKeyLoader</span><span class="ruby-operator">::</span><span class="ruby-constant">DecryptError</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">decode_error</span>.<span class="ruby-identifier">encrypted_key?</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-c-error_classes" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">error_classes</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="error_classes-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 128</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">error_classes</span>
+ [<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Authentication</span><span class="ruby-operator">::</span><span class="ruby-constant">ED25519</span><span class="ruby-operator">::</span><span class="ruby-constant">OpenSSHPrivateKeyLoader</span><span class="ruby-operator">::</span><span class="ruby-constant">DecryptError</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-c-read" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">read</span><span
+ class="method-args">(key_data, passphrase)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="read-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 124</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">key_data</span>, <span class="ruby-identifier">passphrase</span>)
+ <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Authentication</span><span class="ruby-operator">::</span><span class="ruby-constant">ED25519</span><span class="ruby-operator">::</span><span class="ruby-constant">OpenSSHPrivateKeyLoader</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">key_data</span>, <span class="ruby-identifier">passphrase</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/KeyFactory/OpenSSLDSAKeyType.html b/Net/SSH/KeyFactory/OpenSSLDSAKeyType.html
new file mode 100644
index 0000000..9dc260b
--- /dev/null
+++ b/Net/SSH/KeyFactory/OpenSSLDSAKeyType.html
@@ -0,0 +1,189 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::KeyFactory::OpenSSLDSAKeyType - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../";
+ var index_rel_prefix = "../../../";
+</script>
+
+<script src="../../../js/jquery.js"></script>
+<script src="../../../js/darkfish.js"></script>
+
+<link href="../../../css/fonts.css" rel="stylesheet">
+<link href="../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link"><a href="OpenSSLKeyTypeBase.html">Net::SSH::KeyFactory::OpenSSLKeyTypeBase</a>
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-c-error_classes">::error_classes</a>
+
+ <li ><a href="#method-c-open_ssl_class">::open_ssl_class</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="sclass-Net::SSH::KeyFactory::OpenSSLDSAKeyType">
+ <h1 id="sclass-Net::SSH::KeyFactory::OpenSSLDSAKeyType" class="class">
+ class Net::SSH::KeyFactory::OpenSSLDSAKeyType
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Class Methods</h3>
+ </header>
+
+
+ <div id="method-c-error_classes" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">error_classes</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="error_classes-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 170</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">error_classes</span>
+ [<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">DSAError</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-c-open_ssl_class" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">open_ssl_class</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="open_ssl_class-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 166</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">open_ssl_class</span>
+ <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">DSA</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/KeyFactory/OpenSSLECKeyType.html b/Net/SSH/KeyFactory/OpenSSLECKeyType.html
new file mode 100644
index 0000000..a0fd2e3
--- /dev/null
+++ b/Net/SSH/KeyFactory/OpenSSLECKeyType.html
@@ -0,0 +1,189 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::KeyFactory::OpenSSLECKeyType - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../";
+ var index_rel_prefix = "../../../";
+</script>
+
+<script src="../../../js/jquery.js"></script>
+<script src="../../../js/darkfish.js"></script>
+
+<link href="../../../css/fonts.css" rel="stylesheet">
+<link href="../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link"><a href="OpenSSLKeyTypeBase.html">Net::SSH::KeyFactory::OpenSSLKeyTypeBase</a>
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-c-error_classes">::error_classes</a>
+
+ <li ><a href="#method-c-open_ssl_class">::open_ssl_class</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="sclass-Net::SSH::KeyFactory::OpenSSLECKeyType">
+ <h1 id="sclass-Net::SSH::KeyFactory::OpenSSLECKeyType" class="class">
+ class Net::SSH::KeyFactory::OpenSSLECKeyType
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Class Methods</h3>
+ </header>
+
+
+ <div id="method-c-error_classes" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">error_classes</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="error_classes-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 190</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">error_classes</span>
+ [<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">ECError</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-c-open_ssl_class" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">open_ssl_class</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="open_ssl_class-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 186</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">open_ssl_class</span>
+ <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">EC</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/KeyFactory/OpenSSLKeyTypeBase.html b/Net/SSH/KeyFactory/OpenSSLKeyTypeBase.html
new file mode 100644
index 0000000..8214799
--- /dev/null
+++ b/Net/SSH/KeyFactory/OpenSSLKeyTypeBase.html
@@ -0,0 +1,224 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::KeyFactory::OpenSSLKeyTypeBase - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../";
+ var index_rel_prefix = "../../../";
+</script>
+
+<script src="../../../js/jquery.js"></script>
+<script src="../../../js/darkfish.js"></script>
+
+<link href="../../../css/fonts.css" rel="stylesheet">
+<link href="../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link"><a href="KeyType.html">Net::SSH::KeyFactory::KeyType</a>
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-c-encrypted_key-3F">::encrypted_key?</a>
+
+ <li ><a href="#method-c-open_ssl_class">::open_ssl_class</a>
+
+ <li ><a href="#method-c-read">::read</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="sclass-Net::SSH::KeyFactory::OpenSSLKeyTypeBase">
+ <h1 id="sclass-Net::SSH::KeyFactory::OpenSSLKeyTypeBase" class="class">
+ class Net::SSH::KeyFactory::OpenSSLKeyTypeBase
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Class Methods</h3>
+ </header>
+
+
+ <div id="method-c-encrypted_key-3F" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">encrypted_key?</span><span
+ class="method-args">(key_data, error)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="encrypted_key-3F-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 146</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">encrypted_key?</span>(<span class="ruby-identifier">key_data</span>, <span class="ruby-identifier">error</span>)
+ <span class="ruby-identifier">key_data</span>.<span class="ruby-identifier">match</span>(<span class="ruby-regexp">/ENCRYPTED/</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-c-open_ssl_class" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">open_ssl_class</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="open_ssl_class-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 138</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">open_ssl_class</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">&quot;TODO: subclasses should implement&quot;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-c-read" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">read</span><span
+ class="method-args">(key_data, passphrase)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="read-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 142</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">key_data</span>, <span class="ruby-identifier">passphrase</span>)
+ <span class="ruby-identifier">open_ssl_class</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">key_data</span>, <span class="ruby-identifier">passphrase</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/KeyFactory/OpenSSLPKeyType.html b/Net/SSH/KeyFactory/OpenSSLPKeyType.html
new file mode 100644
index 0000000..7c8d2ea
--- /dev/null
+++ b/Net/SSH/KeyFactory/OpenSSLPKeyType.html
@@ -0,0 +1,224 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::KeyFactory::OpenSSLPKeyType - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../";
+ var index_rel_prefix = "../../../";
+</script>
+
+<script src="../../../js/jquery.js"></script>
+<script src="../../../js/darkfish.js"></script>
+
+<link href="../../../css/fonts.css" rel="stylesheet">
+<link href="../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link"><a href="OpenSSLKeyTypeBase.html">Net::SSH::KeyFactory::OpenSSLKeyTypeBase</a>
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-c-error_classes">::error_classes</a>
+
+ <li ><a href="#method-c-open_ssl_class">::open_ssl_class</a>
+
+ <li ><a href="#method-c-read">::read</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="sclass-Net::SSH::KeyFactory::OpenSSLPKeyType">
+ <h1 id="sclass-Net::SSH::KeyFactory::OpenSSLPKeyType" class="class">
+ class Net::SSH::KeyFactory::OpenSSLPKeyType
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Class Methods</h3>
+ </header>
+
+
+ <div id="method-c-error_classes" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">error_classes</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="error_classes-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 160</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">error_classes</span>
+ [<span class="ruby-constant">ArgumentError</span>, <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">PKeyError</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-c-open_ssl_class" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">open_ssl_class</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="open_ssl_class-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 156</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">open_ssl_class</span>
+ <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-c-read" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">read</span><span
+ class="method-args">(key_data, passphrase)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="read-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 152</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">key_data</span>, <span class="ruby-identifier">passphrase</span>)
+ <span class="ruby-identifier">open_ssl_class</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">key_data</span>, <span class="ruby-identifier">passphrase</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/KeyFactory/OpenSSLRSAKeyType.html b/Net/SSH/KeyFactory/OpenSSLRSAKeyType.html
new file mode 100644
index 0000000..fe86bd4
--- /dev/null
+++ b/Net/SSH/KeyFactory/OpenSSLRSAKeyType.html
@@ -0,0 +1,189 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::KeyFactory::OpenSSLRSAKeyType - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../";
+ var index_rel_prefix = "../../../";
+</script>
+
+<script src="../../../js/jquery.js"></script>
+<script src="../../../js/darkfish.js"></script>
+
+<link href="../../../css/fonts.css" rel="stylesheet">
+<link href="../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link"><a href="OpenSSLKeyTypeBase.html">Net::SSH::KeyFactory::OpenSSLKeyTypeBase</a>
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-c-error_classes">::error_classes</a>
+
+ <li ><a href="#method-c-open_ssl_class">::open_ssl_class</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="sclass-Net::SSH::KeyFactory::OpenSSLRSAKeyType">
+ <h1 id="sclass-Net::SSH::KeyFactory::OpenSSLRSAKeyType" class="class">
+ class Net::SSH::KeyFactory::OpenSSLRSAKeyType
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Class Methods</h3>
+ </header>
+
+
+ <div id="method-c-error_classes" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">error_classes</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="error_classes-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 180</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">error_classes</span>
+ [<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">RSAError</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-c-open_ssl_class" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">open_ssl_class</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="open_ssl_class-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/key_factory.rb, line 176</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">open_ssl_class</span>
+ <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">RSA</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/KnownHosts.html b/Net/SSH/KnownHosts.html
index b09c102..cb7d82d 100644
--- a/Net/SSH/KnownHosts.html
+++ b/Net/SSH/KnownHosts.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::KnownHosts - net-ssh 4.2.0</title>
+<title>class Net::SSH::KnownHosts - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -87,6 +87,8 @@
<li ><a href="#method-i-known_host_hash-3F">#known_host_hash?</a>
+ <li ><a href="#method-i-match">#match</a>
+
</ul>
</div>
@@ -185,7 +187,7 @@ an entry for the given host and key to the first file it is able to.</p>
<div class="method-source-code" id="add-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 93</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 88</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">add</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">key</span>, <span class="ruby-identifier">options</span>={})
<span class="ruby-identifier">hostfiles</span>(<span class="ruby-identifier">options</span>, <span class="ruby-value">:user</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
<span class="ruby-keyword">begin</span>
@@ -233,16 +235,14 @@ second option.</p>
<div class="method-source-code" id="hostfiles-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 76</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 73</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">hostfiles</span>(<span class="ruby-identifier">options</span>, <span class="ruby-identifier">which</span>=<span class="ruby-value">:all</span>)
<span class="ruby-identifier">files</span> = []
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">which</span> <span class="ruby-operator">==</span> <span class="ruby-value">:all</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">which</span> <span class="ruby-operator">==</span> <span class="ruby-value">:user</span>
- <span class="ruby-identifier">files</span> <span class="ruby-operator">+=</span> <span class="ruby-constant">Array</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:user_known_hosts_file</span>] <span class="ruby-operator">||</span> <span class="ruby-node">%w(~/.ssh/known_hosts ~/.ssh/known_hosts2)</span>)
- <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">files</span> <span class="ruby-operator">+=</span> <span class="ruby-constant">Array</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:user_known_hosts_file</span>] <span class="ruby-operator">||</span> <span class="ruby-node">%w[~/.ssh/known_hosts ~/.ssh/known_hosts2]</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">which</span> <span class="ruby-operator">==</span> <span class="ruby-value">:all</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">which</span> <span class="ruby-operator">==</span> <span class="ruby-value">:user</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">which</span> <span class="ruby-operator">==</span> <span class="ruby-value">:all</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">which</span> <span class="ruby-operator">==</span> <span class="ruby-value">:global</span>
- <span class="ruby-identifier">files</span> <span class="ruby-operator">+=</span> <span class="ruby-constant">Array</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:global_known_hosts_file</span>] <span class="ruby-operator">||</span> <span class="ruby-node">%w(/etc/ssh/ssh_known_hosts /etc/ssh/ssh_known_hosts2)</span>)
+ <span class="ruby-identifier">files</span> <span class="ruby-operator">+=</span> <span class="ruby-constant">Array</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:global_known_hosts_file</span>] <span class="ruby-operator">||</span> <span class="ruby-node">%w[/etc/ssh/ssh_known_hosts /etc/ssh/ssh_known_hosts2]</span>)
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">return</span> <span class="ruby-identifier">files</span>
@@ -278,7 +278,7 @@ File.expand_path.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 111</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 106</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">source</span>)
<span class="ruby-ivar">@source</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">source</span>)
<span class="ruby-keyword">end</span></pre>
@@ -313,9 +313,9 @@ the given host. Returns an enumerable of keys found.</p>
<div class="method-source-code" id="search_for-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 57</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 54</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">search_for</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">options</span>={})
- <span class="ruby-constant">HostKeys</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">search_in</span>(<span class="ruby-identifier">hostfiles</span>(<span class="ruby-identifier">options</span>), <span class="ruby-identifier">host</span>), <span class="ruby-identifier">host</span>, <span class="ruby-keyword">self</span>, <span class="ruby-identifier">options</span>)
+ <span class="ruby-constant">HostKeys</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">search_in</span>(<span class="ruby-identifier">hostfiles</span>(<span class="ruby-identifier">options</span>), <span class="ruby-identifier">host</span>, <span class="ruby-identifier">options</span>), <span class="ruby-identifier">host</span>, <span class="ruby-keyword">self</span>, <span class="ruby-identifier">options</span>)
<span class="ruby-keyword">end</span></pre>
</div>
@@ -331,7 +331,7 @@ the given host. Returns an enumerable of keys found.</p>
<div class="method-heading">
<span class="method-name">search_in</span><span
- class="method-args">(files, host)</span>
+ class="method-args">(files, host, options = {})</span>
<span class="method-click-advice">click to toggle source</span>
@@ -347,9 +347,9 @@ the given host. Returns an enumerable of keys found.</p>
<div class="method-source-code" id="search_in-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 63</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">search_in</span>(<span class="ruby-identifier">files</span>, <span class="ruby-identifier">host</span>)
- <span class="ruby-identifier">files</span>.<span class="ruby-identifier">map</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span> <span class="ruby-constant">KnownHosts</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">file</span>).<span class="ruby-identifier">keys_for</span>(<span class="ruby-identifier">host</span>) }.<span class="ruby-identifier">flatten</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 60</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">search_in</span>(<span class="ruby-identifier">files</span>, <span class="ruby-identifier">host</span>, <span class="ruby-identifier">options</span> = {})
+ <span class="ruby-identifier">files</span>.<span class="ruby-identifier">flat_map</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span> <span class="ruby-constant">KnownHosts</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">file</span>).<span class="ruby-identifier">keys_for</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">options</span>) }
<span class="ruby-keyword">end</span></pre>
</div>
@@ -390,7 +390,7 @@ an exception will be raised.</p>
<div class="method-source-code" id="add-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 179</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 187</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">add</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">key</span>)
<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">source</span>, <span class="ruby-string">&quot;a&quot;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">blob</span> = [<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:key</span>, <span class="ruby-identifier">key</span>).<span class="ruby-identifier">to_s</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;m*&quot;</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/\s/</span>, <span class="ruby-string">&quot;&quot;</span>)
@@ -411,7 +411,7 @@ an exception will be raised.</p>
<div class="method-heading">
<span class="method-name">keys_for</span><span
- class="method-args">(host)</span>
+ class="method-args">(host, options = {})</span>
<span class="method-click-advice">click to toggle source</span>
@@ -438,33 +438,31 @@ brackets after a colon. Possible formats for <code>host</code>, then, are;</p>
<div class="method-source-code" id="keys_for-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 128</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">keys_for</span>(<span class="ruby-identifier">host</span>)
+ <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 123</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">keys_for</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">options</span> = {})
<span class="ruby-identifier">keys</span> = []
<span class="ruby-keyword">return</span> <span class="ruby-identifier">keys</span> <span class="ruby-keyword">unless</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">readable?</span>(<span class="ruby-identifier">source</span>)
<span class="ruby-identifier">entries</span> = <span class="ruby-identifier">host</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/,/</span>)
+ <span class="ruby-identifier">host_name</span> = <span class="ruby-identifier">entries</span>[<span class="ruby-value">0</span>]
+ <span class="ruby-identifier">host_ip</span> = <span class="ruby-identifier">entries</span>[<span class="ruby-value">1</span>]
<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">source</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
- <span class="ruby-identifier">scanner</span> = <span class="ruby-constant">StringScanner</span>.<span class="ruby-identifier">new</span>(<span class="ruby-string">&quot;&quot;</span>)
<span class="ruby-identifier">file</span>.<span class="ruby-identifier">each_line</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
- <span class="ruby-identifier">scanner</span>.<span class="ruby-identifier">string</span> = <span class="ruby-identifier">line</span>
+ <span class="ruby-identifier">hosts</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">key_content</span> = <span class="ruby-identifier">line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">&#39; &#39;</span>)
+ <span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">hosts</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">hosts</span>.<span class="ruby-identifier">start_with?</span>(<span class="ruby-string">&#39;#&#39;</span>)
- <span class="ruby-identifier">scanner</span>.<span class="ruby-identifier">skip</span>(<span class="ruby-regexp">/\s*/</span>)
- <span class="ruby-keyword">next</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">scanner</span>.<span class="ruby-identifier">match?</span>(<span class="ruby-node">/$|#/</span>)
+ <span class="ruby-identifier">hostlist</span> = <span class="ruby-identifier">hosts</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">&#39;,&#39;</span>)
- <span class="ruby-identifier">hostlist</span> = <span class="ruby-identifier">scanner</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp">/\S+/</span>).<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/,/</span>)
- <span class="ruby-identifier">found</span> = <span class="ruby-identifier">entries</span>.<span class="ruby-identifier">all?</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span><span class="ruby-operator">|</span> <span class="ruby-identifier">hostlist</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">entry</span>) } <span class="ruby-operator">||</span>
- <span class="ruby-identifier">known_host_hash?</span>(<span class="ruby-identifier">hostlist</span>, <span class="ruby-identifier">entries</span>, <span class="ruby-identifier">scanner</span>)
- <span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">found</span>
+ <span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-constant">SUPPORTED_TYPE</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">type</span>)
- <span class="ruby-identifier">scanner</span>.<span class="ruby-identifier">skip</span>(<span class="ruby-regexp">/\s*/</span>)
- <span class="ruby-identifier">type</span> = <span class="ruby-identifier">scanner</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp">/\S+/</span>)
+ <span class="ruby-identifier">found</span> = <span class="ruby-identifier">hostlist</span>.<span class="ruby-identifier">any?</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">pattern</span><span class="ruby-operator">|</span> <span class="ruby-identifier">match</span>(<span class="ruby-identifier">host_name</span>, <span class="ruby-identifier">pattern</span>) } <span class="ruby-operator">||</span> <span class="ruby-identifier">known_host_hash?</span>(<span class="ruby-identifier">hostlist</span>, <span class="ruby-identifier">entries</span>)
+ <span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">found</span>
- <span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-constant">SUPPORTED_TYPE</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">type</span>)
+ <span class="ruby-identifier">found</span> = <span class="ruby-identifier">hostlist</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">host_ip</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:check_host_ip</span>] <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">entries</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">1</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">hostlist</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">1</span>
+ <span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">found</span>
- <span class="ruby-identifier">scanner</span>.<span class="ruby-identifier">skip</span>(<span class="ruby-regexp">/\s*/</span>)
- <span class="ruby-identifier">blob</span> = <span class="ruby-identifier">scanner</span>.<span class="ruby-identifier">rest</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&quot;m*&quot;</span>).<span class="ruby-identifier">first</span>
+ <span class="ruby-identifier">blob</span> = <span class="ruby-identifier">key_content</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&quot;m*&quot;</span>).<span class="ruby-identifier">first</span>
<span class="ruby-identifier">keys</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">blob</span>).<span class="ruby-identifier">read_key</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
@@ -485,7 +483,7 @@ brackets after a colon. Possible formats for <code>host</code>, then, are;</p>
<div class="method-heading">
<span class="method-name">known_host_hash?</span><span
- class="method-args">(hostlist, entries, scanner)</span>
+ class="method-args">(hostlist, entries)</span>
<span class="method-click-advice">click to toggle source</span>
@@ -501,8 +499,8 @@ stored as a HMAC-SHA1 hash in the known hosts.</p>
<div class="method-source-code" id="known_host_hash-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 163</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">known_host_hash?</span>(<span class="ruby-identifier">hostlist</span>, <span class="ruby-identifier">entries</span>, <span class="ruby-identifier">scanner</span>)
+ <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 171</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">known_host_hash?</span>(<span class="ruby-identifier">hostlist</span>, <span class="ruby-identifier">entries</span>)
<span class="ruby-keyword">if</span> <span class="ruby-identifier">hostlist</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">hostlist</span>.<span class="ruby-identifier">first</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/\A\|1(\|.+){2}\z/</span>
<span class="ruby-identifier">chunks</span> = <span class="ruby-identifier">hostlist</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/\|/</span>)
<span class="ruby-identifier">salt</span> = <span class="ruby-constant">Base64</span>.<span class="ruby-identifier">decode64</span>(<span class="ruby-identifier">chunks</span>[<span class="ruby-value">2</span>])
@@ -524,6 +522,50 @@ stored as a HMAC-SHA1 hash in the known hosts.</p>
</div>
+ <div id="method-i-match" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">match</span><span
+ class="method-args">(host, pattern)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="match-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/known_hosts.rb, line 154</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">match</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">pattern</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">&#39;*&#39;</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">&#39;?&#39;</span>)
+ <span class="ruby-comment"># see man 8 sshd for pattern details</span>
+ <span class="ruby-identifier">pattern_regexp</span> = <span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">&#39;*&#39;</span>).<span class="ruby-identifier">map</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">x</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">x</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">&#39;?&#39;</span>).<span class="ruby-identifier">map</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">y</span><span class="ruby-operator">|</span>
+ <span class="ruby-constant">Regexp</span>.<span class="ruby-identifier">escape</span>(<span class="ruby-identifier">y</span>)
+ <span class="ruby-keyword">end</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">&#39;.&#39;</span>)
+ <span class="ruby-keyword">end</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">&#39;[^.]*&#39;</span>)
+
+ <span class="ruby-identifier">host</span> <span class="ruby-operator">=~</span> <span class="ruby-constant">Regexp</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;\\A#{pattern_regexp}\\z&quot;</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">host</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">pattern</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
</section>
</section>
diff --git a/Net/SSH/Loggable.html b/Net/SSH/Loggable.html
index c92a204..3052ca5 100644
--- a/Net/SSH/Loggable.html
+++ b/Net/SSH/Loggable.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Loggable - net-ssh 4.2.0</title>
+<title>module Net::SSH::Loggable - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -166,7 +166,7 @@ greater.</p>
<div class="method-source-code" id="debug-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/loggable.rb, line 24</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/loggable.rb, line 25</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">debug</span>
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">add</span>(<span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">DEBUG</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">facility</span>) { <span class="ruby-keyword">yield</span> } <span class="ruby-keyword">if</span> <span class="ruby-identifier">logger</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug?</span>
<span class="ruby-keyword">end</span></pre>
@@ -200,7 +200,7 @@ greater.</p>
<div class="method-source-code" id="error-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/loggable.rb, line 42</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/loggable.rb, line 43</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">error</span>
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">add</span>(<span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">ERROR</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">facility</span>) { <span class="ruby-keyword">yield</span> } <span class="ruby-keyword">if</span> <span class="ruby-identifier">logger</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">error?</span>
<span class="ruby-keyword">end</span></pre>
@@ -234,7 +234,7 @@ greater.</p>
<div class="method-source-code" id="fatal-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/loggable.rb, line 48</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/loggable.rb, line 49</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">fatal</span>
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">add</span>(<span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">FATAL</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">facility</span>) { <span class="ruby-keyword">yield</span> } <span class="ruby-keyword">if</span> <span class="ruby-identifier">logger</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">fatal?</span>
<span class="ruby-keyword">end</span></pre>
@@ -268,7 +268,7 @@ greater.</p>
<div class="method-source-code" id="info-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/loggable.rb, line 30</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/loggable.rb, line 31</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">info</span>
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">add</span>(<span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">INFO</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">facility</span>) { <span class="ruby-keyword">yield</span> } <span class="ruby-keyword">if</span> <span class="ruby-identifier">logger</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info?</span>
<span class="ruby-keyword">end</span></pre>
@@ -302,7 +302,7 @@ greater. (Called lwarn to avoid shadowing with Kernel#warn.)</p>
<div class="method-source-code" id="lwarn-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/loggable.rb, line 36</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/loggable.rb, line 37</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">lwarn</span>
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">add</span>(<span class="ruby-constant">Logger</span><span class="ruby-operator">::</span><span class="ruby-constant">WARN</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">facility</span>) { <span class="ruby-keyword">yield</span> } <span class="ruby-keyword">if</span> <span class="ruby-identifier">logger</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn?</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Packet.html b/Net/SSH/Packet.html
index 45c5a3f..f096dbd 100644
--- a/Net/SSH/Packet.html
+++ b/Net/SSH/Packet.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Packet - net-ssh 4.2.0</title>
+<title>class Net::SSH::Packet - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -69,7 +69,7 @@
<ul class="link-list">
- <li><a class="include" href="Transport/Constants.html">Net::SSH::Transport::Constants</a>
+ <li><a class="include" href="Connection/Constants.html">Net::SSH::Connection::Constants</a>
@@ -77,7 +77,7 @@
- <li><a class="include" href="Connection/Constants.html">Net::SSH::Connection::Constants</a>
+ <li><a class="include" href="Transport/Constants.html">Net::SSH::Transport::Constants</a>
</ul>
@@ -197,7 +197,7 @@ href="Buffer.html">Net::SSH::Buffer</a> superclass.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/packet.rb, line 73</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/packet.rb, line 76</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">payload</span>)
<span class="ruby-ivar">@named_elements</span> = {}
<span class="ruby-keyword">super</span>
@@ -242,7 +242,7 @@ the field, and the second is the type.</p>
<div class="method-source-code" id="register-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/packet.rb, line 34</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/packet.rb, line 35</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">register</span>(<span class="ruby-identifier">type</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">pairs</span>)
<span class="ruby-identifier">@@types</span>[<span class="ruby-identifier">type</span>] = <span class="ruby-identifier">pairs</span>
<span class="ruby-keyword">end</span></pre>
@@ -284,7 +284,7 @@ by the given name exists.</p>
<div class="method-source-code" id="5B-5D-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/packet.rb, line 82</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/packet.rb, line 85</span>
<span class="ruby-keyword">def</span> <span class="ruby-operator">[]</span>(<span class="ruby-identifier">name</span>)
<span class="ruby-identifier">name</span> = <span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_sym</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;no such element #{name}&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@named_elements</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-identifier">name</span>)
diff --git a/Net/SSH/Prompt.html b/Net/SSH/Prompt.html
index 4e142c1..c544f64 100644
--- a/Net/SSH/Prompt.html
+++ b/Net/SSH/Prompt.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Prompt - net-ssh 4.2.0</title>
+<title>class Net::SSH::Prompt - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -148,7 +148,7 @@ like:</p>
<div class="method-source-code" id="default-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/prompt.rb, line 23</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/prompt.rb, line 24</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">default</span>(<span class="ruby-identifier">options</span> = {})
<span class="ruby-ivar">@default</span> <span class="ruby-operator">||=</span> <span class="ruby-identifier">new</span>(<span class="ruby-identifier">options</span>)
<span class="ruby-keyword">end</span></pre>
@@ -181,7 +181,7 @@ like:</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/prompt.rb, line 27</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/prompt.rb, line 28</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">options</span> = {}); <span class="ruby-keyword">end</span></pre>
</div>
@@ -222,7 +222,7 @@ session, so caching implementations can save passwords properly.</p>
<div class="method-source-code" id="start-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/prompt.rb, line 57</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/prompt.rb, line 58</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">start</span>(<span class="ruby-identifier">info</span>)
<span class="ruby-constant">Prompter</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">info</span>)
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Prompt/Prompter.html b/Net/SSH/Prompt/Prompter.html
index 01c3cc9..e6a08b2 100644
--- a/Net/SSH/Prompt/Prompter.html
+++ b/Net/SSH/Prompt/Prompter.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Prompt::Prompter - net-ssh 4.2.0</title>
+<title>class Net::SSH::Prompt::Prompter - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -133,7 +133,7 @@ might implement caching.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/prompt.rb, line 32</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/prompt.rb, line 33</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">info</span>)
<span class="ruby-keyword">if</span> <span class="ruby-identifier">info</span>[<span class="ruby-value">:type</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&#39;keyboard-interactive&#39;</span>
<span class="ruby-identifier">$stdout</span>.<span class="ruby-identifier">puts</span>(<span class="ruby-identifier">info</span>[<span class="ruby-value">:name</span>]) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">info</span>[<span class="ruby-value">:name</span>].<span class="ruby-identifier">empty?</span>
@@ -178,7 +178,7 @@ and password) in a single session.</p>
<div class="method-source-code" id="ask-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/prompt.rb, line 41</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/prompt.rb, line 42</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ask</span>(<span class="ruby-identifier">prompt</span>, <span class="ruby-identifier">echo</span>=<span class="ruby-keyword">true</span>)
<span class="ruby-identifier">$stdout</span>.<span class="ruby-identifier">print</span>(<span class="ruby-identifier">prompt</span>)
<span class="ruby-identifier">$stdout</span>.<span class="ruby-identifier">flush</span>
@@ -216,7 +216,7 @@ good time to save password asked to a cache.</p>
<div class="method-source-code" id="success-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/prompt.rb, line 51</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/prompt.rb, line 52</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">success</span>; <span class="ruby-keyword">end</span></pre>
</div>
diff --git a/Net/SSH/Proxy.html b/Net/SSH/Proxy.html
index a163fcd..f105a7f 100644
--- a/Net/SSH/Proxy.html
+++ b/Net/SSH/Proxy.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Proxy - net-ssh 4.2.0</title>
+<title>module Net::SSH::Proxy - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/Proxy/Command.html b/Net/SSH/Proxy/Command.html
index 72a8dbc..411436a 100644
--- a/Net/SSH/Proxy/Command.html
+++ b/Net/SSH/Proxy/Command.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Proxy::Command - net-ssh 4.2.0</title>
+<title>class Net::SSH::Proxy::Command - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -73,6 +73,8 @@
<li ><a href="#method-c-new">::new</a>
+ <li ><a href="#method-i-close_on_error">#close_on_error</a>
+
<li ><a href="#method-i-open">#open</a>
</ul>
@@ -144,6 +146,19 @@ end</pre>
</div>
</div>
+ <div id="attribute-i-timeout" class="method-detail">
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">timeout</span><span
+ class="attribute-access-type">[RW]</span>
+ </div>
+
+ <div class="method-description">
+
+ <p><a href="../Timeout.html">Timeout</a> in seconds in open, defaults to 60</p>
+
+ </div>
+ </div>
+
</section>
@@ -176,10 +191,11 @@ connect and `%p&#39; by the port.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/command.rb, line 30</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/command.rb, line 34</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">command_line_template</span>)
<span class="ruby-ivar">@command_line_template</span> = <span class="ruby-identifier">command_line_template</span>
<span class="ruby-ivar">@command_line</span> = <span class="ruby-keyword">nil</span>
+ <span class="ruby-ivar">@timeout</span> = <span class="ruby-value">60</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -199,6 +215,40 @@ connect and `%p&#39; by the port.</p>
</header>
+ <div id="method-i-close_on_error" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">close_on_error</span><span
+ class="method-args">(io)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="close_on_error-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/command.rb, line 117</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">close_on_error</span>(<span class="ruby-identifier">io</span>)
+ <span class="ruby-constant">Process</span>.<span class="ruby-identifier">kill</span>(<span class="ruby-string">&#39;TERM&#39;</span>, <span class="ruby-identifier">io</span>.<span class="ruby-identifier">pid</span>)
+ <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">new</span> { <span class="ruby-identifier">io</span>.<span class="ruby-identifier">close</span> }
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
<div id="method-i-open" class="method-detail ">
<div class="method-heading">
@@ -219,7 +269,7 @@ was requested when the socket factory was instantiated.</p>
<div class="method-source-code" id="open-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/command.rb, line 37</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/command.rb, line 42</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">open</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">port</span>, <span class="ruby-identifier">connection_options</span> = <span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">command_line</span> = <span class="ruby-ivar">@command_line_template</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/%(.)/</span>) {
<span class="ruby-keyword">case</span> <span class="ruby-node">$1</span>
@@ -242,15 +292,19 @@ was requested when the socket factory was instantiated.</p>
}
<span class="ruby-keyword">begin</span>
<span class="ruby-identifier">io</span> = <span class="ruby-constant">IO</span>.<span class="ruby-identifier">popen</span>(<span class="ruby-identifier">command_line</span>, <span class="ruby-string">&quot;r+&quot;</span>)
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">result</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Compat</span>.<span class="ruby-identifier">io_select</span>([<span class="ruby-identifier">io</span>], <span class="ruby-keyword">nil</span>, [<span class="ruby-identifier">io</span>], <span class="ruby-value">60</span>)
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">last</span>.<span class="ruby-identifier">any?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">io</span>.<span class="ruby-identifier">eof?</span>
- <span class="ruby-identifier">io</span>.<span class="ruby-identifier">close</span>
- <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;command failed&quot;</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">result</span> = <span class="ruby-constant">IO</span>.<span class="ruby-identifier">select</span>([<span class="ruby-identifier">io</span>], <span class="ruby-keyword">nil</span>, [<span class="ruby-identifier">io</span>], <span class="ruby-ivar">@timeout</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">last</span>.<span class="ruby-identifier">any?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">io</span>.<span class="ruby-identifier">eof?</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;command failed&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;command timed out&quot;</span>
<span class="ruby-keyword">end</span>
- <span class="ruby-keyword">else</span>
- <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;command timed out&quot;</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">StandardError</span>
+ <span class="ruby-identifier">close_on_error</span>(<span class="ruby-identifier">io</span>)
+ <span class="ruby-identifier">raise</span>
<span class="ruby-keyword">end</span>
- <span class="ruby-keyword">rescue</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">StandardError</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ConnectError</span>, <span class="ruby-node">&quot;#{e}: #{command_line}&quot;</span>
<span class="ruby-keyword">end</span>
<span class="ruby-ivar">@command_line</span> = <span class="ruby-identifier">command_line</span>
diff --git a/Net/SSH/Proxy/ConnectError.html b/Net/SSH/Proxy/ConnectError.html
index a17b72e..9531f55 100644
--- a/Net/SSH/Proxy/ConnectError.html
+++ b/Net/SSH/Proxy/ConnectError.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Proxy::ConnectError - net-ssh 4.2.0</title>
+<title>class Net::SSH::Proxy::ConnectError - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Proxy/Error.html b/Net/SSH/Proxy/Error.html
index 203cf56..7beddb2 100644
--- a/Net/SSH/Proxy/Error.html
+++ b/Net/SSH/Proxy/Error.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Proxy::Error - net-ssh 4.2.0</title>
+<title>class Net::SSH::Proxy::Error - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Proxy/HTTP.html b/Net/SSH/Proxy/HTTP.html
index 911844a..012ac0d 100644
--- a/Net/SSH/Proxy/HTTP.html
+++ b/Net/SSH/Proxy/HTTP.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Proxy::HTTP - net-ssh 4.2.0</title>
+<title>class Net::SSH::Proxy::HTTP - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -209,7 +209,7 @@ are supported:</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/http.rb, line 43</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/http.rb, line 44</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">proxy_host</span>, <span class="ruby-identifier">proxy_port</span>=<span class="ruby-value">80</span>, <span class="ruby-identifier">options</span>={})
<span class="ruby-ivar">@proxy_host</span> = <span class="ruby-identifier">proxy_host</span>
<span class="ruby-ivar">@proxy_port</span> = <span class="ruby-identifier">proxy_port</span>
@@ -253,22 +253,23 @@ was requested when the socket factory was instantiated.</p>
<div class="method-source-code" id="open-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/http.rb, line 51</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/http.rb, line 52</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">open</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">port</span>, <span class="ruby-identifier">connection_options</span>)
<span class="ruby-identifier">socket</span> = <span class="ruby-identifier">establish_connection</span>(<span class="ruby-identifier">connection_options</span>[<span class="ruby-value">:timeout</span>])
- <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">write</span> <span class="ruby-node">&quot;CONNECT #{host}:#{port} HTTP/1.0\r\n&quot;</span>
-
+ <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">write</span> <span class="ruby-node">&quot;CONNECT #{host}:#{port} HTTP/1.1\r\n&quot;</span>
+ <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">write</span> <span class="ruby-node">&quot;Host: #{host}:#{port}\r\n&quot;</span>
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:user</span>]
<span class="ruby-identifier">credentials</span> = [<span class="ruby-node">&quot;#{options[:user]}:#{options[:password]}&quot;</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;m*&quot;</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/\s/</span>, <span class="ruby-string">&quot;&quot;</span>)
<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">write</span> <span class="ruby-node">&quot;Proxy-Authorization: Basic #{credentials}\r\n&quot;</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">write</span> <span class="ruby-string">&quot;\r\n&quot;</span>
-
+
<span class="ruby-identifier">resp</span> = <span class="ruby-identifier">parse_response</span>(<span class="ruby-identifier">socket</span>)
-
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">socket</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">resp</span>[<span class="ruby-value">:code</span>] <span class="ruby-operator">==</span> <span class="ruby-value">200</span>
-
+
<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">close</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ConnectError</span>, <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">inspect</span>
<span class="ruby-keyword">end</span></pre>
@@ -309,7 +310,7 @@ was requested when the socket factory was instantiated.</p>
<div class="method-source-code" id="establish_connection-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/http.rb, line 72</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/http.rb, line 74</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">establish_connection</span>(<span class="ruby-identifier">connect_timeout</span>)
<span class="ruby-constant">Socket</span>.<span class="ruby-identifier">tcp</span>(<span class="ruby-identifier">proxy_host</span>, <span class="ruby-identifier">proxy_port</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-keyword">nil</span>,
<span class="ruby-identifier">connect_timeout</span><span class="ruby-operator">:</span> <span class="ruby-identifier">connect_timeout</span>)
@@ -343,20 +344,18 @@ was requested when the socket factory was instantiated.</p>
<div class="method-source-code" id="parse_response-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/http.rb, line 77</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/http.rb, line 79</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">parse_response</span>(<span class="ruby-identifier">socket</span>)
<span class="ruby-identifier">version</span>, <span class="ruby-identifier">code</span>, <span class="ruby-identifier">reason</span> = <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">gets</span>.<span class="ruby-identifier">chomp</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/ /</span>, <span class="ruby-value">3</span>)
<span class="ruby-identifier">headers</span> = {}
-
+
<span class="ruby-keyword">while</span> (<span class="ruby-identifier">line</span> = <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">gets</span>) <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">line</span>.<span class="ruby-identifier">chomp!</span> <span class="ruby-operator">!=</span> <span class="ruby-string">&quot;&quot;</span>)
<span class="ruby-identifier">name</span>, <span class="ruby-identifier">value</span> = <span class="ruby-identifier">line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/:/</span>, <span class="ruby-value">2</span>)
<span class="ruby-identifier">headers</span>[<span class="ruby-identifier">name</span>.<span class="ruby-identifier">strip</span>] = <span class="ruby-identifier">value</span>.<span class="ruby-identifier">strip</span>
<span class="ruby-keyword">end</span>
-
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">headers</span>[<span class="ruby-string">&quot;Content-Length&quot;</span>]
- <span class="ruby-identifier">body</span> = <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">headers</span>[<span class="ruby-string">&quot;Content-Length&quot;</span>].<span class="ruby-identifier">to_i</span>)
- <span class="ruby-keyword">end</span>
-
+
+ <span class="ruby-identifier">body</span> = <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">headers</span>[<span class="ruby-string">&quot;Content-Length&quot;</span>].<span class="ruby-identifier">to_i</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">headers</span>[<span class="ruby-string">&quot;Content-Length&quot;</span>]
+
<span class="ruby-keyword">return</span> { <span class="ruby-identifier">version</span><span class="ruby-operator">:</span> <span class="ruby-identifier">version</span>,
<span class="ruby-identifier">code</span><span class="ruby-operator">:</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span>,
<span class="ruby-identifier">reason</span><span class="ruby-operator">:</span> <span class="ruby-identifier">reason</span>,
diff --git a/Net/SSH/Proxy/HTTPS.html b/Net/SSH/Proxy/HTTPS.html
index 8105502..d970d35 100644
--- a/Net/SSH/Proxy/HTTPS.html
+++ b/Net/SSH/Proxy/HTTPS.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Proxy::HTTPS - net-ssh 4.2.0</title>
+<title>class Net::SSH::Proxy::HTTPS - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -155,7 +155,7 @@ href="HTTP.html">Net::SSH::Proxy::HTTP</a> it supports:</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/https.rb, line 19</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/https.rb, line 20</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">proxy_host</span>, <span class="ruby-identifier">proxy_port</span>=<span class="ruby-value">80</span>, <span class="ruby-identifier">options</span>={})
<span class="ruby-ivar">@ssl_context</span> = <span class="ruby-identifier">options</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:ssl_context</span>) <span class="ruby-operator">||</span>
<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSLContext</span>.<span class="ruby-identifier">new</span>
@@ -203,7 +203,7 @@ href="HTTP.html">Net::SSH::Proxy::HTTP</a> it supports:</p>
<div class="method-source-code" id="establish_connection-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/https.rb, line 40</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/https.rb, line 41</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">establish_connection</span>(<span class="ruby-identifier">connect_timeout</span>)
<span class="ruby-identifier">plain_socket</span> = <span class="ruby-keyword">super</span>(<span class="ruby-identifier">connect_timeout</span>)
<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSLSocket</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">plain_socket</span>, <span class="ruby-ivar">@ssl_context</span>).<span class="ruby-identifier">tap</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">socket</span><span class="ruby-operator">|</span>
diff --git a/Net/SSH/Proxy/HTTPS/SSLSocketCompatibility.html b/Net/SSH/Proxy/HTTPS/SSLSocketCompatibility.html
index 3cb55b7..6f33e3c 100644
--- a/Net/SSH/Proxy/HTTPS/SSLSocketCompatibility.html
+++ b/Net/SSH/Proxy/HTTPS/SSLSocketCompatibility.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Proxy::HTTPS::SSLSocketCompatibility - net-ssh 4.2.0</title>
+<title>module Net::SSH::Proxy::HTTPS::SSLSocketCompatibility - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -123,7 +123,7 @@ href="../../BufferedIo.html">Net::SSH::BufferedIo</a></p>
<div class="method-source-code" id="send-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/https.rb, line 35</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/https.rb, line 36</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">send</span>(<span class="ruby-identifier">data</span>, <span class="ruby-identifier">_opts</span>)
<span class="ruby-identifier">syswrite</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Proxy/Jump.html b/Net/SSH/Proxy/Jump.html
index 5990e31..d4c6646 100644
--- a/Net/SSH/Proxy/Jump.html
+++ b/Net/SSH/Proxy/Jump.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Proxy::Jump - net-ssh 4.2.0</title>
+<title>class Net::SSH::Proxy::Jump - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -163,7 +163,7 @@ href=":port">user@]host</a>.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/jump.rb, line 23</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/jump.rb, line 24</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">jump_proxies</span>)
<span class="ruby-ivar">@jump_proxies</span> = <span class="ruby-identifier">jump_proxies</span>
<span class="ruby-keyword">end</span></pre>
@@ -205,12 +205,12 @@ option was specified during `Net::SSH.start`.</p>
<div class="method-source-code" id="build_proxy_command_equivalent-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/jump.rb, line 36</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/jump.rb, line 37</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">build_proxy_command_equivalent</span>(<span class="ruby-identifier">connection_options</span> = <span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">first_jump</span>, <span class="ruby-identifier">extra_jumps</span> = <span class="ruby-identifier">jump_proxies</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">&quot;,&quot;</span>, <span class="ruby-value">2</span>)
<span class="ruby-identifier">config</span> = <span class="ruby-identifier">connection_options</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">connection_options</span>[<span class="ruby-value">:config</span>]
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-node">&quot;ssh://#{first_jump}&quot;</span>)
-
+
<span class="ruby-identifier">template</span> = <span class="ruby-string">&quot;ssh&quot;</span>
<span class="ruby-identifier">template</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot; -l #{uri.user}&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">user</span>
<span class="ruby-identifier">template</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot; -p #{uri.port}&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">port</span>
@@ -218,7 +218,7 @@ option was specified during `Net::SSH.start`.</p>
<span class="ruby-identifier">template</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot; -F #{config}&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">config</span> <span class="ruby-operator">!=</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">config</span>
<span class="ruby-identifier">template</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot; -W %h:%p &quot;</span>
<span class="ruby-identifier">template</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">host</span>
-
+
<span class="ruby-ivar">@command_line_template</span> = <span class="ruby-identifier">template</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -256,7 +256,7 @@ that was requested when the socket factory was instantiated.</p>
<div class="method-source-code" id="open-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/jump.rb, line 29</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/jump.rb, line 30</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">open</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">port</span>, <span class="ruby-identifier">connection_options</span> = <span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">build_proxy_command_equivalent</span>(<span class="ruby-identifier">connection_options</span>)
<span class="ruby-keyword">super</span>
diff --git a/Net/SSH/Proxy/SOCKS4.html b/Net/SSH/Proxy/SOCKS4.html
index 9008b86..bc909aa 100644
--- a/Net/SSH/Proxy/SOCKS4.html
+++ b/Net/SSH/Proxy/SOCKS4.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Proxy::SOCKS4 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Proxy::SOCKS4 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -212,7 +212,7 @@ authenticate.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/socks4.rb, line 42</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/socks4.rb, line 41</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">proxy_host</span>, <span class="ruby-identifier">proxy_port</span>=<span class="ruby-value">1080</span>, <span class="ruby-identifier">options</span>={})
<span class="ruby-ivar">@proxy_host</span> = <span class="ruby-identifier">proxy_host</span>
<span class="ruby-ivar">@proxy_port</span> = <span class="ruby-identifier">proxy_port</span>
@@ -256,7 +256,7 @@ was requested when the socket factory was instantiated.</p>
<div class="method-source-code" id="open-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/proxy/socks4.rb, line 50</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/proxy/socks4.rb, line 49</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">open</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">port</span>, <span class="ruby-identifier">connection_options</span>)
<span class="ruby-identifier">socket</span> = <span class="ruby-constant">Socket</span>.<span class="ruby-identifier">tcp</span>(<span class="ruby-identifier">proxy_host</span>, <span class="ruby-identifier">proxy_port</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-keyword">nil</span>,
<span class="ruby-identifier">connect_timeout</span><span class="ruby-operator">:</span> <span class="ruby-identifier">connection_options</span>[<span class="ruby-value">:timeout</span>])
diff --git a/Net/SSH/Proxy/SOCKS5.html b/Net/SSH/Proxy/SOCKS5.html
index bd85c72..43320a1 100644
--- a/Net/SSH/Proxy/SOCKS5.html
+++ b/Net/SSH/Proxy/SOCKS5.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Proxy::SOCKS5 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Proxy::SOCKS5 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -323,7 +323,7 @@ was requested when the socket factory was instantiated.</p>
<span class="ruby-identifier">address_type</span> = <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">recv</span>(<span class="ruby-value">1</span>).<span class="ruby-identifier">getbyte</span>(<span class="ruby-value">0</span>)
<span class="ruby-keyword">case</span> <span class="ruby-identifier">address_type</span>
<span class="ruby-keyword">when</span> <span class="ruby-value">1</span>
- <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">recv</span>(<span class="ruby-value">4</span>) <span class="ruby-comment"># get four bytes for IPv4 address</span>
+ <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">recv</span>(<span class="ruby-value">4</span>) <span class="ruby-comment"># get four bytes for IPv4 address</span>
<span class="ruby-keyword">when</span> <span class="ruby-value">3</span>
<span class="ruby-identifier">len</span> = <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">recv</span>(<span class="ruby-value">1</span>).<span class="ruby-identifier">getbyte</span>(<span class="ruby-value">0</span>)
<span class="ruby-identifier">hostname</span> = <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">recv</span>(<span class="ruby-identifier">len</span>)
diff --git a/Net/SSH/Proxy/UnauthorizedError.html b/Net/SSH/Proxy/UnauthorizedError.html
index 10e01a8..b9f6274 100644
--- a/Net/SSH/Proxy/UnauthorizedError.html
+++ b/Net/SSH/Proxy/UnauthorizedError.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Proxy::UnauthorizedError - net-ssh 4.2.0</title>
+<title>class Net::SSH::Proxy::UnauthorizedError - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Service.html b/Net/SSH/Service.html
index c860b5b..8f0a53d 100644
--- a/Net/SSH/Service.html
+++ b/Net/SSH/Service.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Service - net-ssh 4.2.0</title>
+<title>module Net::SSH::Service - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/Service/Forward.html b/Net/SSH/Service/Forward.html
index e81b58b..8085b83 100644
--- a/Net/SSH/Service/Forward.html
+++ b/Net/SSH/Service/Forward.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Service::Forward - net-ssh 4.2.0</title>
+<title>class Net::SSH::Service::Forward - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -211,7 +211,7 @@ href="../../SSH.html">SSH</a> port forwarding protocols employ.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 24</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 26</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">session</span>)
<span class="ruby-ivar">@session</span> = <span class="ruby-identifier">session</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span> = <span class="ruby-identifier">session</span>.<span class="ruby-identifier">logger</span>
@@ -262,7 +262,7 @@ is an array of Unix domain socket file paths.</p>
<div class="method-source-code" id="active_local_sockets-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 168</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 171</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">active_local_sockets</span>
<span class="ruby-ivar">@local_forwarded_sockets</span>.<span class="ruby-identifier">keys</span>
<span class="ruby-keyword">end</span></pre>
@@ -297,7 +297,7 @@ the local port and bind address corresponding to the forwarding port.</p>
<div class="method-source-code" id="active_locals-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 117</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 120</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">active_locals</span>
<span class="ruby-ivar">@local_forwarded_ports</span>.<span class="ruby-identifier">keys</span>
<span class="ruby-keyword">end</span></pre>
@@ -333,11 +333,10 @@ returned value is a hash from [&lt;forwarding port on the local host&gt;,
<div class="method-source-code" id="active_remote_destinations-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 269</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 272</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">active_remote_destinations</span>
- <span class="ruby-ivar">@remote_forwarded_ports</span>.<span class="ruby-identifier">inject</span>({}) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">result</span>, (<span class="ruby-identifier">remote</span>, <span class="ruby-identifier">local</span>)<span class="ruby-operator">|</span>
+ <span class="ruby-ivar">@remote_forwarded_ports</span>.<span class="ruby-identifier">each_with_object</span>({}) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span>(<span class="ruby-identifier">remote</span>, <span class="ruby-identifier">local</span>), <span class="ruby-identifier">result</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">result</span>[[<span class="ruby-identifier">local</span>.<span class="ruby-identifier">port</span>, <span class="ruby-identifier">local</span>.<span class="ruby-identifier">host</span>]] = <span class="ruby-identifier">remote</span>
- <span class="ruby-identifier">result</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -371,7 +370,7 @@ host and the second is the bind address.</p>
<div class="method-source-code" id="active_remotes-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 262</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 265</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">active_remotes</span>
<span class="ruby-ivar">@remote_forwarded_ports</span>.<span class="ruby-identifier">keys</span>
<span class="ruby-keyword">end</span></pre>
@@ -417,7 +416,7 @@ connection was created with :forward_agent set to true:</p>
<div class="method-source-code" id="agent-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 289</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 291</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">agent</span>(<span class="ruby-identifier">channel</span>)
<span class="ruby-keyword">return</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@agent_forwarded</span>
<span class="ruby-ivar">@agent_forwarded</span> = <span class="ruby-keyword">true</span>
@@ -469,7 +468,7 @@ connection was created with :forward_agent set to true:</p>
<div class="method-source-code" id="cancel_local-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 106</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 109</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">cancel_local</span>(<span class="ruby-identifier">port</span>, <span class="ruby-identifier">bind_address</span>=<span class="ruby-string">&quot;127.0.0.1&quot;</span>)
<span class="ruby-identifier">socket</span> = <span class="ruby-ivar">@local_forwarded_ports</span>.<span class="ruby-identifier">delete</span>([<span class="ruby-identifier">port</span>, <span class="ruby-identifier">bind_address</span>])
<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">shutdown</span> <span class="ruby-keyword">rescue</span> <span class="ruby-keyword">nil</span>
@@ -508,7 +507,7 @@ connection was created with :forward_agent set to true:</p>
<div class="method-source-code" id="cancel_local_socket-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 159</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 162</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">cancel_local_socket</span>(<span class="ruby-identifier">local_socket_path</span>)
<span class="ruby-identifier">socket</span> = <span class="ruby-ivar">@local_forwarded_sockets</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">local_socket_path</span>)
<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">shutdown</span> <span class="ruby-keyword">rescue</span> <span class="ruby-keyword">nil</span>
@@ -558,7 +557,7 @@ like this:</p>
<div class="method-source-code" id="cancel_remote-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 249</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 252</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">cancel_remote</span>(<span class="ruby-identifier">port</span>, <span class="ruby-identifier">host</span>=<span class="ruby-string">&quot;127.0.0.1&quot;</span>)
<span class="ruby-identifier">session</span>.<span class="ruby-identifier">send_global_request</span>(<span class="ruby-string">&quot;cancel-tcpip-forward&quot;</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">host</span>, <span class="ruby-value">:long</span>, <span class="ruby-identifier">port</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">success</span>, <span class="ruby-identifier">response</span><span class="ruby-operator">|</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
@@ -620,7 +619,7 @@ assigned.</p>
<div class="method-source-code" id="local-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 56</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 58</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">local</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-keyword">if</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">3</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">4</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;expected 3 or 4 parameters, got #{args.length}&quot;</span>
@@ -651,7 +650,8 @@ assigned.</p>
<span class="ruby-identifier">client</span> = <span class="ruby-identifier">server</span>.<span class="ruby-identifier">accept</span>
<span class="ruby-identifier">debug</span> { <span class="ruby-node">&quot;received connection on #{socket}&quot;</span> }
- <span class="ruby-identifier">channel</span> = <span class="ruby-identifier">session</span>.<span class="ruby-identifier">open_channel</span>(<span class="ruby-string">&quot;direct-tcpip&quot;</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">remote_host</span>, <span class="ruby-value">:long</span>, <span class="ruby-identifier">remote_port</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">bind_address</span>, <span class="ruby-identifier">local_port_type</span>, <span class="ruby-identifier">local_port</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">achannel</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">channel</span> = <span class="ruby-identifier">session</span>.<span class="ruby-identifier">open_channel</span>(<span class="ruby-string">&quot;direct-tcpip&quot;</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">remote_host</span>, <span class="ruby-value">:long</span>,
+ <span class="ruby-identifier">remote_port</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">bind_address</span>, <span class="ruby-identifier">local_port_type</span>, <span class="ruby-identifier">local_port</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">achannel</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">achannel</span>.<span class="ruby-identifier">info</span> { <span class="ruby-string">&quot;direct channel established&quot;</span> }
<span class="ruby-keyword">end</span>
@@ -701,7 +701,7 @@ needs to have the socket file already available.</p>
<div class="method-source-code" id="local_socket-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 127</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 130</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">local_socket</span>(<span class="ruby-identifier">local_socket_path</span>, <span class="ruby-identifier">remote_socket_path</span>)
<span class="ruby-constant">File</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">local_socket_path</span>) <span class="ruby-keyword">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">local_socket_path</span>)
<span class="ruby-identifier">socket</span> = <span class="ruby-constant">Socket</span>.<span class="ruby-identifier">unix_server_socket</span>(<span class="ruby-identifier">local_socket_path</span>)
@@ -806,7 +806,7 @@ this:</p>
<div class="method-source-code" id="remote-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 215</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/service/forward.rb, line 218</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">remote</span>(<span class="ruby-identifier">port</span>, <span class="ruby-identifier">host</span>, <span class="ruby-identifier">remote_port</span>, <span class="ruby-identifier">remote_host</span>=<span class="ruby-string">&quot;127.0.0.1&quot;</span>)
<span class="ruby-identifier">session</span>.<span class="ruby-identifier">send_global_request</span>(<span class="ruby-string">&quot;tcpip-forward&quot;</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">remote_host</span>, <span class="ruby-value">:long</span>, <span class="ruby-identifier">remote_port</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">success</span>, <span class="ruby-identifier">response</span><span class="ruby-operator">|</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
@@ -816,8 +816,8 @@ this:</p>
<span class="ruby-keyword">yield</span> <span class="ruby-identifier">remote_port</span>, <span class="ruby-identifier">remote_host</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
<span class="ruby-keyword">else</span>
<span class="ruby-identifier">instruction</span> = <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
- <span class="ruby-keyword">yield</span> <span class="ruby-operator">:</span><span class="ruby-identifier">error</span>
- <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">yield</span> <span class="ruby-operator">:</span><span class="ruby-identifier">error</span>
+ <span class="ruby-keyword">end</span>
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">instruction</span> <span class="ruby-operator">==</span> <span class="ruby-value">:no_exception</span>
<span class="ruby-identifier">error</span> { <span class="ruby-string">&quot;remote forwarding request failed&quot;</span> }
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-string">&quot;remote forwarding request failed&quot;</span>
diff --git a/Net/SSH/Test.html b/Net/SSH/Test.html
index 0072f2a..a25cd44 100644
--- a/Net/SSH/Test.html
+++ b/Net/SSH/Test.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Test - net-ssh 4.2.0</title>
+<title>module Net::SSH::Test - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -176,11 +176,11 @@ the block passed to this assertion.</p>
<div class="method-source-code" id="assert_scripted-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test.rb, line 85</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test.rb, line 86</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">assert_scripted</span>
<span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;there is no script to be processed&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">script</span>.<span class="ruby-identifier">events</span>.<span class="ruby-identifier">empty?</span>
<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Test</span><span class="ruby-operator">::</span><span class="ruby-constant">Extensions</span><span class="ruby-operator">::</span><span class="ruby-constant">IO</span>.<span class="ruby-identifier">with_test_extension</span> { <span class="ruby-keyword">yield</span> }
- <span class="ruby-identifier">assert</span> <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">script</span>.<span class="ruby-identifier">events</span>.<span class="ruby-identifier">empty?</span>, <span class="ruby-node">&quot;there should not be any remaining scripted events, but there are still #{socket.script.events.length} pending&quot;</span>
+ <span class="ruby-identifier">assert</span> <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">script</span>.<span class="ruby-identifier">events</span>.<span class="ruby-identifier">empty?</span>, <span class="ruby-string">&quot;there should not be any remaining scripted events, but there are still&quot;</span> <span class="ruby-node">&quot;#{socket.script.events.length} pending&quot;</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -213,7 +213,7 @@ session, operating over a mock socket (#socket).</p>
<div class="method-source-code" id="connection-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test.rb, line 66</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test.rb, line 67</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">connection</span>(<span class="ruby-identifier">options</span>={})
<span class="ruby-ivar">@connection</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Connection</span><span class="ruby-operator">::</span><span class="ruby-constant">Session</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">transport</span>(<span class="ruby-identifier">options</span>), <span class="ruby-identifier">options</span>)
<span class="ruby-keyword">end</span></pre>
@@ -247,7 +247,7 @@ href="Test/Socket.html">Net::SSH::Test::Socket</a>).</p>
<div class="method-source-code" id="socket-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test.rb, line 59</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test.rb, line 60</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">socket</span>(<span class="ruby-identifier">options</span>={})
<span class="ruby-ivar">@socket</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Test</span><span class="ruby-operator">::</span><span class="ruby-constant">Socket</span>.<span class="ruby-identifier">new</span>
<span class="ruby-keyword">end</span></pre>
@@ -282,7 +282,7 @@ href="Test/Script.html">Net::SSH::Test::Script</a>.</p>
<div class="method-source-code" id="story-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test.rb, line 52</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test.rb, line 53</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">story</span>
<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Test</span><span class="ruby-operator">::</span><span class="ruby-constant">Extensions</span><span class="ruby-operator">::</span><span class="ruby-constant">IO</span>.<span class="ruby-identifier">with_test_extension</span> { <span class="ruby-keyword">yield</span> <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">script</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span> }
<span class="ruby-keyword">return</span> <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">script</span>
@@ -318,11 +318,11 @@ transport session, operating over a mock socket (#socket).</p>
<div class="method-source-code" id="transport-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test.rb, line 73</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test.rb, line 74</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">transport</span>(<span class="ruby-identifier">options</span>={})
<span class="ruby-ivar">@transport</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Transport</span><span class="ruby-operator">::</span><span class="ruby-constant">Session</span>.<span class="ruby-identifier">new</span>(
<span class="ruby-identifier">options</span>[<span class="ruby-value">:host</span>] <span class="ruby-operator">||</span> <span class="ruby-string">&quot;localhost&quot;</span>,
- <span class="ruby-identifier">options</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">kex</span><span class="ruby-operator">:</span> <span class="ruby-string">&quot;test&quot;</span>, <span class="ruby-identifier">host_key</span><span class="ruby-operator">:</span> <span class="ruby-string">&quot;ssh-rsa&quot;</span>, <span class="ruby-identifier">verify_host_key</span><span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>, <span class="ruby-identifier">proxy</span><span class="ruby-operator">:</span> <span class="ruby-identifier">socket</span>(<span class="ruby-identifier">options</span>))
+ <span class="ruby-identifier">options</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">kex</span><span class="ruby-operator">:</span> <span class="ruby-string">&quot;test&quot;</span>, <span class="ruby-identifier">host_key</span><span class="ruby-operator">:</span> <span class="ruby-string">&quot;ssh-rsa&quot;</span>, <span class="ruby-identifier">append_all_supported_algorithms</span><span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>, <span class="ruby-identifier">verify_host_key</span><span class="ruby-operator">:</span> <span class="ruby-value">:never</span>, <span class="ruby-identifier">proxy</span><span class="ruby-operator">:</span> <span class="ruby-identifier">socket</span>(<span class="ruby-identifier">options</span>))
)
<span class="ruby-keyword">end</span></pre>
</div>
diff --git a/Net/SSH/Test/Channel.html b/Net/SSH/Test/Channel.html
index 7153094..70ad431 100644
--- a/Net/SSH/Test/Channel.html
+++ b/Net/SSH/Test/Channel.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Test::Channel - net-ssh 4.2.0</title>
+<title>class Net::SSH::Test::Channel - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -221,7 +221,7 @@ href="Script.html">Net::SSH::Test::Script</a> instance).</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 29</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 31</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">script</span>)
<span class="ruby-ivar">@script</span> = <span class="ruby-identifier">script</span>
<span class="ruby-ivar">@local_id</span> = <span class="ruby-ivar">@remote_id</span> = <span class="ruby-keyword">nil</span>
@@ -266,7 +266,7 @@ href="Script.html">Net::SSH::Test::Script</a> instance).</p>
<div class="method-source-code" id="gets_close-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 140</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 142</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">gets_close</span>
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">gets_channel_close</span>(<span class="ruby-keyword">self</span>)
<span class="ruby-keyword">end</span></pre>
@@ -302,7 +302,7 @@ href="Script.html">Net::SSH::Test::Script</a> instance).</p>
<div class="method-source-code" id="gets_data-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 111</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 113</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">gets_data</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">gets_channel_data</span>(<span class="ruby-keyword">self</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span></pre>
@@ -338,7 +338,7 @@ href="Script.html">Net::SSH::Test::Script</a> instance).</p>
<div class="method-source-code" id="gets_eof-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 133</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 135</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">gets_eof</span>
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">gets_channel_eof</span>(<span class="ruby-keyword">self</span>)
<span class="ruby-keyword">end</span></pre>
@@ -374,7 +374,7 @@ href="Script.html">Net::SSH::Test::Script</a> instance).</p>
<div class="method-source-code" id="gets_exit_status-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 126</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 128</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">gets_exit_status</span>(<span class="ruby-identifier">status</span>=<span class="ruby-value">0</span>)
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">gets_channel_request</span>(<span class="ruby-keyword">self</span>, <span class="ruby-string">&quot;exit-status&quot;</span>, <span class="ruby-keyword">false</span>, <span class="ruby-identifier">status</span>)
<span class="ruby-keyword">end</span></pre>
@@ -411,7 +411,7 @@ end.</p>
<div class="method-source-code" id="gets_extended_data-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 119</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 121</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">gets_extended_data</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">gets_channel_extended_data</span>(<span class="ruby-keyword">self</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span></pre>
@@ -454,7 +454,7 @@ href="Channel.html#method-i-inject_remote_delay-21">inject_remote_delay!</a>
<div class="method-source-code" id="inject_remote_delay-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 56</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 58</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">inject_remote_delay!</span>
<span class="ruby-identifier">gets_data</span>(<span class="ruby-string">&quot;&quot;</span>)
<span class="ruby-keyword">end</span></pre>
@@ -490,7 +490,7 @@ href="Packet.html#method-i-instantiate-21">Net::SSH::Test::Packet#instantiate!</
<div class="method-source-code" id="local_id-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 37</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 39</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">local_id</span>
<span class="ruby-ivar">@local_id</span> <span class="ruby-operator">||</span> <span class="ruby-constant">Proc</span>.<span class="ruby-identifier">new</span> { <span class="ruby-ivar">@local_id</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;local-id has not been set yet!&quot;</span> }
<span class="ruby-keyword">end</span></pre>
@@ -526,7 +526,7 @@ href="Packet.html#method-i-instantiate-21">Net::SSH::Test::Packet#instantiate!</
<div class="method-source-code" id="remote_id-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 44</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 46</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">remote_id</span>
<span class="ruby-ivar">@remote_id</span> <span class="ruby-operator">||</span> <span class="ruby-constant">Proc</span>.<span class="ruby-identifier">new</span> { <span class="ruby-ivar">@remote_id</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;remote-id has not been set yet!&quot;</span> }
<span class="ruby-keyword">end</span></pre>
@@ -562,7 +562,7 @@ href="Packet.html#method-i-instantiate-21">Net::SSH::Test::Packet#instantiate!</
<div class="method-source-code" id="sends_close-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 97</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 99</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">sends_close</span>
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">sends_channel_close</span>(<span class="ruby-keyword">self</span>)
<span class="ruby-keyword">end</span></pre>
@@ -598,7 +598,7 @@ href="Packet.html#method-i-instantiate-21">Net::SSH::Test::Packet#instantiate!</
<div class="method-source-code" id="sends_data-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 83</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 85</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">sends_data</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">sends_channel_data</span>(<span class="ruby-keyword">self</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span></pre>
@@ -634,7 +634,7 @@ href="Packet.html#method-i-instantiate-21">Net::SSH::Test::Packet#instantiate!</
<div class="method-source-code" id="sends_eof-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 90</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 92</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">sends_eof</span>
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">sends_channel_eof</span>(<span class="ruby-keyword">self</span>)
<span class="ruby-keyword">end</span></pre>
@@ -674,7 +674,7 @@ successful, otherwise a failure will be scripted.</p>
<div class="method-source-code" id="sends_exec-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 67</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 69</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">sends_exec</span>(<span class="ruby-identifier">command</span>, <span class="ruby-identifier">reply</span>=<span class="ruby-keyword">true</span>, <span class="ruby-identifier">success</span>=<span class="ruby-keyword">true</span>)
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">sends_channel_request</span>(<span class="ruby-keyword">self</span>, <span class="ruby-string">&quot;exec&quot;</span>, <span class="ruby-identifier">reply</span>, <span class="ruby-identifier">command</span>, <span class="ruby-identifier">success</span>)
<span class="ruby-keyword">end</span></pre>
@@ -710,7 +710,7 @@ successful, otherwise a failure will be scripted.</p>
<div class="method-source-code" id="sends_request_pty-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 104</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 106</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">sends_request_pty</span>
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">sends_channel_request_pty</span>(<span class="ruby-keyword">self</span>)
<span class="ruby-keyword">end</span></pre>
@@ -749,7 +749,7 @@ discussion of the meaning of the <code>reply</code> and
<div class="method-source-code" id="sends_subsystem-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 76</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/channel.rb, line 78</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">sends_subsystem</span>(<span class="ruby-identifier">subsystem</span>, <span class="ruby-identifier">reply</span>=<span class="ruby-keyword">true</span>, <span class="ruby-identifier">success</span>=<span class="ruby-keyword">true</span>)
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">sends_channel_request</span>(<span class="ruby-keyword">self</span>, <span class="ruby-string">&quot;subsystem&quot;</span>, <span class="ruby-identifier">reply</span>, <span class="ruby-identifier">subsystem</span>, <span class="ruby-identifier">success</span>)
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Test/Extensions.html b/Net/SSH/Test/Extensions.html
index ecaed56..05a7612 100644
--- a/Net/SSH/Test/Extensions.html
+++ b/Net/SSH/Test/Extensions.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Test::Extensions - net-ssh 4.2.0</title>
+<title>module Net::SSH::Test::Extensions - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Test/Extensions/BufferedIo.html b/Net/SSH/Test/Extensions/BufferedIo.html
index 964d2eb..5534b7b 100644
--- a/Net/SSH/Test/Extensions/BufferedIo.html
+++ b/Net/SSH/Test/Extensions/BufferedIo.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Test::Extensions::BufferedIo - net-ssh 4.2.0</title>
+<title>module Net::SSH::Test::Extensions::BufferedIo - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -188,7 +188,7 @@ total length of the stream.</p>
<div class="method-source-code" id="select_for_read-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 22</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 24</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">select_for_read?</span>
<span class="ruby-identifier">pos</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">size</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Test/Extensions/Channel.html b/Net/SSH/Test/Extensions/Channel.html
index f84862f..b4b3420 100644
--- a/Net/SSH/Test/Extensions/Channel.html
+++ b/Net/SSH/Test/Extensions/Channel.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Test::Extensions::Channel - net-ssh 4.2.0</title>
+<title>module Net::SSH::Test::Extensions::Channel - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -127,7 +127,7 @@ for output so that scripted sends are properly interpreted as discrete
<div class="method-source-code" id="send_data_for_test-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 103</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 105</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">send_data_for_test</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">send_data_for_real</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">enqueue_pending_output</span>
diff --git a/Net/SSH/Test/Extensions/IO.html b/Net/SSH/Test/Extensions/IO.html
index fab1daa..6f18c7e 100644
--- a/Net/SSH/Test/Extensions/IO.html
+++ b/Net/SSH/Test/Extensions/IO.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Test::Extensions::IO - net-ssh 4.2.0</title>
+<title>module Net::SSH::Test::Extensions::IO - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -135,7 +135,7 @@ it can be scripted in <a href="../../../SSH.html">Net::SSH</a> unit tests.</p>
<div class="method-source-code" id="extension_enabled-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 128</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 130</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">extension_enabled?</span>
<span class="ruby-ivar">@extension_enabled</span>
<span class="ruby-keyword">end</span></pre>
@@ -168,7 +168,7 @@ it can be scripted in <a href="../../../SSH.html">Net::SSH</a> unit tests.</p>
<div class="method-source-code" id="with_test_extension-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 118</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 120</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">with_test_extension</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-identifier">orig_value</span> = <span class="ruby-ivar">@extension_enabled</span>
<span class="ruby-ivar">@extension_enabled</span> = <span class="ruby-keyword">true</span>
diff --git a/Net/SSH/Test/Extensions/IO/ClassMethods.html b/Net/SSH/Test/Extensions/IO/ClassMethods.html
index 74823ab..9aadffc 100644
--- a/Net/SSH/Test/Extensions/IO/ClassMethods.html
+++ b/Net/SSH/Test/Extensions/IO/ClassMethods.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Test::Extensions::IO::ClassMethods - net-ssh 4.2.0</title>
+<title>module Net::SSH::Test::Extensions::IO::ClassMethods - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../../";
@@ -121,23 +121,23 @@ href="../BufferedIo.html">Net::SSH::Test::Extensions::BufferedIo</a>.</p>
<div class="method-source-code" id="select_for_test-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 143</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 145</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">select_for_test</span>(<span class="ruby-identifier">readers</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">writers</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">errors</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">wait</span>=<span class="ruby-keyword">nil</span>)
<span class="ruby-keyword">return</span> <span class="ruby-identifier">select_for_real</span>(<span class="ruby-identifier">readers</span>, <span class="ruby-identifier">writers</span>, <span class="ruby-identifier">errors</span>, <span class="ruby-identifier">wait</span>) <span class="ruby-keyword">unless</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Test</span><span class="ruby-operator">::</span><span class="ruby-constant">Extensions</span><span class="ruby-operator">::</span><span class="ruby-constant">IO</span>.<span class="ruby-identifier">extension_enabled?</span>
<span class="ruby-identifier">ready_readers</span> = <span class="ruby-constant">Array</span>(<span class="ruby-identifier">readers</span>).<span class="ruby-identifier">select</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">r</span><span class="ruby-operator">|</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">select_for_read?</span> }
<span class="ruby-identifier">ready_writers</span> = <span class="ruby-constant">Array</span>(<span class="ruby-identifier">writers</span>).<span class="ruby-identifier">select</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">r</span><span class="ruby-operator">|</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">select_for_write?</span> }
<span class="ruby-identifier">ready_errors</span> = <span class="ruby-constant">Array</span>(<span class="ruby-identifier">errors</span>).<span class="ruby-identifier">select</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">r</span><span class="ruby-operator">|</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">select_for_error?</span> }
-
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">ready_readers</span>.<span class="ruby-identifier">any?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">ready_writers</span>.<span class="ruby-identifier">any?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">ready_errors</span>.<span class="ruby-identifier">any?</span>
- <span class="ruby-keyword">return</span> [<span class="ruby-identifier">ready_readers</span>, <span class="ruby-identifier">ready_writers</span>, <span class="ruby-identifier">ready_errors</span>]
- <span class="ruby-keyword">end</span>
-
+
+ <span class="ruby-keyword">return</span> [<span class="ruby-identifier">ready_readers</span>, <span class="ruby-identifier">ready_writers</span>, <span class="ruby-identifier">ready_errors</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">ready_readers</span>.<span class="ruby-identifier">any?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">ready_writers</span>.<span class="ruby-identifier">any?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">ready_errors</span>.<span class="ruby-identifier">any?</span>
+
<span class="ruby-identifier">processed</span> = <span class="ruby-value">0</span>
<span class="ruby-constant">Array</span>(<span class="ruby-identifier">readers</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">reader</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">processed</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">reader</span>.<span class="ruby-identifier">idle!</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;no readers were ready for reading, and none had any incoming packets&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">processed</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">wait</span> <span class="ruby-operator">!=</span> <span class="ruby-value">0</span>
+
+ [[], [], []]
<span class="ruby-keyword">end</span></pre>
</div>
diff --git a/Net/SSH/Test/Extensions/PacketStream.html b/Net/SSH/Test/Extensions/PacketStream.html
index f139dc1..62fa71f 100644
--- a/Net/SSH/Test/Extensions/PacketStream.html
+++ b/Net/SSH/Test/Extensions/PacketStream.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Test::Extensions::PacketStream - net-ssh 4.2.0</title>
+<title>module Net::SSH::Test::Extensions::PacketStream - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -143,15 +143,15 @@ onto this <a href="IO.html">IO</a> object, making it available to be read.</p>
<div class="method-source-code" id="idle-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 56</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 58</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">idle!</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">script</span>.<span class="ruby-identifier">next</span>(<span class="ruby-value">:first</span>)
-
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">script</span>.<span class="ruby-identifier">next</span>(<span class="ruby-value">:first</span>).<span class="ruby-identifier">remote?</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">string</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">script</span>.<span class="ruby-identifier">next</span>.<span class="ruby-identifier">to_s</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">pos</span> = <span class="ruby-identifier">pos</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-keyword">return</span> <span class="ruby-keyword">true</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -186,7 +186,7 @@ href="PacketStream.html#method-i-idle-21">idle!</a>.</p>
<div class="method-source-code" id="test_available_for_read-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 69</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 71</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">test_available_for_read?</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">select_for_read?</span>
<span class="ruby-identifier">idle!</span>
@@ -224,7 +224,7 @@ on the packet.</p>
<div class="method-source-code" id="test_enqueue_packet-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 77</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 79</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">test_enqueue_packet</span>(<span class="ruby-identifier">payload</span>)
<span class="ruby-identifier">packet</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">payload</span>.<span class="ruby-identifier">to_s</span>)
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">process</span>(<span class="ruby-identifier">packet</span>)
@@ -261,7 +261,7 @@ and returns it.</p>
<div class="method-source-code" id="test_poll_next_packet-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 84</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/extensions.rb, line 86</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">test_poll_next_packet</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">available</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-value">0</span>
<span class="ruby-identifier">packet</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">read_available</span>(<span class="ruby-value">4</span>))
diff --git a/Net/SSH/Test/Kex.html b/Net/SSH/Test/Kex.html
index 4cced4c..086659b 100644
--- a/Net/SSH/Test/Kex.html
+++ b/Net/SSH/Test/Kex.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Test::Kex - net-ssh 4.2.0</title>
+<title>class Net::SSH::Test::Kex - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -148,7 +148,7 @@ arguments.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/kex.rb, line 21</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/kex.rb, line 23</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">algorithms</span>, <span class="ruby-identifier">connection</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-ivar">@connection</span> = <span class="ruby-identifier">connection</span>
<span class="ruby-keyword">end</span></pre>
@@ -190,14 +190,14 @@ does not actually exchange keys.</p>
<div class="method-source-code" id="exchange_keys-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/kex.rb, line 27</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/kex.rb, line 29</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">exchange_keys</span>
<span class="ruby-identifier">result</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:byte</span>, <span class="ruby-constant">NEWKEYS</span>)
<span class="ruby-ivar">@connection</span>.<span class="ruby-identifier">send_message</span>(<span class="ruby-identifier">result</span>)
-
+
<span class="ruby-identifier">buffer</span> = <span class="ruby-ivar">@connection</span>.<span class="ruby-identifier">next_message</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-string">&quot;expected NEWKEYS&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-constant">NEWKEYS</span>
-
+
{ <span class="ruby-identifier">session_id</span><span class="ruby-operator">:</span> <span class="ruby-string">&quot;abc-xyz&quot;</span>,
<span class="ruby-identifier">server_key</span><span class="ruby-operator">:</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">RSA</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">512</span>),
<span class="ruby-identifier">shared_secret</span><span class="ruby-operator">:</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">BN</span>.<span class="ruby-identifier">new</span>(<span class="ruby-string">&quot;1234567890&quot;</span>, <span class="ruby-value">10</span>),
diff --git a/Net/SSH/Test/LocalPacket.html b/Net/SSH/Test/LocalPacket.html
index cf2a1e8..da2b0c1 100644
--- a/Net/SSH/Test/LocalPacket.html
+++ b/Net/SSH/Test/LocalPacket.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Test::LocalPacket - net-ssh 4.2.0</title>
+<title>class Net::SSH::Test::LocalPacket - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -166,7 +166,7 @@ href="LocalPacket.html#method-i-process">process</a> is first called.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/local_packet.rb, line 16</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/local_packet.rb, line 18</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">type</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-keyword">super</span>(<span class="ruby-identifier">type</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-ivar">@init</span> = <span class="ruby-identifier">block</span>
@@ -208,7 +208,7 @@ href="LocalPacket.html#method-i-process">process</a> is first called.</p>
<div class="method-source-code" id="local-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/local_packet.rb, line 22</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/local_packet.rb, line 24</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">local?</span>
<span class="ruby-keyword">true</span>
<span class="ruby-keyword">end</span></pre>
@@ -246,7 +246,7 @@ exception is raised.</p>
<div class="method-source-code" id="process-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/local_packet.rb, line 31</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/local_packet.rb, line 33</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">packet</span>)
<span class="ruby-ivar">@init</span>.<span class="ruby-identifier">call</span>(<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Packet</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">packet</span>.<span class="ruby-identifier">to_s</span>)) <span class="ruby-keyword">if</span> <span class="ruby-ivar">@init</span>
<span class="ruby-identifier">type</span> = <span class="ruby-identifier">packet</span>.<span class="ruby-identifier">read_byte</span>
@@ -254,11 +254,11 @@ exception is raised.</p>
<span class="ruby-ivar">@data</span>.<span class="ruby-identifier">zip</span>(<span class="ruby-identifier">types</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">expected</span>, <span class="ruby-identifier">_type</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">_type</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword">case</span> <span class="ruby-identifier">expected</span>
- <span class="ruby-keyword">when</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">then</span> <span class="ruby-keyword">break</span>
- <span class="ruby-keyword">when</span> <span class="ruby-constant">Numeric</span> <span class="ruby-keyword">then</span> <span class="ruby-value">:long</span>
- <span class="ruby-keyword">when</span> <span class="ruby-constant">String</span> <span class="ruby-keyword">then</span> <span class="ruby-value">:string</span>
- <span class="ruby-keyword">when</span> <span class="ruby-constant">TrueClass</span>, <span class="ruby-constant">FalseClass</span> <span class="ruby-keyword">then</span> <span class="ruby-value">:bool</span>
- <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">then</span> <span class="ruby-keyword">break</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">Numeric</span> <span class="ruby-keyword">then</span> <span class="ruby-value">:long</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">String</span> <span class="ruby-keyword">then</span> <span class="ruby-value">:string</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">TrueClass</span>, <span class="ruby-constant">FalseClass</span> <span class="ruby-keyword">then</span> <span class="ruby-value">:bool</span>
+ <span class="ruby-keyword">end</span>
<span class="ruby-identifier">actual</span> = <span class="ruby-identifier">packet</span>.<span class="ruby-identifier">send</span>(<span class="ruby-node">&quot;read_#{_type}&quot;</span>)
<span class="ruby-keyword">next</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">expected</span>.<span class="ruby-identifier">nil?</span>
diff --git a/Net/SSH/Test/Packet.html b/Net/SSH/Test/Packet.html
index a1cd462..ffc4d3e 100644
--- a/Net/SSH/Test/Packet.html
+++ b/Net/SSH/Test/Packet.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Test::Packet - net-ssh 4.2.0</title>
+<title>class Net::SSH::Test::Packet - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -169,7 +169,7 @@ href="Packet.html#method-i-types">types</a>).</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 34</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 36</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">type</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-ivar">@type</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">const_get</span>(<span class="ruby-identifier">type</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">upcase</span>)
<span class="ruby-ivar">@data</span> = <span class="ruby-identifier">args</span>
@@ -204,10 +204,10 @@ extra parameters</p>
<div class="method-source-code" id="register_channel_request-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 22</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 24</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">register_channel_request</span>(<span class="ruby-identifier">request</span>, <span class="ruby-identifier">extra_parts</span>)
<span class="ruby-ivar">@registered_requests</span> <span class="ruby-operator">||=</span> {}
- <span class="ruby-ivar">@registered_requests</span>[<span class="ruby-identifier">request</span>] = {<span class="ruby-identifier">extra_parts</span><span class="ruby-operator">:</span> <span class="ruby-identifier">extra_parts</span>}
+ <span class="ruby-ivar">@registered_requests</span>[<span class="ruby-identifier">request</span>] = { <span class="ruby-identifier">extra_parts</span><span class="ruby-operator">:</span> <span class="ruby-identifier">extra_parts</span> }
<span class="ruby-keyword">end</span></pre>
</div>
@@ -238,7 +238,7 @@ extra parameters</p>
<div class="method-source-code" id="registered_channel_requests-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 27</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 29</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">registered_channel_requests</span>(<span class="ruby-identifier">request</span>)
<span class="ruby-ivar">@registered_requests</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@registered_requests</span>[<span class="ruby-identifier">request</span>]
<span class="ruby-keyword">end</span></pre>
@@ -276,7 +276,7 @@ extra parameters</p>
<p>Instantiates the packets data elements. When the packet was first defined,
some elements may not have been fully realized, and were described as Proc
objects rather than atomic types. This invokes those Proc objects and
-replaces them with their returned values. This allows for values like <a
+replaces them with their returned values. This allows for values like <a
href="Channel.html#method-i-remote_id">Net::SSH::Test::Channel#remote_id</a>
to be used in scripts before the remote_id is known (since it is only known
after a channel has been confirmed open).</p>
@@ -285,7 +285,7 @@ after a channel has been confirmed open).</p>
<div class="method-source-code" id="instantiate-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 56</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 58</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">instantiate!</span>
<span class="ruby-ivar">@data</span>.<span class="ruby-identifier">map!</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span> <span class="ruby-identifier">i</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:call</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">i</span>.<span class="ruby-identifier">call</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">i</span> }
<span class="ruby-keyword">end</span></pre>
@@ -319,7 +319,7 @@ necessary.</p>
<div class="method-source-code" id="local-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 45</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 47</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">local?</span>
<span class="ruby-keyword">false</span>
<span class="ruby-keyword">end</span></pre>
@@ -353,7 +353,7 @@ as necessary.</p>
<div class="method-source-code" id="remote-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 40</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 42</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">remote?</span>
<span class="ruby-keyword">false</span>
<span class="ruby-keyword">end</span></pre>
@@ -394,33 +394,33 @@ Unsupported packet types will otherwise raise an exception.</p>
<div class="method-source-code" id="types-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 69</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/packet.rb, line 71</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">types</span>
<span class="ruby-ivar">@types</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword">case</span> <span class="ruby-ivar">@type</span>
- <span class="ruby-keyword">when</span> <span class="ruby-constant">KEXINIT</span> <span class="ruby-keyword">then</span>
- [<span class="ruby-value">:long</span>, <span class="ruby-value">:long</span>, <span class="ruby-value">:long</span>, <span class="ruby-value">:long</span>,
- <span class="ruby-value">:string</span>, <span class="ruby-value">:string</span>, <span class="ruby-value">:string</span>, <span class="ruby-value">:string</span>, <span class="ruby-value">:string</span>, <span class="ruby-value">:string</span>, <span class="ruby-value">:string</span>, <span class="ruby-value">:string</span>, <span class="ruby-value">:string</span>, <span class="ruby-value">:string</span>,
- <span class="ruby-value">:bool</span>]
- <span class="ruby-keyword">when</span> <span class="ruby-constant">NEWKEYS</span> <span class="ruby-keyword">then</span> []
- <span class="ruby-keyword">when</span> <span class="ruby-constant">CHANNEL_OPEN</span> <span class="ruby-keyword">then</span> [<span class="ruby-value">:string</span>, <span class="ruby-value">:long</span>, <span class="ruby-value">:long</span>, <span class="ruby-value">:long</span>]
- <span class="ruby-keyword">when</span> <span class="ruby-constant">CHANNEL_OPEN_CONFIRMATION</span> <span class="ruby-keyword">then</span> [<span class="ruby-value">:long</span>, <span class="ruby-value">:long</span>, <span class="ruby-value">:long</span>, <span class="ruby-value">:long</span>]
- <span class="ruby-keyword">when</span> <span class="ruby-constant">CHANNEL_DATA</span> <span class="ruby-keyword">then</span> [<span class="ruby-value">:long</span>, <span class="ruby-value">:string</span>]
- <span class="ruby-keyword">when</span> <span class="ruby-constant">CHANNEL_EXTENDED_DATA</span> <span class="ruby-keyword">then</span> [<span class="ruby-value">:long</span>, <span class="ruby-value">:long</span>, <span class="ruby-value">:string</span>]
- <span class="ruby-keyword">when</span> <span class="ruby-constant">CHANNEL_EOF</span>, <span class="ruby-constant">CHANNEL_CLOSE</span>, <span class="ruby-constant">CHANNEL_SUCCESS</span>, <span class="ruby-constant">CHANNEL_FAILURE</span> <span class="ruby-keyword">then</span> [<span class="ruby-value">:long</span>]
- <span class="ruby-keyword">when</span> <span class="ruby-constant">CHANNEL_REQUEST</span>
- <span class="ruby-identifier">parts</span> = [<span class="ruby-value">:long</span>, <span class="ruby-value">:string</span>, <span class="ruby-value">:bool</span>]
- <span class="ruby-keyword">case</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">1</span>]
- <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;exec&quot;</span>, <span class="ruby-string">&quot;subsystem&quot;</span>,<span class="ruby-string">&quot;shell&quot;</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">parts</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value">:string</span>
- <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;exit-status&quot;</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">parts</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value">:long</span>
- <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;pty-req&quot;</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">parts</span>.<span class="ruby-identifier">concat</span>([<span class="ruby-value">:string</span>, <span class="ruby-value">:long</span>, <span class="ruby-value">:long</span>, <span class="ruby-value">:long</span>, <span class="ruby-value">:long</span>, <span class="ruby-value">:string</span>])
- <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;env&quot;</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">parts</span>.<span class="ruby-identifier">contact</span>([<span class="ruby-value">:string</span>,<span class="ruby-value">:string</span>])
- <span class="ruby-keyword">else</span>
- <span class="ruby-identifier">request</span> = <span class="ruby-constant">Packet</span>.<span class="ruby-identifier">registered_channel_requests</span>(<span class="ruby-ivar">@data</span>[<span class="ruby-value">1</span>])
- <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;don&#39;t know what to do about #{@data[1]} channel request&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">request</span>
- <span class="ruby-identifier">parts</span>.<span class="ruby-identifier">concat</span>(<span class="ruby-identifier">request</span>[<span class="ruby-value">:extra_parts</span>])
- <span class="ruby-keyword">end</span>
- <span class="ruby-keyword">else</span> <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;don&#39;t know how to parse packet type #{@type}&quot;</span>
- <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">KEXINIT</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-operator">%</span>[<span class="ruby-identifier">long</span> <span class="ruby-identifier">long</span> <span class="ruby-identifier">long</span> <span class="ruby-identifier">long</span>
+ <span class="ruby-identifier">string</span> <span class="ruby-identifier">string</span> <span class="ruby-identifier">string</span> <span class="ruby-identifier">string</span> <span class="ruby-identifier">string</span> <span class="ruby-identifier">string</span> <span class="ruby-identifier">string</span> <span class="ruby-identifier">string</span> <span class="ruby-identifier">string</span> <span class="ruby-identifier">string</span>
+ <span class="ruby-identifier">bool</span>]
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">NEWKEYS</span> <span class="ruby-keyword">then</span> []
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">CHANNEL_OPEN</span> <span class="ruby-keyword">then</span> <span class="ruby-operator">%</span>[<span class="ruby-identifier">string</span> <span class="ruby-identifier">long</span> <span class="ruby-identifier">long</span> <span class="ruby-identifier">long</span>]
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">CHANNEL_OPEN_CONFIRMATION</span> <span class="ruby-keyword">then</span> <span class="ruby-operator">%</span>[<span class="ruby-identifier">long</span> <span class="ruby-identifier">long</span> <span class="ruby-identifier">long</span> <span class="ruby-identifier">long</span>]
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">CHANNEL_DATA</span> <span class="ruby-keyword">then</span> <span class="ruby-operator">%</span>[<span class="ruby-identifier">long</span> <span class="ruby-identifier">string</span>]
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">CHANNEL_EXTENDED_DATA</span> <span class="ruby-keyword">then</span> <span class="ruby-operator">%</span>[<span class="ruby-identifier">long</span> <span class="ruby-identifier">long</span> <span class="ruby-identifier">string</span>]
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">CHANNEL_EOF</span>, <span class="ruby-constant">CHANNEL_CLOSE</span>, <span class="ruby-constant">CHANNEL_SUCCESS</span>, <span class="ruby-constant">CHANNEL_FAILURE</span> <span class="ruby-keyword">then</span> [<span class="ruby-value">:long</span>]
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">CHANNEL_REQUEST</span>
+ <span class="ruby-identifier">parts</span> = <span class="ruby-operator">%</span>[<span class="ruby-identifier">long</span> <span class="ruby-identifier">string</span> <span class="ruby-identifier">bool</span>]
+ <span class="ruby-keyword">case</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">1</span>]
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;exec&quot;</span>, <span class="ruby-string">&quot;subsystem&quot;</span>,<span class="ruby-string">&quot;shell&quot;</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">parts</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value">:string</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;exit-status&quot;</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">parts</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value">:long</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;pty-req&quot;</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">parts</span>.<span class="ruby-identifier">concat</span>(<span class="ruby-operator">%</span>[<span class="ruby-identifier">string</span> <span class="ruby-identifier">long</span> <span class="ruby-identifier">long</span> <span class="ruby-identifier">long</span> <span class="ruby-identifier">long</span> <span class="ruby-identifier">string</span>])
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;env&quot;</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">parts</span>.<span class="ruby-identifier">contact</span>(<span class="ruby-operator">%</span>[<span class="ruby-identifier">string</span> <span class="ruby-identifier">string</span>])
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">request</span> = <span class="ruby-constant">Packet</span>.<span class="ruby-identifier">registered_channel_requests</span>(<span class="ruby-ivar">@data</span>[<span class="ruby-value">1</span>])
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;don&#39;t know what to do about #{@data[1]} channel request&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">request</span>
+ <span class="ruby-identifier">parts</span>.<span class="ruby-identifier">concat</span>(<span class="ruby-identifier">request</span>[<span class="ruby-value">:extra_parts</span>])
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">else</span> <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;don&#39;t know how to parse packet type #{@type}&quot;</span>
+ <span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div>
diff --git a/Net/SSH/Test/RemotePacket.html b/Net/SSH/Test/RemotePacket.html
index 8cd5fd4..232d7dc 100644
--- a/Net/SSH/Test/RemotePacket.html
+++ b/Net/SSH/Test/RemotePacket.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Test::RemotePacket - net-ssh 4.2.0</title>
+<title>class Net::SSH::Test::RemotePacket - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -143,7 +143,7 @@ program are wrong.</p>
<div class="method-source-code" id="process-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/remote_packet.rb, line 21</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/remote_packet.rb, line 23</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">packet</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;received packet type #{packet.read_byte} and was not expecting any packet&quot;</span>
<span class="ruby-keyword">end</span></pre>
@@ -176,7 +176,7 @@ program are wrong.</p>
<div class="method-source-code" id="remote-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/remote_packet.rb, line 12</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/remote_packet.rb, line 14</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">remote?</span>
<span class="ruby-keyword">true</span>
<span class="ruby-keyword">end</span></pre>
@@ -212,7 +212,7 @@ the result concatenated onto the input buffer for the packet stream.</p>
<div class="method-source-code" id="to_s-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/remote_packet.rb, line 29</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/remote_packet.rb, line 31</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_s</span>
<span class="ruby-ivar">@to_s</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword">begin</span>
<span class="ruby-identifier">instantiate!</span>
diff --git a/Net/SSH/Test/Script.html b/Net/SSH/Test/Script.html
index 78aecd0..e995e9f 100644
--- a/Net/SSH/Test/Script.html
+++ b/Net/SSH/Test/Script.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Test::Script - net-ssh 4.2.0</title>
+<title>class Net::SSH::Test::Script - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -192,7 +192,7 @@ href="RemotePacket.html">Net::SSH::Test::RemotePacket</a> instances.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/script.rb, line 25</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/script.rb, line 27</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>
<span class="ruby-ivar">@events</span> = []
<span class="ruby-keyword">end</span></pre>
@@ -496,17 +496,15 @@ returned, which can be used to script additional channel operations.</p>
<div class="method-source-code" id="opens_channel-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/script.rb, line 35</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/script.rb, line 37</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">opens_channel</span>(<span class="ruby-identifier">confirm</span>=<span class="ruby-keyword">true</span>)
<span class="ruby-identifier">channel</span> = <span class="ruby-constant">Channel</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>)
<span class="ruby-identifier">channel</span>.<span class="ruby-identifier">remote_id</span> = <span class="ruby-value">5555</span>
-
+
<span class="ruby-identifier">events</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">LocalPacket</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">:channel_open</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">p</span><span class="ruby-operator">|</span> <span class="ruby-identifier">channel</span>.<span class="ruby-identifier">local_id</span> = <span class="ruby-identifier">p</span>[<span class="ruby-value">:remote_id</span>] }
-
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">confirm</span>
- <span class="ruby-identifier">events</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">RemotePacket</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">:channel_open_confirmation</span>, <span class="ruby-identifier">channel</span>.<span class="ruby-identifier">local_id</span>, <span class="ruby-identifier">channel</span>.<span class="ruby-identifier">remote_id</span>, <span class="ruby-value">0x20000</span>, <span class="ruby-value">0x10000</span>)
- <span class="ruby-keyword">end</span>
-
+
+ <span class="ruby-identifier">events</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">RemotePacket</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">:channel_open_confirmation</span>, <span class="ruby-identifier">channel</span>.<span class="ruby-identifier">local_id</span>, <span class="ruby-identifier">channel</span>.<span class="ruby-identifier">remote_id</span>, <span class="ruby-value">0x20000</span>, <span class="ruby-value">0x10000</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">confirm</span>
+
<span class="ruby-identifier">channel</span>
<span class="ruby-keyword">end</span></pre>
</div>
diff --git a/Net/SSH/Test/Socket.html b/Net/SSH/Test/Socket.html
index e9b2538..ddf10c7 100644
--- a/Net/SSH/Test/Socket.html
+++ b/Net/SSH/Test/Socket.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Test::Socket - net-ssh 4.2.0</title>
+<title>class Net::SSH::Test::Socket - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -207,13 +207,13 @@ necessary events to power the initialization of the connection.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/socket.rb, line 22</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/socket.rb, line 24</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>
<span class="ruby-identifier">extend</span>(<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Transport</span><span class="ruby-operator">::</span><span class="ruby-constant">PacketStream</span>)
<span class="ruby-keyword">super</span> <span class="ruby-string">&quot;SSH-2.0-Test\r\n&quot;</span>
-
+
<span class="ruby-ivar">@script</span> = <span class="ruby-constant">Script</span>.<span class="ruby-identifier">new</span>
-
+
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">sends</span>(<span class="ruby-value">:kexinit</span>)
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">gets</span>(<span class="ruby-value">:kexinit</span>, <span class="ruby-value">1</span>, <span class="ruby-value">2</span>, <span class="ruby-value">3</span>, <span class="ruby-value">4</span>, <span class="ruby-string">&quot;test&quot;</span>, <span class="ruby-string">&quot;ssh-rsa&quot;</span>, <span class="ruby-string">&quot;none&quot;</span>, <span class="ruby-string">&quot;none&quot;</span>, <span class="ruby-string">&quot;none&quot;</span>, <span class="ruby-string">&quot;none&quot;</span>, <span class="ruby-string">&quot;none&quot;</span>, <span class="ruby-string">&quot;none&quot;</span>, <span class="ruby-string">&quot;&quot;</span>, <span class="ruby-string">&quot;&quot;</span>, <span class="ruby-keyword">false</span>)
<span class="ruby-identifier">script</span>.<span class="ruby-identifier">sends</span>(<span class="ruby-value">:newkeys</span>)
@@ -257,7 +257,7 @@ socket was instantiated.</p>
<div class="method-source-code" id="getpeername-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/socket.rb, line 49</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/socket.rb, line 51</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">getpeername</span>
<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span>.<span class="ruby-identifier">sockaddr_in</span>(<span class="ruby-identifier">port</span>, <span class="ruby-identifier">host</span>)
<span class="ruby-keyword">end</span></pre>
@@ -291,7 +291,7 @@ socket was instantiated.</p>
<div class="method-source-code" id="open-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/socket.rb, line 42</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/socket.rb, line 44</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">open</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">port</span>, <span class="ruby-identifier">options</span>={})
<span class="ruby-ivar">@host</span>, <span class="ruby-ivar">@port</span> = <span class="ruby-identifier">host</span>, <span class="ruby-identifier">port</span>
<span class="ruby-keyword">self</span>
@@ -325,7 +325,7 @@ socket was instantiated.</p>
<div class="method-source-code" id="readpartial-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/socket.rb, line 58</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/socket.rb, line 60</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">readpartial</span>(<span class="ruby-identifier">n</span>)
<span class="ruby-identifier">recv</span>(<span class="ruby-identifier">n</span>)
<span class="ruby-keyword">end</span></pre>
@@ -358,7 +358,7 @@ socket was instantiated.</p>
<div class="method-source-code" id="recv-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/socket.rb, line 54</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/socket.rb, line 56</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">recv</span>(<span class="ruby-identifier">n</span>)
<span class="ruby-identifier">read</span>(<span class="ruby-identifier">n</span>) <span class="ruby-operator">||</span> <span class="ruby-string">&quot;&quot;</span>
<span class="ruby-keyword">end</span></pre>
@@ -392,7 +392,7 @@ gets written.</p>
<div class="method-source-code" id="write-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/test/socket.rb, line 36</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/test/socket.rb, line 38</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">write</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-comment"># black hole, because we don&#39;t actually care about what gets written</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Timeout.html b/Net/SSH/Timeout.html
index 41c40c4..f5cea28 100644
--- a/Net/SSH/Timeout.html
+++ b/Net/SSH/Timeout.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Timeout - net-ssh 4.2.0</title>
+<title>class Net::SSH::Timeout - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/Transport.html b/Net/SSH/Transport.html
index 44ca54f..9405de6 100644
--- a/Net/SSH/Transport.html
+++ b/Net/SSH/Transport.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Transport - net-ssh 4.2.0</title>
+<title>module Net::SSH::Transport - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/Transport/Algorithms.html b/Net/SSH/Transport/Algorithms.html
index ca0fbd8..cf6ae29 100644
--- a/Net/SSH/Transport/Algorithms.html
+++ b/Net/SSH/Transport/Algorithms.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::Algorithms - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::Algorithms - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -69,11 +69,11 @@
<ul class="link-list">
- <li><a class="include" href="Constants.html">Net::SSH::Transport::Constants</a>
+ <li><a class="include" href="../Loggable.html">Net::SSH::Loggable</a>
- <li><a class="include" href="../Loggable.html">Net::SSH::Loggable</a>
+ <li><a class="include" href="Constants.html">Net::SSH::Transport::Constants</a>
</ul>
@@ -96,6 +96,8 @@
<li ><a href="#method-i-allow-3F">#allow?</a>
+ <li ><a href="#method-i-host_key_format">#host_key_format</a>
+
<li ><a href="#method-i-initialized-3F">#initialized?</a>
<li ><a href="#method-i-pending-3F">#pending?</a>
@@ -145,6 +147,12 @@ internally by the transport layer.</p>
<dt id="ALGORITHMS">ALGORITHMS
+ <dd><p>Define all algorithms, with the deprecated, supported by <a
+href="../../SSH.html">Net::SSH</a>.</p>
+
+
+ <dt id="DEFAULT_ALGORITHMS">DEFAULT_ALGORITHMS
+
<dd><p>Define the default algorithms, in order of preference, supported by <a
href="../../SSH.html">Net::SSH</a>.</p>
@@ -378,10 +386,10 @@ exchange.</p>
<div class="method-source-code" id="allowed_packet-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 104</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 138</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">allowed_packet?</span>(<span class="ruby-identifier">packet</span>)
- ( <span class="ruby-value">1</span><span class="ruby-operator">..</span> <span class="ruby-value">4</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">packet</span>.<span class="ruby-identifier">type</span>) <span class="ruby-operator">||</span>
- ( <span class="ruby-value">6</span><span class="ruby-operator">..</span><span class="ruby-value">19</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">packet</span>.<span class="ruby-identifier">type</span>) <span class="ruby-operator">||</span>
+ (<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">4</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">packet</span>.<span class="ruby-identifier">type</span>) <span class="ruby-operator">||</span>
+ (<span class="ruby-value">6</span><span class="ruby-operator">..</span><span class="ruby-value">19</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">packet</span>.<span class="ruby-identifier">type</span>) <span class="ruby-operator">||</span>
(<span class="ruby-value">21</span><span class="ruby-operator">..</span><span class="ruby-value">49</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">packet</span>.<span class="ruby-identifier">type</span>)
<span class="ruby-keyword">end</span></pre>
</div>
@@ -415,7 +423,7 @@ and the <a href="Algorithms.html#ALGORITHMS">ALGORITHMS</a> constant.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 112</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 146</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">session</span>, <span class="ruby-identifier">options</span>={})
<span class="ruby-ivar">@session</span> = <span class="ruby-identifier">session</span>
<span class="ruby-ivar">@logger</span> = <span class="ruby-identifier">session</span>.<span class="ruby-identifier">logger</span>
@@ -464,7 +472,7 @@ href="Algorithms.html#attribute-i-algorithms">algorithms</a>).</p>
<div class="method-source-code" id="5B-5D-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 155</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 190</span>
<span class="ruby-keyword">def</span> <span class="ruby-operator">[]</span>(<span class="ruby-identifier">key</span>)
<span class="ruby-identifier">algorithms</span>[<span class="ruby-identifier">key</span>]
<span class="ruby-keyword">end</span></pre>
@@ -501,7 +509,7 @@ block until the key exchange completes.</p>
<div class="method-source-code" id="accept_kexinit-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 142</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 177</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">accept_kexinit</span>(<span class="ruby-identifier">packet</span>)
<span class="ruby-identifier">info</span> { <span class="ruby-string">&quot;got KEXINIT from server&quot;</span> }
<span class="ruby-ivar">@server_data</span> = <span class="ruby-identifier">parse_server_algorithm_packet</span>(<span class="ruby-identifier">packet</span>)
@@ -543,7 +551,7 @@ key exchange.</p>
<div class="method-source-code" id="allow-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 171</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 206</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">allow?</span>(<span class="ruby-identifier">packet</span>)
<span class="ruby-operator">!</span><span class="ruby-identifier">pending?</span> <span class="ruby-operator">||</span> <span class="ruby-constant">Algorithms</span>.<span class="ruby-identifier">allowed_packet?</span>(<span class="ruby-identifier">packet</span>)
<span class="ruby-keyword">end</span></pre>
@@ -557,6 +565,44 @@ key exchange.</p>
</div>
+ <div id="method-i-host_key_format" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">host_key_format</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="host_key_format-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 215</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">host_key_format</span>
+ <span class="ruby-keyword">case</span> <span class="ruby-identifier">host_key</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-regexp">/^([a-z0-9-]+)-cert-v\d{2}@openssh.com$/</span>
+ <span class="ruby-constant">Regexp</span>.<span class="ruby-identifier">last_match</span>[<span class="ruby-value">1</span>]
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">host_key</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
<div id="method-i-initialized-3F" class="method-detail ">
<div class="method-heading">
@@ -576,7 +622,7 @@ key exchange.</p>
<div class="method-source-code" id="initialized-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 176</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 211</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialized?</span>
<span class="ruby-ivar">@initialized</span>
<span class="ruby-keyword">end</span></pre>
@@ -613,7 +659,7 @@ this period.</p>
<div class="method-source-code" id="pending-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 164</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 199</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">pending?</span>
<span class="ruby-ivar">@pending</span>
<span class="ruby-keyword">end</span></pre>
@@ -649,7 +695,7 @@ processed.</p>
<div class="method-source-code" id="rekey-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 132</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 167</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">rekey!</span>
<span class="ruby-ivar">@client_packet</span> = <span class="ruby-ivar">@server_packet</span> = <span class="ruby-keyword">nil</span>
<span class="ruby-ivar">@initialized</span> = <span class="ruby-keyword">false</span>
@@ -684,9 +730,10 @@ processed.</p>
<div class="method-source-code" id="start-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 123</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/algorithms.rb, line 157</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">start</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Cannot call start if it&#39;s negotiation started or done&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@pending</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@initialized</span>
+
<span class="ruby-identifier">send_kexinit</span>
<span class="ruby-keyword">end</span></pre>
</div>
diff --git a/Net/SSH/Transport/CTR.html b/Net/SSH/Transport/CTR.html
index 7177ac0..9a84095 100644
--- a/Net/SSH/Transport/CTR.html
+++ b/Net/SSH/Transport/CTR.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Transport::CTR - net-ssh 4.2.0</title>
+<title>module Net::SSH::Transport::CTR - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -144,7 +144,7 @@ Block Ciphers. See RFC4344 for detail.</p>
<div class="method-source-code" id="extended-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 8</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 33</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">extended</span>(<span class="ruby-identifier">orig</span>)
<span class="ruby-identifier">orig</span>.<span class="ruby-identifier">instance_eval</span> {
<span class="ruby-ivar">@remaining</span> = <span class="ruby-string">&quot;&quot;</span>
@@ -152,7 +152,7 @@ Block Ciphers. See RFC4344 for detail.</p>
<span class="ruby-ivar">@counter_len</span> = <span class="ruby-identifier">orig</span>.<span class="ruby-identifier">block_size</span>
<span class="ruby-identifier">orig</span>.<span class="ruby-identifier">encrypt</span>
<span class="ruby-identifier">orig</span>.<span class="ruby-identifier">padding</span> = <span class="ruby-value">0</span>
-
+
<span class="ruby-identifier">singleton_class</span>.<span class="ruby-identifier">send</span>(<span class="ruby-value">:alias_method</span>, <span class="ruby-value">:_update</span>, <span class="ruby-value">:update</span>)
<span class="ruby-identifier">singleton_class</span>.<span class="ruby-identifier">send</span>(<span class="ruby-value">:private</span>, <span class="ruby-value">:_update</span>)
<span class="ruby-identifier">singleton_class</span>.<span class="ruby-identifier">send</span>(<span class="ruby-value">:undef_method</span>, <span class="ruby-value">:update</span>)
@@ -190,30 +190,27 @@ Block Ciphers. See RFC4344 for detail.</p>
<span class="ruby-identifier">encrypted</span> = <span class="ruby-string">&quot;&quot;</span>
- <span class="ruby-keyword">while</span> <span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">bytesize</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-identifier">block_size</span>
- <span class="ruby-identifier">encrypted</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">xor!</span>(<span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">slice!</span>(<span class="ruby-value">0</span>, <span class="ruby-identifier">block_size</span>),
+ <span class="ruby-identifier">offset</span> = <span class="ruby-value">0</span>
+ <span class="ruby-keyword">while</span> (<span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">bytesize</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">offset</span>) <span class="ruby-operator">&gt;=</span> <span class="ruby-identifier">block_size</span>
+ <span class="ruby-identifier">encrypted</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">xor!</span>(<span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">slice</span>(<span class="ruby-identifier">offset</span>, <span class="ruby-identifier">block_size</span>),
<span class="ruby-identifier">_update</span>(<span class="ruby-ivar">@counter</span>))
<span class="ruby-identifier">increment_counter!</span>
+ <span class="ruby-identifier">offset</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">block_size</span>
<span class="ruby-keyword">end</span>
+ <span class="ruby-ivar">@remaining</span> = <span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">slice</span>(<span class="ruby-identifier">offset</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>)
<span class="ruby-identifier">encrypted</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">final</span>
- <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">empty?</span>
- <span class="ruby-identifier">s</span> = <span class="ruby-identifier">xor!</span>(<span class="ruby-ivar">@remaining</span>, <span class="ruby-identifier">_update</span>(<span class="ruby-ivar">@counter</span>))
- <span class="ruby-keyword">else</span>
- <span class="ruby-identifier">s</span> = <span class="ruby-string">&quot;&quot;</span>
- <span class="ruby-keyword">end</span>
-
+ <span class="ruby-identifier">s</span> = <span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">?</span> <span class="ruby-string">&#39;&#39;</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">xor!</span>(<span class="ruby-ivar">@remaining</span>, <span class="ruby-identifier">_update</span>(<span class="ruby-ivar">@counter</span>))
<span class="ruby-ivar">@remaining</span> = <span class="ruby-string">&quot;&quot;</span>
-
<span class="ruby-identifier">s</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">xor!</span>(<span class="ruby-identifier">s1</span>, <span class="ruby-identifier">s2</span>)
<span class="ruby-identifier">s</span> = []
- <span class="ruby-identifier">s1</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;Q*&#39;</span>).<span class="ruby-identifier">zip</span>(<span class="ruby-identifier">s2</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;Q*&#39;</span>)) {<span class="ruby-operator">|</span><span class="ruby-identifier">a</span>,<span class="ruby-identifier">b</span><span class="ruby-operator">|</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">push</span>(<span class="ruby-identifier">a</span><span class="ruby-operator">^</span><span class="ruby-identifier">b</span>) }
+ <span class="ruby-identifier">s1</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;Q*&#39;</span>).<span class="ruby-identifier">zip</span>(<span class="ruby-identifier">s2</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;Q*&#39;</span>)) {<span class="ruby-operator">|</span><span class="ruby-identifier">a</span>,<span class="ruby-identifier">b</span><span class="ruby-operator">|</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">push</span>(<span class="ruby-identifier">a</span> <span class="ruby-operator">^</span> <span class="ruby-identifier">b</span>) }
<span class="ruby-identifier">s</span>.<span class="ruby-identifier">pack</span>(<span class="ruby-string">&#39;Q*&#39;</span>)
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">singleton_class</span>.<span class="ruby-identifier">send</span>(<span class="ruby-value">:private</span>, <span class="ruby-value">:xor!</span>)
@@ -266,7 +263,7 @@ Block Ciphers. See RFC4344 for detail.</p>
<div class="method-source-code" id="decrypt-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 36</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 61</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">decrypt</span>
<span class="ruby-comment"># DO NOTHING (always set to &quot;encrypt&quot;)</span>
<span class="ruby-keyword">end</span></pre>
@@ -299,7 +296,7 @@ Block Ciphers. See RFC4344 for detail.</p>
<div class="method-source-code" id="encrypt-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 32</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 57</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">encrypt</span>
<span class="ruby-comment"># DO NOTHING (always set to &quot;encrypt&quot;)</span>
<span class="ruby-keyword">end</span></pre>
@@ -332,16 +329,10 @@ Block Ciphers. See RFC4344 for detail.</p>
<div class="method-source-code" id="final-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 62</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 90</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">final</span>
- <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">empty?</span>
- <span class="ruby-identifier">s</span> = <span class="ruby-identifier">xor!</span>(<span class="ruby-ivar">@remaining</span>, <span class="ruby-identifier">_update</span>(<span class="ruby-ivar">@counter</span>))
- <span class="ruby-keyword">else</span>
- <span class="ruby-identifier">s</span> = <span class="ruby-string">&quot;&quot;</span>
- <span class="ruby-keyword">end</span>
-
+ <span class="ruby-identifier">s</span> = <span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">?</span> <span class="ruby-string">&#39;&#39;</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">xor!</span>(<span class="ruby-ivar">@remaining</span>, <span class="ruby-identifier">_update</span>(<span class="ruby-ivar">@counter</span>))
<span class="ruby-ivar">@remaining</span> = <span class="ruby-string">&quot;&quot;</span>
-
<span class="ruby-identifier">s</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -373,7 +364,7 @@ Block Ciphers. See RFC4344 for detail.</p>
<div class="method-source-code" id="increment_counter-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 81</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 103</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">increment_counter!</span>
<span class="ruby-identifier">c</span> = <span class="ruby-ivar">@counter_len</span>
<span class="ruby-keyword">while</span> ((<span class="ruby-identifier">c</span> <span class="ruby-operator">-=</span> <span class="ruby-value">1</span>) <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>)
@@ -411,7 +402,7 @@ Block Ciphers. See RFC4344 for detail.</p>
<div class="method-source-code" id="iv-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 20</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 45</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">iv</span>
<span class="ruby-ivar">@counter</span>
<span class="ruby-keyword">end</span></pre>
@@ -444,7 +435,7 @@ Block Ciphers. See RFC4344 for detail.</p>
<div class="method-source-code" id="iv-3D-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 28</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 53</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">iv=</span>(<span class="ruby-identifier">iv_s</span>)
<span class="ruby-ivar">@counter</span> = <span class="ruby-identifier">iv_s</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@counter</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-keyword">end</span></pre>
@@ -477,7 +468,7 @@ Block Ciphers. See RFC4344 for detail.</p>
<div class="method-source-code" id="iv_len-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 24</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 49</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">iv_len</span>
<span class="ruby-identifier">block_size</span>
<span class="ruby-keyword">end</span></pre>
@@ -510,7 +501,7 @@ Block Ciphers. See RFC4344 for detail.</p>
<div class="method-source-code" id="padding-3D-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 40</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 65</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">padding=</span>(<span class="ruby-identifier">pad</span>)
<span class="ruby-comment"># DO NOTHING (always 0)</span>
<span class="ruby-keyword">end</span></pre>
@@ -543,7 +534,7 @@ Block Ciphers. See RFC4344 for detail.</p>
<div class="method-source-code" id="reset-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 44</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 69</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">reset</span>
<span class="ruby-ivar">@remaining</span> = <span class="ruby-string">&quot;&quot;</span>
<span class="ruby-keyword">end</span></pre>
@@ -576,17 +567,20 @@ Block Ciphers. See RFC4344 for detail.</p>
<div class="method-source-code" id="update-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 48</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 73</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">update</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-ivar">@remaining</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">data</span>
<span class="ruby-identifier">encrypted</span> = <span class="ruby-string">&quot;&quot;</span>
- <span class="ruby-keyword">while</span> <span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">bytesize</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-identifier">block_size</span>
- <span class="ruby-identifier">encrypted</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">xor!</span>(<span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">slice!</span>(<span class="ruby-value">0</span>, <span class="ruby-identifier">block_size</span>),
+ <span class="ruby-identifier">offset</span> = <span class="ruby-value">0</span>
+ <span class="ruby-keyword">while</span> (<span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">bytesize</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">offset</span>) <span class="ruby-operator">&gt;=</span> <span class="ruby-identifier">block_size</span>
+ <span class="ruby-identifier">encrypted</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">xor!</span>(<span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">slice</span>(<span class="ruby-identifier">offset</span>, <span class="ruby-identifier">block_size</span>),
<span class="ruby-identifier">_update</span>(<span class="ruby-ivar">@counter</span>))
<span class="ruby-identifier">increment_counter!</span>
+ <span class="ruby-identifier">offset</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">block_size</span>
<span class="ruby-keyword">end</span>
+ <span class="ruby-ivar">@remaining</span> = <span class="ruby-ivar">@remaining</span>.<span class="ruby-identifier">slice</span>(<span class="ruby-identifier">offset</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>)
<span class="ruby-identifier">encrypted</span>
<span class="ruby-keyword">end</span></pre>
@@ -619,10 +613,10 @@ Block Ciphers. See RFC4344 for detail.</p>
<div class="method-source-code" id="xor-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 74</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 96</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">xor!</span>(<span class="ruby-identifier">s1</span>, <span class="ruby-identifier">s2</span>)
<span class="ruby-identifier">s</span> = []
- <span class="ruby-identifier">s1</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;Q*&#39;</span>).<span class="ruby-identifier">zip</span>(<span class="ruby-identifier">s2</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;Q*&#39;</span>)) {<span class="ruby-operator">|</span><span class="ruby-identifier">a</span>,<span class="ruby-identifier">b</span><span class="ruby-operator">|</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">push</span>(<span class="ruby-identifier">a</span><span class="ruby-operator">^</span><span class="ruby-identifier">b</span>) }
+ <span class="ruby-identifier">s1</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;Q*&#39;</span>).<span class="ruby-identifier">zip</span>(<span class="ruby-identifier">s2</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;Q*&#39;</span>)) {<span class="ruby-operator">|</span><span class="ruby-identifier">a</span>,<span class="ruby-identifier">b</span><span class="ruby-operator">|</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">push</span>(<span class="ruby-identifier">a</span> <span class="ruby-operator">^</span> <span class="ruby-identifier">b</span>) }
<span class="ruby-identifier">s</span>.<span class="ruby-identifier">pack</span>(<span class="ruby-string">&#39;Q*&#39;</span>)
<span class="ruby-keyword">end</span></pre>
</div>
diff --git a/Net/SSH/Transport/CipherFactory.html b/Net/SSH/Transport/CipherFactory.html
index dcb56e1..14edd73 100644
--- a/Net/SSH/Transport/CipherFactory.html
+++ b/Net/SSH/Transport/CipherFactory.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::CipherFactory - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::CipherFactory - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -121,14 +121,6 @@ algorithms.</p>
</header>
<dl>
- <dt id="KEY_LEN_OVERRIDE">KEY_LEN_OVERRIDE
-
- <dd><p>Ruby&#39;s <a href="../../../OpenSSL.html">OpenSSL</a> bindings always
-return a key length of 16 for RC4 ciphers resulting in the error:
-OpenSSL::CipherError: key length too short. The following ciphers will
-override this key length.</p>
-
-
<dt id="SSH_TO_OSSL">SSH_TO_OSSL
<dd><p>Maps the <a href="../../SSH.html">SSH</a> name of a cipher to it&#39;s
@@ -171,24 +163,29 @@ encryption or decryption mode, based on the value of the
<div class="method-source-code" id="get-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/cipher_factory.rb, line 57</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/cipher_factory.rb, line 46</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">options</span>={})
<span class="ruby-identifier">ossl_name</span> = <span class="ruby-constant">SSH_TO_OSSL</span>[<span class="ruby-identifier">name</span>] <span class="ruby-keyword">or</span> <span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>, <span class="ruby-node">&quot;unimplemented cipher `#{name}&#39;&quot;</span>
<span class="ruby-keyword">return</span> <span class="ruby-constant">IdentityCipher</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">ossl_name</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;none&quot;</span>
<span class="ruby-identifier">cipher</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Cipher</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">ossl_name</span>)
-
+
<span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:encrypt</span>] <span class="ruby-operator">?</span> <span class="ruby-value">:encrypt</span> <span class="ruby-operator">:</span> <span class="ruby-value">:decrypt</span>)
-
+
<span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">padding</span> = <span class="ruby-value">0</span>
-
- <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">extend</span>(<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Transport</span><span class="ruby-operator">::</span><span class="ruby-constant">CTR</span>) <span class="ruby-keyword">if</span> (<span class="ruby-identifier">name</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/-ctr(@openssh.org)?$/</span>)
- <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">iv</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Transport</span><span class="ruby-operator">::</span><span class="ruby-constant">KeyExpander</span>.<span class="ruby-identifier">expand_key</span>(<span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">iv_len</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:iv</span>], <span class="ruby-identifier">options</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">ossl_name</span> <span class="ruby-operator">!=</span> <span class="ruby-string">&quot;rc4&quot;</span>
-
- <span class="ruby-identifier">key_len</span> = <span class="ruby-constant">KEY_LEN_OVERRIDE</span>[<span class="ruby-identifier">name</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">key_len</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">name</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/-ctr(@openssh.org)?$/</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">ossl_name</span> <span class="ruby-operator">!~</span> <span class="ruby-regexp">/-ctr/</span>
+ <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">extend</span>(<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Transport</span><span class="ruby-operator">::</span><span class="ruby-constant">CTR</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">cipher</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Transport</span><span class="ruby-operator">::</span><span class="ruby-constant">OpenSSLAESCTR</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">cipher</span>)
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">iv</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Transport</span><span class="ruby-operator">::</span><span class="ruby-constant">KeyExpander</span>.<span class="ruby-identifier">expand_key</span>(<span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">iv_len</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:iv</span>], <span class="ruby-identifier">options</span>)
+
+ <span class="ruby-identifier">key_len</span> = <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">key_len</span>
<span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">key_len</span> = <span class="ruby-identifier">key_len</span>
<span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">key</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Transport</span><span class="ruby-operator">::</span><span class="ruby-constant">KeyExpander</span>.<span class="ruby-identifier">expand_key</span>(<span class="ruby-identifier">key_len</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:key</span>], <span class="ruby-identifier">options</span>)
- <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">update</span>(<span class="ruby-string">&quot; &quot;</span> <span class="ruby-operator">*</span> <span class="ruby-value">1536</span>) <span class="ruby-keyword">if</span> (<span class="ruby-identifier">ossl_name</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;rc4&quot;</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">name</span> <span class="ruby-operator">!=</span> <span class="ruby-string">&quot;arcfour&quot;</span>)
-
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">cipher</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -223,7 +220,7 @@ supplied the third return value will be ivlen</p>
<div class="method-source-code" id="get_lengths-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/cipher_factory.rb, line 82</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/cipher_factory.rb, line 76</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">get_lengths</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">options</span> = {})
<span class="ruby-identifier">ossl_name</span> = <span class="ruby-constant">SSH_TO_OSSL</span>[<span class="ruby-identifier">name</span>]
<span class="ruby-keyword">if</span> <span class="ruby-identifier">ossl_name</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">ossl_name</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;none&quot;</span>
@@ -231,10 +228,18 @@ supplied the third return value will be ivlen</p>
<span class="ruby-identifier">result</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value">0</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:iv_len</span>]
<span class="ruby-keyword">else</span>
<span class="ruby-identifier">cipher</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Cipher</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">ossl_name</span>)
- <span class="ruby-identifier">key_len</span> = <span class="ruby-constant">KEY_LEN_OVERRIDE</span>[<span class="ruby-identifier">name</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">key_len</span>
+ <span class="ruby-identifier">key_len</span> = <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">key_len</span>
<span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">key_len</span> = <span class="ruby-identifier">key_len</span>
-
- <span class="ruby-identifier">result</span> = [<span class="ruby-identifier">key_len</span>, <span class="ruby-identifier">ossl_name</span><span class="ruby-operator">==</span><span class="ruby-string">&quot;rc4&quot;</span> <span class="ruby-operator">?</span> <span class="ruby-value">8</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">block_size</span>]
+
+ <span class="ruby-identifier">block_size</span> =
+ <span class="ruby-keyword">case</span> <span class="ruby-identifier">ossl_name</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-regexp">/\-ctr/</span>
+ <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Transport</span><span class="ruby-operator">::</span><span class="ruby-constant">OpenSSLAESCTR</span>.<span class="ruby-identifier">block_size</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">block_size</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">result</span> = [<span class="ruby-identifier">key_len</span>, <span class="ruby-identifier">block_size</span>]
<span class="ruby-identifier">result</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">iv_len</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:iv_len</span>]
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">result</span>
@@ -269,7 +274,7 @@ library supports the given cipher, and false otherwise.</p>
<div class="method-source-code" id="supported-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/cipher_factory.rb, line 46</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/cipher_factory.rb, line 35</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">supported?</span>(<span class="ruby-identifier">name</span>)
<span class="ruby-identifier">ossl_name</span> = <span class="ruby-constant">SSH_TO_OSSL</span>[<span class="ruby-identifier">name</span>] <span class="ruby-keyword">or</span> <span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>, <span class="ruby-node">&quot;unimplemented cipher `#{name}&#39;&quot;</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">ossl_name</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;none&quot;</span>
diff --git a/Net/SSH/Transport/Constants.html b/Net/SSH/Transport/Constants.html
index 19e0be7..90a5b92 100644
--- a/Net/SSH/Transport/Constants.html
+++ b/Net/SSH/Transport/Constants.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Transport::Constants - net-ssh 4.2.0</title>
+<title>module Net::SSH::Transport::Constants - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -101,6 +101,26 @@
<dd>
+ <dt id="KEXDH_GEX_GROUP">KEXDH_GEX_GROUP
+
+ <dd>
+
+
+ <dt id="KEXDH_GEX_INIT">KEXDH_GEX_INIT
+
+ <dd>
+
+
+ <dt id="KEXDH_GEX_REPLY">KEXDH_GEX_REPLY
+
+ <dd>
+
+
+ <dt id="KEXDH_GEX_REQUEST">KEXDH_GEX_REQUEST
+
+ <dd>
+
+
<dt id="KEXDH_INIT">KEXDH_INIT
<dd>
diff --git a/Net/SSH/Transport/HMAC.html b/Net/SSH/Transport/HMAC.html
index 4586d2f..dab4d18 100644
--- a/Net/SSH/Transport/HMAC.html
+++ b/Net/SSH/Transport/HMAC.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Transport::HMAC - net-ssh 4.2.0</title>
+<title>module Net::SSH::Transport::HMAC - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -141,7 +141,7 @@ will be initialized with that key.</p>
<div class="method-source-code" id="get-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac.rb, line 35</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac.rb, line 37</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">key</span>=<span class="ruby-string">&quot;&quot;</span>, <span class="ruby-identifier">parameters</span> = {})
<span class="ruby-identifier">impl</span> = <span class="ruby-constant">MAP</span>[<span class="ruby-identifier">name</span>] <span class="ruby-keyword">or</span> <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;hmac not found: #{name.inspect}&quot;</span>
<span class="ruby-identifier">impl</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Transport</span><span class="ruby-operator">::</span><span class="ruby-constant">KeyExpander</span>.<span class="ruby-identifier">expand_key</span>(<span class="ruby-identifier">impl</span>.<span class="ruby-identifier">key_length</span>, <span class="ruby-identifier">key</span>, <span class="ruby-identifier">parameters</span>))
@@ -176,7 +176,7 @@ href="../../SSH.html">SSH</a> type (<code>name</code>).</p>
<div class="method-source-code" id="key_length-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac.rb, line 41</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac.rb, line 43</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">key_length</span>(<span class="ruby-identifier">name</span>)
<span class="ruby-identifier">impl</span> = <span class="ruby-constant">MAP</span>[<span class="ruby-identifier">name</span>] <span class="ruby-keyword">or</span> <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;hmac not found: #{name.inspect}&quot;</span>
<span class="ruby-identifier">impl</span>.<span class="ruby-identifier">key_length</span>
diff --git a/Net/SSH/Transport/HMAC/Abstract.html b/Net/SSH/Transport/HMAC/Abstract.html
index 29983f6..f52ccab 100644
--- a/Net/SSH/Transport/HMAC/Abstract.html
+++ b/Net/SSH/Transport/HMAC/Abstract.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::HMAC::Abstract - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::HMAC::Abstract - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -73,6 +73,8 @@
<li ><a href="#method-c-digest_class">::digest_class</a>
+ <li ><a href="#method-c-etm">::etm</a>
+
<li ><a href="#method-c-key_length">::key_length</a>
<li ><a href="#method-c-mac_length">::mac_length</a>
@@ -83,6 +85,8 @@
<li ><a href="#method-i-digest_class">#digest_class</a>
+ <li ><a href="#method-i-etm">#etm</a>
+
<li ><a href="#method-i-key-3D">#key=</a>
<li ><a href="#method-i-key_length">#key_length</a>
@@ -166,7 +170,7 @@ algorithm wrappers.</p>
<div class="method-source-code" id="digest_class-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 34</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 48</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">digest_class</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">v</span>)
<span class="ruby-ivar">@digest_class</span> = <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-keyword">defined?</span>(<span class="ruby-ivar">@digest_class</span>)
<span class="ruby-keyword">if</span> <span class="ruby-identifier">v</span>.<span class="ruby-identifier">empty?</span>
@@ -188,6 +192,47 @@ algorithm wrappers.</p>
</div>
+ <div id="method-c-etm" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">etm</span><span
+ class="method-args">(*v)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="etm-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 12</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">etm</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">v</span>)
+ <span class="ruby-ivar">@etm</span> = <span class="ruby-keyword">false</span> <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-keyword">defined?</span>(<span class="ruby-ivar">@etm</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">v</span>.<span class="ruby-identifier">empty?</span>
+ <span class="ruby-ivar">@etm</span> = <span class="ruby-identifier">superclass</span>.<span class="ruby-identifier">etm</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@etm</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">superclass</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:etm</span>)
+ <span class="ruby-keyword">return</span> <span class="ruby-ivar">@etm</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">v</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
+ <span class="ruby-ivar">@etm</span> = <span class="ruby-identifier">v</span>.<span class="ruby-identifier">first</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;wrong number of arguments (#{v.length} for 1)&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
<div id="method-c-key_length" class="method-detail ">
<div class="method-heading">
@@ -207,7 +252,7 @@ algorithm wrappers.</p>
<div class="method-source-code" id="key_length-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 10</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 24</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">key_length</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">v</span>)
<span class="ruby-ivar">@key_length</span> = <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-keyword">defined?</span>(<span class="ruby-ivar">@key_length</span>)
<span class="ruby-keyword">if</span> <span class="ruby-identifier">v</span>.<span class="ruby-identifier">empty?</span>
@@ -248,7 +293,7 @@ algorithm wrappers.</p>
<div class="method-source-code" id="mac_length-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 22</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 36</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">mac_length</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">v</span>)
<span class="ruby-ivar">@mac_length</span> = <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-keyword">defined?</span>(<span class="ruby-ivar">@mac_length</span>)
<span class="ruby-keyword">if</span> <span class="ruby-identifier">v</span>.<span class="ruby-identifier">empty?</span>
@@ -289,7 +334,7 @@ algorithm wrappers.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 62</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 80</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">key</span>=<span class="ruby-keyword">nil</span>)
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">key</span> = <span class="ruby-identifier">key</span>
<span class="ruby-keyword">end</span></pre>
@@ -331,7 +376,7 @@ string.</p>
<div class="method-source-code" id="digest-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 73</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 91</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">digest</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">HMAC</span>.<span class="ruby-identifier">digest</span>(<span class="ruby-identifier">digest_class</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">key</span>, <span class="ruby-identifier">data</span>)[<span class="ruby-value">0</span>,<span class="ruby-identifier">mac_length</span>]
<span class="ruby-keyword">end</span></pre>
@@ -364,7 +409,7 @@ string.</p>
<div class="method-source-code" id="digest_class-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 55</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 73</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">digest_class</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">digest_class</span>
<span class="ruby-keyword">end</span></pre>
@@ -378,6 +423,39 @@ string.</p>
</div>
+ <div id="method-i-etm" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">etm</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="etm-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 61</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">etm</span>
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">etm</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
<div id="method-i-key-3D" class="method-detail ">
<div class="method-heading">
@@ -398,7 +476,7 @@ length.</p>
<div class="method-source-code" id="key-3D-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 68</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 86</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">key=</span>(<span class="ruby-identifier">value</span>)
<span class="ruby-ivar">@key</span> = <span class="ruby-identifier">value</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">to_s</span>[<span class="ruby-value">0</span>,<span class="ruby-identifier">key_length</span>] <span class="ruby-operator">:</span> <span class="ruby-keyword">nil</span>
<span class="ruby-keyword">end</span></pre>
@@ -431,7 +509,7 @@ length.</p>
<div class="method-source-code" id="key_length-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 47</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 65</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">key_length</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">key_length</span>
<span class="ruby-keyword">end</span></pre>
@@ -464,7 +542,7 @@ length.</p>
<div class="method-source-code" id="mac_length-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 51</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/hmac/abstract.rb, line 69</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">mac_length</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">mac_length</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Transport/HMAC/MD5.html b/Net/SSH/Transport/HMAC/MD5.html
index d89d28f..8bd6867 100644
--- a/Net/SSH/Transport/HMAC/MD5.html
+++ b/Net/SSH/Transport/HMAC/MD5.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::HMAC::MD5 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::HMAC::MD5 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
diff --git a/Net/SSH/Transport/HMAC/MD5/OpenSSL.html b/Net/SSH/Transport/HMAC/MD5/OpenSSL.html
index e48cde1..c82214b 100644
--- a/Net/SSH/Transport/HMAC/MD5/OpenSSL.html
+++ b/Net/SSH/Transport/HMAC/MD5/OpenSSL.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Transport::HMAC::MD5::OpenSSL - net-ssh 4.2.0</title>
+<title>module Net::SSH::Transport::HMAC::MD5::OpenSSL - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../../";
diff --git a/Net/SSH/Transport/HMAC/MD5/OpenSSL/Digest.html b/Net/SSH/Transport/HMAC/MD5/OpenSSL/Digest.html
index 6c91c53..9ba992d 100644
--- a/Net/SSH/Transport/HMAC/MD5/OpenSSL/Digest.html
+++ b/Net/SSH/Transport/HMAC/MD5/OpenSSL/Digest.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Transport::HMAC::MD5::OpenSSL::Digest - net-ssh 4.2.0</title>
+<title>module Net::SSH::Transport::HMAC::MD5::OpenSSL::Digest - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../../../";
diff --git a/Net/SSH/Transport/HMAC/MD5_96.html b/Net/SSH/Transport/HMAC/MD5_96.html
index 9789f05..413c9a6 100644
--- a/Net/SSH/Transport/HMAC/MD5_96.html
+++ b/Net/SSH/Transport/HMAC/MD5_96.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::HMAC::MD5_96 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::HMAC::MD5_96 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
diff --git a/Net/SSH/Transport/HMAC/None.html b/Net/SSH/Transport/HMAC/None.html
index b36f4f2..7d2323e 100644
--- a/Net/SSH/Transport/HMAC/None.html
+++ b/Net/SSH/Transport/HMAC/None.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::HMAC::None - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::HMAC::None - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
diff --git a/Net/SSH/Transport/HMAC/RIPEMD160.html b/Net/SSH/Transport/HMAC/RIPEMD160.html
index e5bb5fd..3ef9c71 100644
--- a/Net/SSH/Transport/HMAC/RIPEMD160.html
+++ b/Net/SSH/Transport/HMAC/RIPEMD160.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::HMAC::RIPEMD160 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::HMAC::RIPEMD160 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
diff --git a/Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL.html b/Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL.html
index f223ade..f86068c 100644
--- a/Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL.html
+++ b/Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Transport::HMAC::RIPEMD160::OpenSSL - net-ssh 4.2.0</title>
+<title>module Net::SSH::Transport::HMAC::RIPEMD160::OpenSSL - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../../";
diff --git a/Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL/Digest.html b/Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL/Digest.html
index fdf94d5..2d9586d 100644
--- a/Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL/Digest.html
+++ b/Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL/Digest.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Transport::HMAC::RIPEMD160::OpenSSL::Digest - net-ssh 4.2.0</title>
+<title>module Net::SSH::Transport::HMAC::RIPEMD160::OpenSSL::Digest - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../../../";
diff --git a/Net/SSH/Transport/HMAC/SHA1.html b/Net/SSH/Transport/HMAC/SHA1.html
index a807e5a..6614c20 100644
--- a/Net/SSH/Transport/HMAC/SHA1.html
+++ b/Net/SSH/Transport/HMAC/SHA1.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::HMAC::SHA1 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::HMAC::SHA1 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
diff --git a/Net/SSH/Transport/HMAC/SHA1/OpenSSL.html b/Net/SSH/Transport/HMAC/SHA1/OpenSSL.html
index ccd6979..16cea1f 100644
--- a/Net/SSH/Transport/HMAC/SHA1/OpenSSL.html
+++ b/Net/SSH/Transport/HMAC/SHA1/OpenSSL.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Transport::HMAC::SHA1::OpenSSL - net-ssh 4.2.0</title>
+<title>module Net::SSH::Transport::HMAC::SHA1::OpenSSL - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../../";
diff --git a/Net/SSH/Transport/HMAC/SHA1/OpenSSL/Digest.html b/Net/SSH/Transport/HMAC/SHA1/OpenSSL/Digest.html
index 88713a9..48963a4 100644
--- a/Net/SSH/Transport/HMAC/SHA1/OpenSSL/Digest.html
+++ b/Net/SSH/Transport/HMAC/SHA1/OpenSSL/Digest.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Transport::HMAC::SHA1::OpenSSL::Digest - net-ssh 4.2.0</title>
+<title>module Net::SSH::Transport::HMAC::SHA1::OpenSSL::Digest - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../../../";
diff --git a/Net/SSH/Transport/HMAC/SHA1_96.html b/Net/SSH/Transport/HMAC/SHA1_96.html
index ed77503..d5ba6aa 100644
--- a/Net/SSH/Transport/HMAC/SHA1_96.html
+++ b/Net/SSH/Transport/HMAC/SHA1_96.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::HMAC::SHA1_96 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::HMAC::SHA1_96 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
diff --git a/Net/SSH/Transport/HMAC/SHA2_256.html b/Net/SSH/Transport/HMAC/SHA2_256.html
index 9bf361b..da2905a 100644
--- a/Net/SSH/Transport/HMAC/SHA2_256.html
+++ b/Net/SSH/Transport/HMAC/SHA2_256.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::HMAC::SHA2_256 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::HMAC::SHA2_256 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
diff --git a/Net/SSH/Transport/HMAC/SHA2_256/OpenSSL.html b/Net/SSH/Transport/HMAC/SHA2_256/OpenSSL.html
new file mode 100644
index 0000000..44d54cb
--- /dev/null
+++ b/Net/SSH/Transport/HMAC/SHA2_256/OpenSSL.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>module Net::SSH::Transport::HMAC::SHA2_256::OpenSSL - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../../";
+ var index_rel_prefix = "../../../../../";
+</script>
+
+<script src="../../../../../js/jquery.js"></script>
+<script src="../../../../../js/darkfish.js"></script>
+
+<link href="../../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="module">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+
+
+
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="module-Net::SSH::Transport::HMAC::SHA2_256::OpenSSL">
+ <h1 id="module-Net::SSH::Transport::HMAC::SHA2_256::OpenSSL" class="module">
+ module Net::SSH::Transport::HMAC::SHA2_256::OpenSSL
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/HMAC/SHA2_256/OpenSSL/Digest.html b/Net/SSH/Transport/HMAC/SHA2_256/OpenSSL/Digest.html
new file mode 100644
index 0000000..1406781
--- /dev/null
+++ b/Net/SSH/Transport/HMAC/SHA2_256/OpenSSL/Digest.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>module Net::SSH::Transport::HMAC::SHA2_256::OpenSSL::Digest - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../../../";
+ var index_rel_prefix = "../../../../../../";
+</script>
+
+<script src="../../../../../../js/jquery.js"></script>
+<script src="../../../../../../js/darkfish.js"></script>
+
+<link href="../../../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="module">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+
+
+
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="module-Net::SSH::Transport::HMAC::SHA2_256::OpenSSL::Digest">
+ <h1 id="module-Net::SSH::Transport::HMAC::SHA2_256::OpenSSL::Digest" class="module">
+ module Net::SSH::Transport::HMAC::SHA2_256::OpenSSL::Digest
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/HMAC/SHA2_256_96.html b/Net/SSH/Transport/HMAC/SHA2_256_96.html
index bc5a32b..65da258 100644
--- a/Net/SSH/Transport/HMAC/SHA2_256_96.html
+++ b/Net/SSH/Transport/HMAC/SHA2_256_96.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::HMAC::SHA2_256_96 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::HMAC::SHA2_256_96 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
diff --git a/Net/SSH/Transport/HMAC/SHA2_256_Etm.html b/Net/SSH/Transport/HMAC/SHA2_256_Etm.html
new file mode 100644
index 0000000..09d3a07
--- /dev/null
+++ b/Net/SSH/Transport/HMAC/SHA2_256_Etm.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::Transport::HMAC::SHA2_256_Etm - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../";
+ var index_rel_prefix = "../../../../";
+</script>
+
+<script src="../../../../js/jquery.js"></script>
+<script src="../../../../js/darkfish.js"></script>
+
+<link href="../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link"><a href="Abstract.html">Net::SSH::Transport::HMAC::Abstract</a>
+
+</div>
+
+
+
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-Net::SSH::Transport::HMAC::SHA2_256_Etm">
+ <h1 id="class-Net::SSH::Transport::HMAC::SHA2_256_Etm" class="class">
+ class Net::SSH::Transport::HMAC::SHA2_256_Etm
+ </h1>
+
+ <section class="description">
+
+<p>The SHA-256 Encrypt-Then-Mac <a href="../HMAC.html">HMAC</a> algorithm.
+This has a mac and key length of 32, and uses the SHA-256 digest algorithm.</p>
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL.html b/Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL.html
new file mode 100644
index 0000000..d0b230a
--- /dev/null
+++ b/Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>module Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../../";
+ var index_rel_prefix = "../../../../../";
+</script>
+
+<script src="../../../../../js/jquery.js"></script>
+<script src="../../../../../js/darkfish.js"></script>
+
+<link href="../../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="module">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+
+
+
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="module-Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL">
+ <h1 id="module-Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL" class="module">
+ module Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL/Digest.html b/Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL/Digest.html
new file mode 100644
index 0000000..da55e38
--- /dev/null
+++ b/Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL/Digest.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>module Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL::Digest - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../../../";
+ var index_rel_prefix = "../../../../../../";
+</script>
+
+<script src="../../../../../../js/jquery.js"></script>
+<script src="../../../../../../js/darkfish.js"></script>
+
+<link href="../../../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="module">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+
+
+
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="module-Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL::Digest">
+ <h1 id="module-Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL::Digest" class="module">
+ module Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL::Digest
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/HMAC/SHA2_512.html b/Net/SSH/Transport/HMAC/SHA2_512.html
index b3f42f9..cd15bfe 100644
--- a/Net/SSH/Transport/HMAC/SHA2_512.html
+++ b/Net/SSH/Transport/HMAC/SHA2_512.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::HMAC::SHA2_512 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::HMAC::SHA2_512 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
diff --git a/Net/SSH/Transport/HMAC/SHA2_512/OpenSSL.html b/Net/SSH/Transport/HMAC/SHA2_512/OpenSSL.html
new file mode 100644
index 0000000..81ad52f
--- /dev/null
+++ b/Net/SSH/Transport/HMAC/SHA2_512/OpenSSL.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>module Net::SSH::Transport::HMAC::SHA2_512::OpenSSL - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../../";
+ var index_rel_prefix = "../../../../../";
+</script>
+
+<script src="../../../../../js/jquery.js"></script>
+<script src="../../../../../js/darkfish.js"></script>
+
+<link href="../../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="module">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+
+
+
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="module-Net::SSH::Transport::HMAC::SHA2_512::OpenSSL">
+ <h1 id="module-Net::SSH::Transport::HMAC::SHA2_512::OpenSSL" class="module">
+ module Net::SSH::Transport::HMAC::SHA2_512::OpenSSL
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/HMAC/SHA2_512/OpenSSL/Digest.html b/Net/SSH/Transport/HMAC/SHA2_512/OpenSSL/Digest.html
new file mode 100644
index 0000000..ff2679c
--- /dev/null
+++ b/Net/SSH/Transport/HMAC/SHA2_512/OpenSSL/Digest.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>module Net::SSH::Transport::HMAC::SHA2_512::OpenSSL::Digest - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../../../";
+ var index_rel_prefix = "../../../../../../";
+</script>
+
+<script src="../../../../../../js/jquery.js"></script>
+<script src="../../../../../../js/darkfish.js"></script>
+
+<link href="../../../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="module">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+
+
+
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="module-Net::SSH::Transport::HMAC::SHA2_512::OpenSSL::Digest">
+ <h1 id="module-Net::SSH::Transport::HMAC::SHA2_512::OpenSSL::Digest" class="module">
+ module Net::SSH::Transport::HMAC::SHA2_512::OpenSSL::Digest
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/HMAC/SHA2_512_96.html b/Net/SSH/Transport/HMAC/SHA2_512_96.html
index 9214b87..464f152 100644
--- a/Net/SSH/Transport/HMAC/SHA2_512_96.html
+++ b/Net/SSH/Transport/HMAC/SHA2_512_96.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::HMAC::SHA2_512_96 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::HMAC::SHA2_512_96 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
diff --git a/Net/SSH/Transport/HMAC/SHA2_512_Etm.html b/Net/SSH/Transport/HMAC/SHA2_512_Etm.html
new file mode 100644
index 0000000..c13fe4b
--- /dev/null
+++ b/Net/SSH/Transport/HMAC/SHA2_512_Etm.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::Transport::HMAC::SHA2_512_Etm - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../";
+ var index_rel_prefix = "../../../../";
+</script>
+
+<script src="../../../../js/jquery.js"></script>
+<script src="../../../../js/darkfish.js"></script>
+
+<link href="../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link"><a href="Abstract.html">Net::SSH::Transport::HMAC::Abstract</a>
+
+</div>
+
+
+
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-Net::SSH::Transport::HMAC::SHA2_512_Etm">
+ <h1 id="class-Net::SSH::Transport::HMAC::SHA2_512_Etm" class="class">
+ class Net::SSH::Transport::HMAC::SHA2_512_Etm
+ </h1>
+
+ <section class="description">
+
+<p>The SHA-512 Encrypt-Then-Mac <a href="../HMAC.html">HMAC</a> algorithm.
+This has a mac and key length of 64, and uses the SHA-512 digest algorithm.</p>
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL.html b/Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL.html
new file mode 100644
index 0000000..f08608b
--- /dev/null
+++ b/Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>module Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../../";
+ var index_rel_prefix = "../../../../../";
+</script>
+
+<script src="../../../../../js/jquery.js"></script>
+<script src="../../../../../js/darkfish.js"></script>
+
+<link href="../../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="module">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+
+
+
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="module-Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL">
+ <h1 id="module-Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL" class="module">
+ module Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL/Digest.html b/Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL/Digest.html
new file mode 100644
index 0000000..2723af5
--- /dev/null
+++ b/Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL/Digest.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>module Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL::Digest - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../../../";
+ var index_rel_prefix = "../../../../../../";
+</script>
+
+<script src="../../../../../../js/jquery.js"></script>
+<script src="../../../../../../js/darkfish.js"></script>
+
+<link href="../../../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="module">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+
+
+
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="module-Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL::Digest">
+ <h1 id="module-Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL::Digest" class="module">
+ module Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL::Digest
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/IdentityCipher.html b/Net/SSH/Transport/IdentityCipher.html
index 33fccf5..9006110 100644
--- a/Net/SSH/Transport/IdentityCipher.html
+++ b/Net/SSH/Transport/IdentityCipher.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::IdentityCipher - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::IdentityCipher - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -146,7 +146,7 @@ things in the code nice and clean when a cipher has not yet been determined
<div class="method-source-code" id="block_size-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 9</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 11</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">block_size</span>
<span class="ruby-value">8</span>
<span class="ruby-keyword">end</span></pre>
@@ -179,7 +179,7 @@ things in the code nice and clean when a cipher has not yet been determined
<div class="method-source-code" id="decrypt-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 24</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 26</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">decrypt</span>
<span class="ruby-keyword">self</span>
<span class="ruby-keyword">end</span></pre>
@@ -212,7 +212,7 @@ things in the code nice and clean when a cipher has not yet been determined
<div class="method-source-code" id="encrypt-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 19</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 21</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">encrypt</span>
<span class="ruby-keyword">self</span>
<span class="ruby-keyword">end</span></pre>
@@ -245,7 +245,7 @@ things in the code nice and clean when a cipher has not yet been determined
<div class="method-source-code" id="final-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 34</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 36</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">final</span>
<span class="ruby-string">&quot;&quot;</span>
<span class="ruby-keyword">end</span></pre>
@@ -278,7 +278,7 @@ things in the code nice and clean when a cipher has not yet been determined
<div class="method-source-code" id="iv-3D-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 44</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 46</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">iv=</span>(<span class="ruby-identifier">v</span>)
<span class="ruby-keyword">nil</span>
<span class="ruby-keyword">end</span></pre>
@@ -311,7 +311,7 @@ things in the code nice and clean when a cipher has not yet been determined
<div class="method-source-code" id="iv_len-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 14</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 16</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">iv_len</span>
<span class="ruby-value">4</span>
<span class="ruby-keyword">end</span></pre>
@@ -344,7 +344,7 @@ things in the code nice and clean when a cipher has not yet been determined
<div class="method-source-code" id="name-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 39</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 41</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">name</span>
<span class="ruby-string">&quot;identity&quot;</span>
<span class="ruby-keyword">end</span></pre>
@@ -377,7 +377,7 @@ things in the code nice and clean when a cipher has not yet been determined
<div class="method-source-code" id="reset-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 49</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 51</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">reset</span>
<span class="ruby-keyword">self</span>
<span class="ruby-keyword">end</span></pre>
@@ -410,7 +410,7 @@ things in the code nice and clean when a cipher has not yet been determined
<div class="method-source-code" id="update-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 29</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/identity_cipher.rb, line 31</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">update</span>(<span class="ruby-identifier">text</span>)
<span class="ruby-identifier">text</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Transport/Kex.html b/Net/SSH/Transport/Kex.html
index 4bcb98c..7a0394f 100644
--- a/Net/SSH/Transport/Kex.html
+++ b/Net/SSH/Transport/Kex.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Transport::Kex - net-ssh 4.2.0</title>
+<title>module Net::SSH::Transport::Kex - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
diff --git a/Net/SSH/Transport/Kex/Abstract.html b/Net/SSH/Transport/Kex/Abstract.html
new file mode 100644
index 0000000..0c42a5e
--- /dev/null
+++ b/Net/SSH/Transport/Kex/Abstract.html
@@ -0,0 +1,342 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::Transport::Kex::Abstract - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../";
+ var index_rel_prefix = "../../../../";
+</script>
+
+<script src="../../../../js/jquery.js"></script>
+<script src="../../../../js/darkfish.js"></script>
+
+<link href="../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link">Object
+
+</div>
+
+ <div id="includes-section" class="nav-section">
+ <h3>Included Modules</h3>
+
+ <ul class="link-list">
+
+
+ <li><a class="include" href="../../Loggable.html">Net::SSH::Loggable</a>
+
+
+
+ <li><a class="include" href="../Constants.html">Net::SSH::Transport::Constants</a>
+
+
+ </ul>
+</div>
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-c-new">::new</a>
+
+ <li ><a href="#method-i-digester">#digester</a>
+
+ <li ><a href="#method-i-exchange_keys">#exchange_keys</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-Net::SSH::Transport::Kex::Abstract">
+ <h1 id="class-Net::SSH::Transport::Kex::Abstract" class="class">
+ class Net::SSH::Transport::Kex::Abstract
+ </h1>
+
+ <section class="description">
+
+<p><a href="Abstract.html">Abstract</a> class that implement Diffie-Hellman
+Key Exchange See <a
+href="https://tools.ietf.org/html/rfc4253#page-21">tools.ietf.org/html/rfc4253#page-21</a></p>
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+ <section class="attribute-method-details" class="method-section">
+ <header>
+ <h3>Attributes</h3>
+ </header>
+
+
+ <div id="attribute-i-algorithms" class="method-detail">
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">algorithms</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="attribute-i-connection" class="method-detail">
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">connection</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="attribute-i-data" class="method-detail">
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">data</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="attribute-i-dh" class="method-detail">
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">dh</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ </section>
+
+
+
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Class Methods</h3>
+ </header>
+
+
+ <div id="method-c-new" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">(algorithms, connection, data)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Create a new instance of the Diffie-Hellman Key Exchange algorithm. The
+Diffie-Hellman (DH) key exchange provides a shared secret that cannot be
+determined by either party alone. The key exchange is combined with a
+signature with the host key to provide host authentication.</p>
+
+
+
+
+ <div class="method-source-code" id="new-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/abstract.rb, line 27</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">algorithms</span>, <span class="ruby-identifier">connection</span>, <span class="ruby-identifier">data</span>)
+ <span class="ruby-ivar">@algorithms</span> = <span class="ruby-identifier">algorithms</span>
+ <span class="ruby-ivar">@connection</span> = <span class="ruby-identifier">connection</span>
+
+ <span class="ruby-ivar">@data</span> = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">dup</span>
+ <span class="ruby-ivar">@dh</span> = <span class="ruby-identifier">generate_key</span>
+ <span class="ruby-ivar">@logger</span> = <span class="ruby-ivar">@data</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:logger</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Instance Methods</h3>
+ </header>
+
+
+ <div id="method-i-digester" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">digester</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="digester-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/abstract.rb, line 61</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">digester</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>, <span class="ruby-string">&#39;abstract class: digester not implemented&#39;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-i-exchange_keys" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">exchange_keys</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Perform the key-exchange for the given session, with the given data. This
+method will return a hash consisting of the following keys:</p>
+<ul><li>
+<p>:session_id</p>
+</li><li>
+<p>:server_key</p>
+</li><li>
+<p>:shared_secret</p>
+</li><li>
+<p>:hashing_algorithm</p>
+</li></ul>
+
+<p>The caller is expected to be able to understand how to use these
+deliverables.</p>
+
+
+
+
+ <div class="method-source-code" id="exchange_keys-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/abstract.rb, line 47</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">exchange_keys</span>
+ <span class="ruby-identifier">result</span> = <span class="ruby-identifier">send_kexinit</span>
+ <span class="ruby-identifier">verify_server_key</span>(<span class="ruby-identifier">result</span>[<span class="ruby-value">:server_key</span>])
+ <span class="ruby-identifier">session_id</span> = <span class="ruby-identifier">verify_signature</span>(<span class="ruby-identifier">result</span>)
+ <span class="ruby-identifier">confirm_newkeys</span>
+
+ {
+ <span class="ruby-identifier">session_id</span><span class="ruby-operator">:</span> <span class="ruby-identifier">session_id</span>,
+ <span class="ruby-identifier">server_key</span><span class="ruby-operator">:</span> <span class="ruby-identifier">result</span>[<span class="ruby-value">:server_key</span>],
+ <span class="ruby-identifier">shared_secret</span><span class="ruby-operator">:</span> <span class="ruby-identifier">result</span>[<span class="ruby-value">:shared_secret</span>],
+ <span class="ruby-identifier">hashing_algorithm</span><span class="ruby-operator">:</span> <span class="ruby-identifier">digester</span>
+ }
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/Kex/Abstract5656.html b/Net/SSH/Transport/Kex/Abstract5656.html
new file mode 100644
index 0000000..7dc8d23
--- /dev/null
+++ b/Net/SSH/Transport/Kex/Abstract5656.html
@@ -0,0 +1,158 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::Transport::Kex::Abstract5656 - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../";
+ var index_rel_prefix = "../../../../";
+</script>
+
+<script src="../../../../js/jquery.js"></script>
+<script src="../../../../js/darkfish.js"></script>
+
+<link href="../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link"><a href="Abstract.html">Net::SSH::Transport::Kex::Abstract</a>
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-i-curve_name">#curve_name</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-Net::SSH::Transport::Kex::Abstract5656">
+ <h1 id="class-Net::SSH::Transport::Kex::Abstract5656" class="class">
+ class Net::SSH::Transport::Kex::Abstract5656
+ </h1>
+
+ <section class="description">
+
+<p>Implement key-exchange algorithm from Elliptic Curve Algorithm Integration
+in the Secure Shell <a href="../../Transport.html">Transport</a> Layer (RFC
+5656)</p>
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Instance Methods</h3>
+ </header>
+
+
+ <div id="method-i-curve_name" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">curve_name</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="curve_name-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/abstract5656.rb, line 12</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">curve_name</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>, <span class="ruby-string">&#39;abstract class: curve_name not implemented&#39;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/Kex/Curve25519Sha256.html b/Net/SSH/Transport/Kex/Curve25519Sha256.html
new file mode 100644
index 0000000..b228aa8
--- /dev/null
+++ b/Net/SSH/Transport/Kex/Curve25519Sha256.html
@@ -0,0 +1,158 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::Transport::Kex::Curve25519Sha256 - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../";
+ var index_rel_prefix = "../../../../";
+</script>
+
+<script src="../../../../js/jquery.js"></script>
+<script src="../../../../js/darkfish.js"></script>
+
+<link href="../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link"><a href="Abstract5656.html">Net::SSH::Transport::Kex::Abstract5656</a>
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-i-digester">#digester</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-Net::SSH::Transport::Kex::Curve25519Sha256">
+ <h1 id="class-Net::SSH::Transport::Kex::Curve25519Sha256" class="class">
+ class Net::SSH::Transport::Kex::Curve25519Sha256
+ </h1>
+
+ <section class="description">
+
+<p>A key-exchange service implementing the “curve25519-sha256@libssh.org”
+key-exchange algorithm. (defined in <a
+href="https://tools.ietf.org/html/draft-ietf-curdle-ssh-curves-06">tools.ietf.org/html/draft-ietf-curdle-ssh-curves-06</a>)</p>
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Instance Methods</h3>
+ </header>
+
+
+ <div id="method-i-digester" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">digester</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="digester-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/curve25519_sha256.rb, line 14</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">digester</span>
+ <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA256</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/Kex/Curve25519Sha256Loader.html b/Net/SSH/Transport/Kex/Curve25519Sha256Loader.html
new file mode 100644
index 0000000..57bc01f
--- /dev/null
+++ b/Net/SSH/Transport/Kex/Curve25519Sha256Loader.html
@@ -0,0 +1,207 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>module Net::SSH::Transport::Kex::Curve25519Sha256Loader - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../";
+ var index_rel_prefix = "../../../../";
+</script>
+
+<script src="../../../../js/jquery.js"></script>
+<script src="../../../../js/darkfish.js"></script>
+
+<link href="../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="module">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-c-dependenciesRequiredForX25519">::dependenciesRequiredForX25519</a>
+
+ <li ><a href="#method-c-raiseUnlessLoaded">::raiseUnlessLoaded</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="module-Net::SSH::Transport::Kex::Curve25519Sha256Loader">
+ <h1 id="module-Net::SSH::Transport::Kex::Curve25519Sha256Loader" class="module">
+ module Net::SSH::Transport::Kex::Curve25519Sha256Loader
+ </h1>
+
+ <section class="description">
+
+<p>Loads <a href="Curve25519Sha256.html">Curve25519Sha256</a> support which
+requires optinal dependencies</p>
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+ <section class="constants-list">
+ <header>
+ <h3>Constants</h3>
+ </header>
+ <dl>
+
+ <dt id="ERROR">ERROR
+
+ <dd>
+
+
+ <dt id="LOADED">LOADED
+
+ <dd>
+
+
+ </dl>
+ </section>
+
+
+
+
+
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Class Methods</h3>
+ </header>
+
+
+ <div id="method-c-dependenciesRequiredForX25519" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">dependenciesRequiredForX25519</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="dependenciesRequiredForX25519-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/curve25519_sha256_loader.rb, line 22</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">dependenciesRequiredForX25519</span>
+ <span class="ruby-identifier">result</span> = <span class="ruby-string">&quot;net-ssh requires the following gems for x25519 support:\n&quot;</span>
+ <span class="ruby-identifier">result</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot; * x25519\n&quot;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-c-raiseUnlessLoaded" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">raiseUnlessLoaded</span><span
+ class="method-args">(message)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="raiseUnlessLoaded-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/curve25519_sha256_loader.rb, line 16</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">raiseUnlessLoaded</span>(<span class="ruby-identifier">message</span>)
+ <span class="ruby-identifier">description</span> = <span class="ruby-constant">ERROR</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">LoadError</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">dependenciesRequiredForX25519</span> <span class="ruby-operator">:</span> <span class="ruby-string">&#39;&#39;</span>
+ <span class="ruby-identifier">description</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;#{ERROR.class} : \&quot;#{ERROR.message}\&quot;\n&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-constant">ERROR</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>, <span class="ruby-node">&quot;#{message}\n#{description}&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-constant">LOADED</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/Kex/DiffieHellmanGroup14SHA1.html b/Net/SSH/Transport/Kex/DiffieHellmanGroup14SHA1.html
index 02053ae..7c021b4 100644
--- a/Net/SSH/Transport/Kex/DiffieHellmanGroup14SHA1.html
+++ b/Net/SSH/Transport/Kex/DiffieHellmanGroup14SHA1.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::Kex::DiffieHellmanGroup14SHA1 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::Kex::DiffieHellmanGroup14SHA1 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -63,22 +63,7 @@
</div>
- <div id="includes-section" class="nav-section">
- <h3>Included Modules</h3>
-
- <ul class="link-list">
-
-
- <li><a class="include" href="../Constants.html">Net::SSH::Transport::Constants</a>
-
-
-
- <li><a class="include" href="../../Loggable.html">Net::SSH::Loggable</a>
-
-
- </ul>
-</div>
-
+
</div>
diff --git a/Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html b/Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html
index b22332e..04e4f36 100644
--- a/Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html
+++ b/Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::Kex::DiffieHellmanGroup1SHA1 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::Kex::DiffieHellmanGroup1SHA1 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -59,26 +59,11 @@
<h3>Parent</h3>
- <p class="link">Object
+ <p class="link"><a href="Abstract.html">Net::SSH::Transport::Kex::Abstract</a>
</div>
- <div id="includes-section" class="nav-section">
- <h3>Included Modules</h3>
-
- <ul class="link-list">
-
-
- <li><a class="include" href="../Constants.html">Net::SSH::Transport::Constants</a>
-
-
-
- <li><a class="include" href="../../Loggable.html">Net::SSH::Loggable</a>
-
-
- </ul>
-</div>
-
+
<!-- Method Quickref -->
<div id="method-list-section" class="nav-section">
@@ -86,9 +71,7 @@
<ul class="link-list" role="directory">
- <li ><a href="#method-c-new">::new</a>
-
- <li ><a href="#method-i-exchange_keys">#exchange_keys</a>
+ <li ><a href="#method-i-digester">#digester</a>
</ul>
</div>
@@ -144,170 +127,18 @@ represents the value of P</p>
- <section class="attribute-method-details" class="method-section">
- <header>
- <h3>Attributes</h3>
- </header>
-
-
- <div id="attribute-i-algorithms" class="method-detail">
- <div class="method-heading attribute-method-heading">
- <span class="method-name">algorithms</span><span
- class="attribute-access-type">[R]</span>
- </div>
-
- <div class="method-description">
-
-
-
- </div>
- </div>
-
- <div id="attribute-i-connection" class="method-detail">
- <div class="method-heading attribute-method-heading">
- <span class="method-name">connection</span><span
- class="attribute-access-type">[R]</span>
- </div>
-
- <div class="method-description">
-
-
-
- </div>
- </div>
-
- <div id="attribute-i-data" class="method-detail">
- <div class="method-heading attribute-method-heading">
- <span class="method-name">data</span><span
- class="attribute-access-type">[R]</span>
- </div>
-
- <div class="method-description">
-
-
-
- </div>
- </div>
-
- <div id="attribute-i-dh" class="method-detail">
- <div class="method-heading attribute-method-heading">
- <span class="method-name">dh</span><span
- class="attribute-access-type">[R]</span>
- </div>
-
- <div class="method-description">
-
-
-
- </div>
- </div>
-
- <div id="attribute-i-digester" class="method-detail">
- <div class="method-heading attribute-method-heading">
- <span class="method-name">digester</span><span
- class="attribute-access-type">[R]</span>
- </div>
-
- <div class="method-description">
-
-
-
- </div>
- </div>
-
- <div id="attribute-i-g" class="method-detail">
- <div class="method-heading attribute-method-heading">
- <span class="method-name">g</span><span
- class="attribute-access-type">[R]</span>
- </div>
-
- <div class="method-description">
-
-
-
- </div>
- </div>
-
- <div id="attribute-i-p" class="method-detail">
- <div class="method-heading attribute-method-heading">
- <span class="method-name">p</span><span
- class="attribute-access-type">[R]</span>
- </div>
-
- <div class="method-description">
-
-
-
- </div>
- </div>
-
- </section>
-
-
-
- <section id="public-class-5Buntitled-5D-method-details" class="method-section">
- <header>
- <h3>Public Class Methods</h3>
- </header>
-
-
- <div id="method-c-new" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">new</span><span
- class="method-args">(algorithms, connection, data)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
-
- <div class="method-description">
-
- <p>Create a new instance of the <a
-href="DiffieHellmanGroup1SHA1.html">DiffieHellmanGroup1SHA1</a> algorithm.
-The data is a Hash of symbols representing information required by this
-algorithm, which was acquired during earlier processing.</p>
-
-
-
-
- <div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb, line 42</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">algorithms</span>, <span class="ruby-identifier">connection</span>, <span class="ruby-identifier">data</span>)
- <span class="ruby-ivar">@p</span> = <span class="ruby-identifier">get_p</span>
- <span class="ruby-ivar">@g</span> = <span class="ruby-identifier">get_g</span>
-
- <span class="ruby-ivar">@digester</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA1</span>
- <span class="ruby-ivar">@algorithms</span> = <span class="ruby-identifier">algorithms</span>
- <span class="ruby-ivar">@connection</span> = <span class="ruby-identifier">connection</span>
-
- <span class="ruby-ivar">@data</span> = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">dup</span>
- <span class="ruby-ivar">@dh</span> = <span class="ruby-identifier">generate_key</span>
- <span class="ruby-ivar">@logger</span> = <span class="ruby-ivar">@data</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:logger</span>)
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
-
-
-
-
- </div>
- </section>
-
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
<header>
<h3>Public Instance Methods</h3>
</header>
- <div id="method-i-exchange_keys" class="method-detail ">
+ <div id="method-i-digester" class="method-detail ">
<div class="method-heading">
- <span class="method-name">exchange_keys</span><span
+ <span class="method-name">digester</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
@@ -317,36 +148,15 @@ algorithm, which was acquired during earlier processing.</p>
<div class="method-description">
- <p>Perform the key-exchange for the given session, with the given data. This
-method will return a hash consisting of the following keys:</p>
-<ul><li>
-<p>:session_id</p>
-</li><li>
-<p>:server_key</p>
-</li><li>
-<p>:shared_secret</p>
-</li><li>
-<p>:hashing_algorithm</p>
-</li></ul>
-
-<p>The caller is expected to be able to understand how to use these
-deliverables.</p>
+
- <div class="method-source-code" id="exchange_keys-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb, line 66</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">exchange_keys</span>
- <span class="ruby-identifier">result</span> = <span class="ruby-identifier">send_kexinit</span>
- <span class="ruby-identifier">verify_server_key</span>(<span class="ruby-identifier">result</span>[<span class="ruby-value">:server_key</span>])
- <span class="ruby-identifier">session_id</span> = <span class="ruby-identifier">verify_signature</span>(<span class="ruby-identifier">result</span>)
- <span class="ruby-identifier">confirm_newkeys</span>
-
- <span class="ruby-keyword">return</span> { <span class="ruby-identifier">session_id</span><span class="ruby-operator">:</span> <span class="ruby-identifier">session_id</span>,
- <span class="ruby-identifier">server_key</span><span class="ruby-operator">:</span> <span class="ruby-identifier">result</span>[<span class="ruby-value">:server_key</span>],
- <span class="ruby-identifier">shared_secret</span><span class="ruby-operator">:</span> <span class="ruby-identifier">result</span>[<span class="ruby-value">:shared_secret</span>],
- <span class="ruby-identifier">hashing_algorithm</span><span class="ruby-operator">:</span> <span class="ruby-identifier">digester</span> }
+ <div class="method-source-code" id="digester-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb, line 26</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">digester</span>
+ <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA1</span>
<span class="ruby-keyword">end</span></pre>
</div>
diff --git a/Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA1.html b/Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA1.html
index ae3ff72..4af27a3 100644
--- a/Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA1.html
+++ b/Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA1.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::Kex::DiffieHellmanGroupExchangeSHA1 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::Kex::DiffieHellmanGroupExchangeSHA1 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -96,26 +96,6 @@
</header>
<dl>
- <dt id="KEXDH_GEX_GROUP">KEXDH_GEX_GROUP
-
- <dd>
-
-
- <dt id="KEXDH_GEX_INIT">KEXDH_GEX_INIT
-
- <dd>
-
-
- <dt id="KEXDH_GEX_REPLY">KEXDH_GEX_REPLY
-
- <dd>
-
-
- <dt id="KEXDH_GEX_REQUEST">KEXDH_GEX_REQUEST
-
- <dd>
-
-
<dt id="MAXIMUM_BITS">MAXIMUM_BITS
<dd>
diff --git a/Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA256.html b/Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA256.html
index 2a8d54f..4cd86a9 100644
--- a/Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA256.html
+++ b/Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA256.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::Kex::DiffieHellmanGroupExchangeSHA256 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::Kex::DiffieHellmanGroupExchangeSHA256 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -71,7 +71,7 @@
<ul class="link-list" role="directory">
- <li class="calls-super" ><a href="#method-c-new">::new</a>
+ <li ><a href="#method-i-digester">#digester</a>
</ul>
</div>
@@ -104,17 +104,17 @@
- <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
<header>
- <h3>Public Class Methods</h3>
+ <h3>Public Instance Methods</h3>
</header>
- <div id="method-c-new" class="method-detail ">
+ <div id="method-i-digester" class="method-detail ">
<div class="method-heading">
- <span class="method-name">new</span><span
- class="method-args">(*args)</span>
+ <span class="method-name">digester</span><span
+ class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
@@ -126,19 +126,12 @@
- <div class="method-calls-super">
- Calls superclass method
- <a href="DiffieHellmanGroup1SHA1.html#method-c-new">Net::SSH::Transport::Kex::DiffieHellmanGroup1SHA1.new</a>
- </div>
-
- <div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha256.rb, line 8</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
- <span class="ruby-keyword">super</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
-
- <span class="ruby-ivar">@digester</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA256</span>
+ <div class="method-source-code" id="digester-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha256.rb, line 7</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">digester</span>
+ <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA256</span>
<span class="ruby-keyword">end</span></pre>
</div>
diff --git a/Net/SSH/Transport/Kex/EcdhSHA2NistP256.html b/Net/SSH/Transport/Kex/EcdhSHA2NistP256.html
index dd46276..7a84e2f 100644
--- a/Net/SSH/Transport/Kex/EcdhSHA2NistP256.html
+++ b/Net/SSH/Transport/Kex/EcdhSHA2NistP256.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::Kex::EcdhSHA2NistP256 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::Kex::EcdhSHA2NistP256 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -59,26 +59,11 @@
<h3>Parent</h3>
- <p class="link"><a href="DiffieHellmanGroup1SHA1.html">Net::SSH::Transport::Kex::DiffieHellmanGroup1SHA1</a>
+ <p class="link"><a href="Abstract5656.html">Net::SSH::Transport::Kex::Abstract5656</a>
</div>
- <div id="includes-section" class="nav-section">
- <h3>Included Modules</h3>
-
- <ul class="link-list">
-
-
- <li><a class="include" href="../Constants.html">Net::SSH::Transport::Constants</a>
-
-
-
- <li><a class="include" href="../../Loggable.html">Net::SSH::Loggable</a>
-
-
- </ul>
-</div>
-
+
<!-- Method Quickref -->
<div id="method-list-section" class="nav-section">
@@ -86,8 +71,6 @@
<ul class="link-list" role="directory">
- <li ><a href="#method-c-new">::new</a>
-
<li ><a href="#method-i-curve_name">#curve_name</a>
<li ><a href="#method-i-digester">#digester</a>
@@ -121,76 +104,8 @@ algorithm. (defined in RFC 5656)</p>
- <section class="attribute-method-details" class="method-section">
- <header>
- <h3>Attributes</h3>
- </header>
-
-
- <div id="attribute-i-ecdh" class="method-detail">
- <div class="method-heading attribute-method-heading">
- <span class="method-name">ecdh</span><span
- class="attribute-access-type">[R]</span>
- </div>
-
- <div class="method-description">
-
-
-
- </div>
- </div>
-
- </section>
-
-
-
- <section id="public-class-5Buntitled-5D-method-details" class="method-section">
- <header>
- <h3>Public Class Methods</h3>
- </header>
- <div id="method-c-new" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">new</span><span
- class="method-args">(algorithms, connection, data)</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
-
- <div class="method-description">
-
-
-
-
-
-
- <div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb, line 21</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">algorithms</span>, <span class="ruby-identifier">connection</span>, <span class="ruby-identifier">data</span>)
- <span class="ruby-ivar">@algorithms</span> = <span class="ruby-identifier">algorithms</span>
- <span class="ruby-ivar">@connection</span> = <span class="ruby-identifier">connection</span>
-
- <span class="ruby-ivar">@digester</span> = <span class="ruby-identifier">digester</span>
- <span class="ruby-ivar">@data</span> = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">dup</span>
- <span class="ruby-ivar">@ecdh</span> = <span class="ruby-identifier">generate_key</span>
- <span class="ruby-ivar">@logger</span> = <span class="ruby-ivar">@data</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:logger</span>)
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
-
-
-
-
- </div>
-
-
- </section>
-
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
<header>
<h3>Public Instance Methods</h3>
@@ -216,7 +131,7 @@ algorithm. (defined in RFC 5656)</p>
<div class="method-source-code" id="curve_name-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb, line 17</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb, line 14</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">curve_name</span>
<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">EC</span><span class="ruby-operator">::</span><span class="ruby-constant">CurveNameAlias</span>[<span class="ruby-string">&#39;nistp256&#39;</span>]
<span class="ruby-keyword">end</span></pre>
@@ -249,7 +164,7 @@ algorithm. (defined in RFC 5656)</p>
<div class="method-source-code" id="digester-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb, line 13</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb, line 10</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">digester</span>
<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA256</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Transport/Kex/EcdhSHA2NistP384.html b/Net/SSH/Transport/Kex/EcdhSHA2NistP384.html
index 0bba423..a8345d4 100644
--- a/Net/SSH/Transport/Kex/EcdhSHA2NistP384.html
+++ b/Net/SSH/Transport/Kex/EcdhSHA2NistP384.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::Kex::EcdhSHA2NistP384 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::Kex::EcdhSHA2NistP384 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -131,7 +131,7 @@ algorithm. (defined in RFC 5656)</p>
<div class="method-source-code" id="curve_name-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/ecdh_sha2_nistp384.rb, line 9</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/ecdh_sha2_nistp384.rb, line 14</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">curve_name</span>
<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">EC</span><span class="ruby-operator">::</span><span class="ruby-constant">CurveNameAlias</span>[<span class="ruby-string">&#39;nistp384&#39;</span>]
<span class="ruby-keyword">end</span></pre>
@@ -164,7 +164,7 @@ algorithm. (defined in RFC 5656)</p>
<div class="method-source-code" id="digester-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/ecdh_sha2_nistp384.rb, line 6</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/ecdh_sha2_nistp384.rb, line 10</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">digester</span>
<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA384</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Transport/Kex/EcdhSHA2NistP521.html b/Net/SSH/Transport/Kex/EcdhSHA2NistP521.html
index 022a4d0..ba95c90 100644
--- a/Net/SSH/Transport/Kex/EcdhSHA2NistP521.html
+++ b/Net/SSH/Transport/Kex/EcdhSHA2NistP521.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::Kex::EcdhSHA2NistP521 - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::Kex::EcdhSHA2NistP521 - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../../";
@@ -131,7 +131,7 @@ algorithm. (defined in RFC 5656)</p>
<div class="method-source-code" id="curve_name-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/ecdh_sha2_nistp521.rb, line 9</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/ecdh_sha2_nistp521.rb, line 14</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">curve_name</span>
<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">EC</span><span class="ruby-operator">::</span><span class="ruby-constant">CurveNameAlias</span>[<span class="ruby-string">&#39;nistp521&#39;</span>]
<span class="ruby-keyword">end</span></pre>
@@ -164,7 +164,7 @@ algorithm. (defined in RFC 5656)</p>
<div class="method-source-code" id="digester-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/ecdh_sha2_nistp521.rb, line 6</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/kex/ecdh_sha2_nistp521.rb, line 10</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">digester</span>
<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA512</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/Net/SSH/Transport/KeyExpander.html b/Net/SSH/Transport/KeyExpander.html
index 69ab159..5a31b92 100644
--- a/Net/SSH/Transport/KeyExpander.html
+++ b/Net/SSH/Transport/KeyExpander.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Transport::KeyExpander - net-ssh 4.2.0</title>
+<title>module Net::SSH::Transport::KeyExpander - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -120,25 +120,25 @@
<div class="method-source-code" id="expand_key-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/key_expander.rb, line 6</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/key_expander.rb, line 8</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">expand_key</span>(<span class="ruby-identifier">bytes</span>, <span class="ruby-identifier">start</span>, <span class="ruby-identifier">options</span>={})
<span class="ruby-keyword">if</span> <span class="ruby-identifier">bytes</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
<span class="ruby-keyword">return</span> <span class="ruby-string">&quot;&quot;</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-identifier">k</span> = <span class="ruby-identifier">start</span>[<span class="ruby-value">0</span>, <span class="ruby-identifier">bytes</span>]
<span class="ruby-keyword">return</span> <span class="ruby-identifier">k</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">k</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-identifier">bytes</span>
-
+
<span class="ruby-identifier">digester</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:digester</span>] <span class="ruby-keyword">or</span> <span class="ruby-identifier">raise</span> <span class="ruby-string">&#39;No digester supplied&#39;</span>
<span class="ruby-identifier">shared</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:shared</span>] <span class="ruby-keyword">or</span> <span class="ruby-identifier">raise</span> <span class="ruby-string">&#39;No shared secret supplied&#39;</span>
<span class="ruby-identifier">hash</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:hash</span>] <span class="ruby-keyword">or</span> <span class="ruby-identifier">raise</span> <span class="ruby-string">&#39;No hash supplied&#39;</span>
-
+
<span class="ruby-keyword">while</span> <span class="ruby-identifier">k</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">bytes</span>
<span class="ruby-identifier">step</span> = <span class="ruby-identifier">digester</span>.<span class="ruby-identifier">digest</span>(<span class="ruby-identifier">shared</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">hash</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">k</span>)
<span class="ruby-identifier">bytes_needed</span> = <span class="ruby-identifier">bytes</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">k</span>.<span class="ruby-identifier">length</span>
<span class="ruby-identifier">k</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">step</span>[<span class="ruby-value">0</span>, <span class="ruby-identifier">bytes_needed</span>]
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">k</span>
<span class="ruby-keyword">end</span></pre>
</div>
diff --git a/Net/SSH/Transport/OpenSSLAESCTR.html b/Net/SSH/Transport/OpenSSLAESCTR.html
new file mode 100644
index 0000000..be610dc
--- /dev/null
+++ b/Net/SSH/Transport/OpenSSLAESCTR.html
@@ -0,0 +1,313 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::Transport::OpenSSLAESCTR - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../";
+ var index_rel_prefix = "../../../";
+</script>
+
+<script src="../../../js/jquery.js"></script>
+<script src="../../../js/darkfish.js"></script>
+
+<link href="../../../css/fonts.css" rel="stylesheet">
+<link href="../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link">SimpleDelegator
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-c-block_size">::block_size</a>
+
+ <li class="calls-super" ><a href="#method-c-new">::new</a>
+
+ <li ><a href="#method-i-block_size">#block_size</a>
+
+ <li class="calls-super" ><a href="#method-i-iv-3D">#iv=</a>
+
+ <li ><a href="#method-i-reset">#reset</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-Net::SSH::Transport::OpenSSLAESCTR">
+ <h1 id="class-Net::SSH::Transport::OpenSSLAESCTR" class="class">
+ class Net::SSH::Transport::OpenSSLAESCTR
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Class Methods</h3>
+ </header>
+
+
+ <div id="method-c-block_size" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">block_size</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="block_size-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 16</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">block_size</span>
+ <span class="ruby-value">16</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-c-new" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">(original)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+ <div class="method-calls-super">
+ Calls superclass method
+
+ </div>
+
+
+
+ <div class="method-source-code" id="new-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 7</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">original</span>)
+ <span class="ruby-keyword">super</span>
+ <span class="ruby-ivar">@was_reset</span> = <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Instance Methods</h3>
+ </header>
+
+
+ <div id="method-i-block_size" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">block_size</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="block_size-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 12</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">block_size</span>
+ <span class="ruby-value">16</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-i-iv-3D" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">iv=</span><span
+ class="method-args">(iv_s)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+ <div class="method-calls-super">
+ Calls superclass method
+
+ </div>
+
+
+
+ <div class="method-source-code" id="iv-3D-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 24</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">iv=</span>(<span class="ruby-identifier">iv_s</span>)
+ <span class="ruby-keyword">super</span> <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@was_reset</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-i-reset" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">reset</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="reset-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/ctr.rb, line 20</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">reset</span>
+ <span class="ruby-ivar">@was_reset</span> = <span class="ruby-keyword">true</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/PacketStream.html b/Net/SSH/Transport/PacketStream.html
index af99475..929883b 100644
--- a/Net/SSH/Transport/PacketStream.html
+++ b/Net/SSH/Transport/PacketStream.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Transport::PacketStream - net-ssh 4.2.0</title>
+<title>module Net::SSH::Transport::PacketStream - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -222,7 +222,7 @@ interpret packets coming from the server.</p>
<div class="method-source-code" id="extended-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 21</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 22</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">extended</span>(<span class="ruby-identifier">object</span>)
<span class="ruby-identifier">object</span>.<span class="ruby-identifier">__send__</span>(<span class="ruby-value">:initialize_ssh</span>)
<span class="ruby-keyword">end</span></pre>
@@ -263,9 +263,9 @@ interpret packets coming from the server.</p>
<div class="method-source-code" id="available_for_read-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 74</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 75</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">available_for_read?</span>
- <span class="ruby-identifier">result</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Compat</span>.<span class="ruby-identifier">io_select</span>([<span class="ruby-keyword">self</span>], <span class="ruby-keyword">nil</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-value">0</span>)
+ <span class="ruby-identifier">result</span> = <span class="ruby-constant">IO</span>.<span class="ruby-identifier">select</span>([<span class="ruby-keyword">self</span>], <span class="ruby-keyword">nil</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-value">0</span>)
<span class="ruby-identifier">result</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">any?</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -299,7 +299,7 @@ href="State.html#method-i-cleanup">Net::SSH::Transport::State#cleanup</a>).</p>
<div class="method-source-code" id="cleanup-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 169</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 186</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">cleanup</span>
<span class="ruby-identifier">client</span>.<span class="ruby-identifier">cleanup</span>
<span class="ruby-identifier">server</span>.<span class="ruby-identifier">cleanup</span>
@@ -334,19 +334,19 @@ socket.</p>
<div class="method-source-code" id="client_name-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 41</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 42</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">client_name</span>
<span class="ruby-ivar">@client_name</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword">begin</span>
<span class="ruby-identifier">sockaddr</span> = <span class="ruby-identifier">getsockname</span>
<span class="ruby-keyword">begin</span>
<span class="ruby-constant">Socket</span>.<span class="ruby-identifier">getnameinfo</span>(<span class="ruby-identifier">sockaddr</span>, <span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">NI_NAMEREQD</span>).<span class="ruby-identifier">first</span>
- <span class="ruby-keyword">rescue</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">StandardError</span>
<span class="ruby-keyword">begin</span>
<span class="ruby-constant">Socket</span>.<span class="ruby-identifier">getnameinfo</span>(<span class="ruby-identifier">sockaddr</span>).<span class="ruby-identifier">first</span>
- <span class="ruby-keyword">rescue</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">StandardError</span>
<span class="ruby-keyword">begin</span>
<span class="ruby-constant">Socket</span>.<span class="ruby-identifier">gethostbyname</span>(<span class="ruby-constant">Socket</span>.<span class="ruby-identifier">gethostname</span>).<span class="ruby-identifier">first</span>
- <span class="ruby-keyword">rescue</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">StandardError</span>
<span class="ruby-identifier">lwarn</span> { <span class="ruby-string">&quot;the client ipaddr/name could not be determined&quot;</span> }
<span class="ruby-string">&quot;unknown&quot;</span>
<span class="ruby-keyword">end</span>
@@ -385,13 +385,13 @@ client state (compression, cipher, and hmac).</p>
<div class="method-source-code" id="enqueue_packet-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 132</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 128</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">enqueue_packet</span>(<span class="ruby-identifier">payload</span>)
<span class="ruby-comment"># try to compress the packet</span>
<span class="ruby-identifier">payload</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">compress</span>(<span class="ruby-identifier">payload</span>)
<span class="ruby-comment"># the length of the packet, minus the padding</span>
- <span class="ruby-identifier">actual_length</span> = <span class="ruby-value">4</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">payload</span>.<span class="ruby-identifier">bytesize</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
+ <span class="ruby-identifier">actual_length</span> = (<span class="ruby-identifier">client</span>.<span class="ruby-identifier">hmac</span>.<span class="ruby-identifier">etm</span> <span class="ruby-operator">?</span> <span class="ruby-value">0</span> <span class="ruby-operator">:</span> <span class="ruby-value">4</span>) <span class="ruby-operator">+</span> <span class="ruby-identifier">payload</span>.<span class="ruby-identifier">bytesize</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
<span class="ruby-comment"># compute the padding length</span>
<span class="ruby-identifier">padding_length</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">block_size</span> <span class="ruby-operator">-</span> (<span class="ruby-identifier">actual_length</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">client</span>.<span class="ruby-identifier">block_size</span>)
@@ -407,11 +407,32 @@ client state (compression, cipher, and hmac).</p>
<span class="ruby-identifier">padding</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">padding_length</span>) { <span class="ruby-identifier">rand</span>(<span class="ruby-value">256</span>) }.<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;C*&quot;</span>)
- <span class="ruby-identifier">unencrypted_data</span> = [<span class="ruby-identifier">packet_length</span>, <span class="ruby-identifier">padding_length</span>, <span class="ruby-identifier">payload</span>, <span class="ruby-identifier">padding</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;NCA*A*&quot;</span>)
- <span class="ruby-identifier">mac</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">hmac</span>.<span class="ruby-identifier">digest</span>([<span class="ruby-identifier">client</span>.<span class="ruby-identifier">sequence_number</span>, <span class="ruby-identifier">unencrypted_data</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;NA*&quot;</span>))
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">client</span>.<span class="ruby-identifier">hmac</span>.<span class="ruby-identifier">etm</span>
+ <span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;using encrypt-then-mac&quot;</span> }
- <span class="ruby-identifier">encrypted_data</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">update_cipher</span>(<span class="ruby-identifier">unencrypted_data</span>) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">client</span>.<span class="ruby-identifier">final_cipher</span>
- <span class="ruby-identifier">message</span> = <span class="ruby-identifier">encrypted_data</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">mac</span>
+ <span class="ruby-comment"># Encrypt padding_length, payload, and padding. Take MAC</span>
+ <span class="ruby-comment"># from the unencrypted packet_lenght and the encrypted</span>
+ <span class="ruby-comment"># data.</span>
+ <span class="ruby-identifier">length_data</span> = [<span class="ruby-identifier">packet_length</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;N&quot;</span>)
+
+ <span class="ruby-identifier">unencrypted_data</span> = [<span class="ruby-identifier">padding_length</span>, <span class="ruby-identifier">payload</span>, <span class="ruby-identifier">padding</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;CA*A*&quot;</span>)
+
+ <span class="ruby-identifier">encrypted_data</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">update_cipher</span>(<span class="ruby-identifier">unencrypted_data</span>) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">client</span>.<span class="ruby-identifier">final_cipher</span>
+
+ <span class="ruby-identifier">mac_data</span> = <span class="ruby-identifier">length_data</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">encrypted_data</span>
+
+ <span class="ruby-identifier">mac</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">hmac</span>.<span class="ruby-identifier">digest</span>([<span class="ruby-identifier">client</span>.<span class="ruby-identifier">sequence_number</span>, <span class="ruby-identifier">mac_data</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;NA*&quot;</span>))
+
+ <span class="ruby-identifier">message</span> = <span class="ruby-identifier">mac_data</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">mac</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">unencrypted_data</span> = [<span class="ruby-identifier">packet_length</span>, <span class="ruby-identifier">padding_length</span>, <span class="ruby-identifier">payload</span>, <span class="ruby-identifier">padding</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;NCA*A*&quot;</span>)
+
+ <span class="ruby-identifier">mac</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">hmac</span>.<span class="ruby-identifier">digest</span>([<span class="ruby-identifier">client</span>.<span class="ruby-identifier">sequence_number</span>, <span class="ruby-identifier">unencrypted_data</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;NA*&quot;</span>))
+
+ <span class="ruby-identifier">encrypted_data</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">update_cipher</span>(<span class="ruby-identifier">unencrypted_data</span>) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">client</span>.<span class="ruby-identifier">final_cipher</span>
+
+ <span class="ruby-identifier">message</span> = <span class="ruby-identifier">encrypted_data</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">mac</span>
+ <span class="ruby-keyword">end</span>
<span class="ruby-identifier">debug</span> { <span class="ruby-node">&quot;queueing packet nr #{client.sequence_number} type #{payload.getbyte(0)} len #{packet_length}&quot;</span> }
<span class="ruby-identifier">enqueue</span>(<span class="ruby-identifier">message</span>)
@@ -452,7 +473,7 @@ this will yield. Otherwise, this does nothing.</p>
<div class="method-source-code" id="if_needs_rekey-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 177</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 194</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">if_needs_rekey?</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">client</span>.<span class="ruby-identifier">needs_rekey?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">server</span>.<span class="ruby-identifier">needs_rekey?</span>
<span class="ruby-keyword">yield</span>
@@ -474,7 +495,7 @@ this will yield. Otherwise, this does nothing.</p>
<div class="method-heading">
<span class="method-name">next_packet</span><span
- class="method-args">(mode=:nonblock)</span>
+ class="method-args">(mode=:nonblock, timeout=nil)</span>
<span class="method-click-advice">click to toggle source</span>
@@ -487,14 +508,14 @@ this will yield. Otherwise, this does nothing.</p>
default), then this will return immediately, whether a packet is available
or not, and will return nil if there is no packet ready to be returned. If
the mode parameter is :block, then this method will block until a packet is
-available.</p>
+available or timeout seconds have passed.</p>
<div class="method-source-code" id="next_packet-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 84</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">next_packet</span>(<span class="ruby-identifier">mode</span>=<span class="ruby-value">:nonblock</span>)
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 85</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">next_packet</span>(<span class="ruby-identifier">mode</span>=<span class="ruby-value">:nonblock</span>, <span class="ruby-identifier">timeout</span>=<span class="ruby-keyword">nil</span>)
<span class="ruby-keyword">case</span> <span class="ruby-identifier">mode</span>
<span class="ruby-keyword">when</span> <span class="ruby-value">:nonblock</span> <span class="ruby-keyword">then</span>
<span class="ruby-identifier">packet</span> = <span class="ruby-identifier">poll_next_packet</span>
@@ -517,14 +538,9 @@ available.</p>
<span class="ruby-identifier">packet</span> = <span class="ruby-identifier">poll_next_packet</span>
<span class="ruby-keyword">return</span> <span class="ruby-identifier">packet</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">packet</span>
- <span class="ruby-identifier">loop</span> <span class="ruby-keyword">do</span>
- <span class="ruby-identifier">result</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Compat</span>.<span class="ruby-identifier">io_select</span>([<span class="ruby-keyword">self</span>]) <span class="ruby-keyword">or</span> <span class="ruby-keyword">next</span>
- <span class="ruby-keyword">break</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">any?</span>
- <span class="ruby-keyword">end</span>
-
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">fill</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-value">0</span>
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Disconnect</span>, <span class="ruby-string">&quot;connection closed by remote host&quot;</span>
- <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">result</span> = <span class="ruby-constant">IO</span>.<span class="ruby-identifier">select</span>([<span class="ruby-keyword">self</span>], <span class="ruby-keyword">nil</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">timeout</span>)
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">ConnectionTimeout</span>, <span class="ruby-string">&quot;timeout waiting for next packet&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">result</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Disconnect</span>, <span class="ruby-string">&quot;connection closed by remote host&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">fill</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-value">0</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">else</span>
@@ -561,7 +577,7 @@ socket.</p>
<div class="method-source-code" id="peer_ip-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 63</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 64</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">peer_ip</span>
<span class="ruby-ivar">@peer_ip</span> <span class="ruby-operator">||=</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:getpeername</span>)
@@ -600,7 +616,7 @@ socket.</p>
<div class="method-source-code" id="send_packet-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 124</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 120</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">send_packet</span>(<span class="ruby-identifier">payload</span>)
<span class="ruby-identifier">enqueue_packet</span>(<span class="ruby-identifier">payload</span>)
<span class="ruby-identifier">wait_for_pending_sends</span>
@@ -643,7 +659,7 @@ states and generally prepares the object for use as a packet stream.</p>
<div class="method-source-code" id="initialize_ssh-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 189</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 206</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize_ssh</span>
<span class="ruby-ivar">@hints</span> = {}
<span class="ruby-ivar">@server</span> = <span class="ruby-constant">State</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>, <span class="ruby-value">:server</span>)
@@ -684,19 +700,27 @@ href="../Packet.html">Packet</a> object.</p>
<div class="method-source-code" id="poll_next_packet-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 202</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/packet_stream.rb, line 219</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">poll_next_packet</span>
+ <span class="ruby-identifier">aad_length</span> = <span class="ruby-identifier">server</span>.<span class="ruby-identifier">hmac</span>.<span class="ruby-identifier">etm</span> <span class="ruby-operator">?</span> <span class="ruby-value">4</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
+
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@packet</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-identifier">minimum</span> = <span class="ruby-identifier">server</span>.<span class="ruby-identifier">block_size</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">4</span> <span class="ruby-operator">?</span> <span class="ruby-value">4</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">server</span>.<span class="ruby-identifier">block_size</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">available</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">minimum</span>
- <span class="ruby-identifier">data</span> = <span class="ruby-identifier">read_available</span>(<span class="ruby-identifier">minimum</span>)
+ <span class="ruby-identifier">data</span> = <span class="ruby-identifier">read_available</span>(<span class="ruby-identifier">minimum</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">aad_length</span>)
<span class="ruby-comment"># decipher it</span>
- <span class="ruby-ivar">@packet</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">server</span>.<span class="ruby-identifier">update_cipher</span>(<span class="ruby-identifier">data</span>))
- <span class="ruby-ivar">@packet_length</span> = <span class="ruby-ivar">@packet</span>.<span class="ruby-identifier">read_long</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">server</span>.<span class="ruby-identifier">hmac</span>.<span class="ruby-identifier">etm</span>
+ <span class="ruby-ivar">@packet_length</span> = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&quot;N&quot;</span>).<span class="ruby-identifier">first</span>
+ <span class="ruby-ivar">@mac_data</span> = <span class="ruby-identifier">data</span>
+ <span class="ruby-ivar">@packet</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">server</span>.<span class="ruby-identifier">update_cipher</span>(<span class="ruby-identifier">data</span>[<span class="ruby-identifier">aad_length</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>]))
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-ivar">@packet</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">server</span>.<span class="ruby-identifier">update_cipher</span>(<span class="ruby-identifier">data</span>))
+ <span class="ruby-ivar">@packet_length</span> = <span class="ruby-ivar">@packet</span>.<span class="ruby-identifier">read_long</span>
+ <span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
- <span class="ruby-identifier">need</span> = <span class="ruby-ivar">@packet_length</span> <span class="ruby-operator">+</span> <span class="ruby-value">4</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">server</span>.<span class="ruby-identifier">block_size</span>
+ <span class="ruby-identifier">need</span> = <span class="ruby-ivar">@packet_length</span> <span class="ruby-operator">+</span> <span class="ruby-value">4</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">aad_length</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">server</span>.<span class="ruby-identifier">block_size</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;padding error, need #{need} block #{server.block_size}&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">need</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">server</span>.<span class="ruby-identifier">block_size</span> <span class="ruby-operator">!=</span> <span class="ruby-value">0</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">available</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">need</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">server</span>.<span class="ruby-identifier">hmac</span>.<span class="ruby-identifier">mac_length</span>
@@ -704,6 +728,7 @@ href="../Packet.html">Packet</a> object.</p>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">need</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
<span class="ruby-comment"># read the remainder of the packet and decrypt it.</span>
<span class="ruby-identifier">data</span> = <span class="ruby-identifier">read_available</span>(<span class="ruby-identifier">need</span>)
+ <span class="ruby-ivar">@mac_data</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">data</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">server</span>.<span class="ruby-identifier">hmac</span>.<span class="ruby-identifier">etm</span>
<span class="ruby-ivar">@packet</span>.<span class="ruby-identifier">append</span>(<span class="ruby-identifier">server</span>.<span class="ruby-identifier">update_cipher</span>(<span class="ruby-identifier">data</span>))
<span class="ruby-keyword">end</span>
@@ -716,8 +741,12 @@ href="../Packet.html">Packet</a> object.</p>
<span class="ruby-identifier">payload</span> = <span class="ruby-ivar">@packet</span>.<span class="ruby-identifier">read</span>(<span class="ruby-ivar">@packet_length</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">padding_length</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>)
- <span class="ruby-identifier">my_computed_hmac</span> = <span class="ruby-identifier">server</span>.<span class="ruby-identifier">hmac</span>.<span class="ruby-identifier">digest</span>([<span class="ruby-identifier">server</span>.<span class="ruby-identifier">sequence_number</span>, <span class="ruby-ivar">@packet</span>.<span class="ruby-identifier">content</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;NA*&quot;</span>))
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-string">&quot;corrupted mac detected&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">real_hmac</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">my_computed_hmac</span>
+ <span class="ruby-identifier">my_computed_hmac</span> = <span class="ruby-keyword">if</span> <span class="ruby-identifier">server</span>.<span class="ruby-identifier">hmac</span>.<span class="ruby-identifier">etm</span>
+ <span class="ruby-identifier">server</span>.<span class="ruby-identifier">hmac</span>.<span class="ruby-identifier">digest</span>([<span class="ruby-identifier">server</span>.<span class="ruby-identifier">sequence_number</span>, <span class="ruby-ivar">@mac_data</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;NA*&quot;</span>))
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">server</span>.<span class="ruby-identifier">hmac</span>.<span class="ruby-identifier">digest</span>([<span class="ruby-identifier">server</span>.<span class="ruby-identifier">sequence_number</span>, <span class="ruby-ivar">@packet</span>.<span class="ruby-identifier">content</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;NA*&quot;</span>))
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-string">&quot;corrupted hmac detected&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">real_hmac</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">my_computed_hmac</span>
<span class="ruby-comment"># try to decompress the payload, in case compression is active</span>
<span class="ruby-identifier">payload</span> = <span class="ruby-identifier">server</span>.<span class="ruby-identifier">decompress</span>(<span class="ruby-identifier">payload</span>)
diff --git a/Net/SSH/Transport/ServerVersion.html b/Net/SSH/Transport/ServerVersion.html
index 0822fef..71febd5 100644
--- a/Net/SSH/Transport/ServerVersion.html
+++ b/Net/SSH/Transport/ServerVersion.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::ServerVersion - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::ServerVersion - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -197,7 +197,7 @@ href="../../SSH.html">SSH</a> protocol in effect, using the given socket.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/server_version.rb, line 28</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/server_version.rb, line 30</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">socket</span>, <span class="ruby-identifier">logger</span>, <span class="ruby-identifier">timeout</span> = <span class="ruby-keyword">nil</span>)
<span class="ruby-ivar">@header</span> = <span class="ruby-string">&quot;&quot;</span>
<span class="ruby-ivar">@version</span> = <span class="ruby-keyword">nil</span>
diff --git a/Net/SSH/Transport/Session.html b/Net/SSH/Transport/Session.html
index 175a2bf..bd31b36 100644
--- a/Net/SSH/Transport/Session.html
+++ b/Net/SSH/Transport/Session.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::Session - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::Session - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -69,11 +69,11 @@
<ul class="link-list">
- <li><a class="include" href="Constants.html">Net::SSH::Transport::Constants</a>
+ <li><a class="include" href="../Loggable.html">Net::SSH::Loggable</a>
- <li><a class="include" href="../Loggable.html">Net::SSH::Loggable</a>
+ <li><a class="include" href="Constants.html">Net::SSH::Transport::Constants</a>
</ul>
@@ -317,7 +317,7 @@ session.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 56</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 59</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">host</span>, <span class="ruby-identifier">options</span>={})
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">logger</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:logger</span>]
@@ -345,7 +345,6 @@ session.</p>
<span class="ruby-ivar">@host_key_verifier</span> = <span class="ruby-identifier">select_host_key_verifier</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:verify_host_key</span>])
-
<span class="ruby-ivar">@server_version</span> = <span class="ruby-constant">ServerVersion</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">socket</span>, <span class="ruby-identifier">logger</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:timeout</span>])
<span class="ruby-ivar">@algorithms</span> = <span class="ruby-constant">Algorithms</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>, <span class="ruby-identifier">options</span>)
@@ -393,7 +392,7 @@ and closes the underlying socket.</p>
<div class="method-source-code" id="close-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 126</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 128</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">close</span>
<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">cleanup</span>
<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">close</span>
@@ -427,7 +426,7 @@ and closes the underlying socket.</p>
<div class="method-source-code" id="closed-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 121</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 123</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">closed?</span>
<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">closed?</span>
<span class="ruby-keyword">end</span></pre>
@@ -600,7 +599,7 @@ href="../../SSH.html">SSH</a> known-host files.</p>
<div class="method-source-code" id="host_as_string-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 102</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 104</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">host_as_string</span>
<span class="ruby-ivar">@host_as_string</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword">begin</span>
<span class="ruby-identifier">string</span> = <span class="ruby-node">&quot;#{host}&quot;</span>
@@ -647,7 +646,7 @@ href="../../SSH.html">SSH</a> known-host files.</p>
<div class="method-source-code" id="host_keys-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 93</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 95</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">host_keys</span>
<span class="ruby-ivar">@host_keys</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword">begin</span>
<span class="ruby-identifier">known_hosts</span> = <span class="ruby-identifier">options</span>.<span class="ruby-identifier">fetch</span>(<span class="ruby-value">:known_hosts</span>, <span class="ruby-constant">KnownHosts</span>)
@@ -684,7 +683,7 @@ See <a href="Session.html#method-i-poll_message">poll_message</a>.</p>
<div class="method-source-code" id="next_message-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 172</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 174</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">next_message</span>
<span class="ruby-identifier">poll_message</span>(<span class="ruby-value">:block</span>)
<span class="ruby-keyword">end</span></pre>
@@ -719,7 +718,7 @@ href="Session.html#method-i-host_as_string">host_as_string</a>).</p>
<div class="method-source-code" id="peer-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 166</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 168</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">peer</span>
<span class="ruby-ivar">@peer</span> <span class="ruby-operator">||=</span> { <span class="ruby-identifier">ip</span><span class="ruby-operator">:</span> <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">peer_ip</span>, <span class="ruby-identifier">port</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@port</span>.<span class="ruby-identifier">to_i</span>, <span class="ruby-identifier">host</span><span class="ruby-operator">:</span> <span class="ruby-ivar">@host</span>, <span class="ruby-identifier">canonized</span><span class="ruby-operator">:</span> <span class="ruby-identifier">host_as_string</span> }
<span class="ruby-keyword">end</span></pre>
@@ -761,14 +760,12 @@ queue before the socket is queried.</p>
<div class="method-source-code" id="poll_message-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 187</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 189</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">poll_message</span>(<span class="ruby-identifier">mode</span>=<span class="ruby-value">:nonblock</span>, <span class="ruby-identifier">consume_queue</span>=<span class="ruby-keyword">true</span>)
<span class="ruby-identifier">loop</span> <span class="ruby-keyword">do</span>
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">consume_queue</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@queue</span>.<span class="ruby-identifier">any?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">algorithms</span>.<span class="ruby-identifier">allow?</span>(<span class="ruby-ivar">@queue</span>.<span class="ruby-identifier">first</span>)
- <span class="ruby-keyword">return</span> <span class="ruby-ivar">@queue</span>.<span class="ruby-identifier">shift</span>
- <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-ivar">@queue</span>.<span class="ruby-identifier">shift</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">consume_queue</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@queue</span>.<span class="ruby-identifier">any?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">algorithms</span>.<span class="ruby-identifier">allow?</span>(<span class="ruby-ivar">@queue</span>.<span class="ruby-identifier">first</span>)
- <span class="ruby-identifier">packet</span> = <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">next_packet</span>(<span class="ruby-identifier">mode</span>)
+ <span class="ruby-identifier">packet</span> = <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">next_packet</span>(<span class="ruby-identifier">mode</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:timeout</span>])
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">packet</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-keyword">case</span> <span class="ruby-identifier">packet</span>.<span class="ruby-identifier">type</span>
@@ -858,7 +855,7 @@ rekey is already pending, this returns immediately, having no effect.</p>
<div class="method-source-code" id="rekey-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 149</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 151</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">rekey!</span>
<span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">algorithms</span>.<span class="ruby-identifier">pending?</span>
<span class="ruby-identifier">algorithms</span>.<span class="ruby-identifier">rekey!</span>
@@ -897,7 +894,7 @@ one is performed, causing this method to block until it completes.</p>
<div class="method-source-code" id="rekey_as_needed-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 159</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 161</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">rekey_as_needed</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">algorithms</span>.<span class="ruby-identifier">pending?</span>
<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">if_needs_rekey?</span> { <span class="ruby-identifier">rekey!</span> }
@@ -967,7 +964,7 @@ for the given service name, ready for sending to the server.</p>
<div class="method-source-code" id="service_request-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 142</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 144</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">service_request</span>(<span class="ruby-identifier">service</span>)
<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:byte</span>, <span class="ruby-constant">SERVICE_REQUEST</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">service</span>)
<span class="ruby-keyword">end</span></pre>
@@ -1003,7 +1000,7 @@ underlying protocol&#39;s state).</p>
<div class="method-source-code" id="shutdown-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 135</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 137</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">shutdown!</span>
<span class="ruby-identifier">error</span> { <span class="ruby-string">&quot;forcing connection closed&quot;</span> }
<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">close</span>
diff --git a/Net/SSH/Transport/Session/CompatibleVerifier.html b/Net/SSH/Transport/Session/CompatibleVerifier.html
new file mode 100644
index 0000000..62ce9dd
--- /dev/null
+++ b/Net/SSH/Transport/Session/CompatibleVerifier.html
@@ -0,0 +1,235 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::Transport::Session::CompatibleVerifier - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../../";
+ var index_rel_prefix = "../../../../";
+</script>
+
+<script src="../../../../js/jquery.js"></script>
+<script src="../../../../js/darkfish.js"></script>
+
+<link href="../../../../css/fonts.css" rel="stylesheet">
+<link href="../../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link">Object
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-c-new">::new</a>
+
+ <li ><a href="#method-i-verify">#verify</a>
+
+ <li ><a href="#method-i-verify_signature">#verify_signature</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-Net::SSH::Transport::Session::CompatibleVerifier">
+ <h1 id="class-Net::SSH::Transport::Session::CompatibleVerifier" class="class">
+ class Net::SSH::Transport::Session::CompatibleVerifier
+ </h1>
+
+ <section class="description">
+
+<p>Compatibility verifier which allows users to keep using custom verifier
+code without adding new :verify_signature method.</p>
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Class Methods</h3>
+ </header>
+
+
+ <div id="method-c-new" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">(verifier)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="new-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 281</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">verifier</span>)
+ <span class="ruby-ivar">@verifier</span> = <span class="ruby-identifier">verifier</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Instance Methods</h3>
+ </header>
+
+
+ <div id="method-i-verify" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">verify</span><span
+ class="method-args">(arguments)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="verify-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 285</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">verify</span>(<span class="ruby-identifier">arguments</span>)
+ <span class="ruby-ivar">@verifier</span>.<span class="ruby-identifier">verify</span>(<span class="ruby-identifier">arguments</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-i-verify_signature" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">verify_signature</span><span
+ class="method-args">() { || ... }</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="verify_signature-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/session.rb, line 289</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">verify_signature</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
+ <span class="ruby-keyword">yield</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Transport/State.html b/Net/SSH/Transport/State.html
index 49544f3..5e1cfbc 100644
--- a/Net/SSH/Transport/State.html
+++ b/Net/SSH/Transport/State.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Transport::State - net-ssh 4.2.0</title>
+<title>class Net::SSH::Transport::State - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
@@ -341,7 +341,7 @@ algorithms to “none”.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 57</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 59</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">socket</span>, <span class="ruby-identifier">role</span>)
<span class="ruby-ivar">@socket</span> = <span class="ruby-identifier">socket</span>
<span class="ruby-ivar">@role</span> = <span class="ruby-identifier">role</span>
@@ -397,14 +397,14 @@ instantiated.</p>
<span class="ruby-ivar">@compressor</span>.<span class="ruby-identifier">finish</span> <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@compressor</span>.<span class="ruby-identifier">finished?</span>
<span class="ruby-ivar">@compressor</span>.<span class="ruby-identifier">close</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@decompressor</span>
<span class="ruby-comment"># we call reset here so that we don&#39;t get warnings when we try to</span>
<span class="ruby-comment"># close the decompressor</span>
<span class="ruby-ivar">@decompressor</span>.<span class="ruby-identifier">reset</span>
<span class="ruby-ivar">@decompressor</span>.<span class="ruby-identifier">close</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-ivar">@compressor</span> = <span class="ruby-ivar">@decompressor</span> = <span class="ruby-keyword">nil</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -438,7 +438,7 @@ href="State.html#method-i-compressor">compressor</a> to compress the data.</p>
<div class="method-source-code" id="compress-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 120</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 122</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">compress</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">data</span> = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">to_s</span>
<span class="ruby-keyword">return</span> <span class="ruby-identifier">data</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">compression?</span>
@@ -475,7 +475,7 @@ selected and the :authenticated hint has been received by the socket.</p>
<div class="method-source-code" id="compression-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 114</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 116</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">compression?</span>
<span class="ruby-identifier">compression</span> <span class="ruby-operator">==</span> <span class="ruby-value">:standard</span> <span class="ruby-operator">||</span> (<span class="ruby-identifier">compression</span> <span class="ruby-operator">==</span> <span class="ruby-value">:delayed</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">socket</span>.<span class="ruby-identifier">hints</span>[<span class="ruby-value">:authenticated</span>])
<span class="ruby-keyword">end</span></pre>
@@ -509,7 +509,7 @@ the desired compression level.</p>
<div class="method-source-code" id="compressor-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 101</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 103</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">compressor</span>
<span class="ruby-ivar">@compressor</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Zlib</span><span class="ruby-operator">::</span><span class="ruby-constant">Deflate</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">compression_level</span> <span class="ruby-operator">||</span> <span class="ruby-constant">Zlib</span><span class="ruby-operator">::</span><span class="ruby-constant">DEFAULT_COMPRESSION</span>)
<span class="ruby-keyword">end</span></pre>
@@ -545,7 +545,7 @@ data.</p>
<div class="method-source-code" id="decompress-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 128</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 130</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">decompress</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">data</span> = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">to_s</span>
<span class="ruby-keyword">return</span> <span class="ruby-identifier">data</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">compression?</span>
@@ -580,7 +580,7 @@ data.</p>
<div class="method-source-code" id="decompressor-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 106</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 108</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">decompressor</span>
<span class="ruby-ivar">@decompressor</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Zlib</span><span class="ruby-operator">::</span><span class="ruby-constant">Inflate</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">nil</span>)
<span class="ruby-keyword">end</span></pre>
@@ -613,7 +613,7 @@ data.</p>
<div class="method-source-code" id="final_cipher-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 84</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 86</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">final_cipher</span>
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">final</span>
<span class="ruby-identifier">update_next_iv</span>(<span class="ruby-identifier">role</span> <span class="ruby-operator">==</span> <span class="ruby-value">:client</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">result</span> <span class="ruby-operator">:</span> <span class="ruby-string">&quot;&quot;</span>, <span class="ruby-keyword">true</span>)
@@ -650,7 +650,7 @@ are also incremented.</p>
<div class="method-source-code" id="increment-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 93</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 95</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">increment</span>(<span class="ruby-identifier">packet_length</span>)
<span class="ruby-ivar">@sequence_number</span> = (<span class="ruby-ivar">@sequence_number</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>) <span class="ruby-operator">&amp;</span> <span class="ruby-value">0xFFFFFFFF</span>
<span class="ruby-ivar">@packets</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
@@ -725,14 +725,14 @@ href="State.html#attribute-i-max_blocks">#max_blocks</a> values.</p>
<div class="method-source-code" id="reset-21-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 137</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 139</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">reset!</span>
<span class="ruby-ivar">@packets</span> = <span class="ruby-ivar">@blocks</span> = <span class="ruby-value">0</span>
-
+
<span class="ruby-ivar">@max_packets</span> <span class="ruby-operator">||=</span> <span class="ruby-value">1</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value">31</span>
-
- <span class="ruby-ivar">@block_size</span> = <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;RC4&quot;</span> <span class="ruby-operator">?</span> <span class="ruby-value">8</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">block_size</span>
-
+
+ <span class="ruby-ivar">@block_size</span> = <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">block_size</span>
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">max_blocks</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-comment"># cargo-culted from openssh. the idea is that &quot;the 2^(blocksize*2)</span>
<span class="ruby-comment"># limit is too expensive for 3DES, blowfish, etc., so enforce a 1GB</span>
@@ -742,15 +742,13 @@ href="State.html#attribute-i-max_blocks">#max_blocks</a> values.</p>
<span class="ruby-keyword">else</span>
<span class="ruby-ivar">@max_blocks</span> = (<span class="ruby-value">1</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value">30</span>) <span class="ruby-operator">/</span> <span class="ruby-ivar">@block_size</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-comment"># if a limit on the # of bytes has been given, convert that into a</span>
<span class="ruby-comment"># minimum number of blocks processed.</span>
-
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">rekey_limit</span>
- <span class="ruby-ivar">@max_blocks</span> = [<span class="ruby-ivar">@max_blocks</span>, <span class="ruby-identifier">rekey_limit</span> <span class="ruby-operator">/</span> <span class="ruby-ivar">@block_size</span>].<span class="ruby-identifier">min</span>
- <span class="ruby-keyword">end</span>
+
+ <span class="ruby-ivar">@max_blocks</span> = [<span class="ruby-ivar">@max_blocks</span>, <span class="ruby-identifier">rekey_limit</span> <span class="ruby-operator">/</span> <span class="ruby-ivar">@block_size</span>].<span class="ruby-identifier">min</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">rekey_limit</span>
<span class="ruby-keyword">end</span>
-
+
<span class="ruby-identifier">cleanup</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -783,7 +781,7 @@ command.</p>
<div class="method-source-code" id="set-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 71</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 73</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">set</span>(<span class="ruby-identifier">values</span>)
<span class="ruby-identifier">values</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">instance_variable_set</span>(<span class="ruby-node">&quot;@#{key}&quot;</span>, <span class="ruby-identifier">value</span>)
@@ -819,7 +817,7 @@ command.</p>
<div class="method-source-code" id="update_cipher-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 78</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/state.rb, line 80</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">update_cipher</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">cipher</span>.<span class="ruby-identifier">update</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">update_next_iv</span>(<span class="ruby-identifier">role</span> <span class="ruby-operator">==</span> <span class="ruby-value">:client</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">result</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">data</span>)
diff --git a/Net/SSH/Verifiers.html b/Net/SSH/Verifiers.html
index d68572e..3e8f8de 100644
--- a/Net/SSH/Verifiers.html
+++ b/Net/SSH/Verifiers.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module Net::SSH::Verifiers - net-ssh 4.2.0</title>
+<title>module Net::SSH::Verifiers - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
diff --git a/Net/SSH/Verifiers/AcceptNew.html b/Net/SSH/Verifiers/AcceptNew.html
new file mode 100644
index 0000000..ae673cc
--- /dev/null
+++ b/Net/SSH/Verifiers/AcceptNew.html
@@ -0,0 +1,209 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::Verifiers::AcceptNew - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../";
+ var index_rel_prefix = "../../../";
+</script>
+
+<script src="../../../js/jquery.js"></script>
+<script src="../../../js/darkfish.js"></script>
+
+<link href="../../../css/fonts.css" rel="stylesheet">
+<link href="../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link">Always
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li class="calls-super" ><a href="#method-i-verify">#verify</a>
+
+ <li ><a href="#method-i-verify_signature">#verify_signature</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-Net::SSH::Verifiers::AcceptNew">
+ <h1 id="class-Net::SSH::Verifiers::AcceptNew" class="class">
+ class Net::SSH::Verifiers::AcceptNew
+ </h1>
+
+ <section class="description">
+
+<p>Does a strict host verification, looking the server up in the known host
+files to see if a key has already been seen for this server. If this server
+does not appear in any host file, this will silently add the server. If the
+server does appear at least once, but the key given does not match any
+known for the server, an exception will be raised (HostKeyMismatch).
+Otherwise, this returns true.</p>
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Instance Methods</h3>
+ </header>
+
+
+ <div id="method-i-verify" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">verify</span><span
+ class="method-args">(arguments)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+ <div class="method-calls-super">
+ Calls superclass method
+
+ </div>
+
+
+
+ <div class="method-source-code" id="verify-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/verifiers/accept_new.rb, line 16</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">verify</span>(<span class="ruby-identifier">arguments</span>)
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-keyword">super</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">HostKeyUnknown</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">err</span>
+ <span class="ruby-identifier">err</span>.<span class="ruby-identifier">remember_host!</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">true</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-i-verify_signature" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">verify_signature</span><span
+ class="method-args">() { || ... }</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="verify_signature-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/verifiers/accept_new.rb, line 25</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">verify_signature</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
+ <span class="ruby-keyword">yield</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">HostKeyUnknown</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">err</span>
+ <span class="ruby-identifier">err</span>.<span class="ruby-identifier">remember_host!</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">true</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Verifiers/AcceptNewOrLocalTunnel.html b/Net/SSH/Verifiers/AcceptNewOrLocalTunnel.html
new file mode 100644
index 0000000..69d1dfd
--- /dev/null
+++ b/Net/SSH/Verifiers/AcceptNewOrLocalTunnel.html
@@ -0,0 +1,167 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::Verifiers::AcceptNewOrLocalTunnel - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../";
+ var index_rel_prefix = "../../../";
+</script>
+
+<script src="../../../js/jquery.js"></script>
+<script src="../../../js/darkfish.js"></script>
+
+<link href="../../../css/fonts.css" rel="stylesheet">
+<link href="../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link"><a href="AcceptNew.html">Net::SSH::Verifiers::AcceptNew</a>
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li class="calls-super" ><a href="#method-i-verify">#verify</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-Net::SSH::Verifiers::AcceptNewOrLocalTunnel">
+ <h1 id="class-Net::SSH::Verifiers::AcceptNewOrLocalTunnel" class="class">
+ class Net::SSH::Verifiers::AcceptNewOrLocalTunnel
+ </h1>
+
+ <section class="description">
+
+<p>Basically the same as the <a href="AcceptNew.html">AcceptNew</a> verifier,
+but does not try to actually verify a connection if the server is the
+localhost and the port is a nonstandard port number. Those two conditions
+will typically mean the connection is being tunnelled through a forwarded
+port, so the known-hosts file will not be helpful (in general).</p>
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Instance Methods</h3>
+ </header>
+
+
+ <div id="method-i-verify" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">verify</span><span
+ class="method-args">(arguments)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Tries to determine if the connection is being tunnelled, and if so, returns
+true. Otherwise, performs the standard strict verification.</p>
+
+
+ <div class="method-calls-super">
+ Calls superclass method
+ <a href="AcceptNew.html#method-i-verify">Net::SSH::Verifiers::AcceptNew#verify</a>
+ </div>
+
+
+
+ <div class="method-source-code" id="verify-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/verifiers/accept_new_or_local_tunnel.rb, line 15</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">verify</span>(<span class="ruby-identifier">arguments</span>)
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">tunnelled?</span>(<span class="ruby-identifier">arguments</span>)
+ <span class="ruby-keyword">super</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Verifiers/Always.html b/Net/SSH/Verifiers/Always.html
new file mode 100644
index 0000000..312c8a9
--- /dev/null
+++ b/Net/SSH/Verifiers/Always.html
@@ -0,0 +1,213 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::Verifiers::Always - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../";
+ var index_rel_prefix = "../../../";
+</script>
+
+<script src="../../../js/jquery.js"></script>
+<script src="../../../js/darkfish.js"></script>
+
+<link href="../../../css/fonts.css" rel="stylesheet">
+<link href="../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link">Object
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-i-verify">#verify</a>
+
+ <li ><a href="#method-i-verify_signature">#verify_signature</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-Net::SSH::Verifiers::Always">
+ <h1 id="class-Net::SSH::Verifiers::Always" class="class">
+ class Net::SSH::Verifiers::Always
+ </h1>
+
+ <section class="description">
+
+<p>Does a strict host verification, looking the server up in the known host
+files to see if a key has already been seen for this server. If this server
+does not appear in any host file, an exception will be raised
+(HostKeyUnknown). This is in contrast to the “Strict” class, which will
+silently add the key to your known_hosts file. If the server does appear at
+least once, but the key given does not match any known for the server, an
+exception will be raised (HostKeyMismatch). Otherwise, this returns true.</p>
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Instance Methods</h3>
+ </header>
+
+
+ <div id="method-i-verify" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">verify</span><span
+ class="method-args">(arguments)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="verify-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/verifiers/always.rb, line 17</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">verify</span>(<span class="ruby-identifier">arguments</span>)
+ <span class="ruby-identifier">host_keys</span> = <span class="ruby-identifier">arguments</span>[<span class="ruby-value">:session</span>].<span class="ruby-identifier">host_keys</span>
+
+ <span class="ruby-comment"># We&#39;ve never seen this host before, so raise an exception.</span>
+ <span class="ruby-identifier">process_cache_miss</span>(<span class="ruby-identifier">host_keys</span>, <span class="ruby-identifier">arguments</span>, <span class="ruby-constant">HostKeyUnknown</span>, <span class="ruby-string">&quot;is unknown&quot;</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">host_keys</span>.<span class="ruby-identifier">empty?</span>
+
+ <span class="ruby-comment"># If we found any matches, check to see that the key type and</span>
+ <span class="ruby-comment"># blob also match.</span>
+ <span class="ruby-identifier">found</span> = <span class="ruby-identifier">host_keys</span>.<span class="ruby-identifier">any?</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">ssh_type</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">arguments</span>[<span class="ruby-value">:key</span>].<span class="ruby-identifier">ssh_type</span> <span class="ruby-operator">&amp;&amp;</span>
+ <span class="ruby-identifier">key</span>.<span class="ruby-identifier">to_blob</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">arguments</span>[<span class="ruby-value">:key</span>].<span class="ruby-identifier">to_blob</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># If a match was found, return true. Otherwise, raise an exception</span>
+ <span class="ruby-comment"># indicating that the key was not recognized.</span>
+ <span class="ruby-identifier">process_cache_miss</span>(<span class="ruby-identifier">host_keys</span>, <span class="ruby-identifier">arguments</span>, <span class="ruby-constant">HostKeyMismatch</span>, <span class="ruby-string">&quot;does not match&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">found</span>
+
+ <span class="ruby-identifier">found</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-i-verify_signature" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">verify_signature</span><span
+ class="method-args">() { || ... }</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="verify_signature-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/verifiers/always.rb, line 37</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">verify_signature</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
+ <span class="ruby-keyword">yield</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Verifiers/Never.html b/Net/SSH/Verifiers/Never.html
new file mode 100644
index 0000000..962bb5f
--- /dev/null
+++ b/Net/SSH/Verifiers/Never.html
@@ -0,0 +1,193 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class Net::SSH::Verifiers::Never - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../";
+ var index_rel_prefix = "../../../";
+</script>
+
+<script src="../../../js/jquery.js"></script>
+<script src="../../../js/darkfish.js"></script>
+
+<link href="../../../css/fonts.css" rel="stylesheet">
+<link href="../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link">Object
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-i-verify">#verify</a>
+
+ <li ><a href="#method-i-verify_signature">#verify_signature</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-Net::SSH::Verifiers::Never">
+ <h1 id="class-Net::SSH::Verifiers::Never" class="class">
+ class Net::SSH::Verifiers::Never
+ </h1>
+
+ <section class="description">
+
+<p>This host key verifier simply allows every key it sees, without any
+verification. This is simple, but very insecure because it exposes you to
+MiTM attacks.</p>
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Instance Methods</h3>
+ </header>
+
+
+ <div id="method-i-verify" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">verify</span><span
+ class="method-args">(arguments)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns true.</p>
+
+
+
+
+ <div class="method-source-code" id="verify-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/verifiers/never.rb, line 10</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">verify</span>(<span class="ruby-identifier">arguments</span>)
+ <span class="ruby-keyword">true</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-i-verify_signature" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">verify_signature</span><span
+ class="method-args">(&block)</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+
+ <div class="method-source-code" id="verify_signature-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/verifiers/never.rb, line 14</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">verify_signature</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
+ <span class="ruby-keyword">true</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/Net/SSH/Version.html b/Net/SSH/Version.html
index ed3111a..c329ef2 100644
--- a/Net/SSH/Version.html
+++ b/Net/SSH/Version.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class Net::SSH::Version - net-ssh 4.2.0</title>
+<title>class Net::SSH::Version - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -254,7 +254,7 @@ href="Version.html">Version</a> instance with the given <code>major</code>,
<div class="method-source-code" id="5B-5D-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/version.rb, line 19</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/version.rb, line 20</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-operator">[]</span>(<span class="ruby-identifier">major</span>, <span class="ruby-identifier">minor</span>, <span class="ruby-identifier">tiny</span>, <span class="ruby-identifier">pre</span> = <span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">new</span>(<span class="ruby-identifier">major</span>, <span class="ruby-identifier">minor</span>, <span class="ruby-identifier">tiny</span>, <span class="ruby-identifier">pre</span>)
<span class="ruby-keyword">end</span></pre>
@@ -288,7 +288,7 @@ components.</p>
<div class="method-source-code" id="new-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/version.rb, line 26</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/version.rb, line 27</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">major</span>, <span class="ruby-identifier">minor</span>, <span class="ruby-identifier">tiny</span>, <span class="ruby-identifier">pre</span> = <span class="ruby-keyword">nil</span>)
<span class="ruby-ivar">@major</span>, <span class="ruby-ivar">@minor</span>, <span class="ruby-ivar">@tiny</span>, <span class="ruby-ivar">@pre</span> = <span class="ruby-identifier">major</span>, <span class="ruby-identifier">minor</span>, <span class="ruby-identifier">tiny</span>, <span class="ruby-identifier">pre</span>
<span class="ruby-keyword">end</span></pre>
@@ -329,7 +329,7 @@ components.</p>
<div class="method-source-code" id="3C-3D-3E-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/version.rb, line 31</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/version.rb, line 32</span>
<span class="ruby-keyword">def</span> <span class="ruby-operator">&lt;=&gt;</span>(<span class="ruby-identifier">version</span>)
<span class="ruby-identifier">to_i</span> <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-identifier">version</span>.<span class="ruby-identifier">to_i</span>
<span class="ruby-keyword">end</span></pre>
@@ -363,7 +363,7 @@ other version objects.</p>
<div class="method-source-code" id="to_i-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/version.rb, line 43</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/version.rb, line 44</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_i</span>
<span class="ruby-ivar">@to_i</span> <span class="ruby-operator">||=</span> <span class="ruby-ivar">@major</span> <span class="ruby-operator">*</span> <span class="ruby-value">1_000_000</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@minor</span> <span class="ruby-operator">*</span> <span class="ruby-value">1_000</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@tiny</span>
<span class="ruby-keyword">end</span></pre>
@@ -397,7 +397,7 @@ components are joined by the &#39;.&#39; character. E.g., 2.0.0.</p>
<div class="method-source-code" id="to_s-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/version.rb, line 37</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/version.rb, line 38</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_s</span>
<span class="ruby-ivar">@to_s</span> <span class="ruby-operator">||=</span> [<span class="ruby-ivar">@major</span>, <span class="ruby-ivar">@minor</span>, <span class="ruby-ivar">@tiny</span>, <span class="ruby-ivar">@pre</span>].<span class="ruby-identifier">compact</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">&quot;.&quot;</span>)
<span class="ruby-keyword">end</span></pre>
diff --git a/OpenSSL.html b/OpenSSL.html
index 5f11db5..5212bb1 100644
--- a/OpenSSL.html
+++ b/OpenSSL.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module OpenSSL - net-ssh 4.2.0</title>
+<title>module OpenSSL - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "./";
diff --git a/OpenSSL/BN.html b/OpenSSL/BN.html
index d006cd6..f409e0a 100644
--- a/OpenSSL/BN.html
+++ b/OpenSSL/BN.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class OpenSSL::BN - net-ssh 4.2.0</title>
+<title>class OpenSSL::BN - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
@@ -139,7 +139,7 @@ that which is required by the SSH2 protocol.</p>
<span class="ruby-keyword">else</span>
<span class="ruby-identifier">buf</span> = <span class="ruby-identifier">to_s</span>(<span class="ruby-value">2</span>)
<span class="ruby-keyword">if</span> <span class="ruby-identifier">buf</span>.<span class="ruby-identifier">getbyte</span>(<span class="ruby-value">0</span>)[<span class="ruby-value">7</span>] <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
- <span class="ruby-keyword">return</span> [<span class="ruby-identifier">buf</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>, <span class="ruby-value">0</span>, <span class="ruby-identifier">buf</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;NCA*&quot;</span>)
+ <span class="ruby-keyword">return</span> [<span class="ruby-identifier">buf</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>, <span class="ruby-value">0</span>, <span class="ruby-identifier">buf</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;NCA*&quot;</span>)
<span class="ruby-keyword">else</span>
<span class="ruby-keyword">return</span> [<span class="ruby-identifier">buf</span>.<span class="ruby-identifier">length</span>, <span class="ruby-identifier">buf</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&quot;NA*&quot;</span>)
<span class="ruby-keyword">end</span>
diff --git a/OpenSSL/PKey.html b/OpenSSL/PKey.html
index 0a7a6ff..ec268b0 100644
--- a/OpenSSL/PKey.html
+++ b/OpenSSL/PKey.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>module OpenSSL::PKey - net-ssh 4.2.0</title>
+<title>module OpenSSL::PKey - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
diff --git a/OpenSSL/PKey/DH.html b/OpenSSL/PKey/DH.html
index 56354ff..a384514 100644
--- a/OpenSSL/PKey/DH.html
+++ b/OpenSSL/PKey/DH.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class OpenSSL::PKey::DH - net-ssh 4.2.0</title>
+<title>class OpenSSL::PKey::DH - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -86,10 +86,10 @@
<section class="description">
-<p>This class is originally defined in the <a href="OpenSSL.html">OpenSSL</a>
-module. As needed, methods have been added to it by the <a
-href="../../Net/SSH.html">Net::SSH</a> module for convenience in dealing
-with SSH functionality.</p>
+<p>This class is originally defined in the <a
+href="../../OpenSSL.html">OpenSSL</a> module. As needed, methods have been
+added to it by the <a href="../../Net/SSH.html">Net::SSH</a> module for
+convenience in dealing with SSH functionality.</p>
</section>
@@ -132,12 +132,12 @@ lifted more-or-less directly from OpenSSH, dh.c, dh_pub_is_valid.)</p>
<div class="method-source-code" id="valid-3F-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 42</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 38</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">valid?</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">pub_key</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">pub_key</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">0</span>
<span class="ruby-identifier">bits_set</span> = <span class="ruby-value">0</span>
<span class="ruby-identifier">pub_key</span>.<span class="ruby-identifier">num_bits</span>.<span class="ruby-identifier">times</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span> <span class="ruby-identifier">bits_set</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">pub_key</span>.<span class="ruby-identifier">bit_set?</span>(<span class="ruby-identifier">i</span>) }
- <span class="ruby-keyword">return</span> ( <span class="ruby-identifier">bits_set</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">1</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">pub_key</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">p</span> )
+ <span class="ruby-keyword">return</span> (<span class="ruby-identifier">bits_set</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">1</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">pub_key</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">p</span>)
<span class="ruby-keyword">end</span></pre>
</div>
diff --git a/OpenSSL/PKey/DSA.html b/OpenSSL/PKey/DSA.html
index d13cec6..d2e9f04 100644
--- a/OpenSSL/PKey/DSA.html
+++ b/OpenSSL/PKey/DSA.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class OpenSSL::PKey::DSA - net-ssh 4.2.0</title>
+<title>class OpenSSL::PKey::DSA - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -94,10 +94,10 @@
<section class="description">
-<p>This class is originally defined in the <a href="OpenSSL.html">OpenSSL</a>
-module. As needed, methods have been added to it by the <a
-href="../../Net/SSH.html">Net::SSH</a> module for convenience in dealing
-with SSH functionality.</p>
+<p>This class is originally defined in the <a
+href="../../OpenSSL.html">OpenSSL</a> module. As needed, methods have been
+added to it by the <a href="../../Net/SSH.html">Net::SSH</a> module for
+convenience in dealing with SSH functionality.</p>
</section>
@@ -139,20 +139,18 @@ with SSH functionality.</p>
<div class="method-source-code" id="ssh_do_sign-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 115</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 108</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_do_sign</span>(<span class="ruby-identifier">data</span>)
- <span class="ruby-identifier">sig</span> = <span class="ruby-identifier">sign</span>( <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">DSS1</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">data</span>)
- <span class="ruby-identifier">a1sig</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span>.<span class="ruby-identifier">decode</span>( <span class="ruby-identifier">sig</span> )
+ <span class="ruby-identifier">sig</span> = <span class="ruby-identifier">sign</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA1</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">data</span>)
+ <span class="ruby-identifier">a1sig</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span>.<span class="ruby-identifier">decode</span>(<span class="ruby-identifier">sig</span>)
<span class="ruby-identifier">sig_r</span> = <span class="ruby-identifier">a1sig</span>.<span class="ruby-identifier">value</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">value</span>.<span class="ruby-identifier">to_s</span>(<span class="ruby-value">2</span>)
<span class="ruby-identifier">sig_s</span> = <span class="ruby-identifier">a1sig</span>.<span class="ruby-identifier">value</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">value</span>.<span class="ruby-identifier">to_s</span>(<span class="ruby-value">2</span>)
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">20</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">20</span>
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">DSAError</span>, <span class="ruby-string">&quot;bad sig size&quot;</span>
- <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">DSAError</span>, <span class="ruby-string">&quot;bad sig size&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">20</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">20</span>
- <span class="ruby-identifier">sig_r</span> = <span class="ruby-string">&quot;\0&quot;</span> <span class="ruby-operator">*</span> ( <span class="ruby-value">20</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">length</span> ) <span class="ruby-operator">+</span> <span class="ruby-identifier">sig_r</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">20</span>
- <span class="ruby-identifier">sig_s</span> = <span class="ruby-string">&quot;\0&quot;</span> <span class="ruby-operator">*</span> ( <span class="ruby-value">20</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">length</span> ) <span class="ruby-operator">+</span> <span class="ruby-identifier">sig_s</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">20</span>
+ <span class="ruby-identifier">sig_r</span> = <span class="ruby-string">&quot;\0&quot;</span> <span class="ruby-operator">*</span> (<span class="ruby-value">20</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">length</span>) <span class="ruby-operator">+</span> <span class="ruby-identifier">sig_r</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">20</span>
+ <span class="ruby-identifier">sig_s</span> = <span class="ruby-string">&quot;\0&quot;</span> <span class="ruby-operator">*</span> (<span class="ruby-value">20</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">length</span>) <span class="ruby-operator">+</span> <span class="ruby-identifier">sig_s</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">20</span>
<span class="ruby-keyword">return</span> <span class="ruby-identifier">sig_r</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">sig_s</span>
<span class="ruby-keyword">end</span></pre>
@@ -185,15 +183,15 @@ with SSH functionality.</p>
<div class="method-source-code" id="ssh_do_verify-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 104</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 97</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_do_verify</span>(<span class="ruby-identifier">sig</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-identifier">sig_r</span> = <span class="ruby-identifier">sig</span>[<span class="ruby-value">0</span>,<span class="ruby-value">20</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&quot;H*&quot;</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_i</span>(<span class="ruby-value">16</span>)
<span class="ruby-identifier">sig_s</span> = <span class="ruby-identifier">sig</span>[<span class="ruby-value">20</span>,<span class="ruby-value">20</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&quot;H*&quot;</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_i</span>(<span class="ruby-value">16</span>)
<span class="ruby-identifier">a1sig</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Sequence</span>([
- <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Integer</span>(<span class="ruby-identifier">sig_r</span>),
- <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Integer</span>(<span class="ruby-identifier">sig_s</span>)
- ])
- <span class="ruby-keyword">return</span> <span class="ruby-identifier">verify</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">DSS1</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">a1sig</span>.<span class="ruby-identifier">to_der</span>, <span class="ruby-identifier">data</span>)
+ <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Integer</span>(<span class="ruby-identifier">sig_r</span>),
+ <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Integer</span>(<span class="ruby-identifier">sig_s</span>)
+ ])
+ <span class="ruby-keyword">return</span> <span class="ruby-identifier">verify</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA1</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">a1sig</span>.<span class="ruby-identifier">to_der</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span></pre>
</div>
@@ -224,7 +222,7 @@ with SSH functionality.</p>
<div class="method-source-code" id="ssh_signature_type-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 93</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 86</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_signature_type</span>
<span class="ruby-identifier">ssh_type</span>
<span class="ruby-keyword">end</span></pre>
@@ -258,7 +256,7 @@ SSH2 protocol.</p>
<div class="method-source-code" id="ssh_type-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 89</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 82</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_type</span>
<span class="ruby-string">&quot;ssh-dss&quot;</span>
<span class="ruby-keyword">end</span></pre>
@@ -291,7 +289,7 @@ SSH2 protocol.</p>
<div class="method-source-code" id="to_blob-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 98</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 91</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_blob</span>
<span class="ruby-ivar">@blob</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:string</span>, <span class="ruby-identifier">ssh_type</span>,
<span class="ruby-value">:bignum</span>, <span class="ruby-identifier">p</span>, <span class="ruby-value">:bignum</span>, <span class="ruby-identifier">q</span>, <span class="ruby-value">:bignum</span>, <span class="ruby-identifier">g</span>, <span class="ruby-value">:bignum</span>, <span class="ruby-identifier">pub_key</span>).<span class="ruby-identifier">to_s</span>
diff --git a/OpenSSL/PKey/EC.html b/OpenSSL/PKey/EC.html
index abe4868..0afcb40 100644
--- a/OpenSSL/PKey/EC.html
+++ b/OpenSSL/PKey/EC.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class OpenSSL::PKey::EC - net-ssh 4.2.0</title>
+<title>class OpenSSL::PKey::EC - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -96,10 +96,10 @@
<section class="description">
-<p>This class is originally defined in the <a href="OpenSSL.html">OpenSSL</a>
-module. As needed, methods have been added to it by the <a
-href="../../Net/SSH.html">Net::SSH</a> module for convenience in dealing
-with SSH functionality.</p>
+<p>This class is originally defined in the <a
+href="../../OpenSSL.html">OpenSSL</a> module. As needed, methods have been
+added to it by the <a href="../../Net/SSH.html">Net::SSH</a> module for
+convenience in dealing with SSH functionality.</p>
</section>
@@ -160,12 +160,14 @@ with SSH functionality.</p>
<div class="method-source-code" id="read_keyblob-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 150</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 140</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read_keyblob</span>(<span class="ruby-identifier">curve_name_in_type</span>, <span class="ruby-identifier">buffer</span>)
<span class="ruby-identifier">curve_name_in_key</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>
+
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">curve_name_in_type</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">curve_name_in_key</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;curve name mismatched (`#{curve_name_in_key}&#39; with `#{curve_name_in_type}&#39;)&quot;</span>
<span class="ruby-keyword">end</span>
+
<span class="ruby-identifier">public_key_oct</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">read_string</span>
<span class="ruby-keyword">begin</span>
<span class="ruby-identifier">key</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">EC</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">EC</span><span class="ruby-operator">::</span><span class="ruby-constant">CurveNameAlias</span>[<span class="ruby-identifier">curve_name_in_key</span>])
@@ -177,7 +179,6 @@ with SSH functionality.</p>
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">ECError</span>
<span class="ruby-identifier">raise</span> <span class="ruby-constant">NotImplementedError</span>, <span class="ruby-node">&quot;unsupported key type `#{type}&#39;&quot;</span>
<span class="ruby-keyword">end</span>
-
<span class="ruby-keyword">end</span></pre>
</div>
@@ -216,16 +217,16 @@ with SSH functionality.</p>
<div class="method-source-code" id="ssh_do_sign-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 230</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 221</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_do_sign</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">digest</span> = <span class="ruby-identifier">digester</span>.<span class="ruby-identifier">digest</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">sig</span> = <span class="ruby-identifier">dsa_sign_asn1</span>(<span class="ruby-identifier">digest</span>)
- <span class="ruby-identifier">a1sig</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span>.<span class="ruby-identifier">decode</span>( <span class="ruby-identifier">sig</span> )
+ <span class="ruby-identifier">a1sig</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span>.<span class="ruby-identifier">decode</span>(<span class="ruby-identifier">sig</span>)
<span class="ruby-identifier">sig_r</span> = <span class="ruby-identifier">a1sig</span>.<span class="ruby-identifier">value</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">value</span>
<span class="ruby-identifier">sig_s</span> = <span class="ruby-identifier">a1sig</span>.<span class="ruby-identifier">value</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">value</span>
- <span class="ruby-keyword">return</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:bignum</span>, <span class="ruby-identifier">sig_r</span>, <span class="ruby-value">:bignum</span>, <span class="ruby-identifier">sig_s</span>).<span class="ruby-identifier">to_s</span>
+ <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:bignum</span>, <span class="ruby-identifier">sig_r</span>, <span class="ruby-value">:bignum</span>, <span class="ruby-identifier">sig_s</span>).<span class="ruby-identifier">to_s</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -256,26 +257,26 @@ with SSH functionality.</p>
<div class="method-source-code" id="ssh_do_verify-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 204</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 195</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_do_verify</span>(<span class="ruby-identifier">sig</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-identifier">digest</span> = <span class="ruby-identifier">digester</span>.<span class="ruby-identifier">digest</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">a1sig</span> = <span class="ruby-keyword">nil</span>
<span class="ruby-keyword">begin</span>
- <span class="ruby-identifier">sig_r_len</span> = <span class="ruby-identifier">sig</span>[<span class="ruby-value">0</span>,<span class="ruby-value">4</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&quot;H*&quot;</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_i</span>(<span class="ruby-value">16</span>)
- <span class="ruby-identifier">sig_l_len</span> = <span class="ruby-identifier">sig</span>[<span class="ruby-value">4</span><span class="ruby-operator">+</span><span class="ruby-identifier">sig_r_len</span>,<span class="ruby-value">4</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&quot;H*&quot;</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_i</span>(<span class="ruby-value">16</span>)
+ <span class="ruby-identifier">sig_r_len</span> = <span class="ruby-identifier">sig</span>[<span class="ruby-value">0</span>, <span class="ruby-value">4</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;H*&#39;</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_i</span>(<span class="ruby-value">16</span>)
+ <span class="ruby-identifier">sig_l_len</span> = <span class="ruby-identifier">sig</span>[<span class="ruby-value">4</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">sig_r_len</span>, <span class="ruby-value">4</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;H*&#39;</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_i</span>(<span class="ruby-value">16</span>)
- <span class="ruby-identifier">sig_r</span> = <span class="ruby-identifier">sig</span>[<span class="ruby-value">4</span>,<span class="ruby-identifier">sig_r_len</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&quot;H*&quot;</span>)[<span class="ruby-value">0</span>]
- <span class="ruby-identifier">sig_s</span> = <span class="ruby-identifier">sig</span>[<span class="ruby-value">4</span><span class="ruby-operator">+</span><span class="ruby-identifier">sig_r_len</span><span class="ruby-operator">+</span><span class="ruby-value">4</span>,<span class="ruby-identifier">sig_l_len</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&quot;H*&quot;</span>)[<span class="ruby-value">0</span>]
+ <span class="ruby-identifier">sig_r</span> = <span class="ruby-identifier">sig</span>[<span class="ruby-value">4</span>, <span class="ruby-identifier">sig_r_len</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;H*&#39;</span>)[<span class="ruby-value">0</span>]
+ <span class="ruby-identifier">sig_s</span> = <span class="ruby-identifier">sig</span>[<span class="ruby-value">4</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">sig_r_len</span> <span class="ruby-operator">+</span> <span class="ruby-value">4</span>, <span class="ruby-identifier">sig_l_len</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;H*&#39;</span>)[<span class="ruby-value">0</span>]
<span class="ruby-identifier">a1sig</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Sequence</span>([
- <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Integer</span>(<span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">to_i</span>(<span class="ruby-value">16</span>)),
- <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Integer</span>(<span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">to_i</span>(<span class="ruby-value">16</span>)),
- ])
- <span class="ruby-keyword">rescue</span>
+ <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Integer</span>(<span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">to_i</span>(<span class="ruby-value">16</span>)),
+ <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Integer</span>(<span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">to_i</span>(<span class="ruby-value">16</span>))
+ ])
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">StandardError</span>
<span class="ruby-keyword">end</span>
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">a1sig</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">a1sig</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
<span class="ruby-keyword">else</span>
<span class="ruby-identifier">dsa_verify_asn1</span>(<span class="ruby-identifier">digest</span>, <span class="ruby-identifier">a1sig</span>.<span class="ruby-identifier">to_der</span>)
@@ -310,7 +311,7 @@ with SSH functionality.</p>
<div class="method-source-code" id="ssh_signature_type-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 175</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 166</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_signature_type</span>
<span class="ruby-identifier">ssh_type</span>
<span class="ruby-keyword">end</span></pre>
@@ -344,9 +345,9 @@ with SSH functionality.</p>
<div class="method-source-code" id="ssh_type-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 171</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 162</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_type</span>
- <span class="ruby-node">&quot;ecdsa-sha2-#{CurveNameAliasInv[self.group.curve_name]}&quot;</span>
+ <span class="ruby-node">&quot;ecdsa-sha2-#{CurveNameAliasInv[group.curve_name]}&quot;</span>
<span class="ruby-keyword">end</span></pre>
</div>
@@ -377,11 +378,11 @@ with SSH functionality.</p>
<div class="method-source-code" id="to_blob-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 196</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 187</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_blob</span>
<span class="ruby-ivar">@blob</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:string</span>, <span class="ruby-identifier">ssh_type</span>,
- <span class="ruby-value">:string</span>, <span class="ruby-constant">CurveNameAliasInv</span>[<span class="ruby-keyword">self</span>.<span class="ruby-identifier">group</span>.<span class="ruby-identifier">curve_name</span>],
- <span class="ruby-value">:mstring</span>, <span class="ruby-keyword">self</span>.<span class="ruby-identifier">public_key</span>.<span class="ruby-identifier">to_bn</span>.<span class="ruby-identifier">to_s</span>(<span class="ruby-value">2</span>)).<span class="ruby-identifier">to_s</span>
+ <span class="ruby-value">:string</span>, <span class="ruby-constant">CurveNameAliasInv</span>[<span class="ruby-identifier">group</span>.<span class="ruby-identifier">curve_name</span>],
+ <span class="ruby-value">:mstring</span>, <span class="ruby-identifier">public_key</span>.<span class="ruby-identifier">to_bn</span>.<span class="ruby-identifier">to_s</span>(<span class="ruby-value">2</span>)).<span class="ruby-identifier">to_s</span>
<span class="ruby-ivar">@blob</span>
<span class="ruby-keyword">end</span></pre>
</div>
diff --git a/OpenSSL/PKey/EC/Point.html b/OpenSSL/PKey/EC/Point.html
new file mode 100644
index 0000000..4be6a0c
--- /dev/null
+++ b/OpenSSL/PKey/EC/Point.html
@@ -0,0 +1,193 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>class OpenSSL::PKey::EC::Point - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "../../../";
+ var index_rel_prefix = "../../../";
+</script>
+
+<script src="../../../js/jquery.js"></script>
+<script src="../../../js/darkfish.js"></script>
+
+<link href="../../../css/fonts.css" rel="stylesheet">
+<link href="../../../css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="class">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="../../../index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="../../../table_of_contents.html#pages">Pages</a>
+ <a href="../../../table_of_contents.html#classes">Classes</a>
+ <a href="../../../table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+
+ <div id="class-metadata">
+
+ <div id="parent-class-section" class="nav-section">
+ <h3>Parent</h3>
+
+
+ <p class="link">Object
+
+</div>
+
+
+
+ <!-- Method Quickref -->
+<div id="method-list-section" class="nav-section">
+ <h3>Methods</h3>
+
+ <ul class="link-list" role="directory">
+
+ <li ><a href="#method-i-ssh_type">#ssh_type</a>
+
+ <li ><a href="#method-i-to_blob">#to_blob</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-labelledby="class-OpenSSL::PKey::EC::Point">
+ <h1 id="class-OpenSSL::PKey::EC::Point" class="class">
+ class OpenSSL::PKey::EC::Point
+ </h1>
+
+ <section class="description">
+
+ </section>
+
+
+
+
+ <section id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
+ <header>
+ <h3>Public Instance Methods</h3>
+ </header>
+
+
+ <div id="method-i-ssh_type" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">ssh_type</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the description of this key type used by the SSH2 protocol, like
+“ecdsa-sha2-nistp256”</p>
+
+
+
+
+ <div class="method-source-code" id="ssh_type-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 235</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_type</span>
+ <span class="ruby-node">&quot;ecdsa-sha2-#{CurveNameAliasInv[group.curve_name]}&quot;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ <div id="method-i-to_blob" class="method-detail ">
+
+ <div class="method-heading">
+ <span class="method-name">to_blob</span><span
+ class="method-args">()</span>
+
+ <span class="method-click-advice">click to toggle source</span>
+
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Converts the key to a blob, according to the SSH2 protocol.</p>
+
+
+
+
+ <div class="method-source-code" id="to_blob-source">
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 240</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_blob</span>
+ <span class="ruby-ivar">@blob</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:string</span>, <span class="ruby-identifier">ssh_type</span>,
+ <span class="ruby-value">:string</span>, <span class="ruby-constant">CurveNameAliasInv</span>[<span class="ruby-identifier">group</span>.<span class="ruby-identifier">curve_name</span>],
+ <span class="ruby-value">:mstring</span>, <span class="ruby-identifier">to_bn</span>.<span class="ruby-identifier">to_s</span>(<span class="ruby-value">2</span>)).<span class="ruby-identifier">to_s</span>
+ <span class="ruby-ivar">@blob</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+
+ </div>
+
+
+
+
+ </div>
+
+
+ </section>
+
+ </section>
+</main>
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/OpenSSL/PKey/PKey.html b/OpenSSL/PKey/PKey.html
index e839a34..12ad858 100644
--- a/OpenSSL/PKey/PKey.html
+++ b/OpenSSL/PKey/PKey.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class OpenSSL::PKey::PKey - net-ssh 4.2.0</title>
+<title>class OpenSSL::PKey::PKey - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -65,17 +65,7 @@
- <!-- Method Quickref -->
-<div id="method-list-section" class="nav-section">
- <h3>Methods</h3>
-
- <ul class="link-list" role="directory">
-
- <li ><a href="#method-i-fingerprint">#fingerprint</a>
- </ul>
-</div>
-
</div>
</nav>
@@ -101,47 +91,6 @@
- <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
- <header>
- <h3>Public Instance Methods</h3>
- </header>
-
-
- <div id="method-i-fingerprint" class="method-detail ">
-
- <div class="method-heading">
- <span class="method-name">fingerprint</span><span
- class="method-args">()</span>
-
- <span class="method-click-advice">click to toggle source</span>
-
- </div>
-
-
- <div class="method-description">
-
-
-
-
-
-
- <div class="method-source-code" id="fingerprint-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 30</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">fingerprint</span>
- <span class="ruby-ivar">@fingerprint</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">MD5</span>.<span class="ruby-identifier">hexdigest</span>(<span class="ruby-identifier">to_blob</span>).<span class="ruby-identifier">scan</span>(<span class="ruby-regexp">/../</span>).<span class="ruby-identifier">join</span>(<span class="ruby-string">&quot;:&quot;</span>)
-<span class="ruby-keyword">end</span></pre>
- </div>
-
- </div>
-
-
-
-
- </div>
-
-
- </section>
-
</section>
</main>
diff --git a/OpenSSL/PKey/RSA.html b/OpenSSL/PKey/RSA.html
index 9e9ce70..c27af14 100644
--- a/OpenSSL/PKey/RSA.html
+++ b/OpenSSL/PKey/RSA.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class OpenSSL::PKey::RSA - net-ssh 4.2.0</title>
+<title>class OpenSSL::PKey::RSA - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
@@ -94,10 +94,10 @@
<section class="description">
-<p>This class is originally defined in the <a href="OpenSSL.html">OpenSSL</a>
-module. As needed, methods have been added to it by the <a
-href="../../Net/SSH.html">Net::SSH</a> module for convenience in dealing
-with SSH functionality.</p>
+<p>This class is originally defined in the <a
+href="../../OpenSSL.html">OpenSSL</a> module. As needed, methods have been
+added to it by the <a href="../../Net/SSH.html">Net::SSH</a> module for
+convenience in dealing with SSH functionality.</p>
</section>
@@ -139,7 +139,7 @@ with SSH functionality.</p>
<div class="method-source-code" id="ssh_do_sign-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 77</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 71</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_do_sign</span>(<span class="ruby-identifier">data</span>)
<span class="ruby-identifier">sign</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA1</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span></pre>
@@ -172,7 +172,7 @@ with SSH functionality.</p>
<div class="method-source-code" id="ssh_do_verify-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 72</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 66</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_do_verify</span>(<span class="ruby-identifier">sig</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-identifier">verify</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA1</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">sig</span>, <span class="ruby-identifier">data</span>)
<span class="ruby-keyword">end</span></pre>
@@ -205,7 +205,7 @@ with SSH functionality.</p>
<div class="method-source-code" id="ssh_signature_type-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 62</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 56</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_signature_type</span>
<span class="ruby-identifier">ssh_type</span>
<span class="ruby-keyword">end</span></pre>
@@ -239,7 +239,7 @@ SSH2 protocol.</p>
<div class="method-source-code" id="ssh_type-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 58</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 52</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_type</span>
<span class="ruby-string">&quot;ssh-rsa&quot;</span>
<span class="ruby-keyword">end</span></pre>
@@ -272,7 +272,7 @@ SSH2 protocol.</p>
<div class="method-source-code" id="to_blob-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 67</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 61</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_blob</span>
<span class="ruby-ivar">@blob</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:string</span>, <span class="ruby-identifier">ssh_type</span>, <span class="ruby-value">:bignum</span>, <span class="ruby-identifier">e</span>, <span class="ruby-value">:bignum</span>, <span class="ruby-identifier">n</span>).<span class="ruby-identifier">to_s</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/README_md.html b/README_md.html
new file mode 100644
index 0000000..5fcd6f0
--- /dev/null
+++ b/README_md.html
@@ -0,0 +1,429 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta charset="UTF-8">
+
+<title>README - net-ssh 6.0.0.beta1</title>
+
+<script type="text/javascript">
+ var rdoc_rel_prefix = "./";
+ var index_rel_prefix = "./";
+</script>
+
+<script src="./js/jquery.js"></script>
+<script src="./js/darkfish.js"></script>
+
+<link href="./css/fonts.css" rel="stylesheet">
+<link href="./css/rdoc.css" rel="stylesheet">
+
+
+
+<body id="top" role="document" class="file">
+<nav role="navigation">
+ <div id="project-navigation">
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
+ <h2>
+ <a href="./index.html" rel="home">Home</a>
+ </h2>
+
+ <div id="table-of-contents-navigation">
+ <a href="./table_of_contents.html#pages">Pages</a>
+ <a href="./table_of_contents.html#classes">Classes</a>
+ <a href="./table_of_contents.html#methods">Methods</a>
+ </div>
+</div>
+
+ <div id="search-section" role="search" class="project-section initially-hidden">
+ <form action="#" method="get" accept-charset="utf-8">
+ <div id="search-field-wrapper">
+ <input id="search-field" role="combobox" aria-label="Search"
+ aria-autocomplete="list" aria-controls="search-results"
+ type="text" name="search" placeholder="Search" spellcheck="false"
+ title="Type to search, Up and Down to navigate, Enter to load">
+ </div>
+
+ <ul id="search-results" aria-label="Search Results"
+ aria-busy="false" aria-expanded="false"
+ aria-atomic="false" class="initially-hidden"></ul>
+ </form>
+</div>
+
+ </div>
+
+
+<div class="nav-section">
+ <h3>Table of Contents</h3>
+
+ <ul class="link-list" role="directory">
+ <li><a href="#label-Net-3A-3ASSH+6.x">Net::SSH 6.x</a>
+ <li><a href="#label-DESCRIPTION-3A">DESCRIPTION:</a>
+ <li><a href="#label-FEATURES-3A">FEATURES:</a>
+ <li><a href="#label-Supported+Algorithms">Supported Algorithms</a>
+ <li><a href="#label-Host+Keys">Host Keys</a>
+ <li><a href="#label-Key+Exchange">Key Exchange</a>
+ <li><a href="#label-Encryption+algorithms+-28ciphers-29">Encryption algorithms (ciphers)</a>
+ <li><a href="#label-Message+Authentication+Code+algorithms">Message Authentication Code algorithms</a>
+ <li><a href="#label-SYNOPSIS-3A">SYNOPSIS:</a>
+ <li><a href="#label-REQUIREMENTS-3A">REQUIREMENTS:</a>
+ <li><a href="#label-INSTALL-3A">INSTALL:</a>
+ <li><a href="#label-RUBY+SUPPORT">RUBY SUPPORT</a>
+ <li><a href="#label-RUNNING+TESTS">RUNNING TESTS</a>
+ <li><a href="#label-BUILDING+GEM">BUILDING GEM</a>
+ <li><a href="#label-GEM+SIGNING+-28for+maintainers-29">GEM SIGNING (for maintainers)</a>
+ <li><a href="#label-CREDITS">CREDITS</a>
+ <li><a href="#label-Contributors">Contributors</a>
+ <li><a href="#label-Backers">Backers</a>
+ <li><a href="#label-Sponsors">Sponsors</a>
+ <li><a href="#label-LICENSE-3A">LICENSE:</a>
+ </ul>
+</div>
+
+
+ <div id="project-metadata">
+ <div id="fileindex-section" class="nav-section">
+ <h3>Pages</h3>
+
+ <ul class="link-list">
+
+ <li><a href="./CHANGES_txt.html">CHANGES</a>
+
+ <li><a href="./LICENSE_txt.html">LICENSE</a>
+
+ <li><a href="./README_md.html">README</a>
+
+ <li><a href="./THANKS_txt.html">THANKS</a>
+
+ </ul>
+</div>
+
+ </div>
+</nav>
+
+<main role="main" aria-label="Page README.md">
+
+<p><a href="https://badge.fury.io/rb/net-ssh"><img
+src="https://badge.fury.io/rb/net-ssh.svg"></a> <a
+href="https://gitter.im/net-ssh/net-ssh?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge"><img
+src="https://badges.gitter.im/net-ssh/net-ssh.svg"></a> <a
+href="https://travis-ci.org/net-ssh/net-ssh"><img
+src="https://travis-ci.org/net-ssh/net-ssh.svg?branch=master"></a> <a
+href="https://codecov.io/gh/net-ssh/net-ssh"><img
+src="https://codecov.io/gh/net-ssh/net-ssh/branch/master/graph/badge.svg"></a>
+<a href="#backers"><img
+src="https://opencollective.com/net-ssh/backers/badge.svg"></a>] <a
+href="#sponsors"><img
+src="https://opencollective.com/net-ssh/sponsors/badge.svg"></a></p>
+
+<h1 id="label-Net-3A-3ASSH+6.x"><a href="Net/SSH.html">Net::SSH</a> 6.x<span><a href="#label-Net-3A-3ASSH+6.x">&para;</a> <a href="#top">&uarr;</a></span></h1>
+<ul><li>
+<p>Docs: <a
+href="http://net-ssh.github.com/net-ssh">net-ssh.github.com/net-ssh</a></p>
+</li><li>
+<p>Issues: <a
+href="https://github.com/net-ssh/net-ssh/issues">github.com/net-ssh/net-ssh/issues</a></p>
+</li><li>
+<p>Codes: <a
+href="https://github.com/net-ssh/net-ssh">github.com/net-ssh/net-ssh</a></p>
+</li><li>
+<p>Email: net-ssh@solutious.com</p>
+</li></ul>
+
+<p><em>As of v2.6.4, all gem releases are signed. See <a
+href="#install">INSTALL</a>.</em></p>
+
+<h2 id="label-DESCRIPTION-3A">DESCRIPTION:<span><a href="#label-DESCRIPTION-3A">&para;</a> <a href="#top">&uarr;</a></span></h2>
+
+<p><a href="Net/SSH.html">Net::SSH</a> is a pure-Ruby implementation of the
+SSH2 client protocol. It allows you to write programs that invoke and
+interact with processes on remote servers, via SSH2.</p>
+
+<h2 id="label-FEATURES-3A">FEATURES:<span><a href="#label-FEATURES-3A">&para;</a> <a href="#top">&uarr;</a></span></h2>
+<ul><li>
+<p>Execute processes on remote servers and capture their output</p>
+</li><li>
+<p>Run multiple processes in parallel over a single SSH connection</p>
+</li><li>
+<p>Support for SSH subsystems</p>
+</li><li>
+<p>Forward local and remote ports via an SSH connection</p>
+</li></ul>
+
+<h2 id="label-Supported+Algorithms">Supported Algorithms<span><a href="#label-Supported+Algorithms">&para;</a> <a href="#top">&uarr;</a></span></h2>
+
+<p><a href="Net/SSH.html">Net::SSH</a> 6.0 disables by default the usage of
+weak algorithms. We strongly recommend that you install a servers&#39;s
+version that supports the latest algorithms.</p>
+
+<p>It is possible to return to the previous behavior by adding the option :
+<code>append_all_supported_algorithms: true</code></p>
+
+<p>Unsecure algoritms will be definively remove in <a
+href="Net/SSH.html">Net::SSH</a> 7.*.</p>
+
+<h3 id="label-Host+Keys">Host Keys<span><a href="#label-Host+Keys">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>| Name | Support | Details | |———————-|———————–|———-| | ssh-rsa | OK | | |
+ssh-ed25519 | OK | Require the gem <code>ed25519</code> | |
+ecdsa-sha2-nistp521 | OK | <a href="https://safecurves.cr.yp.to/">using
+weak elliptic curves</a> | | ecdsa-sha2-nistp384 | OK | <a
+href="https://safecurves.cr.yp.to/">using weak elliptic curves</a> | |
+ecdsa-sha2-nistp256 | OK | <a href="https://safecurves.cr.yp.to/">using
+weak elliptic curves</a> | | ssh-dss | Deprecated in 6.0 | unsecure, will
+be removed in 7.0 |</p>
+
+<h3 id="label-Key+Exchange">Key Exchange<span><a href="#label-Key+Exchange">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>| Name | Support | Details | |————————————–|———————–|———-| |
+curve25519-sha256 | OK | Require the gem <code>x25519</code> | |
+ecdh-sha2-nistp521 | OK | <a href="https://safecurves.cr.yp.to/">using weak
+elliptic curves</a> | | ecdh-sha2-nistp384 | OK | <a
+href="https://safecurves.cr.yp.to/">using weak elliptic curves</a> | |
+ecdh-sha2-nistp256 | OK | <a href="https://safecurves.cr.yp.to/">using weak
+elliptic curves</a> | | diffie-hellman-group1-sha1 | Deprecated in 6.0 |
+unsecure, will be removed in 7.0 | | diffie-hellman-group14-sha1 | OK | | |
+diffie-hellman-group-exchange-sha1 | Deprecated in 6.0 | unsecure, will be
+removed in 7.0 | | diffie-hellman-group-exchange-sha256 | OK | |</p>
+
+<h3 id="label-Encryption+algorithms+-28ciphers-29">Encryption algorithms (ciphers)<span><a href="#label-Encryption+algorithms+-28ciphers-29">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>| Name | Support | Details | |————————————–|———————–|———-| | aes256-ctr /
+aes192-ctr / aes128-ctr | OK | <a href="https://safecurves.cr.yp.to/">using
+weak elliptic curves</a> | | aes256-cbc / aes192-cbc / aes128-cbc |
+Deprecated in 6.0 | unsecure, will be removed in 7.0 | |
+rijndael-cbc@lysator.liu.se | Deprecated in 6.0 | unsecure, will be removed
+in 7.0 | | blowfish-ctr blowfish-cbc | Deprecated in 6.0 | unsecure, will
+be removed in 7.0 | | cast128-ctr cast128-cbc | Deprecated in 6.0 |
+unsecure, will be removed in 7.0 | | 3des-ctr 3des-cbc | Deprecated in 6.0
+| unsecure, will be removed in 7.0 | | idea-cbc | Deprecated in 6.0 |
+unsecure, will be removed in 7.0 | | none | Deprecated in 6.0 | unsecure,
+will be removed in 7.0 |</p>
+
+<h3 id="label-Message+Authentication+Code+algorithms">Message Authentication Code algorithms<span><a href="#label-Message+Authentication+Code+algorithms">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>| Name | Support | Details | |———————-|———————–|———-| | hmac-sha2-512-etm |
+OK | | | hmac-sha2-256-etm | OK | | | hmac-sha2-512 | OK | | |
+hmac-sha2-256 | OK | | | hmac-sha2-512-96 | Deprecated in 6.0 | removed
+from the specification, will be removed in 7.0 | | hmac-sha2-256-96 |
+Deprecated in 6.0 | removed from the specification, will be removed in 7.0
+| | hmac-sha1 | OK | for backward compatibility | | hmac-sha1-96 |
+Deprecated in 6.0 | unsecure, will be removed in 7.0 | | hmac-ripemd160 |
+Deprecated in 6.0 | unsecure, will be removed in 7.0 | | hmac-md5 |
+Deprecated in 6.0 | unsecure, will be removed in 7.0 | | hmac-md5-96 |
+Deprecated in 6.0 | unsecure, will be removed in 7.0 | | none | Deprecated
+in 6.0 | unsecure, will be removed in 7.0 |</p>
+
+<h2 id="label-SYNOPSIS-3A">SYNOPSIS:<span><a href="#label-SYNOPSIS-3A">&para;</a> <a href="#top">&uarr;</a></span></h2>
+
+<p>In a nutshell:</p>
+
+<pre class="ruby"><span class="ruby-identifier">require</span> <span class="ruby-string">&#39;net/ssh&#39;</span>
+
+<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span>.<span class="ruby-identifier">start</span>(<span class="ruby-string">&#39;host&#39;</span>, <span class="ruby-string">&#39;user&#39;</span>, <span class="ruby-identifier">password</span><span class="ruby-operator">:</span> <span class="ruby-string">&quot;password&quot;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ssh</span><span class="ruby-operator">|</span>
+<span class="ruby-comment"># capture all stderr and stdout output from a remote process</span>
+<span class="ruby-identifier">output</span> = <span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec!</span>(<span class="ruby-string">&quot;hostname&quot;</span>)
+<span class="ruby-identifier">puts</span> <span class="ruby-identifier">output</span>
+
+<span class="ruby-comment"># capture only stdout matching a particular pattern</span>
+<span class="ruby-identifier">stdout</span> = <span class="ruby-string">&quot;&quot;</span>
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec!</span>(<span class="ruby-string">&quot;ls -l /home/jamis&quot;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">channel</span>, <span class="ruby-identifier">stream</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">stdout</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">data</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">stream</span> <span class="ruby-operator">==</span> :<span class="ruby-identifier">stdout</span>
+<span class="ruby-keyword">end</span>
+<span class="ruby-identifier">puts</span> <span class="ruby-identifier">stdout</span>
+
+<span class="ruby-comment"># run multiple processes in parallel to completion</span>
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec</span> <span class="ruby-string">&quot;sed ...&quot;</span>
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec</span> <span class="ruby-string">&quot;awk ...&quot;</span>
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec</span> <span class="ruby-string">&quot;rm -rf ...&quot;</span>
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">loop</span>
+
+<span class="ruby-comment"># open a new channel and configure a minimal set of callbacks, then run</span>
+<span class="ruby-comment"># the event loop until the channel finishes (closes)</span>
+<span class="ruby-identifier">channel</span> = <span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">open_channel</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ch</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">ch</span>.<span class="ruby-identifier">exec</span> <span class="ruby-string">&quot;/usr/local/bin/ruby /path/to/file.rb&quot;</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ch</span>, <span class="ruby-identifier">success</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;could not execute command&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">success</span>
+
+ <span class="ruby-comment"># &quot;on_data&quot; is called when the process writes something to stdout</span>
+ <span class="ruby-identifier">ch</span>.<span class="ruby-identifier">on_data</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">c</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">$stdout</span>.<span class="ruby-identifier">print</span> <span class="ruby-identifier">data</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># &quot;on_extended_data&quot; is called when the process writes something to stderr</span>
+ <span class="ruby-identifier">ch</span>.<span class="ruby-identifier">on_extended_data</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">c</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">print</span> <span class="ruby-identifier">data</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">ch</span>.<span class="ruby-identifier">on_close</span> { <span class="ruby-identifier">puts</span> <span class="ruby-string">&quot;done!&quot;</span> }
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span>
+
+<span class="ruby-identifier">channel</span>.<span class="ruby-identifier">wait</span>
+
+<span class="ruby-comment"># forward connections on local port 1234 to port 80 of www.capify.org</span>
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">forward</span>.<span class="ruby-identifier">local</span>(<span class="ruby-value">1234</span>, <span class="ruby-string">&quot;www.capify.org&quot;</span>, <span class="ruby-value">80</span>)
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">loop</span> { <span class="ruby-keyword">true</span> }
+<span class="ruby-keyword">end</span>
+</pre>
+
+<p>See <a href="Net/SSH.html">Net::SSH</a> for more documentation, and links
+to further information.</p>
+
+<h2 id="label-REQUIREMENTS-3A">REQUIREMENTS:<span><a href="#label-REQUIREMENTS-3A">&para;</a> <a href="#top">&uarr;</a></span></h2>
+
+<p>The only requirement you might be missing is the <a
+href="OpenSSL.html">OpenSSL</a> bindings for Ruby with a version greather
+than <code>1.0.1</code>. These are built by default on most platforms, but
+you can verify that they&#39;re built and installed on your system by
+running the following command line:</p>
+
+<pre>ruby -ropenssl -e &#39;puts OpenSSL::OPENSSL_VERSION&#39;</pre>
+
+<p>If that spits out something like <code>OpenSSL 1.0.1 14 Mar 2012</code>,
+then you&#39;re set. If you get an error, then you&#39;ll need to see about
+rebuilding ruby with <a href="OpenSSL.html">OpenSSL</a> support, or (if
+your platform supports it) installing the <a
+href="OpenSSL.html">OpenSSL</a> bindings separately.</p>
+
+<h2 id="label-INSTALL-3A">INSTALL:<span><a href="#label-INSTALL-3A">&para;</a> <a href="#top">&uarr;</a></span></h2>
+
+<pre class="ruby"><span class="ruby-identifier">gem</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">net</span><span class="ruby-operator">-</span><span class="ruby-identifier">ssh</span> <span class="ruby-comment"># might need sudo privileges</span>
+</pre>
+
+<p>NOTE: If you are running on jruby on windows you need to install
+<code>jruby-pageant</code> manually (gemspec doesn&#39;t allow for platform
+specific dependencies).</p>
+
+<p>However, in order to be sure the code you&#39;re installing hasn&#39;t been
+tampered with, it&#39;s recommended that you verify the <a
+href="http://docs.rubygems.org/read/chapter/21">signature</a>. To do this,
+you need to add my public key as a trusted certificate (you only need to do
+this once):</p>
+
+<pre># Add the public key as a trusted certificate
+# (You only need to do this once)
+curl -O https://raw.githubusercontent.com/net-ssh/net-ssh/master/net-ssh-public_cert.pem
+gem cert --add net-ssh-public_cert.pem</pre>
+
+<p>Then, when install the gem, do so with high security:</p>
+
+<pre>gem install net-ssh -P HighSecurity</pre>
+
+<p>If you don&#39;t add the public key, you&#39;ll see an error like
+“Couldn&#39;t verify data signature”. If you&#39;re still having trouble
+let me know and I&#39;ll give you a hand.</p>
+
+<p>For ed25519 public key auth support your bundle file should contain
+<code>ed25519</code>, <code>bcrypt_pbkdf</code> dependencies.</p>
+
+<pre class="ruby"><span class="ruby-identifier">gem</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">ed25519</span>
+<span class="ruby-identifier">gem</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">bcrypt_pbkdf</span>
+</pre>
+
+<p>For curve25519-sha256 kex exchange support your bundle file should contain
+<code>x25519</code> dependency.</p>
+
+<h2 id="label-RUBY+SUPPORT">RUBY SUPPORT<span><a href="#label-RUBY+SUPPORT">&para;</a> <a href="#top">&uarr;</a></span></h2>
+<ul><li>
+<p>See <a
+href="https://github.com/net-ssh/net-ssh/blob/master/net-ssh.gemspec">net-ssh.gemspec</a>
+for current versions ruby requirements</p>
+</li></ul>
+
+<h2 id="label-RUNNING+TESTS">RUNNING TESTS<span><a href="#label-RUNNING+TESTS">&para;</a> <a href="#top">&uarr;</a></span></h2>
+
+<p>If you want to run the tests or use any of the Rake tasks, you&#39;ll need
+Mocha and other dependencies listed in Gemfile</p>
+
+<p>Run the test suite from the net-ssh directory with the following command:</p>
+
+<pre class="ruby"><span class="ruby-identifier">bundle</span> <span class="ruby-identifier">exec</span> <span class="ruby-identifier">rake</span> <span class="ruby-identifier">test</span>
+</pre>
+
+<p>Run a single test file like this:</p>
+
+<pre>ruby -Ilib -Itest test/transport/test_server_version.rb</pre>
+
+<p>To run integration tests see test/integration/README.txt</p>
+
+<h3 id="label-BUILDING+GEM">BUILDING GEM<span><a href="#label-BUILDING+GEM">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<pre class="ruby"><span class="ruby-identifier">rake</span> <span class="ruby-identifier">build</span>
+</pre>
+
+<h3 id="label-GEM+SIGNING+-28for+maintainers-29">GEM SIGNING (for maintainers)<span><a href="#label-GEM+SIGNING+-28for+maintainers-29">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>If you have the net-ssh private signing key, you will be able to create
+signed release builds. Make sure the private key path matches the
+<code>signing_key</code> path set in <code>net-ssh.gemspec</code> and tell
+rake to sign the gem by setting the <code>NET_SSH_BUILDGEM_SIGNED</code>
+flag:</p>
+
+<pre>NET_SSH_BUILDGEM_SIGNED=true rake build</pre>
+
+<p>For time to time, the public certificate associated to the private key
+needs to be renewed. You can do this with the following command:</p>
+
+<pre>gem cert --build netssh@solutious.com --private-key path/2/net-ssh-private_key.pem
+mv gem-public_cert.pem net-ssh-public_cert.pem
+gem cert --add net-ssh-public_cert.pem</pre>
+
+<h2 id="label-CREDITS">CREDITS<span><a href="#label-CREDITS">&para;</a> <a href="#top">&uarr;</a></span></h2>
+
+<h3 id="label-Contributors">Contributors<span><a href="#label-Contributors">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>This project exists thanks to all the people who contribute.</p>
+
+<p><a href="graphs/contributors"><img
+src="https://opencollective.com/net-ssh/contributors.svg?width=890&button=false"></a></p>
+
+<h3 id="label-Backers">Backers<span><a href="#label-Backers">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>Thank you to all our backers! 🙏 <a
+href="https://opencollective.com/net-ssh#backer">Become a backer</a></p>
+
+<p><a href="https://opencollective.com/net-ssh#backers"><img
+src="https://opencollective.com/net-ssh/backers.svg?width=890"></a></p>
+
+<h3 id="label-Sponsors">Sponsors<span><a href="#label-Sponsors">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>Support this project by becoming a sponsor. Your logo will show up here
+with a link to your website. <a
+href="https://opencollective.com/net-ssh#sponsor">Become a sponsor</a></p>
+
+<p><a href="https://opencollective.com/net-ssh/sponsor/0/website"><img
+src="https://opencollective.com/net-ssh/sponsor/0/avatar.svg"></a></p>
+
+<h2 id="label-LICENSE-3A">LICENSE:<span><a href="#label-LICENSE-3A">&para;</a> <a href="#top">&uarr;</a></span></h2>
+
+<p>(The MIT License)</p>
+
+<p>Copyright © 2008 Jamis Buck</p>
+
+<p>Permission is hereby granted, free of charge, to any person obtaining a
+copy of this software and associated documentation files (the
+&#39;Software&#39;), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to permit
+persons to whom the Software is furnished to do so, subject to the
+following conditions:</p>
+
+<p>The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.</p>
+
+<p>THE SOFTWARE IS PROVIDED &#39;AS IS&#39;, WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
+NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
+OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
+USE OR OTHER DEALINGS IN THE SOFTWARE.</p>
+</main>
+
+
+
+<footer id="validator-badges" role="contentinfo">
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
+ <p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
+</footer>
+
diff --git a/String.html b/String.html
index 0da239d..30d5a72 100644
--- a/String.html
+++ b/String.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>class String - net-ssh 4.2.0</title>
+<title>class String - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "./";
@@ -161,7 +161,7 @@
<div class="method-source-code" id="setbyte-source">
- <pre><span class="ruby-comment"># File lib/net/ssh/ruby_compat.rb, line 8</span>
+ <pre><span class="ruby-comment"># File lib/net/ssh/ruby_compat.rb, line 9</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">setbyte</span>(<span class="ruby-identifier">index</span>, <span class="ruby-identifier">c</span>)
<span class="ruby-keyword">self</span>[<span class="ruby-identifier">index</span>] = <span class="ruby-identifier">c</span>
<span class="ruby-keyword">end</span></pre>
diff --git a/THANKS_txt.html b/THANKS_txt.html
index 11a7d74..c967d61 100644
--- a/THANKS_txt.html
+++ b/THANKS_txt.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>THANKS - net-ssh 4.2.0</title>
+<title>THANKS - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "./";
@@ -63,7 +63,7 @@
<li><a href="./LICENSE_txt.html">LICENSE</a>
- <li><a href="./README_rdoc.html">README</a>
+ <li><a href="./README_md.html">README</a>
<li><a href="./THANKS_txt.html">THANKS</a>
diff --git a/created.rid b/created.rid
index f3d4f51..f5e9a78 100644
--- a/created.rid
+++ b/created.rid
@@ -1,89 +1,96 @@
-Wed, 06 Sep 2017 14:38:46 +0200
-README.rdoc Thu, 15 Dec 2016 23:17:02 +0100
-lib/net/ssh.rb Wed, 19 Jul 2017 09:04:44 +0200
-lib/net/ssh/authentication/agent.rb Tue, 11 Jul 2017 19:44:16 +0200
-lib/net/ssh/authentication/certificate.rb Fri, 20 Jan 2017 09:18:17 +0100
-lib/net/ssh/authentication/constants.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/authentication/ed25519.rb Fri, 20 Jan 2017 09:18:17 +0100
-lib/net/ssh/authentication/ed25519_loader.rb Fri, 20 Jan 2017 09:18:17 +0100
-lib/net/ssh/authentication/key_manager.rb Fri, 20 Jan 2017 09:18:17 +0100
-lib/net/ssh/authentication/methods/abstract.rb Fri, 25 Nov 2016 20:18:52 +0100
-lib/net/ssh/authentication/methods/hostbased.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/authentication/methods/keyboard_interactive.rb Fri, 25 Nov 2016 20:18:52 +0100
-lib/net/ssh/authentication/methods/none.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/authentication/methods/password.rb Fri, 25 Nov 2016 20:18:52 +0100
-lib/net/ssh/authentication/methods/publickey.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/authentication/pageant.rb Sun, 01 Jan 2017 17:35:46 +0100
-lib/net/ssh/authentication/session.rb Fri, 25 Nov 2016 20:18:52 +0100
-lib/net/ssh/buffer.rb Fri, 20 Jan 2017 09:18:17 +0100
-lib/net/ssh/buffered_io.rb Fri, 25 Nov 2016 20:20:09 +0100
-lib/net/ssh/config.rb Tue, 11 Jul 2017 19:44:16 +0200
-lib/net/ssh/connection/channel.rb Wed, 15 Feb 2017 08:58:18 +0100
-lib/net/ssh/connection/constants.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/connection/event_loop.rb Thu, 15 Dec 2016 18:17:42 +0100
-lib/net/ssh/connection/keepalive.rb Fri, 25 Nov 2016 20:18:52 +0100
-lib/net/ssh/connection/session.rb Tue, 11 Jul 2017 19:44:16 +0200
-lib/net/ssh/connection/term.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/errors.rb Thu, 15 Dec 2016 18:17:42 +0100
-lib/net/ssh/key_factory.rb Fri, 20 Jan 2017 09:18:17 +0100
-lib/net/ssh/known_hosts.rb Fri, 25 Nov 2016 20:18:52 +0100
-lib/net/ssh/loggable.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/packet.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/prompt.rb Thu, 15 Dec 2016 18:17:42 +0100
-lib/net/ssh/proxy/command.rb Tue, 11 Jul 2017 19:44:16 +0200
-lib/net/ssh/proxy/errors.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/proxy/http.rb Thu, 15 Dec 2016 18:17:42 +0100
-lib/net/ssh/proxy/https.rb Fri, 25 Nov 2016 20:20:09 +0100
-lib/net/ssh/proxy/jump.rb Wed, 15 Feb 2017 08:58:18 +0100
-lib/net/ssh/proxy/socks4.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/proxy/socks5.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/ruby_compat.rb Fri, 25 Nov 2016 20:18:52 +0100
-lib/net/ssh/service/forward.rb Tue, 11 Jul 2017 19:44:16 +0200
-lib/net/ssh/test.rb Tue, 11 Jul 2017 19:44:16 +0200
-lib/net/ssh/test/channel.rb Fri, 25 Nov 2016 20:18:52 +0100
-lib/net/ssh/test/extensions.rb Tue, 11 Jul 2017 19:44:16 +0200
-lib/net/ssh/test/kex.rb Thu, 15 Dec 2016 18:17:42 +0100
-lib/net/ssh/test/local_packet.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/test/packet.rb Fri, 25 Nov 2016 20:18:52 +0100
-lib/net/ssh/test/remote_packet.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/test/script.rb Fri, 25 Nov 2016 20:18:52 +0100
-lib/net/ssh/test/socket.rb Fri, 27 May 2016 13:43:24 +0200
-lib/net/ssh/transport/algorithms.rb Tue, 11 Jul 2017 19:44:16 +0200
-lib/net/ssh/transport/cipher_factory.rb Thu, 15 Dec 2016 18:17:42 +0100
-lib/net/ssh/transport/constants.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/ctr.rb Fri, 25 Nov 2016 20:20:09 +0100
-lib/net/ssh/transport/hmac.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/hmac/abstract.rb Sun, 06 Mar 2016 06:26:02 +0100
+Fri, 25 Oct 2019 19:29:12 +0200
+README.md Fri, 25 Oct 2019 19:21:43 +0200
+lib/net/ssh.rb Thu, 07 Mar 2019 22:24:32 +0100
+lib/net/ssh/authentication/agent.rb Wed, 12 Dec 2018 18:28:30 +0100
+lib/net/ssh/authentication/certificate.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/authentication/constants.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/authentication/ed25519.rb Sat, 02 Mar 2019 10:10:04 +0100
+lib/net/ssh/authentication/ed25519_loader.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/authentication/key_manager.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/authentication/methods/abstract.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/authentication/methods/hostbased.rb Wed, 21 Mar 2018 15:17:10 +0100
+lib/net/ssh/authentication/methods/keyboard_interactive.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/authentication/methods/none.rb Wed, 21 Mar 2018 15:17:10 +0100
+lib/net/ssh/authentication/methods/password.rb Wed, 21 Mar 2018 15:17:10 +0100
+lib/net/ssh/authentication/methods/publickey.rb Wed, 12 Dec 2018 18:28:30 +0100
+lib/net/ssh/authentication/pageant.rb Wed, 30 May 2018 12:23:46 +0200
+lib/net/ssh/authentication/pub_key_fingerprint.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/authentication/session.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/buffer.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/buffered_io.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/config.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/connection/channel.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/connection/constants.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/connection/event_loop.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/connection/keepalive.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/connection/session.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/connection/term.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/errors.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/key_factory.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/known_hosts.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/loggable.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/packet.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/prompt.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/proxy/command.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/proxy/errors.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/proxy/http.rb Thu, 24 May 2018 10:08:24 +0200
+lib/net/ssh/proxy/https.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/proxy/jump.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/proxy/socks4.rb Wed, 21 Mar 2018 15:17:10 +0100
+lib/net/ssh/proxy/socks5.rb Wed, 21 Mar 2018 15:17:10 +0100
+lib/net/ssh/ruby_compat.rb Wed, 21 Mar 2018 15:17:10 +0100
+lib/net/ssh/service/forward.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/test.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/test/channel.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/test/extensions.rb Wed, 12 Dec 2018 18:28:31 +0100
+lib/net/ssh/test/kex.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/test/local_packet.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/test/packet.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/test/remote_packet.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/test/script.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/test/socket.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/transport/algorithms.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/cipher_factory.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/constants.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/ctr.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/hmac.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/hmac/abstract.rb Fri, 25 Oct 2019 19:19:04 +0200
lib/net/ssh/transport/hmac/md5.rb Sun, 06 Mar 2016 06:26:02 +0100
lib/net/ssh/transport/hmac/md5_96.rb Sun, 06 Mar 2016 06:26:02 +0100
lib/net/ssh/transport/hmac/none.rb Sun, 06 Mar 2016 06:26:02 +0100
lib/net/ssh/transport/hmac/ripemd160.rb Sun, 06 Mar 2016 06:26:02 +0100
lib/net/ssh/transport/hmac/sha1.rb Sun, 06 Mar 2016 06:26:02 +0100
lib/net/ssh/transport/hmac/sha1_96.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/hmac/sha2_256.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/hmac/sha2_256_96.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/hmac/sha2_512.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/hmac/sha2_512_96.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/identity_cipher.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/kex.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/kex/diffie_hellman_group14_sha1.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb Thu, 15 Dec 2016 18:17:42 +0100
-lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb Fri, 25 Nov 2016 20:18:52 +0100
-lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha256.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb Wed, 09 Nov 2016 14:34:01 +0100
-lib/net/ssh/transport/kex/ecdh_sha2_nistp384.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/kex/ecdh_sha2_nistp521.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/key_expander.rb Fri, 25 Nov 2016 20:18:52 +0100
-lib/net/ssh/transport/openssl.rb Fri, 20 Jan 2017 09:18:17 +0100
-lib/net/ssh/transport/packet_stream.rb Tue, 29 Nov 2016 08:36:22 +0100
-lib/net/ssh/transport/server_version.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/transport/session.rb Tue, 11 Jul 2017 19:44:16 +0200
-lib/net/ssh/transport/state.rb Fri, 25 Nov 2016 20:18:52 +0100
-lib/net/ssh/verifiers/lenient.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/verifiers/null.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/verifiers/secure.rb Wed, 23 Mar 2016 13:11:15 +0100
-lib/net/ssh/verifiers/strict.rb Sun, 06 Mar 2016 06:26:02 +0100
-lib/net/ssh/version.rb Wed, 06 Sep 2017 14:35:58 +0200
+lib/net/ssh/transport/hmac/sha2_256.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/hmac/sha2_256_96.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/hmac/sha2_256_etm.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/hmac/sha2_512.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/hmac/sha2_512_96.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/hmac/sha2_512_etm.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/identity_cipher.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/transport/kex.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/kex/abstract.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/kex/abstract5656.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/kex/curve25519_sha256.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/kex/curve25519_sha256_loader.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/kex/diffie_hellman_group14_sha1.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha256.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/kex/ecdh_sha2_nistp384.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/kex/ecdh_sha2_nistp521.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/key_expander.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/transport/openssl.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/packet_stream.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/transport/server_version.rb Wed, 21 Mar 2018 19:15:19 +0100
+lib/net/ssh/transport/session.rb Sat, 02 Mar 2019 10:10:04 +0100
+lib/net/ssh/transport/state.rb Fri, 25 Oct 2019 19:19:04 +0200
+lib/net/ssh/verifiers/accept_new.rb Wed, 12 Dec 2018 18:28:31 +0100
+lib/net/ssh/verifiers/accept_new_or_local_tunnel.rb Thu, 24 May 2018 10:08:24 +0200
+lib/net/ssh/verifiers/always.rb Wed, 12 Dec 2018 18:28:31 +0100
+lib/net/ssh/verifiers/never.rb Wed, 12 Dec 2018 18:28:31 +0100
+lib/net/ssh/version.rb Fri, 25 Oct 2019 19:25:19 +0200
LICENSE.txt Sun, 06 Mar 2016 06:26:02 +0100
THANKS.txt Sun, 06 Mar 2016 06:26:02 +0100
-CHANGES.txt Wed, 19 Jul 2017 09:04:44 +0200
+CHANGES.txt Fri, 25 Oct 2019 19:24:58 +0200
diff --git a/index.html b/index.html
index 3efbf7c..20ff690 100644
--- a/index.html
+++ b/index.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>net-ssh 4.2.0</title>
+<title>net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "./";
@@ -62,7 +62,7 @@
<li><a href="./LICENSE_txt.html">LICENSE</a>
- <li><a href="./README_rdoc.html">README</a>
+ <li><a href="./README_md.html">README</a>
<li><a href="./THANKS_txt.html">THANKS</a>
@@ -100,6 +100,10 @@
<li><a href="./Net/SSH/Authentication/ED25519.html">Net::SSH::Authentication::ED25519</a>
+ <li><a href="./Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader.html">Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader</a>
+
+ <li><a href="./Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader/DecryptError.html">Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader::DecryptError</a>
+
<li><a href="./Net/SSH/Authentication/ED25519/PrivKey.html">Net::SSH::Authentication::ED25519::PrivKey</a>
<li><a href="./Net/SSH/Authentication/ED25519/PubKey.html">Net::SSH::Authentication::ED25519::PubKey</a>
@@ -150,8 +154,6 @@
<li><a href="./Net/SSH/ChannelRequestFailed.html">Net::SSH::ChannelRequestFailed</a>
- <li><a href="./Net/SSH/Compat.html">Net::SSH::Compat</a>
-
<li><a href="./Net/SSH/Config.html">Net::SSH::Config</a>
<li><a href="./Net/SSH/Connection.html">Net::SSH::Connection</a>
@@ -192,15 +194,21 @@
<li><a href="./Net/SSH/KeyFactory.html">Net::SSH::KeyFactory</a>
- <li><a href="./Net/SSH/KeyFactory/OpenSSL.html">Net::SSH::KeyFactory::OpenSSL</a>
+ <li><a href="./Net/SSH/KeyFactory/KeyType.html">Net::SSH::KeyFactory::KeyType</a>
- <li><a href="./Net/SSH/KeyFactory/OpenSSL/PKey.html">Net::SSH::KeyFactory::OpenSSL::PKey</a>
+ <li><a href="./Net/SSH/KeyFactory/OpenSSHPrivateKeyType.html">Net::SSH::KeyFactory::OpenSSHPrivateKeyType</a>
- <li><a href="./Net/SSH/KnownHosts.html">Net::SSH::KnownHosts</a>
+ <li><a href="./Net/SSH/KeyFactory/OpenSSLDSAKeyType.html">Net::SSH::KeyFactory::OpenSSLDSAKeyType</a>
- <li><a href="./Net/SSH/KnownHosts/OpenSSL.html">Net::SSH::KnownHosts::OpenSSL</a>
+ <li><a href="./Net/SSH/KeyFactory/OpenSSLECKeyType.html">Net::SSH::KeyFactory::OpenSSLECKeyType</a>
- <li><a href="./Net/SSH/KnownHosts/OpenSSL/PKey.html">Net::SSH::KnownHosts::OpenSSL::PKey</a>
+ <li><a href="./Net/SSH/KeyFactory/OpenSSLKeyTypeBase.html">Net::SSH::KeyFactory::OpenSSLKeyTypeBase</a>
+
+ <li><a href="./Net/SSH/KeyFactory/OpenSSLPKeyType.html">Net::SSH::KeyFactory::OpenSSLPKeyType</a>
+
+ <li><a href="./Net/SSH/KeyFactory/OpenSSLRSAKeyType.html">Net::SSH::KeyFactory::OpenSSLRSAKeyType</a>
+
+ <li><a href="./Net/SSH/KnownHosts.html">Net::SSH::KnownHosts</a>
<li><a href="./Net/SSH/Loggable.html">Net::SSH::Loggable</a>
@@ -270,10 +278,6 @@
<li><a href="./Net/SSH/Transport/Algorithms.html">Net::SSH::Transport::Algorithms</a>
- <li><a href="./Net/SSH/Transport/Algorithms/OpenSSL.html">Net::SSH::Transport::Algorithms::OpenSSL</a>
-
- <li><a href="./Net/SSH/Transport/Algorithms/OpenSSL/PKey.html">Net::SSH::Transport::Algorithms::OpenSSL::PKey</a>
-
<li><a href="./Net/SSH/Transport/CTR.html">Net::SSH::Transport::CTR</a>
<li><a href="./Net/SSH/Transport/CipherFactory.html">Net::SSH::Transport::CipherFactory</a>
@@ -310,16 +314,44 @@
<li><a href="./Net/SSH/Transport/HMAC/SHA2_256.html">Net::SSH::Transport::HMAC::SHA2_256</a>
+ <li><a href="./Net/SSH/Transport/HMAC/SHA2_256/OpenSSL.html">Net::SSH::Transport::HMAC::SHA2_256::OpenSSL</a>
+
+ <li><a href="./Net/SSH/Transport/HMAC/SHA2_256/OpenSSL/Digest.html">Net::SSH::Transport::HMAC::SHA2_256::OpenSSL::Digest</a>
+
<li><a href="./Net/SSH/Transport/HMAC/SHA2_256_96.html">Net::SSH::Transport::HMAC::SHA2_256_96</a>
+ <li><a href="./Net/SSH/Transport/HMAC/SHA2_256_Etm.html">Net::SSH::Transport::HMAC::SHA2_256_Etm</a>
+
+ <li><a href="./Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL.html">Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL</a>
+
+ <li><a href="./Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL/Digest.html">Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL::Digest</a>
+
<li><a href="./Net/SSH/Transport/HMAC/SHA2_512.html">Net::SSH::Transport::HMAC::SHA2_512</a>
+ <li><a href="./Net/SSH/Transport/HMAC/SHA2_512/OpenSSL.html">Net::SSH::Transport::HMAC::SHA2_512::OpenSSL</a>
+
+ <li><a href="./Net/SSH/Transport/HMAC/SHA2_512/OpenSSL/Digest.html">Net::SSH::Transport::HMAC::SHA2_512::OpenSSL::Digest</a>
+
<li><a href="./Net/SSH/Transport/HMAC/SHA2_512_96.html">Net::SSH::Transport::HMAC::SHA2_512_96</a>
+ <li><a href="./Net/SSH/Transport/HMAC/SHA2_512_Etm.html">Net::SSH::Transport::HMAC::SHA2_512_Etm</a>
+
+ <li><a href="./Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL.html">Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL</a>
+
+ <li><a href="./Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL/Digest.html">Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL::Digest</a>
+
<li><a href="./Net/SSH/Transport/IdentityCipher.html">Net::SSH::Transport::IdentityCipher</a>
<li><a href="./Net/SSH/Transport/Kex.html">Net::SSH::Transport::Kex</a>
+ <li><a href="./Net/SSH/Transport/Kex/Abstract.html">Net::SSH::Transport::Kex::Abstract</a>
+
+ <li><a href="./Net/SSH/Transport/Kex/Abstract5656.html">Net::SSH::Transport::Kex::Abstract5656</a>
+
+ <li><a href="./Net/SSH/Transport/Kex/Curve25519Sha256.html">Net::SSH::Transport::Kex::Curve25519Sha256</a>
+
+ <li><a href="./Net/SSH/Transport/Kex/Curve25519Sha256Loader.html">Net::SSH::Transport::Kex::Curve25519Sha256Loader</a>
+
<li><a href="./Net/SSH/Transport/Kex/DiffieHellmanGroup14SHA1.html">Net::SSH::Transport::Kex::DiffieHellmanGroup14SHA1</a>
<li><a href="./Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html">Net::SSH::Transport::Kex::DiffieHellmanGroup1SHA1</a>
@@ -336,23 +368,27 @@
<li><a href="./Net/SSH/Transport/KeyExpander.html">Net::SSH::Transport::KeyExpander</a>
+ <li><a href="./Net/SSH/Transport/OpenSSLAESCTR.html">Net::SSH::Transport::OpenSSLAESCTR</a>
+
<li><a href="./Net/SSH/Transport/PacketStream.html">Net::SSH::Transport::PacketStream</a>
<li><a href="./Net/SSH/Transport/ServerVersion.html">Net::SSH::Transport::ServerVersion</a>
<li><a href="./Net/SSH/Transport/Session.html">Net::SSH::Transport::Session</a>
+ <li><a href="./Net/SSH/Transport/Session/CompatibleVerifier.html">Net::SSH::Transport::Session::CompatibleVerifier</a>
+
<li><a href="./Net/SSH/Transport/State.html">Net::SSH::Transport::State</a>
<li><a href="./Net/SSH/Verifiers.html">Net::SSH::Verifiers</a>
- <li><a href="./Net/SSH/Verifiers/Lenient.html">Net::SSH::Verifiers::Lenient</a>
+ <li><a href="./Net/SSH/Verifiers/AcceptNew.html">Net::SSH::Verifiers::AcceptNew</a>
- <li><a href="./Net/SSH/Verifiers/Null.html">Net::SSH::Verifiers::Null</a>
+ <li><a href="./Net/SSH/Verifiers/AcceptNewOrLocalTunnel.html">Net::SSH::Verifiers::AcceptNewOrLocalTunnel</a>
- <li><a href="./Net/SSH/Verifiers/Secure.html">Net::SSH::Verifiers::Secure</a>
+ <li><a href="./Net/SSH/Verifiers/Always.html">Net::SSH::Verifiers::Always</a>
- <li><a href="./Net/SSH/Verifiers/Strict.html">Net::SSH::Verifiers::Strict</a>
+ <li><a href="./Net/SSH/Verifiers/Never.html">Net::SSH::Verifiers::Never</a>
<li><a href="./Net/SSH/Version.html">Net::SSH::Version</a>
@@ -360,8 +396,6 @@
<li><a href="./OpenSSL/BN.html">OpenSSL::BN</a>
- <li><a href="./OpenSSL/Digest.html">OpenSSL::Digest</a>
-
<li><a href="./OpenSSL/PKey.html">OpenSSL::PKey</a>
<li><a href="./OpenSSL/PKey/DH.html">OpenSSL::PKey::DH</a>
@@ -370,15 +404,7 @@
<li><a href="./OpenSSL/PKey/EC.html">OpenSSL::PKey::EC</a>
- <li><a href="./OpenSSL/PKey/OpenSSL.html">OpenSSL::PKey::OpenSSL</a>
-
- <li><a href="./OpenSSL/PKey/OpenSSL/PKey.html">OpenSSL::PKey::OpenSSL::PKey</a>
-
- <li><a href="./OpenSSL/PKey/OpenSSL/PKey/OpenSSL.html">OpenSSL::PKey::OpenSSL::PKey::OpenSSL</a>
-
- <li><a href="./OpenSSL/PKey/OpenSSL/PKey/OpenSSL/PKey.html">OpenSSL::PKey::OpenSSL::PKey::OpenSSL::PKey</a>
-
- <li><a href="./OpenSSL/PKey/OpenSSL/PKey/OpenSSL/PKey/ECError.html">OpenSSL::PKey::OpenSSL::PKey::OpenSSL::PKey::ECError</a>
+ <li><a href="./OpenSSL/PKey/EC/Point.html">OpenSSL::PKey::EC::Point</a>
<li><a href="./OpenSSL/PKey/PKey.html">OpenSSL::PKey::PKey</a>
@@ -396,17 +422,19 @@
<p><a href="https://badge.fury.io/rb/net-ssh"><img
-src="https://badge.fury.io/rb/net-ssh.svg" alt="Gem Version" /></a> <a
+src="https://badge.fury.io/rb/net-ssh.svg"></a> <a
href="https://gitter.im/net-ssh/net-ssh?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge"><img
-src="https://badges.gitter.im/net-ssh/net-ssh.svg" alt="Join the chat at
-https://gitter.im/net-ssh/net-ssh"></a> <a
+src="https://badges.gitter.im/net-ssh/net-ssh.svg"></a> <a
href="https://travis-ci.org/net-ssh/net-ssh"><img
-src="https://travis-ci.org/net-ssh/net-ssh.svg?branch=master" alt="Build
-Status" /></a> <a href="https://codecov.io/gh/net-ssh/net-ssh"><img
-src="https://codecov.io/gh/net-ssh/net-ssh/branch/master/graph/badge.svg"
-alt="Coverage status" /></a></p>
-
-<h1 id="label-Net-3A-3ASSH+4.x"><a href="Net/SSH.html">Net::SSH</a> 4.x<span><a href="#label-Net-3A-3ASSH+4.x">&para;</a> <a href="#top">&uarr;</a></span></h1>
+src="https://travis-ci.org/net-ssh/net-ssh.svg?branch=master"></a> <a
+href="https://codecov.io/gh/net-ssh/net-ssh"><img
+src="https://codecov.io/gh/net-ssh/net-ssh/branch/master/graph/badge.svg"></a>
+<a href="#backers"><img
+src="https://opencollective.com/net-ssh/backers/badge.svg"></a>] <a
+href="#sponsors"><img
+src="https://opencollective.com/net-ssh/sponsors/badge.svg"></a></p>
+
+<h1 id="label-Net-3A-3ASSH+6.x"><a href="Net/SSH.html">Net::SSH</a> 6.x<span><a href="#label-Net-3A-3ASSH+6.x">&para;</a> <a href="#top">&uarr;</a></span></h1>
<ul><li>
<p>Docs: <a
href="http://net-ssh.github.com/net-ssh">net-ssh.github.com/net-ssh</a></p>
@@ -420,7 +448,8 @@ href="https://github.com/net-ssh/net-ssh">github.com/net-ssh/net-ssh</a></p>
<p>Email: net-ssh@solutious.com</p>
</li></ul>
-<p><em>As of v2.6.4, all gem releases are signed. See INSTALL.</em></p>
+<p><em>As of v2.6.4, all gem releases are signed. See <a
+href="#install">INSTALL</a>.</em></p>
<h2 id="label-DESCRIPTION-3A">DESCRIPTION:<span><a href="#label-DESCRIPTION-3A">&para;</a> <a href="#top">&uarr;</a></span></h2>
@@ -439,55 +468,119 @@ interact with processes on remote servers, via SSH2.</p>
<p>Forward local and remote ports via an SSH connection</p>
</li></ul>
+<h2 id="label-Supported+Algorithms">Supported Algorithms<span><a href="#label-Supported+Algorithms">&para;</a> <a href="#top">&uarr;</a></span></h2>
+
+<p><a href="Net/SSH.html">Net::SSH</a> 6.0 disables by default the usage of
+weak algorithms. We strongly recommend that you install a servers&#39;s
+version that supports the latest algorithms.</p>
+
+<p>It is possible to return to the previous behavior by adding the option :
+<code>append_all_supported_algorithms: true</code></p>
+
+<p>Unsecure algoritms will be definively remove in <a
+href="Net/SSH.html">Net::SSH</a> 7.*.</p>
+
+<h3 id="label-Host+Keys">Host Keys<span><a href="#label-Host+Keys">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>| Name | Support | Details | |———————-|———————–|———-| | ssh-rsa | OK | | |
+ssh-ed25519 | OK | Require the gem <code>ed25519</code> | |
+ecdsa-sha2-nistp521 | OK | <a href="https://safecurves.cr.yp.to/">using
+weak elliptic curves</a> | | ecdsa-sha2-nistp384 | OK | <a
+href="https://safecurves.cr.yp.to/">using weak elliptic curves</a> | |
+ecdsa-sha2-nistp256 | OK | <a href="https://safecurves.cr.yp.to/">using
+weak elliptic curves</a> | | ssh-dss | Deprecated in 6.0 | unsecure, will
+be removed in 7.0 |</p>
+
+<h3 id="label-Key+Exchange">Key Exchange<span><a href="#label-Key+Exchange">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>| Name | Support | Details | |————————————–|———————–|———-| |
+curve25519-sha256 | OK | Require the gem <code>x25519</code> | |
+ecdh-sha2-nistp521 | OK | <a href="https://safecurves.cr.yp.to/">using weak
+elliptic curves</a> | | ecdh-sha2-nistp384 | OK | <a
+href="https://safecurves.cr.yp.to/">using weak elliptic curves</a> | |
+ecdh-sha2-nistp256 | OK | <a href="https://safecurves.cr.yp.to/">using weak
+elliptic curves</a> | | diffie-hellman-group1-sha1 | Deprecated in 6.0 |
+unsecure, will be removed in 7.0 | | diffie-hellman-group14-sha1 | OK | | |
+diffie-hellman-group-exchange-sha1 | Deprecated in 6.0 | unsecure, will be
+removed in 7.0 | | diffie-hellman-group-exchange-sha256 | OK | |</p>
+
+<h3 id="label-Encryption+algorithms+-28ciphers-29">Encryption algorithms (ciphers)<span><a href="#label-Encryption+algorithms+-28ciphers-29">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>| Name | Support | Details | |————————————–|———————–|———-| | aes256-ctr /
+aes192-ctr / aes128-ctr | OK | <a href="https://safecurves.cr.yp.to/">using
+weak elliptic curves</a> | | aes256-cbc / aes192-cbc / aes128-cbc |
+Deprecated in 6.0 | unsecure, will be removed in 7.0 | |
+rijndael-cbc@lysator.liu.se | Deprecated in 6.0 | unsecure, will be removed
+in 7.0 | | blowfish-ctr blowfish-cbc | Deprecated in 6.0 | unsecure, will
+be removed in 7.0 | | cast128-ctr cast128-cbc | Deprecated in 6.0 |
+unsecure, will be removed in 7.0 | | 3des-ctr 3des-cbc | Deprecated in 6.0
+| unsecure, will be removed in 7.0 | | idea-cbc | Deprecated in 6.0 |
+unsecure, will be removed in 7.0 | | none | Deprecated in 6.0 | unsecure,
+will be removed in 7.0 |</p>
+
+<h3 id="label-Message+Authentication+Code+algorithms">Message Authentication Code algorithms<span><a href="#label-Message+Authentication+Code+algorithms">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>| Name | Support | Details | |———————-|———————–|———-| | hmac-sha2-512-etm |
+OK | | | hmac-sha2-256-etm | OK | | | hmac-sha2-512 | OK | | |
+hmac-sha2-256 | OK | | | hmac-sha2-512-96 | Deprecated in 6.0 | removed
+from the specification, will be removed in 7.0 | | hmac-sha2-256-96 |
+Deprecated in 6.0 | removed from the specification, will be removed in 7.0
+| | hmac-sha1 | OK | for backward compatibility | | hmac-sha1-96 |
+Deprecated in 6.0 | unsecure, will be removed in 7.0 | | hmac-ripemd160 |
+Deprecated in 6.0 | unsecure, will be removed in 7.0 | | hmac-md5 |
+Deprecated in 6.0 | unsecure, will be removed in 7.0 | | hmac-md5-96 |
+Deprecated in 6.0 | unsecure, will be removed in 7.0 | | none | Deprecated
+in 6.0 | unsecure, will be removed in 7.0 |</p>
+
<h2 id="label-SYNOPSIS-3A">SYNOPSIS:<span><a href="#label-SYNOPSIS-3A">&para;</a> <a href="#top">&uarr;</a></span></h2>
<p>In a nutshell:</p>
<pre class="ruby"><span class="ruby-identifier">require</span> <span class="ruby-string">&#39;net/ssh&#39;</span>
-<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span>.<span class="ruby-identifier">start</span>(<span class="ruby-string">&#39;host&#39;</span>, <span class="ruby-string">&#39;user&#39;</span>, :<span class="ruby-identifier">password</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;password&quot;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ssh</span><span class="ruby-operator">|</span>
- <span class="ruby-comment"># capture all stderr and stdout output from a remote process</span>
- <span class="ruby-identifier">output</span> = <span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec!</span>(<span class="ruby-string">&quot;hostname&quot;</span>)
- <span class="ruby-identifier">puts</span> <span class="ruby-identifier">output</span>
+<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span>.<span class="ruby-identifier">start</span>(<span class="ruby-string">&#39;host&#39;</span>, <span class="ruby-string">&#39;user&#39;</span>, <span class="ruby-identifier">password</span><span class="ruby-operator">:</span> <span class="ruby-string">&quot;password&quot;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ssh</span><span class="ruby-operator">|</span>
+<span class="ruby-comment"># capture all stderr and stdout output from a remote process</span>
+<span class="ruby-identifier">output</span> = <span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec!</span>(<span class="ruby-string">&quot;hostname&quot;</span>)
+<span class="ruby-identifier">puts</span> <span class="ruby-identifier">output</span>
- <span class="ruby-comment"># capture only stdout matching a particular pattern</span>
- <span class="ruby-identifier">stdout</span> = <span class="ruby-string">&quot;&quot;</span>
- <span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec!</span>(<span class="ruby-string">&quot;ls -l /home/jamis&quot;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">channel</span>, <span class="ruby-identifier">stream</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
- <span class="ruby-identifier">stdout</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">data</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">stream</span> <span class="ruby-operator">==</span> :<span class="ruby-identifier">stdout</span>
- <span class="ruby-keyword">end</span>
- <span class="ruby-identifier">puts</span> <span class="ruby-identifier">stdout</span>
-
- <span class="ruby-comment"># run multiple processes in parallel to completion</span>
- <span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec</span> <span class="ruby-string">&quot;sed ...&quot;</span>
- <span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec</span> <span class="ruby-string">&quot;awk ...&quot;</span>
- <span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec</span> <span class="ruby-string">&quot;rm -rf ...&quot;</span>
- <span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">loop</span>
-
- <span class="ruby-comment"># open a new channel and configure a minimal set of callbacks, then run</span>
- <span class="ruby-comment"># the event loop until the channel finishes (closes)</span>
- <span class="ruby-identifier">channel</span> = <span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">open_channel</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ch</span><span class="ruby-operator">|</span>
- <span class="ruby-identifier">ch</span>.<span class="ruby-identifier">exec</span> <span class="ruby-string">&quot;/usr/local/bin/ruby /path/to/file.rb&quot;</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ch</span>, <span class="ruby-identifier">success</span><span class="ruby-operator">|</span>
- <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;could not execute command&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">success</span>
-
- <span class="ruby-comment"># &quot;on_data&quot; is called when the process writes something to stdout</span>
- <span class="ruby-identifier">ch</span>.<span class="ruby-identifier">on_data</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">c</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
- <span class="ruby-identifier">$stdout</span>.<span class="ruby-identifier">print</span> <span class="ruby-identifier">data</span>
- <span class="ruby-keyword">end</span>
-
- <span class="ruby-comment"># &quot;on_extended_data&quot; is called when the process writes something to stderr</span>
- <span class="ruby-identifier">ch</span>.<span class="ruby-identifier">on_extended_data</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">c</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
- <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">print</span> <span class="ruby-identifier">data</span>
- <span class="ruby-keyword">end</span>
-
- <span class="ruby-identifier">ch</span>.<span class="ruby-identifier">on_close</span> { <span class="ruby-identifier">puts</span> <span class="ruby-string">&quot;done!&quot;</span> }
+<span class="ruby-comment"># capture only stdout matching a particular pattern</span>
+<span class="ruby-identifier">stdout</span> = <span class="ruby-string">&quot;&quot;</span>
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec!</span>(<span class="ruby-string">&quot;ls -l /home/jamis&quot;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">channel</span>, <span class="ruby-identifier">stream</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">stdout</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">data</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">stream</span> <span class="ruby-operator">==</span> :<span class="ruby-identifier">stdout</span>
+<span class="ruby-keyword">end</span>
+<span class="ruby-identifier">puts</span> <span class="ruby-identifier">stdout</span>
+
+<span class="ruby-comment"># run multiple processes in parallel to completion</span>
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec</span> <span class="ruby-string">&quot;sed ...&quot;</span>
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec</span> <span class="ruby-string">&quot;awk ...&quot;</span>
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">exec</span> <span class="ruby-string">&quot;rm -rf ...&quot;</span>
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">loop</span>
+
+<span class="ruby-comment"># open a new channel and configure a minimal set of callbacks, then run</span>
+<span class="ruby-comment"># the event loop until the channel finishes (closes)</span>
+<span class="ruby-identifier">channel</span> = <span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">open_channel</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ch</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">ch</span>.<span class="ruby-identifier">exec</span> <span class="ruby-string">&quot;/usr/local/bin/ruby /path/to/file.rb&quot;</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ch</span>, <span class="ruby-identifier">success</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;could not execute command&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">success</span>
+
+ <span class="ruby-comment"># &quot;on_data&quot; is called when the process writes something to stdout</span>
+ <span class="ruby-identifier">ch</span>.<span class="ruby-identifier">on_data</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">c</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">$stdout</span>.<span class="ruby-identifier">print</span> <span class="ruby-identifier">data</span>
<span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># &quot;on_extended_data&quot; is called when the process writes something to stderr</span>
+ <span class="ruby-identifier">ch</span>.<span class="ruby-identifier">on_extended_data</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">c</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">print</span> <span class="ruby-identifier">data</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">ch</span>.<span class="ruby-identifier">on_close</span> { <span class="ruby-identifier">puts</span> <span class="ruby-string">&quot;done!&quot;</span> }
<span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span>
- <span class="ruby-identifier">channel</span>.<span class="ruby-identifier">wait</span>
+<span class="ruby-identifier">channel</span>.<span class="ruby-identifier">wait</span>
- <span class="ruby-comment"># forward connections on local port 1234 to port 80 of www.capify.org</span>
- <span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">forward</span>.<span class="ruby-identifier">local</span>(<span class="ruby-value">1234</span>, <span class="ruby-string">&quot;www.capify.org&quot;</span>, <span class="ruby-value">80</span>)
- <span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">loop</span> { <span class="ruby-keyword">true</span> }
+<span class="ruby-comment"># forward connections on local port 1234 to port 80 of www.capify.org</span>
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">forward</span>.<span class="ruby-identifier">local</span>(<span class="ruby-value">1234</span>, <span class="ruby-string">&quot;www.capify.org&quot;</span>, <span class="ruby-value">80</span>)
+<span class="ruby-identifier">ssh</span>.<span class="ruby-identifier">loop</span> { <span class="ruby-keyword">true</span> }
<span class="ruby-keyword">end</span>
</pre>
@@ -497,63 +590,69 @@ to further information.</p>
<h2 id="label-REQUIREMENTS-3A">REQUIREMENTS:<span><a href="#label-REQUIREMENTS-3A">&para;</a> <a href="#top">&uarr;</a></span></h2>
<p>The only requirement you might be missing is the <a
-href="OpenSSL.html">OpenSSL</a> bindings for Ruby. These are built by
-default on most platforms, but you can verify that they&#39;re built and
-installed on your system by running the following command line:</p>
+href="OpenSSL.html">OpenSSL</a> bindings for Ruby with a version greather
+than <code>1.0.1</code>. These are built by default on most platforms, but
+you can verify that they&#39;re built and installed on your system by
+running the following command line:</p>
<pre>ruby -ropenssl -e &#39;puts OpenSSL::OPENSSL_VERSION&#39;</pre>
-<p>If that spits out something like “OpenSSL 0.9.8g 19 Oct 2007”, then
-you&#39;re set. If you get an error, then you&#39;ll need to see about
+<p>If that spits out something like <code>OpenSSL 1.0.1 14 Mar 2012</code>,
+then you&#39;re set. If you get an error, then you&#39;ll need to see about
rebuilding ruby with <a href="OpenSSL.html">OpenSSL</a> support, or (if
your platform supports it) installing the <a
href="OpenSSL.html">OpenSSL</a> bindings separately.</p>
-<p>Lastly, if you want to run the tests or use any of the Rake tasks,
-you&#39;ll need Mocha and other dependencies listed in Gemfile</p>
-
<h2 id="label-INSTALL-3A">INSTALL:<span><a href="#label-INSTALL-3A">&para;</a> <a href="#top">&uarr;</a></span></h2>
-<ul><li>
-<p>gem install net-ssh (might need sudo privileges)</p>
-</li></ul>
+
+<pre class="ruby"><span class="ruby-identifier">gem</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">net</span><span class="ruby-operator">-</span><span class="ruby-identifier">ssh</span> <span class="ruby-comment"># might need sudo privileges</span>
+</pre>
<p>NOTE: If you are running on jruby on windows you need to install
-jruby-pageant manually (gemspec doesn&#39;t allow for platform specific
-dependencies).</p>
+<code>jruby-pageant</code> manually (gemspec doesn&#39;t allow for platform
+specific dependencies).</p>
<p>However, in order to be sure the code you&#39;re installing hasn&#39;t been
tampered with, it&#39;s recommended that you verify the <a
-href="http://docs.rubygems.org/read/chapter/21">signature</a>. To do this,
+href="http://docs.rubygems.org/read/chapter/21">signature</a>. To do this,
you need to add my public key as a trusted certificate (you only need to do
this once):</p>
<pre># Add the public key as a trusted certificate
# (You only need to do this once)
-$ curl -O https://raw.githubusercontent.com/net-ssh/net-ssh/master/net-ssh-public_cert.pem
-$ gem cert --add net-ssh-public_cert.pem</pre>
+curl -O https://raw.githubusercontent.com/net-ssh/net-ssh/master/net-ssh-public_cert.pem
+gem cert --add net-ssh-public_cert.pem</pre>
<p>Then, when install the gem, do so with high security:</p>
-<pre>$ gem install net-ssh -P HighSecurity</pre>
+<pre>gem install net-ssh -P HighSecurity</pre>
<p>If you don&#39;t add the public key, you&#39;ll see an error like
“Couldn&#39;t verify data signature”. If you&#39;re still having trouble
let me know and I&#39;ll give you a hand.</p>
<p>For ed25519 public key auth support your bundle file should contain
-“`rbnacl-libsodium“`, “`rbnacl“`, “`bcrypt_pbkdf“` dependencies.</p>
+<code>ed25519</code>, <code>bcrypt_pbkdf</code> dependencies.</p>
+
+<pre class="ruby"><span class="ruby-identifier">gem</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">ed25519</span>
+<span class="ruby-identifier">gem</span> <span class="ruby-identifier">install</span> <span class="ruby-identifier">bcrypt_pbkdf</span>
+</pre>
+
+<p>For curve25519-sha256 kex exchange support your bundle file should contain
+<code>x25519</code> dependency.</p>
<h2 id="label-RUBY+SUPPORT">RUBY SUPPORT<span><a href="#label-RUBY+SUPPORT">&para;</a> <a href="#top">&uarr;</a></span></h2>
<ul><li>
-<p>Ruby 1.8.x is supported up until the net-ssh 2.5.1 release.</p>
-</li><li>
-<p>Ruby 1.9.x is supported up until the net-ssh 2.9.x release.</p>
-</li><li>
-<p>Current net-ssh releases require Ruby 2.0 or later.</p>
+<p>See <a
+href="https://github.com/net-ssh/net-ssh/blob/master/net-ssh.gemspec">net-ssh.gemspec</a>
+for current versions ruby requirements</p>
</li></ul>
<h2 id="label-RUNNING+TESTS">RUNNING TESTS<span><a href="#label-RUNNING+TESTS">&para;</a> <a href="#top">&uarr;</a></span></h2>
+<p>If you want to run the tests or use any of the Rake tasks, you&#39;ll need
+Mocha and other dependencies listed in Gemfile</p>
+
<p>Run the test suite from the net-ssh directory with the following command:</p>
<pre class="ruby"><span class="ruby-identifier">bundle</span> <span class="ruby-identifier">exec</span> <span class="ruby-identifier">rake</span> <span class="ruby-identifier">test</span>
@@ -574,8 +673,9 @@ let me know and I&#39;ll give you a hand.</p>
<p>If you have the net-ssh private signing key, you will be able to create
signed release builds. Make sure the private key path matches the
-`signing_key` path set in `net-ssh.gemspec` and tell rake to sign the gem
-by setting the `NET_SSH_BUILDGEM_SIGNED` flag:</p>
+<code>signing_key</code> path set in <code>net-ssh.gemspec</code> and tell
+rake to sign the gem by setting the <code>NET_SSH_BUILDGEM_SIGNED</code>
+flag:</p>
<pre>NET_SSH_BUILDGEM_SIGNED=true rake build</pre>
@@ -586,6 +686,32 @@ needs to be renewed. You can do this with the following command:</p>
mv gem-public_cert.pem net-ssh-public_cert.pem
gem cert --add net-ssh-public_cert.pem</pre>
+<h2 id="label-CREDITS">CREDITS<span><a href="#label-CREDITS">&para;</a> <a href="#top">&uarr;</a></span></h2>
+
+<h3 id="label-Contributors">Contributors<span><a href="#label-Contributors">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>This project exists thanks to all the people who contribute.</p>
+
+<p><a href="graphs/contributors"><img
+src="https://opencollective.com/net-ssh/contributors.svg?width=890&button=false"></a></p>
+
+<h3 id="label-Backers">Backers<span><a href="#label-Backers">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>Thank you to all our backers! 🙏 <a
+href="https://opencollective.com/net-ssh#backer">Become a backer</a></p>
+
+<p><a href="https://opencollective.com/net-ssh#backers"><img
+src="https://opencollective.com/net-ssh/backers.svg?width=890"></a></p>
+
+<h3 id="label-Sponsors">Sponsors<span><a href="#label-Sponsors">&para;</a> <a href="#top">&uarr;</a></span></h3>
+
+<p>Support this project by becoming a sponsor. Your logo will show up here
+with a link to your website. <a
+href="https://opencollective.com/net-ssh#sponsor">Become a sponsor</a></p>
+
+<p><a href="https://opencollective.com/net-ssh/sponsor/0/website"><img
+src="https://opencollective.com/net-ssh/sponsor/0/avatar.svg"></a></p>
+
<h2 id="label-LICENSE-3A">LICENSE:<span><a href="#label-LICENSE-3A">&para;</a> <a href="#top">&uarr;</a></span></h2>
<p>(The MIT License)</p>
diff --git a/js/navigation.js.gz b/js/navigation.js.gz
index 092c346..b0ad094 100644
--- a/js/navigation.js.gz
+++ b/js/navigation.js.gz
Binary files differ
diff --git a/js/search_index.js b/js/search_index.js
index e631e34..55616ec 100644
--- a/js/search_index.js
+++ b/js/search_index.js
@@ -1 +1 @@
-var search_data = {"index":{"searchIndex":["dl","fiddle","net","ssh","authentication","agent","comment","agenterror","agentnotavailable","certificate","constants","disallowedmethod","ed25519","privkey","pubkey","signingkeyfromfile","ed25519loader","keymanager","keymanagererror","methods","abstract","hostbased","keyboardinteractive","none","password","publickey","pageant","socket","win","libc","ffi","library","session","authenticationfailed","buffer","bufferedio","channelopenfailed","channelrequestfailed","compat","config","connection","channel","constants","eventloop","keepalive","session","nilchannel","stringwithexitstatus","singlesessioneventloop","term","connectiontimeout","disconnect","exception","forwardedbufferedio","hostkeyerror","hostkeymismatch","hostkeyunknown","hostkeys","keyfactory","openssl","pkey","knownhosts","openssl","pkey","loggable","packet","prompt","prompter","proxy","command","connecterror","error","http","https","sslsocketcompatibility","jump","socks4","socks5","unauthorizederror","service","forward","test","channel","extensions","bufferedio","channel","io","classmethods","packetstream","kex","localpacket","packet","remotepacket","script","socket","timeout","transport","algorithms","openssl","pkey","ctr","cipherfactory","constants","hmac","abstract","md5","openssl","digest","md5_96","none","ripemd160","openssl","digest","sha1","openssl","digest","sha1_96","sha2_256","sha2_256_96","sha2_512","sha2_512_96","identitycipher","kex","diffiehellmangroup14sha1","diffiehellmangroup1sha1","diffiehellmangroupexchangesha1","diffiehellmangroupexchangesha256","ecdhsha2nistp256","ecdhsha2nistp384","ecdhsha2nistp521","keyexpander","packetstream","serverversion","session","state","verifiers","lenient","null","secure","strict","version","openssl","bn","digest","pkey","dh","dsa","ec","openssl","pkey","openssl","pkey","ecerror","pkey","rsa","string","<=>()","==()","[]()","[]()","[]()","[]()","[]()","[]()","[]=()","[]=()","accept_kexinit()","active?()","active_local_sockets()","active_locals()","active_remote_destinations()","active_remotes()","add()","add()","add()","add_host_key()","add_identity()","add_key_data()","agent()","agent()","allow?()","allowed_packet?()","append()","ask()","assert_scripted()","assign_defaults()","authenticate()","authenticate()","authenticate()","authenticate()","authenticate()","authenticate()","available()","available()","available_for_read?()","block_size()","build_proxy_command_equivalent()","busy?()","cancel_local()","cancel_local_socket()","cancel_remote()","cleanup()","cleanup()","cleanup_channel()","clear!()","clear!()","client_name()","close()","close()","close()","close()","close()","closed?()","closed?()","closing?()","compress()","compression?()","compressor()","configuration_for()","configure_client()","configure_server()","connect()","connect!()","connection()","consume!()","curve_name()","curve_name()","curve_name()","debug()","decompress()","decompressor()","decrypt()","decrypt()","default()","default_auth_methods()","default_files()","dependenciesrequiredfored25519()","digest()","digest()","digest_class()","digest_class()","digester()","digester()","digester()","do_close()","do_eof()","do_extended_data()","do_failure()","do_open_failed()","do_success()","each()","each_identity()","empty?()","empty?()","enabled?()","encrypt()","encrypt()","enqueue()","enqueue_message()","enqueue_packet()","env()","eof!()","eof?()","eof?()","error()","establish_connection()","establish_connection()","ev_do_calculate_rw_wait()","ev_do_handle_events()","ev_do_postprocess()","ev_preprocess()","ev_preprocess()","ev_preprocess()","ev_select_and_postprocess()","ev_select_and_postprocess()","exchange_keys()","exchange_keys()","exec()","exec()","exec!()","expand_key()","expandable_default_files()","expect_message()","extended()","extended()","extension_enabled?()","fatal()","fill()","fill()","final()","final()","final_cipher()","fingerprint()","fingerprint()","fingerprint()","fingerprint()","finish()","for()","forward()","from()","get()","get()","get()","get_lengths()","get_ptr()","getbyte()","getpeername()","gets()","gets_channel_close()","gets_channel_data()","gets_channel_eof()","gets_channel_extended_data()","gets_channel_request()","gets_close()","gets_data()","gets_eof()","gets_exit_status()","gets_extended_data()","hint()","host()","host()","host_as_string()","host_keys()","hostfiles()","identities()","idle!()","if_needs_rekey?()","increment()","increment_counter!()","info()","initialize_ssh()","initialized?()","inject_remote_delay!()","instantiate!()","interactive?()","interval()","io_select()","ip()","iv()","iv=()","iv=()","iv_len()","iv_len()","keepalive_maxcount()","key()","key=()","key_length()","key_length()","key_length()","keys_for()","known_host_hash?()","length()","listen_to()","load()","load_data_private_key()","load_data_public_key()","load_private_key()","load_public_key()","local()","local?()","local?()","local_closed?()","local_id()","local_socket()","loop()","loop_forever()","lwarn()","mac_length()","mac_length()","malloc_ptr()","max_select_wait_time()","method_missing()","name()","needs_rekey?()","negotiate!()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","next()","next_message()","next_message()","next_packet()","on_close()","on_data()","on_eof()","on_extended_data()","on_global_request()","on_open_channel()","on_open_failed()","on_process()","on_request()","open()","open()","open()","open()","open()","open()","open()","open_channel()","opens_channel()","options()","padding=()","parse_response()","peer()","peer_ip()","pending?()","pending_write?()","poll_message()","poll_next_packet()","port()","postprocess()","preprocess()","process()","process()","process()","process()","process()","process()","process_only()","public_key()","push()","raiseunlessloaded()","read()","read()","read()","read!()","read_all()","read_available()","read_bignum()","read_bool()","read_buffer()","read_byte()","read_certblob()","read_int64()","read_key()","read_keyblob()","read_keyblob()","read_keyblob()","read_keyblob()","read_long()","read_string()","read_to()","readpartial()","recv()","register()","register()","register_channel_request()","registered_channel_requests()","rekey!()","rekey!()","rekey_as_needed()","remainder_as_buffer()","remember_host!()","remote()","remote?()","remote?()","remote_closed!()","remote_closed?()","remote_id()","remote_to()","remove_all_identities()","remove_identity()","request_pty()","reset()","reset()","reset!()","reset!()","search_for()","search_in()","select_for_read?()","select_for_test()","send()","send()","send_as_needed()","send_channel_request()","send_data()","send_data_for_test()","send_global_request()","send_message()","send_message()","send_message()","send_packet()","send_pending()","send_pending()","send_query()","sends()","sends_channel_close()","sends_channel_data()","sends_channel_eof()","sends_channel_request()","sends_channel_request_pty()","sends_close()","sends_data()","sends_eof()","sends_exec()","sends_request_pty()","sends_subsystem()","service_request()","session_id()","set()","set_ptr_data()","setbyte()","should_send?()","shutdown!()","shutdown!()","sign()","sign()","sign()","sign!()","signature_valid?()","socket()","ssh_do_sign()","ssh_do_sign()","ssh_do_sign()","ssh_do_sign()","ssh_do_sign()","ssh_do_verify()","ssh_do_verify()","ssh_do_verify()","ssh_do_verify()","ssh_do_verify()","ssh_signature_type()","ssh_signature_type()","ssh_signature_type()","ssh_signature_type()","ssh_signature_type()","ssh_signature_type()","ssh_type()","ssh_type()","ssh_type()","ssh_type()","ssh_type()","ssh_type()","start()","start()","start()","stop_listening_to()","story()","subsystem()","success()","supported?()","test_available_for_read?()","test_enqueue_packet()","test_poll_next_packet()","to_blob()","to_blob()","to_blob()","to_blob()","to_blob()","to_blob()","to_i()","to_pem()","to_pem()","to_s()","to_s()","to_s()","to_ssh()","translate()","transport()","types()","update()","update()","update_cipher()","use_agent=()","use_agent?()","userauth_request()","valid?()","verify()","verify()","verify()","verify()","wait()","wait()","wait_for_pending_sends()","with_test_extension()","write()","write()","write_bignum()","write_bool()","write_byte()","write_int64()","write_key()","write_long()","write_moved()","write_mstring()","write_string()","xor!()","changes","license","readme","thanks"],"longSearchIndex":["dl","dl::fiddle","net","net::ssh","net::ssh::authentication","net::ssh::authentication::agent","net::ssh::authentication::agent::comment","net::ssh::authentication::agenterror","net::ssh::authentication::agentnotavailable","net::ssh::authentication::certificate","net::ssh::authentication::constants","net::ssh::authentication::disallowedmethod","net::ssh::authentication::ed25519","net::ssh::authentication::ed25519::privkey","net::ssh::authentication::ed25519::pubkey","net::ssh::authentication::ed25519::signingkeyfromfile","net::ssh::authentication::ed25519loader","net::ssh::authentication::keymanager","net::ssh::authentication::keymanagererror","net::ssh::authentication::methods","net::ssh::authentication::methods::abstract","net::ssh::authentication::methods::hostbased","net::ssh::authentication::methods::keyboardinteractive","net::ssh::authentication::methods::none","net::ssh::authentication::methods::password","net::ssh::authentication::methods::publickey","net::ssh::authentication::pageant","net::ssh::authentication::pageant::socket","net::ssh::authentication::pageant::win","net::ssh::authentication::pageant::win::libc","net::ssh::authentication::pageant::win::libc::ffi","net::ssh::authentication::pageant::win::libc::ffi::library","net::ssh::authentication::session","net::ssh::authenticationfailed","net::ssh::buffer","net::ssh::bufferedio","net::ssh::channelopenfailed","net::ssh::channelrequestfailed","net::ssh::compat","net::ssh::config","net::ssh::connection","net::ssh::connection::channel","net::ssh::connection::constants","net::ssh::connection::eventloop","net::ssh::connection::keepalive","net::ssh::connection::session","net::ssh::connection::session::nilchannel","net::ssh::connection::session::stringwithexitstatus","net::ssh::connection::singlesessioneventloop","net::ssh::connection::term","net::ssh::connectiontimeout","net::ssh::disconnect","net::ssh::exception","net::ssh::forwardedbufferedio","net::ssh::hostkeyerror","net::ssh::hostkeymismatch","net::ssh::hostkeyunknown","net::ssh::hostkeys","net::ssh::keyfactory","net::ssh::keyfactory::openssl","net::ssh::keyfactory::openssl::pkey","net::ssh::knownhosts","net::ssh::knownhosts::openssl","net::ssh::knownhosts::openssl::pkey","net::ssh::loggable","net::ssh::packet","net::ssh::prompt","net::ssh::prompt::prompter","net::ssh::proxy","net::ssh::proxy::command","net::ssh::proxy::connecterror","net::ssh::proxy::error","net::ssh::proxy::http","net::ssh::proxy::https","net::ssh::proxy::https::sslsocketcompatibility","net::ssh::proxy::jump","net::ssh::proxy::socks4","net::ssh::proxy::socks5","net::ssh::proxy::unauthorizederror","net::ssh::service","net::ssh::service::forward","net::ssh::test","net::ssh::test::channel","net::ssh::test::extensions","net::ssh::test::extensions::bufferedio","net::ssh::test::extensions::channel","net::ssh::test::extensions::io","net::ssh::test::extensions::io::classmethods","net::ssh::test::extensions::packetstream","net::ssh::test::kex","net::ssh::test::localpacket","net::ssh::test::packet","net::ssh::test::remotepacket","net::ssh::test::script","net::ssh::test::socket","net::ssh::timeout","net::ssh::transport","net::ssh::transport::algorithms","net::ssh::transport::algorithms::openssl","net::ssh::transport::algorithms::openssl::pkey","net::ssh::transport::ctr","net::ssh::transport::cipherfactory","net::ssh::transport::constants","net::ssh::transport::hmac","net::ssh::transport::hmac::abstract","net::ssh::transport::hmac::md5","net::ssh::transport::hmac::md5::openssl","net::ssh::transport::hmac::md5::openssl::digest","net::ssh::transport::hmac::md5_96","net::ssh::transport::hmac::none","net::ssh::transport::hmac::ripemd160","net::ssh::transport::hmac::ripemd160::openssl","net::ssh::transport::hmac::ripemd160::openssl::digest","net::ssh::transport::hmac::sha1","net::ssh::transport::hmac::sha1::openssl","net::ssh::transport::hmac::sha1::openssl::digest","net::ssh::transport::hmac::sha1_96","net::ssh::transport::hmac::sha2_256","net::ssh::transport::hmac::sha2_256_96","net::ssh::transport::hmac::sha2_512","net::ssh::transport::hmac::sha2_512_96","net::ssh::transport::identitycipher","net::ssh::transport::kex","net::ssh::transport::kex::diffiehellmangroup14sha1","net::ssh::transport::kex::diffiehellmangroup1sha1","net::ssh::transport::kex::diffiehellmangroupexchangesha1","net::ssh::transport::kex::diffiehellmangroupexchangesha256","net::ssh::transport::kex::ecdhsha2nistp256","net::ssh::transport::kex::ecdhsha2nistp384","net::ssh::transport::kex::ecdhsha2nistp521","net::ssh::transport::keyexpander","net::ssh::transport::packetstream","net::ssh::transport::serverversion","net::ssh::transport::session","net::ssh::transport::state","net::ssh::verifiers","net::ssh::verifiers::lenient","net::ssh::verifiers::null","net::ssh::verifiers::secure","net::ssh::verifiers::strict","net::ssh::version","openssl","openssl::bn","openssl::digest","openssl::pkey","openssl::pkey::dh","openssl::pkey::dsa","openssl::pkey::ec","openssl::pkey::openssl","openssl::pkey::openssl::pkey","openssl::pkey::openssl::pkey::openssl","openssl::pkey::openssl::pkey::openssl::pkey","openssl::pkey::openssl::pkey::openssl::pkey::ecerror","openssl::pkey::pkey","openssl::pkey::rsa","string","net::ssh::version#<=>()","net::ssh::buffer#==()","net::ssh::connection::channel#[]()","net::ssh::connection::session#[]()","net::ssh::hostkeyerror#[]()","net::ssh::packet#[]()","net::ssh::transport::algorithms#[]()","net::ssh::version::[]()","net::ssh::connection::channel#[]=()","net::ssh::connection::session#[]=()","net::ssh::transport::algorithms#accept_kexinit()","net::ssh::connection::channel#active?()","net::ssh::service::forward#active_local_sockets()","net::ssh::service::forward#active_locals()","net::ssh::service::forward#active_remote_destinations()","net::ssh::service::forward#active_remotes()","net::ssh::authentication::keymanager#add()","net::ssh::knownhosts::add()","net::ssh::knownhosts#add()","net::ssh::hostkeys#add_host_key()","net::ssh::authentication::agent#add_identity()","net::ssh::authentication::keymanager#add_key_data()","net::ssh::authentication::keymanager#agent()","net::ssh::service::forward#agent()","net::ssh::transport::algorithms#allow?()","net::ssh::transport::algorithms::allowed_packet?()","net::ssh::buffer#append()","net::ssh::prompt::prompter#ask()","net::ssh::test#assert_scripted()","net::ssh::assign_defaults()","net::ssh::authentication::methods::hostbased#authenticate()","net::ssh::authentication::methods::keyboardinteractive#authenticate()","net::ssh::authentication::methods::none#authenticate()","net::ssh::authentication::methods::password#authenticate()","net::ssh::authentication::methods::publickey#authenticate()","net::ssh::authentication::session#authenticate()","net::ssh::buffer#available()","net::ssh::bufferedio#available()","net::ssh::transport::packetstream#available_for_read?()","net::ssh::transport::identitycipher::block_size()","net::ssh::proxy::jump#build_proxy_command_equivalent()","net::ssh::connection::session#busy?()","net::ssh::service::forward#cancel_local()","net::ssh::service::forward#cancel_local_socket()","net::ssh::service::forward#cancel_remote()","net::ssh::transport::packetstream#cleanup()","net::ssh::transport::state#cleanup()","net::ssh::connection::session#cleanup_channel()","net::ssh::authentication::keymanager#clear!()","net::ssh::buffer#clear!()","net::ssh::transport::packetstream#client_name()","net::ssh::authentication::agent#close()","net::ssh::authentication::pageant::socket#close()","net::ssh::connection::channel#close()","net::ssh::connection::session#close()","net::ssh::transport::session#close()","net::ssh::connection::session#closed?()","net::ssh::transport::session#closed?()","net::ssh::connection::channel#closing?()","net::ssh::transport::state#compress()","net::ssh::transport::state#compression?()","net::ssh::transport::state#compressor()","net::ssh::configuration_for()","net::ssh::transport::session#configure_client()","net::ssh::transport::session#configure_server()","net::ssh::authentication::agent::connect()","net::ssh::authentication::agent#connect!()","net::ssh::test#connection()","net::ssh::buffer#consume!()","net::ssh::transport::kex::ecdhsha2nistp256#curve_name()","net::ssh::transport::kex::ecdhsha2nistp384#curve_name()","net::ssh::transport::kex::ecdhsha2nistp521#curve_name()","net::ssh::loggable#debug()","net::ssh::transport::state#decompress()","net::ssh::transport::state#decompressor()","net::ssh::transport::ctr#decrypt()","net::ssh::transport::identitycipher::decrypt()","net::ssh::prompt::default()","net::ssh::config::default_auth_methods()","net::ssh::config::default_files()","net::ssh::authentication::ed25519loader::dependenciesrequiredfored25519()","net::ssh::transport::hmac::abstract#digest()","net::ssh::transport::hmac::none#digest()","net::ssh::transport::hmac::abstract::digest_class()","net::ssh::transport::hmac::abstract#digest_class()","net::ssh::transport::kex::ecdhsha2nistp256#digester()","net::ssh::transport::kex::ecdhsha2nistp384#digester()","net::ssh::transport::kex::ecdhsha2nistp521#digester()","net::ssh::connection::channel#do_close()","net::ssh::connection::channel#do_eof()","net::ssh::connection::channel#do_extended_data()","net::ssh::connection::channel#do_failure()","net::ssh::connection::channel#do_open_failed()","net::ssh::connection::channel#do_success()","net::ssh::hostkeys#each()","net::ssh::authentication::keymanager#each_identity()","net::ssh::buffer#empty?()","net::ssh::hostkeys#empty?()","net::ssh::connection::keepalive#enabled?()","net::ssh::transport::ctr#encrypt()","net::ssh::transport::identitycipher::encrypt()","net::ssh::bufferedio#enqueue()","net::ssh::transport::session#enqueue_message()","net::ssh::transport::packetstream#enqueue_packet()","net::ssh::connection::channel#env()","net::ssh::connection::channel#eof!()","net::ssh::buffer#eof?()","net::ssh::connection::channel#eof?()","net::ssh::loggable#error()","net::ssh::proxy::http#establish_connection()","net::ssh::proxy::https#establish_connection()","net::ssh::connection::session#ev_do_calculate_rw_wait()","net::ssh::connection::session#ev_do_handle_events()","net::ssh::connection::session#ev_do_postprocess()","net::ssh::connection::eventloop#ev_preprocess()","net::ssh::connection::session#ev_preprocess()","net::ssh::connection::singlesessioneventloop#ev_preprocess()","net::ssh::connection::eventloop#ev_select_and_postprocess()","net::ssh::connection::singlesessioneventloop#ev_select_and_postprocess()","net::ssh::test::kex#exchange_keys()","net::ssh::transport::kex::diffiehellmangroup1sha1#exchange_keys()","net::ssh::connection::channel#exec()","net::ssh::connection::session#exec()","net::ssh::connection::session#exec!()","net::ssh::transport::keyexpander::expand_key()","net::ssh::config::expandable_default_files()","net::ssh::authentication::session#expect_message()","net::ssh::transport::ctr::extended()","net::ssh::transport::packetstream::extended()","net::ssh::test::extensions::io::extension_enabled?()","net::ssh::loggable#fatal()","net::ssh::bufferedio#fill()","net::ssh::forwardedbufferedio#fill()","net::ssh::transport::ctr#final()","net::ssh::transport::identitycipher::final()","net::ssh::transport::state#final_cipher()","net::ssh::authentication::certificate#fingerprint()","net::ssh::authentication::ed25519::pubkey#fingerprint()","net::ssh::hostkeyerror#fingerprint()","openssl::pkey::pkey#fingerprint()","net::ssh::authentication::keymanager#finish()","net::ssh::config::for()","net::ssh::connection::session#forward()","net::ssh::buffer::from()","net::ssh::keyfactory::get()","net::ssh::transport::cipherfactory::get()","net::ssh::transport::hmac::get()","net::ssh::transport::cipherfactory::get_lengths()","net::ssh::authentication::pageant::win::get_ptr()","string#getbyte()","net::ssh::test::socket#getpeername()","net::ssh::test::script#gets()","net::ssh::test::script#gets_channel_close()","net::ssh::test::script#gets_channel_data()","net::ssh::test::script#gets_channel_eof()","net::ssh::test::script#gets_channel_extended_data()","net::ssh::test::script#gets_channel_request()","net::ssh::test::channel#gets_close()","net::ssh::test::channel#gets_data()","net::ssh::test::channel#gets_eof()","net::ssh::test::channel#gets_exit_status()","net::ssh::test::channel#gets_extended_data()","net::ssh::transport::session#hint()","net::ssh::connection::session#host()","net::ssh::hostkeyerror#host()","net::ssh::transport::session#host_as_string()","net::ssh::transport::session#host_keys()","net::ssh::knownhosts::hostfiles()","net::ssh::authentication::agent#identities()","net::ssh::test::extensions::packetstream#idle!()","net::ssh::transport::packetstream#if_needs_rekey?()","net::ssh::transport::state#increment()","net::ssh::transport::ctr#increment_counter!()","net::ssh::loggable#info()","net::ssh::transport::packetstream#initialize_ssh()","net::ssh::transport::algorithms#initialized?()","net::ssh::test::channel#inject_remote_delay!()","net::ssh::test::packet#instantiate!()","net::ssh::authentication::methods::keyboardinteractive#interactive?()","net::ssh::connection::keepalive#interval()","net::ssh::compat::io_select()","net::ssh::hostkeyerror#ip()","net::ssh::transport::ctr#iv()","net::ssh::transport::ctr#iv=()","net::ssh::transport::identitycipher::iv=()","net::ssh::transport::ctr#iv_len()","net::ssh::transport::identitycipher::iv_len()","net::ssh::connection::keepalive#keepalive_maxcount()","net::ssh::hostkeyerror#key()","net::ssh::transport::hmac::abstract#key=()","net::ssh::transport::hmac::key_length()","net::ssh::transport::hmac::abstract::key_length()","net::ssh::transport::hmac::abstract#key_length()","net::ssh::knownhosts#keys_for()","net::ssh::knownhosts#known_host_hash?()","net::ssh::buffer#length()","net::ssh::connection::session#listen_to()","net::ssh::config::load()","net::ssh::keyfactory::load_data_private_key()","net::ssh::keyfactory::load_data_public_key()","net::ssh::keyfactory::load_private_key()","net::ssh::keyfactory::load_public_key()","net::ssh::service::forward#local()","net::ssh::test::localpacket#local?()","net::ssh::test::packet#local?()","net::ssh::connection::channel#local_closed?()","net::ssh::test::channel#local_id()","net::ssh::service::forward#local_socket()","net::ssh::connection::session#loop()","net::ssh::connection::session#loop_forever()","net::ssh::loggable#lwarn()","net::ssh::transport::hmac::abstract::mac_length()","net::ssh::transport::hmac::abstract#mac_length()","net::ssh::authentication::pageant::win::malloc_ptr()","net::ssh::connection::session#max_select_wait_time()","net::ssh::connection::session::nilchannel#method_missing()","net::ssh::transport::identitycipher::name()","net::ssh::transport::state#needs_rekey?()","net::ssh::authentication::agent#negotiate!()","net::ssh::authentication::agent::new()","net::ssh::authentication::ed25519::privkey::new()","net::ssh::authentication::ed25519::pubkey::new()","net::ssh::authentication::ed25519::signingkeyfromfile::new()","net::ssh::authentication::keymanager::new()","net::ssh::authentication::methods::abstract::new()","net::ssh::authentication::pageant::socket::new()","net::ssh::authentication::session::new()","net::ssh::buffer::new()","net::ssh::channelopenfailed::new()","net::ssh::connection::channel::new()","net::ssh::connection::eventloop::new()","net::ssh::connection::keepalive::new()","net::ssh::connection::session::new()","net::ssh::connection::session::nilchannel::new()","net::ssh::connection::session::stringwithexitstatus::new()","net::ssh::hostkeys::new()","net::ssh::knownhosts::new()","net::ssh::packet::new()","net::ssh::prompt::new()","net::ssh::prompt::prompter::new()","net::ssh::proxy::command::new()","net::ssh::proxy::http::new()","net::ssh::proxy::https::new()","net::ssh::proxy::jump::new()","net::ssh::proxy::socks4::new()","net::ssh::proxy::socks5::new()","net::ssh::service::forward::new()","net::ssh::test::channel::new()","net::ssh::test::kex::new()","net::ssh::test::localpacket::new()","net::ssh::test::packet::new()","net::ssh::test::script::new()","net::ssh::test::socket::new()","net::ssh::transport::algorithms::new()","net::ssh::transport::hmac::abstract::new()","net::ssh::transport::kex::diffiehellmangroup1sha1::new()","net::ssh::transport::kex::diffiehellmangroupexchangesha256::new()","net::ssh::transport::kex::ecdhsha2nistp256::new()","net::ssh::transport::serverversion::new()","net::ssh::transport::session::new()","net::ssh::transport::state::new()","net::ssh::version::new()","net::ssh::test::script#next()","net::ssh::authentication::session#next_message()","net::ssh::transport::session#next_message()","net::ssh::transport::packetstream#next_packet()","net::ssh::connection::channel#on_close()","net::ssh::connection::channel#on_data()","net::ssh::connection::channel#on_eof()","net::ssh::connection::channel#on_extended_data()","net::ssh::connection::session#on_global_request()","net::ssh::connection::session#on_open_channel()","net::ssh::connection::channel#on_open_failed()","net::ssh::connection::channel#on_process()","net::ssh::connection::channel#on_request()","net::ssh::authentication::pageant::socket::open()","net::ssh::proxy::command#open()","net::ssh::proxy::http#open()","net::ssh::proxy::jump#open()","net::ssh::proxy::socks4#open()","net::ssh::proxy::socks5#open()","net::ssh::test::socket#open()","net::ssh::connection::session#open_channel()","net::ssh::test::script#opens_channel()","net::ssh::connection::keepalive#options()","net::ssh::transport::ctr#padding=()","net::ssh::proxy::http#parse_response()","net::ssh::transport::session#peer()","net::ssh::transport::packetstream#peer_ip()","net::ssh::transport::algorithms#pending?()","net::ssh::bufferedio#pending_write?()","net::ssh::transport::session#poll_message()","net::ssh::transport::packetstream#poll_next_packet()","net::ssh::hostkeyerror#port()","net::ssh::connection::session#postprocess()","net::ssh::connection::session#preprocess()","net::ssh::connection::channel#process()","net::ssh::connection::eventloop#process()","net::ssh::connection::session#process()","net::ssh::test::localpacket#process()","net::ssh::test::remotepacket#process()","net::ssh::test::script#process()","net::ssh::connection::eventloop#process_only()","net::ssh::authentication::ed25519::privkey#public_key()","net::ssh::transport::session#push()","net::ssh::authentication::ed25519loader::raiseunlessloaded()","net::ssh::authentication::ed25519::privkey::read()","net::ssh::authentication::pageant::socket#read()","net::ssh::buffer#read()","net::ssh::buffer#read!()","net::ssh::buffer#read_all()","net::ssh::bufferedio#read_available()","net::ssh::buffer#read_bignum()","net::ssh::buffer#read_bool()","net::ssh::buffer#read_buffer()","net::ssh::buffer#read_byte()","net::ssh::authentication::certificate::read_certblob()","net::ssh::buffer#read_int64()","net::ssh::buffer#read_key()","net::ssh::authentication::ed25519::privkey::read_keyblob()","net::ssh::authentication::ed25519::pubkey::read_keyblob()","net::ssh::buffer#read_keyblob()","openssl::pkey::ec::read_keyblob()","net::ssh::buffer#read_long()","net::ssh::buffer#read_string()","net::ssh::buffer#read_to()","net::ssh::test::socket#readpartial()","net::ssh::test::socket#recv()","net::ssh::connection::eventloop#register()","net::ssh::packet::register()","net::ssh::test::packet::register_channel_request()","net::ssh::test::packet::registered_channel_requests()","net::ssh::transport::algorithms#rekey!()","net::ssh::transport::session#rekey!()","net::ssh::transport::session#rekey_as_needed()","net::ssh::buffer#remainder_as_buffer()","net::ssh::hostkeyerror#remember_host!()","net::ssh::service::forward#remote()","net::ssh::test::packet#remote?()","net::ssh::test::remotepacket#remote?()","net::ssh::connection::channel#remote_closed!()","net::ssh::connection::channel#remote_closed?()","net::ssh::test::channel#remote_id()","net::ssh::service::forward#remote_to()","net::ssh::authentication::agent#remove_all_identities()","net::ssh::authentication::agent#remove_identity()","net::ssh::connection::channel#request_pty()","net::ssh::transport::ctr#reset()","net::ssh::transport::identitycipher::reset()","net::ssh::buffer#reset!()","net::ssh::transport::state#reset!()","net::ssh::knownhosts::search_for()","net::ssh::knownhosts::search_in()","net::ssh::test::extensions::bufferedio#select_for_read?()","net::ssh::test::extensions::io::classmethods#select_for_test()","net::ssh::authentication::pageant::socket#send()","net::ssh::proxy::https::sslsocketcompatibility#send()","net::ssh::connection::keepalive#send_as_needed()","net::ssh::connection::channel#send_channel_request()","net::ssh::connection::channel#send_data()","net::ssh::test::extensions::channel#send_data_for_test()","net::ssh::connection::session#send_global_request()","net::ssh::authentication::methods::abstract#send_message()","net::ssh::connection::session#send_message()","net::ssh::transport::session#send_message()","net::ssh::transport::packetstream#send_packet()","net::ssh::bufferedio#send_pending()","net::ssh::forwardedbufferedio#send_pending()","net::ssh::authentication::pageant::socket#send_query()","net::ssh::test::script#sends()","net::ssh::test::script#sends_channel_close()","net::ssh::test::script#sends_channel_data()","net::ssh::test::script#sends_channel_eof()","net::ssh::test::script#sends_channel_request()","net::ssh::test::script#sends_channel_request_pty()","net::ssh::test::channel#sends_close()","net::ssh::test::channel#sends_data()","net::ssh::test::channel#sends_eof()","net::ssh::test::channel#sends_exec()","net::ssh::test::channel#sends_request_pty()","net::ssh::test::channel#sends_subsystem()","net::ssh::transport::session#service_request()","net::ssh::authentication::methods::abstract#session_id()","net::ssh::transport::state#set()","net::ssh::authentication::pageant::win::set_ptr_data()","string#setbyte()","net::ssh::connection::keepalive#should_send?()","net::ssh::connection::session#shutdown!()","net::ssh::transport::session#shutdown!()","net::ssh::authentication::agent#sign()","net::ssh::authentication::certificate#sign()","net::ssh::authentication::keymanager#sign()","net::ssh::authentication::certificate#sign!()","net::ssh::authentication::certificate#signature_valid?()","net::ssh::test#socket()","net::ssh::authentication::certificate#ssh_do_sign()","net::ssh::authentication::ed25519::privkey#ssh_do_sign()","openssl::pkey::dsa#ssh_do_sign()","openssl::pkey::ec#ssh_do_sign()","openssl::pkey::rsa#ssh_do_sign()","net::ssh::authentication::certificate#ssh_do_verify()","net::ssh::authentication::ed25519::pubkey#ssh_do_verify()","openssl::pkey::dsa#ssh_do_verify()","openssl::pkey::ec#ssh_do_verify()","openssl::pkey::rsa#ssh_do_verify()","net::ssh::authentication::certificate#ssh_signature_type()","net::ssh::authentication::ed25519::privkey#ssh_signature_type()","net::ssh::authentication::ed25519::pubkey#ssh_signature_type()","openssl::pkey::dsa#ssh_signature_type()","openssl::pkey::ec#ssh_signature_type()","openssl::pkey::rsa#ssh_signature_type()","net::ssh::authentication::certificate#ssh_type()","net::ssh::authentication::ed25519::privkey#ssh_type()","net::ssh::authentication::ed25519::pubkey#ssh_type()","openssl::pkey::dsa#ssh_type()","openssl::pkey::ec#ssh_type()","openssl::pkey::rsa#ssh_type()","net::ssh::start()","net::ssh::prompt#start()","net::ssh::transport::algorithms#start()","net::ssh::connection::session#stop_listening_to()","net::ssh::test#story()","net::ssh::connection::channel#subsystem()","net::ssh::prompt::prompter#success()","net::ssh::transport::cipherfactory::supported?()","net::ssh::test::extensions::packetstream#test_available_for_read?()","net::ssh::test::extensions::packetstream#test_enqueue_packet()","net::ssh::test::extensions::packetstream#test_poll_next_packet()","net::ssh::authentication::certificate#to_blob()","net::ssh::authentication::ed25519::privkey#to_blob()","net::ssh::authentication::ed25519::pubkey#to_blob()","openssl::pkey::dsa#to_blob()","openssl::pkey::ec#to_blob()","openssl::pkey::rsa#to_blob()","net::ssh::version#to_i()","net::ssh::authentication::certificate#to_pem()","net::ssh::authentication::ed25519::pubkey#to_pem()","net::ssh::buffer#to_s()","net::ssh::test::remotepacket#to_s()","net::ssh::version#to_s()","openssl::bn#to_ssh()","net::ssh::config::translate()","net::ssh::test#transport()","net::ssh::test::packet#types()","net::ssh::transport::ctr#update()","net::ssh::transport::identitycipher::update()","net::ssh::transport::state#update_cipher()","net::ssh::authentication::keymanager#use_agent=()","net::ssh::authentication::keymanager#use_agent?()","net::ssh::authentication::methods::abstract#userauth_request()","openssl::pkey::dh#valid?()","net::ssh::verifiers::lenient#verify()","net::ssh::verifiers::null#verify()","net::ssh::verifiers::secure#verify()","net::ssh::verifiers::strict#verify()","net::ssh::connection::channel#wait()","net::ssh::transport::session#wait()","net::ssh::bufferedio#wait_for_pending_sends()","net::ssh::test::extensions::io::with_test_extension()","net::ssh::buffer#write()","net::ssh::test::socket#write()","net::ssh::buffer#write_bignum()","net::ssh::buffer#write_bool()","net::ssh::buffer#write_byte()","net::ssh::buffer#write_int64()","net::ssh::buffer#write_key()","net::ssh::buffer#write_long()","net::ssh::buffer#write_moved()","net::ssh::buffer#write_mstring()","net::ssh::buffer#write_string()","net::ssh::transport::ctr#xor!()","","","",""],"info":[["DL","","DL.html","","<p>For now map DL to Fiddler versus updating all the code below\n"],["DL::Fiddle","","DL/Fiddle.html","",""],["Net","","Net.html","",""],["Net::SSH","","Net/SSH.html","","<p>Net::SSH is a library for interacting, programmatically, with remote\nprocesses via the SSH2 protocol. …\n"],["Net::SSH::Authentication","","Net/SSH/Authentication.html","",""],["Net::SSH::Authentication::Agent","","Net/SSH/Authentication/Agent.html","","<p>This class implements a simple client for the ssh-agent protocol. It does\nnot implement any specific …\n"],["Net::SSH::Authentication::Agent::Comment","","Net/SSH/Authentication/Agent/Comment.html","","<p>A simple module for extending keys, to allow comments to be specified for\nthem.\n"],["Net::SSH::Authentication::AgentError","","Net/SSH/Authentication/AgentError.html","","<p>Class for representing agent-specific errors.\n"],["Net::SSH::Authentication::AgentNotAvailable","","Net/SSH/Authentication/AgentNotAvailable.html","","<p>An exception for indicating that the SSH agent is not available.\n"],["Net::SSH::Authentication::Certificate","","Net/SSH/Authentication/Certificate.html","","<p>Class for representing an SSH certificate.\n<p>cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/usr.bin/ssh/PROTOCOL.certkeys?rev=1.10&content-type=text/plain\n…\n"],["Net::SSH::Authentication::Constants","","Net/SSH/Authentication/Constants.html","","<p>Describes the constants used by the Net::SSH::Authentication components of\nthe Net::SSH library. Individual …\n"],["Net::SSH::Authentication::DisallowedMethod","","Net/SSH/Authentication/DisallowedMethod.html","","<p>Raised if the current authentication method is not allowed\n"],["Net::SSH::Authentication::ED25519","","Net/SSH/Authentication/ED25519.html","",""],["Net::SSH::Authentication::ED25519::PrivKey","","Net/SSH/Authentication/ED25519/PrivKey.html","",""],["Net::SSH::Authentication::ED25519::PubKey","","Net/SSH/Authentication/ED25519/PubKey.html","",""],["Net::SSH::Authentication::ED25519::SigningKeyFromFile","","Net/SSH/Authentication/ED25519/SigningKeyFromFile.html","",""],["Net::SSH::Authentication::ED25519Loader","","Net/SSH/Authentication/ED25519Loader.html","","<p>Loads ED25519 support which requires optinal dependecies like rbnacl,\nbcrypt_pbkdf\n"],["Net::SSH::Authentication::KeyManager","","Net/SSH/Authentication/KeyManager.html","","<p>This class encapsulates all operations done by clients on a user&#39;s\nprivate keys. In practice, the …\n"],["Net::SSH::Authentication::KeyManagerError","","Net/SSH/Authentication/KeyManagerError.html","","<p>A trivial exception class used to report errors in the key manager.\n"],["Net::SSH::Authentication::Methods","","Net/SSH/Authentication/Methods.html","",""],["Net::SSH::Authentication::Methods::Abstract","","Net/SSH/Authentication/Methods/Abstract.html","","<p>The base class of all user authentication methods. It provides a few bits\nof common functionality.\n"],["Net::SSH::Authentication::Methods::Hostbased","","Net/SSH/Authentication/Methods/Hostbased.html","","<p>Implements the host-based SSH authentication method.\n"],["Net::SSH::Authentication::Methods::KeyboardInteractive","","Net/SSH/Authentication/Methods/KeyboardInteractive.html","","<p>Implements the “keyboard-interactive” SSH authentication method.\n"],["Net::SSH::Authentication::Methods::None","","Net/SSH/Authentication/Methods/None.html","","<p>Implements the “none” SSH authentication method.\n"],["Net::SSH::Authentication::Methods::Password","","Net/SSH/Authentication/Methods/Password.html","","<p>Implements the “password” SSH authentication method.\n"],["Net::SSH::Authentication::Methods::Publickey","","Net/SSH/Authentication/Methods/Publickey.html","","<p>Implements the “publickey” SSH authentication method.\n"],["Net::SSH::Authentication::Pageant","","Net/SSH/Authentication/Pageant.html","","<p>This module encapsulates the implementation of a socket factory that uses\nthe PuTTY “pageant” …\n"],["Net::SSH::Authentication::Pageant::Socket","","Net/SSH/Authentication/Pageant/Socket.html","","<p>This is the pseudo-socket implementation that mimics the interface of a\nsocket, translating each request …\n"],["Net::SSH::Authentication::Pageant::Win","","Net/SSH/Authentication/Pageant/Win.html","","<p>The definition of the Windows methods and data structures used in\ncommunicating with the pageant process. …\n"],["Net::SSH::Authentication::Pageant::Win::LibC","","Net/SSH/Authentication/Pageant/Win/LibC.html","",""],["Net::SSH::Authentication::Pageant::Win::LibC::FFI","","Net/SSH/Authentication/Pageant/Win/LibC/FFI.html","",""],["Net::SSH::Authentication::Pageant::Win::LibC::FFI::Library","","Net/SSH/Authentication/Pageant/Win/LibC/FFI/Library.html","",""],["Net::SSH::Authentication::Session","","Net/SSH/Authentication/Session.html","","<p>Represents an authentication session. It manages the authentication of a\nuser over an established connection …\n"],["Net::SSH::AuthenticationFailed","","Net/SSH/AuthenticationFailed.html","","<p>This exception is raised when authentication fails (whether it be public\nkey authentication, password …\n"],["Net::SSH::Buffer","","Net/SSH/Buffer.html","","<p>Net::SSH::Buffer is a flexible class for building and parsing binary data\npackets. It provides a stream-like …\n"],["Net::SSH::BufferedIo","","Net/SSH/BufferedIo.html","","<p>This module is used to extend sockets and other IO objects, to allow them\nto be buffered for both read …\n"],["Net::SSH::ChannelOpenFailed","","Net/SSH/ChannelOpenFailed.html","","<p>This is exception is primarily used internally, but if you have a channel\nopen handler (see Net::SSH::Connection::Session#on_open_channel …\n"],["Net::SSH::ChannelRequestFailed","","Net/SSH/ChannelRequestFailed.html","","<p>This exception is primarily used internally, but if you have a channel\nrequest handler (see Net::SSH::Connection::Channel#on_request …\n"],["Net::SSH::Compat","","Net/SSH/Compat.html","","<p>This class contains miscellaneous patches and workarounds for different\nruby implementations.\n"],["Net::SSH::Config","","Net/SSH/Config.html","","<p>The Net::SSH::Config class is used to parse OpenSSH configuration files,\nand translates that syntax into …\n"],["Net::SSH::Connection","","Net/SSH/Connection.html","",""],["Net::SSH::Connection::Channel","","Net/SSH/Connection/Channel.html","","<p>The channel abstraction. Multiple “channels” can be multiplexed onto a\nsingle SSH channel, …\n"],["Net::SSH::Connection::Constants","","Net/SSH/Connection/Constants.html","","<p>Definitions of constants that are specific to the connection layer of the\nSSH protocol.\n"],["Net::SSH::Connection::EventLoop","","Net/SSH/Connection/EventLoop.html","","<p>EventLoop can be shared across multiple sessions\n<p>one issue is with blocks passed to loop, etc. they should …\n"],["Net::SSH::Connection::Keepalive","","Net/SSH/Connection/Keepalive.html","",""],["Net::SSH::Connection::Session","","Net/SSH/Connection/Session.html","","<p>A session class representing the connection service running on top of the\nSSH transport layer. It manages …\n"],["Net::SSH::Connection::Session::NilChannel","","Net/SSH/Connection/Session/NilChannel.html","",""],["Net::SSH::Connection::Session::StringWithExitstatus","","Net/SSH/Connection/Session/StringWithExitstatus.html","",""],["Net::SSH::Connection::SingleSessionEventLoop","","Net/SSH/Connection/SingleSessionEventLoop.html","","<p>optimized version for a single session\n"],["Net::SSH::Connection::Term","","Net/SSH/Connection/Term.html","","<p>These constants are used when requesting a pseudo-terminal (via\nNet::SSH::Connection::Channel#request_pty …\n"],["Net::SSH::ConnectionTimeout","","Net/SSH/ConnectionTimeout.html","","<p>This exception is raised when a connection attempt times out.\n"],["Net::SSH::Disconnect","","Net/SSH/Disconnect.html","","<p>This exception is raised when the remote host has disconnected\nunexpectedly.\n"],["Net::SSH::Exception","","Net/SSH/Exception.html","","<p>A general exception class, to act as the ancestor of all other Net::SSH\nexception classes.\n"],["Net::SSH::ForwardedBufferedIo","","Net/SSH/ForwardedBufferedIo.html","","<p>Fixes for two issues by Miklós Fazekas:\n\n<pre>* if client closes a forwarded connection, but the server is\n ...</pre>\n"],["Net::SSH::HostKeyError","","Net/SSH/HostKeyError.html","","<p>Base class for host key exceptions. When rescuing this exception, you can\ninspect the key fingerprint …\n"],["Net::SSH::HostKeyMismatch","","Net/SSH/HostKeyMismatch.html","","<p>Raised when the cached key for a particular host does not match the key\ngiven by the host, which can …\n"],["Net::SSH::HostKeyUnknown","","Net/SSH/HostKeyUnknown.html","","<p>Raised when there is no cached key for a particular host, which probably\nmeans that the host has simply …\n"],["Net::SSH::HostKeys","","Net/SSH/HostKeys.html","","<p>Represents the result of a search in known hosts see search_for\n"],["Net::SSH::KeyFactory","","Net/SSH/KeyFactory.html","","<p>A factory class for returning new Key classes. It is used for obtaining\nOpenSSL key instances via their …\n"],["Net::SSH::KeyFactory::OpenSSL","","Net/SSH/KeyFactory/OpenSSL.html","",""],["Net::SSH::KeyFactory::OpenSSL::PKey","","Net/SSH/KeyFactory/OpenSSL/PKey.html","",""],["Net::SSH::KnownHosts","","Net/SSH/KnownHosts.html","","<p>Searches an OpenSSH-style known-host file for a given host, and returns all\nmatching keys. This is used …\n"],["Net::SSH::KnownHosts::OpenSSL","","Net/SSH/KnownHosts/OpenSSL.html","",""],["Net::SSH::KnownHosts::OpenSSL::PKey","","Net/SSH/KnownHosts/OpenSSL/PKey.html","",""],["Net::SSH::Loggable","","Net/SSH/Loggable.html","","<p>A simple module to make logging easier to deal with. It assumes that the\nlogger instance (if not nil) …\n"],["Net::SSH::Packet","","Net/SSH/Packet.html","","<p>A specialization of Buffer that knows the format of certain common packet\ntypes. It auto-parses those …\n"],["Net::SSH::Prompt","","Net/SSH/Prompt.html","","<p>Default prompt implementation, called for asking password from user. It\nwill never be instantiated directly, …\n"],["Net::SSH::Prompt::Prompter","","Net/SSH/Prompt/Prompter.html","","<p>default prompt object implementation. More sophisticated implemenetations\nmight implement caching.\n"],["Net::SSH::Proxy","","Net/SSH/Proxy.html","",""],["Net::SSH::Proxy::Command","","Net/SSH/Proxy/Command.html","","<p>An implementation of a command proxy. To use it, instantiate it, then pass\nthe instantiated object via …\n"],["Net::SSH::Proxy::ConnectError","","Net/SSH/Proxy/ConnectError.html","","<p>Used for reporting proxy connection errors.\n"],["Net::SSH::Proxy::Error","","Net/SSH/Proxy/Error.html","","<p>A general exception class for all Proxy errors.\n"],["Net::SSH::Proxy::HTTP","","Net/SSH/Proxy/HTTP.html","","<p>An implementation of an HTTP proxy. To use it, instantiate it, then pass\nthe instantiated object via …\n"],["Net::SSH::Proxy::HTTPS","","Net/SSH/Proxy/HTTPS.html","","<p>A specialization of the HTTP proxy which encrypts the whole connection\nusing OpenSSL. This has the advantage …\n"],["Net::SSH::Proxy::HTTPS::SSLSocketCompatibility","","Net/SSH/Proxy/HTTPS/SSLSocketCompatibility.html","","<p>Shim to make OpenSSL::SSL::SSLSocket behave like a regular TCPSocket for\nall intents and purposes of …\n"],["Net::SSH::Proxy::Jump","","Net/SSH/Proxy/Jump.html","","<p>An implementation of a jump proxy. To use it, instantiate it, then pass the\ninstantiated object via the …\n"],["Net::SSH::Proxy::SOCKS4","","Net/SSH/Proxy/SOCKS4.html","","<p>An implementation of a SOCKS4 proxy. To use it, instantiate it, then pass\nthe instantiated object via …\n"],["Net::SSH::Proxy::SOCKS5","","Net/SSH/Proxy/SOCKS5.html","","<p>An implementation of a SOCKS5 proxy. To use it, instantiate it, then pass\nthe instantiated object via …\n"],["Net::SSH::Proxy::UnauthorizedError","","Net/SSH/Proxy/UnauthorizedError.html","","<p>Used when the server doesn&#39;t recognize the user&#39;s credentials.\n"],["Net::SSH::Service","","Net/SSH/Service.html","",""],["Net::SSH::Service::Forward","","Net/SSH/Service/Forward.html","","<p>This class implements various port forwarding services for use by Net::SSH\nclients. The Forward class …\n"],["Net::SSH::Test","","Net/SSH/Test.html","","<p>This module may be used in unit tests, for when you want to test that your\nSSH state machines are really …\n"],["Net::SSH::Test::Channel","","Net/SSH/Test/Channel.html","","<p>A mock channel, used for scripting actions in tests. It wraps a\nNet::SSH::Test::Script instance, and …\n"],["Net::SSH::Test::Extensions","","Net/SSH/Test/Extensions.html","","<p>A collection of modules used to extend/override the default behavior of\nNet::SSH internals for ease of …\n"],["Net::SSH::Test::Extensions::BufferedIo","","Net/SSH/Test/Extensions/BufferedIo.html","","<p>An extension to Net::SSH::BufferedIo (assumes that the underlying IO is\nactually a StringIO). Facilitates …\n"],["Net::SSH::Test::Extensions::Channel","","Net/SSH/Test/Extensions/Channel.html","","<p>An extension to Net::SSH::Connection::Channel. Facilitates unit testing.\n"],["Net::SSH::Test::Extensions::IO","","Net/SSH/Test/Extensions/IO.html","","<p>An extension to the built-in ::IO class. Simply redefines IO.select so that\nit can be scripted in Net::SSH …\n"],["Net::SSH::Test::Extensions::IO::ClassMethods","","Net/SSH/Test/Extensions/IO/ClassMethods.html","",""],["Net::SSH::Test::Extensions::PacketStream","","Net/SSH/Test/Extensions/PacketStream.html","","<p>An extension to Net::SSH::Transport::PacketStream (assumes that the\nunderlying IO is actually a StringIO …\n"],["Net::SSH::Test::Kex","","Net/SSH/Test/Kex.html","","<p>An implementation of a key-exchange strategy specifically for unit tests.\n(This strategy would never …\n"],["Net::SSH::Test::LocalPacket","","Net/SSH/Test/LocalPacket.html","","<p>This is a specialization of Net::SSH::Test::Packet for representing mock\npackets that are sent from the …\n"],["Net::SSH::Test::Packet","","Net/SSH/Test/Packet.html","","<p>This is an abstract class, not to be instantiated directly, subclassed by\nNet::SSH::Test::LocalPacket …\n"],["Net::SSH::Test::RemotePacket","","Net/SSH/Test/RemotePacket.html","","<p>This is a specialization of Net::SSH::Test::Packet for representing mock\npackets that are received by …\n"],["Net::SSH::Test::Script","","Net/SSH/Test/Script.html","","<p>Represents a sequence of scripted events that identify the behavior that a\ntest expects. Methods named …\n"],["Net::SSH::Test::Socket","","Net/SSH/Test/Socket.html","","<p>A mock socket implementation for use in testing. It implements the minimum\nnecessary interface for interacting …\n"],["Net::SSH::Timeout","","Net/SSH/Timeout.html","","<p>This exception is raised when the remote host has disconnected/ timeouted\nunexpectedly.\n"],["Net::SSH::Transport","","Net/SSH/Transport.html","",""],["Net::SSH::Transport::Algorithms","","Net/SSH/Transport/Algorithms.html","","<p>Implements the higher-level logic behind an SSH key-exchange. It handles\nboth the initial exchange, as …\n"],["Net::SSH::Transport::Algorithms::OpenSSL","","Net/SSH/Transport/Algorithms/OpenSSL.html","",""],["Net::SSH::Transport::Algorithms::OpenSSL::PKey","","Net/SSH/Transport/Algorithms/OpenSSL/PKey.html","",""],["Net::SSH::Transport::CTR","","Net/SSH/Transport/CTR.html","","<p>Pure-Ruby implementation of Stateful Decryption Counter(SDCTR) Mode for\nBlock Ciphers. See RFC4344 for …\n"],["Net::SSH::Transport::CipherFactory","","Net/SSH/Transport/CipherFactory.html","","<p>Implements a factory of OpenSSL cipher algorithms.\n"],["Net::SSH::Transport::Constants","","Net/SSH/Transport/Constants.html","",""],["Net::SSH::Transport::HMAC","","Net/SSH/Transport/HMAC.html","","<p>Implements a simple factory interface for fetching hmac implementations, or\nfor finding the key lengths …\n"],["Net::SSH::Transport::HMAC::Abstract","","Net/SSH/Transport/HMAC/Abstract.html","","<p>The base class of all OpenSSL-based HMAC algorithm wrappers.\n"],["Net::SSH::Transport::HMAC::MD5","","Net/SSH/Transport/HMAC/MD5.html","","<p>The MD5 HMAC algorithm.\n"],["Net::SSH::Transport::HMAC::MD5::OpenSSL","","Net/SSH/Transport/HMAC/MD5/OpenSSL.html","",""],["Net::SSH::Transport::HMAC::MD5::OpenSSL::Digest","","Net/SSH/Transport/HMAC/MD5/OpenSSL/Digest.html","",""],["Net::SSH::Transport::HMAC::MD5_96","","Net/SSH/Transport/HMAC/MD5_96.html","","<p>The MD5-96 HMAC algorithm. This returns only the first 12 bytes of the\ndigest.\n"],["Net::SSH::Transport::HMAC::None","","Net/SSH/Transport/HMAC/None.html","","<p>The “none” algorithm. This has a key and mac length of 0.\n"],["Net::SSH::Transport::HMAC::RIPEMD160","","Net/SSH/Transport/HMAC/RIPEMD160.html","","<p>The RIPEMD-160 HMAC algorithm. This has a mac and key length of 20, and\nuses the RIPEMD-160 digest algorithm. …\n"],["Net::SSH::Transport::HMAC::RIPEMD160::OpenSSL","","Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL.html","",""],["Net::SSH::Transport::HMAC::RIPEMD160::OpenSSL::Digest","","Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL/Digest.html","",""],["Net::SSH::Transport::HMAC::SHA1","","Net/SSH/Transport/HMAC/SHA1.html","","<p>The SHA1 HMAC algorithm. This has a mac and key length of 20, and uses the\nSHA1 digest algorithm.\n"],["Net::SSH::Transport::HMAC::SHA1::OpenSSL","","Net/SSH/Transport/HMAC/SHA1/OpenSSL.html","",""],["Net::SSH::Transport::HMAC::SHA1::OpenSSL::Digest","","Net/SSH/Transport/HMAC/SHA1/OpenSSL/Digest.html","",""],["Net::SSH::Transport::HMAC::SHA1_96","","Net/SSH/Transport/HMAC/SHA1_96.html","","<p>The SHA1-96 HMAC algorithm. This returns only the first 12 bytes of the\ndigest.\n"],["Net::SSH::Transport::HMAC::SHA2_256","","Net/SSH/Transport/HMAC/SHA2_256.html","","<p>The SHA-256 HMAC algorithm. This has a mac and key length of 32, and uses\nthe SHA-256 digest algorithm. …\n"],["Net::SSH::Transport::HMAC::SHA2_256_96","","Net/SSH/Transport/HMAC/SHA2_256_96.html","","<p>The SHA256-96 HMAC algorithm. This returns only the first 12 bytes of the\ndigest.\n"],["Net::SSH::Transport::HMAC::SHA2_512","","Net/SSH/Transport/HMAC/SHA2_512.html","","<p>The SHA-512 HMAC algorithm. This has a mac and key length of 64, and uses\nthe SHA-512 digest algorithm. …\n"],["Net::SSH::Transport::HMAC::SHA2_512_96","","Net/SSH/Transport/HMAC/SHA2_512_96.html","","<p>The SHA2-512-96 HMAC algorithm. This returns only the first 12 bytes of the\ndigest.\n"],["Net::SSH::Transport::IdentityCipher","","Net/SSH/Transport/IdentityCipher.html","","<p>A cipher that does nothing but pass the data through, unchanged. This keeps\nthings in the code nice and …\n"],["Net::SSH::Transport::Kex","","Net/SSH/Transport/Kex.html","",""],["Net::SSH::Transport::Kex::DiffieHellmanGroup14SHA1","","Net/SSH/Transport/Kex/DiffieHellmanGroup14SHA1.html","","<p>A key-exchange service implementing the “diffie-hellman-group14-sha1”\nkey-exchange algorithm. …\n"],["Net::SSH::Transport::Kex::DiffieHellmanGroup1SHA1","","Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html","","<p>A key-exchange service implementing the “diffie-hellman-group1-sha1”\nkey-exchange algorithm. …\n"],["Net::SSH::Transport::Kex::DiffieHellmanGroupExchangeSHA1","","Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA1.html","","<p>A key-exchange service implementing the\n“diffie-hellman-group-exchange-sha1” key-exchange algorithm. …\n"],["Net::SSH::Transport::Kex::DiffieHellmanGroupExchangeSHA256","","Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA256.html","","<p>A key-exchange service implementing the\n“diffie-hellman-group-exchange-sha256” key-exchange …\n"],["Net::SSH::Transport::Kex::EcdhSHA2NistP256","","Net/SSH/Transport/Kex/EcdhSHA2NistP256.html","","<p>A key-exchange service implementing the “ecdh-sha2-nistp256” key-exchange\nalgorithm. (defined …\n"],["Net::SSH::Transport::Kex::EcdhSHA2NistP384","","Net/SSH/Transport/Kex/EcdhSHA2NistP384.html","","<p>A key-exchange service implementing the “ecdh-sha2-nistp256” key-exchange\nalgorithm. (defined …\n"],["Net::SSH::Transport::Kex::EcdhSHA2NistP521","","Net/SSH/Transport/Kex/EcdhSHA2NistP521.html","","<p>A key-exchange service implementing the “ecdh-sha2-nistp521” key-exchange\nalgorithm. (defined …\n"],["Net::SSH::Transport::KeyExpander","","Net/SSH/Transport/KeyExpander.html","",""],["Net::SSH::Transport::PacketStream","","Net/SSH/Transport/PacketStream.html","","<p>A module that builds additional functionality onto the Net::SSH::BufferedIo\nmodule. It adds SSH encryption, …\n"],["Net::SSH::Transport::ServerVersion","","Net/SSH/Transport/ServerVersion.html","","<p>Negotiates the SSH protocol version and trades information about server and\nclient. This is never used …\n"],["Net::SSH::Transport::Session","","Net/SSH/Transport/Session.html","","<p>The transport layer represents the lowest level of the SSH protocol, and\nimplements basic message exchanging …\n"],["Net::SSH::Transport::State","","Net/SSH/Transport/State.html","","<p>Encapsulates state information about one end of an SSH connection. Such\nstate includes the packet sequence …\n"],["Net::SSH::Verifiers","","Net/SSH/Verifiers.html","",""],["Net::SSH::Verifiers::Lenient","","Net/SSH/Verifiers/Lenient.html","","<p>Basically the same as the Strict verifier, but does not try to actually\nverify a connection if the server …\n"],["Net::SSH::Verifiers::Null","","Net/SSH/Verifiers/Null.html","","<p>The Null host key verifier simply allows every key it sees, without\nbothering to verify. This is simple, …\n"],["Net::SSH::Verifiers::Secure","","Net/SSH/Verifiers/Secure.html","","<p>Does a strict host verification, looking the server up in the known host\nfiles to see if a key has already …\n"],["Net::SSH::Verifiers::Strict","","Net/SSH/Verifiers/Strict.html","","<p>Does a strict host verification, looking the server up in the known host\nfiles to see if a key has already …\n"],["Net::SSH::Version","","Net/SSH/Version.html","","<p>A class for describing the current version of a library. The version\nconsists of three parts: the <code>major</code> …\n"],["OpenSSL","","OpenSSL.html","",""],["OpenSSL::BN","","OpenSSL/BN.html","","<p>This class is originally defined in the OpenSSL module. As needed, methods\nhave been added to it by the …\n"],["OpenSSL::Digest","","OpenSSL/Digest.html","",""],["OpenSSL::PKey","","OpenSSL/PKey.html","",""],["OpenSSL::PKey::DH","","OpenSSL/PKey/DH.html","","<p>This class is originally defined in the OpenSSL module. As needed, methods\nhave been added to it by the …\n"],["OpenSSL::PKey::DSA","","OpenSSL/PKey/DSA.html","","<p>This class is originally defined in the OpenSSL module. As needed, methods\nhave been added to it by the …\n"],["OpenSSL::PKey::EC","","OpenSSL/PKey/EC.html","","<p>This class is originally defined in the OpenSSL module. As needed, methods\nhave been added to it by the …\n"],["OpenSSL::PKey::OpenSSL","","OpenSSL/PKey/OpenSSL.html","",""],["OpenSSL::PKey::OpenSSL::PKey","","OpenSSL/PKey/OpenSSL/PKey.html","",""],["OpenSSL::PKey::OpenSSL::PKey::OpenSSL","","OpenSSL/PKey/OpenSSL/PKey/OpenSSL.html","",""],["OpenSSL::PKey::OpenSSL::PKey::OpenSSL::PKey","","OpenSSL/PKey/OpenSSL/PKey/OpenSSL/PKey.html","",""],["OpenSSL::PKey::OpenSSL::PKey::OpenSSL::PKey::ECError","","OpenSSL/PKey/OpenSSL/PKey/OpenSSL/PKey/ECError.html","",""],["OpenSSL::PKey::PKey","","OpenSSL/PKey/PKey.html","",""],["OpenSSL::PKey::RSA","","OpenSSL/PKey/RSA.html","","<p>This class is originally defined in the OpenSSL module. As needed, methods\nhave been added to it by the …\n"],["String","","String.html","",""],["<=>","Net::SSH::Version","Net/SSH/Version.html#method-i-3C-3D-3E","(version)","<p>Compare this version to the given <code>version</code> object.\n"],["==","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-3D-3D","(buffer)","<p>Compares the contents of the two buffers, returning <code>true</code> only\nif they are identical in size and content. …\n"],["[]","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-5B-5D","(name)","<p>A shortcut for accessing properties of the channel (see #properties).\n"],["[]","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-5B-5D","(key)","<p>Retrieves a custom property from this instance. This can be used to store\nadditional state in applications …\n"],["[]","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-5B-5D","(key)","<p>An accessor for getting at the data that was used to look up the host (see\nalso #fingerprint, #host, …\n"],["[]","Net::SSH::Packet","Net/SSH/Packet.html#method-i-5B-5D","(name)","<p>Access one of the auto-parsed fields by name. Raises an error if no element\nby the given name exists. …\n"],["[]","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-5B-5D","(key)","<p>A convenience method for accessing the list of preferred types for a\nspecific algorithm (see #algorithms …\n"],["[]","Net::SSH::Version","Net/SSH/Version.html#method-c-5B-5D","(major, minor, tiny, pre = nil)","<p>A convenience method for instantiating a new Version instance with the\ngiven <code>major</code>, <code>minor</code>, and <code>tiny</code>\ncomponents. …\n"],["[]=","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-5B-5D-3D","(name, value)","<p>A shortcut for setting properties of the channel (see #properties).\n"],["[]=","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-5B-5D-3D","(key, value)","<p>Sets a custom property for this instance.\n"],["accept_kexinit","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-accept_kexinit","(packet)","<p>Called by the transport layer when a KEXINIT packet is received, indicating\nthat the server wants to …\n"],["active?","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-active-3F","()","<p>Returns true if the channel exists in the channel list of the session, and\nfalse otherwise. This can …\n"],["active_local_sockets","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-active_local_sockets","()","<p>Returns a list of all active locally forwarded sockets. The returned value\nis an array of Unix domain …\n"],["active_locals","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-active_locals","()","<p>Returns a list of all active locally forwarded ports. The returned value is\nan array of arrays, where …\n"],["active_remote_destinations","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-active_remote_destinations","()","<p>Returns all active remote forwarded ports and where they forward to. The\nreturned value is a hash from …\n"],["active_remotes","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-active_remotes","()","<p>Returns all active forwarded remote ports. The returned value is an array\nof two-element tuples, where …\n"],["add","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-add","(key_file)","<p>Add the given key_file to the list of key files that will be used.\n"],["add","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-c-add","(host, key, options={})","<p>Looks in all user known host files (see KnownHosts.hostfiles) and tries to\nadd an entry for the given …\n"],["add","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-i-add","(host, key)","<p>Tries to append an entry to the current source file for the given host and\nkey. If it is unable to (because …\n"],["add_host_key","Net::SSH::HostKeys","Net/SSH/HostKeys.html#method-i-add_host_key","(key)",""],["add_identity","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-add_identity","(priv_key, comment, lifetime: nil, confirm: false)","<p>Adds the private key with comment to the agent. If lifetime is given, the\nkey will automatically be removed …\n"],["add_key_data","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-add_key_data","(key_data_)","<p>Add the given key_file to the list of keys that will be used.\n"],["agent","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-agent","()","<p>Returns an Agent instance to use for communicating with an SSH agent\nprocess. Returns nil if use of an …\n"],["agent","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-agent","(channel)","<p>Enables SSH agent forwarding on the given channel. The forwarded agent will\nremain active even after …\n"],["allow?","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-allow-3F","(packet)","<p>Returns true if no exchange is pending, and otherwise returns true or false\ndepending on whether the …\n"],["allowed_packet?","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-c-allowed_packet-3F","(packet)","<p>Returns true if the given packet can be processed during a key-exchange.\n"],["append","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-append","(text)","<p>Appends the given text to the end of the buffer. Does not alter the read\nposition. Returns the buffer …\n"],["ask","Net::SSH::Prompt::Prompter","Net/SSH/Prompt/Prompter.html#method-i-ask","(prompt, echo=true)","<p>ask input from user, a prompter might ask for multiple inputs (like user\nand password) in a single session. …\n"],["assert_scripted","Net::SSH::Test","Net/SSH/Test.html#method-i-assert_scripted","()","<p>First asserts that a story has been described (see #story). Then yields,\nand then asserts that all items …\n"],["assign_defaults","Net::SSH","Net/SSH.html#method-c-assign_defaults","(options)",""],["authenticate","Net::SSH::Authentication::Methods::Hostbased","Net/SSH/Authentication/Methods/Hostbased.html#method-i-authenticate","(next_service, username, password=nil)","<p>Attempts to perform host-based authorization of the user by trying all\nknown keys.\n"],["authenticate","Net::SSH::Authentication::Methods::KeyboardInteractive","Net/SSH/Authentication/Methods/KeyboardInteractive.html#method-i-authenticate","(next_service, username, password=nil)","<p>Attempt to authenticate the given user for the given service.\n"],["authenticate","Net::SSH::Authentication::Methods::None","Net/SSH/Authentication/Methods/None.html#method-i-authenticate","(next_service, user=\"\", password=\"\")","<p>Attempt to authenticate as “none”\n"],["authenticate","Net::SSH::Authentication::Methods::Password","Net/SSH/Authentication/Methods/Password.html#method-i-authenticate","(next_service, username, password=nil)","<p>Attempt to authenticate the given user for the given service. If the\npassword parameter is nil, this …\n"],["authenticate","Net::SSH::Authentication::Methods::Publickey","Net/SSH/Authentication/Methods/Publickey.html#method-i-authenticate","(next_service, username, password=nil)","<p>Attempts to perform public-key authentication for the given username,\ntrying each identity known to the …\n"],["authenticate","Net::SSH::Authentication::Session","Net/SSH/Authentication/Session.html#method-i-authenticate","(next_service, username, password=nil)","<p>Attempts to authenticate the given user, in preparation for the next\nservice request. Returns true if …\n"],["available","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-available","()","<p>Returns the number of bytes available to be read (e.g., how many bytes\nremain between the current position …\n"],["available","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-available","()","<p>Returns the number of bytes available to be read from the input buffer.\n(See #read_available.)\n"],["available_for_read?","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-available_for_read-3F","()","<p>Returns true if the IO is available for reading, and false otherwise.\n"],["block_size","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-block_size","()","<p>A default block size of 8 is required by the SSH2 protocol.\n"],["build_proxy_command_equivalent","Net::SSH::Proxy::Jump","Net/SSH/Proxy/Jump.html#method-i-build_proxy_command_equivalent","(connection_options = nil)","<p>We cannot build the ProxyCommand template until we know if the :config\noption was specified during `Net::SSH.start`. …\n"],["busy?","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-busy-3F","(include_invisible=false)","<p>Returns <code>true</code> if there are any channels currently active on\nthis session. By default, this will not include …\n"],["cancel_local","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-cancel_local","(port, bind_address=\"127.0.0.1\")","<p>Terminates an active local forwarded port.\n\n<pre>ssh.forward.cancel_local(1234)\nssh.forward.cancel_local(1234, ...</pre>\n"],["cancel_local_socket","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-cancel_local_socket","(local_socket_path)","<p>Terminates an active local forwarded socket.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">ssh</span>.<span class=\"ruby-identifier\">forward</span>.<span class=\"ruby-identifier\">cancel_local_socket</span>(<span class=\"ruby-string\">&#39;/tmp/foo.sock&#39;</span>)\n</pre>\n"],["cancel_remote","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-cancel_remote","(port, host=\"127.0.0.1\")","<p>Requests that a remote forwarded port be cancelled. The remote forwarded\nport on the remote host, bound …\n"],["cleanup","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-cleanup","()","<p>Performs any pending cleanup necessary on the IO and its associated state\nobjects. (See State#cleanup …\n"],["cleanup","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-cleanup","()","<p>Closes any the compressor and/or decompressor objects that have been\ninstantiated.\n"],["cleanup_channel","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-cleanup_channel","(channel)",""],["clear!","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-clear-21","()","<p>Clear all knowledge of any loaded user keys. This also clears the list of\ndefault identity files that …\n"],["clear!","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-clear-21","()","<p>Resets the buffer, making it empty. Also, resets the read position to 0.\n"],["client_name","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-client_name","()","<p>The name of the client (local) end of the socket, as reported by the\nsocket.\n"],["close","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-close","()","<p>Closes this socket. This agent reference is no longer able to query the\nagent.\n"],["close","Net::SSH::Authentication::Pageant::Socket","Net/SSH/Authentication/Pageant/Socket.html#method-i-close","()",""],["close","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-close","()","<p>Requests that the channel be closed. It only marks the channel to be closed\nthe CHANNEL_CLOSE message …\n"],["close","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-close","()","<p>Closes the session gracefully, blocking until all channels have\nsuccessfully closed, and then closes …\n"],["close","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-close","()","<p>Cleans up (see PacketStream#cleanup) and closes the underlying socket.\n"],["closed?","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-closed-3F","()","<p>Returns true if the underlying transport has been closed. Note that this\ncan be a little misleading, …\n"],["closed?","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-closed-3F","()","<p>Returns true if the underlying socket has been closed.\n"],["closing?","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-closing-3F","()","<p>True if close() has been called; NOTE: if the channel has data waiting to\nbe sent then the channel will …\n"],["compress","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-compress","(data)","<p>Compresses the data. If no compression is in effect, this will just return\nthe data unmodified, otherwise …\n"],["compression?","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-compression-3F","()","<p>Returns true if data compression/decompression is enabled. This will return\ntrue if :standard compression …\n"],["compressor","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-compressor","()","<p>The compressor object to use when compressing data. This takes into account\nthe desired compression level. …\n"],["configuration_for","Net::SSH","Net/SSH.html#method-c-configuration_for","(host, use_ssh_config)","<p>Returns a hash of the configuration options for the given host, as read\nfrom the SSH configuration file(s). …\n"],["configure_client","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-configure_client","(options={})","<p>Configure&#39;s the packet stream&#39;s client state with the given set of\noptions. This is typically …\n"],["configure_server","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-configure_server","(options={})","<p>Configure&#39;s the packet stream&#39;s server state with the given set of\noptions. This is typically …\n"],["connect","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-c-connect","(logger=nil, agent_socket_factory = nil)","<p>Instantiates a new agent object, connects to a running SSH agent,\nnegotiates the agent protocol version, …\n"],["connect!","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-connect-21","(agent_socket_factory = nil)","<p>Connect to the agent process using the socket factory and socket name given\nby the attribute writers. …\n"],["connection","Net::SSH::Test","Net/SSH/Test.html#method-i-connection","(options={})","<p>Returns the connection session (Net::SSH::Connection::Session) for use in\nthese tests. It is a fully …\n"],["consume!","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-consume-21","(n=position)","<p>Consumes n bytes from the buffer, where n is the current position unless\notherwise specified. This is …\n"],["curve_name","Net::SSH::Transport::Kex::EcdhSHA2NistP256","Net/SSH/Transport/Kex/EcdhSHA2NistP256.html#method-i-curve_name","()",""],["curve_name","Net::SSH::Transport::Kex::EcdhSHA2NistP384","Net/SSH/Transport/Kex/EcdhSHA2NistP384.html#method-i-curve_name","()",""],["curve_name","Net::SSH::Transport::Kex::EcdhSHA2NistP521","Net/SSH/Transport/Kex/EcdhSHA2NistP521.html#method-i-curve_name","()",""],["debug","Net::SSH::Loggable","Net/SSH/Loggable.html#method-i-debug","()","<p>Displays the result of yielding if the log level is Logger::DEBUG or\ngreater.\n"],["decompress","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-decompress","(data)","<p>Deompresses the data. If no compression is in effect, this will just return\nthe data unmodified, otherwise …\n"],["decompressor","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-decompressor","()","<p>The decompressor object to use when decompressing data.\n"],["decrypt","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-decrypt","()",""],["decrypt","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-decrypt","()","<p>Does nothing. Returns self.\n"],["default","Net::SSH::Prompt","Net/SSH/Prompt.html#method-c-default","(options = {})","<p>factory\n"],["default_auth_methods","Net::SSH::Config","Net/SSH/Config.html#method-c-default_auth_methods","()",""],["default_files","Net::SSH::Config","Net/SSH/Config.html#method-c-default_files","()","<p>Returns an array of locations of OpenSSH configuration files to parse by\ndefault.\n"],["dependenciesRequiredForED25519","Net::SSH::Authentication::ED25519Loader","Net/SSH/Authentication/ED25519Loader.html#method-c-dependenciesRequiredForED25519","()",""],["digest","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-i-digest","(data)","<p>Compute the HMAC digest for the given data string.\n"],["digest","Net::SSH::Transport::HMAC::None","Net/SSH/Transport/HMAC/None.html#method-i-digest","(data)",""],["digest_class","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-c-digest_class","(*v)",""],["digest_class","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-i-digest_class","()",""],["digester","Net::SSH::Transport::Kex::EcdhSHA2NistP256","Net/SSH/Transport/Kex/EcdhSHA2NistP256.html#method-i-digester","()",""],["digester","Net::SSH::Transport::Kex::EcdhSHA2NistP384","Net/SSH/Transport/Kex/EcdhSHA2NistP384.html#method-i-digester","()",""],["digester","Net::SSH::Transport::Kex::EcdhSHA2NistP521","Net/SSH/Transport/Kex/EcdhSHA2NistP521.html#method-i-digester","()",""],["do_close","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-do_close","()","<p>Invokes the #on_close callback when the server closes a channel. The\nchannel is the only argument.\n"],["do_eof","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-do_eof","()","<p>Invokes the #on_eof callback when the server indicates that no further data\nis forthcoming. The callback …\n"],["do_extended_data","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-do_extended_data","(type, data)","<p>Invokes the #on_extended_data callback when the server sends extended data\nto the channel. This will …\n"],["do_failure","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-do_failure","()","<p>Invokes the next pending request callback with <code>false</code> as the\nsecond argument.\n"],["do_open_failed","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-do_open_failed","(reason_code, description)","<p>Invoked when the server failed to open the channel. If an #on_open_failed\ncallback was specified, it …\n"],["do_success","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-do_success","()","<p>Invokes the next pending request callback with <code>true</code> as the\nsecond argument.\n"],["each","Net::SSH::HostKeys","Net/SSH/HostKeys.html#method-i-each","(&block)",""],["each_identity","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-each_identity","()","<p>Iterates over all available identities (public keys) known to this manager.\nAs it finds one, it will …\n"],["empty?","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-empty-3F","()","<p>Returns <code>true</code> if the buffer contains no data (e.g., it is of\nzero length).\n"],["empty?","Net::SSH::HostKeys","Net/SSH/HostKeys.html#method-i-empty-3F","()",""],["enabled?","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-i-enabled-3F","()",""],["encrypt","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-encrypt","()",""],["encrypt","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-encrypt","()","<p>Does nothing. Returns self.\n"],["enqueue","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-enqueue","(data)","<p>Enqueues data in the output buffer, to be written when #send_pending is\ncalled. Note that the data is …\n"],["enqueue_message","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-enqueue_message","(message)","<p>Enqueues the given message, such that it will be sent at the earliest\nopportunity. This does not block, …\n"],["enqueue_packet","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-enqueue_packet","(payload)","<p>Enqueues a packet to be sent, but does not immediately send the packet. The\ngiven payload is pre-processed …\n"],["env","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-env","(variable_name, variable_value, &block)","<p>Syntactic sugar for setting an environment variable in the remote\nprocess&#39; environment. Note that …\n"],["eof!","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-eof-21","()","<p>Tells the remote end of the channel that no more data is forthcoming from\nthis end of the channel. The …\n"],["eof?","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-eof-3F","()","<p>Returns true if the pointer is at the end of the buffer. Subsequent reads\nwill return nil, in this case. …\n"],["eof?","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-eof-3F","()","<p>Returns true if the local end of the channel has declared that no more data\nis forthcoming (see #eof! …\n"],["error","Net::SSH::Loggable","Net/SSH/Loggable.html#method-i-error","()","<p>Displays the result of yielding if the log level is Logger:ERROR or\ngreater.\n"],["establish_connection","Net::SSH::Proxy::HTTP","Net/SSH/Proxy/HTTP.html#method-i-establish_connection","(connect_timeout)",""],["establish_connection","Net::SSH::Proxy::HTTPS","Net/SSH/Proxy/HTTPS.html#method-i-establish_connection","(connect_timeout)",""],["ev_do_calculate_rw_wait","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-ev_do_calculate_rw_wait","(wait)","<p>Returns the file descriptors the event loop should wait for read/write\nevents, we also return the max …\n"],["ev_do_handle_events","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-ev_do_handle_events","(readers, writers)","<p>It loops over the given arrays of reader IO&#39;s and writer IO&#39;s,\nprocessing them as needed, and …\n"],["ev_do_postprocess","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-ev_do_postprocess","(was_events)","<p>calls Net::SSH::Transport::Session#rekey_as_needed to allow the transport\nlayer to rekey\n"],["ev_preprocess","Net::SSH::Connection::EventLoop","Net/SSH/Connection/EventLoop.html#method-i-ev_preprocess","(&block)","<p>Call preprocess on each session. If block given and that block retuns false\nthen we exit the processing …\n"],["ev_preprocess","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-ev_preprocess","(&block)","<p>Called by event loop to process available data before going to event\nmultiplexing\n"],["ev_preprocess","Net::SSH::Connection::SingleSessionEventLoop","Net/SSH/Connection/SingleSessionEventLoop.html#method-i-ev_preprocess","(&block)","<p>Compatibility for original single session event loops: we call block with\nsession as argument\n"],["ev_select_and_postprocess","Net::SSH::Connection::EventLoop","Net/SSH/Connection/EventLoop.html#method-i-ev_select_and_postprocess","(wait)",""],["ev_select_and_postprocess","Net::SSH::Connection::SingleSessionEventLoop","Net/SSH/Connection/SingleSessionEventLoop.html#method-i-ev_select_and_postprocess","(wait)",""],["exchange_keys","Net::SSH::Test::Kex","Net/SSH/Test/Kex.html#method-i-exchange_keys","()","<p>Exchange keys with the server. This returns a hash of constant values, and\ndoes not actually exchange …\n"],["exchange_keys","Net::SSH::Transport::Kex::DiffieHellmanGroup1SHA1","Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html#method-i-exchange_keys","()","<p>Perform the key-exchange for the given session, with the given data. This\nmethod will return a hash consisting …\n"],["exec","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-exec","(command, &block)","<p>Syntactic sugar for executing a command. Sends a channel request asking\nthat the given command be invoked. …\n"],["exec","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-exec","(command, status: nil, &block)","<p>A convenience method for executing a command and interacting with it. If no\nblock is given, all output …\n"],["exec!","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-exec-21","(command, status: nil, &block)","<p>Same as #exec, except this will block until the command finishes. Also, if\nno block is given, this will …\n"],["expand_key","Net::SSH::Transport::KeyExpander","Net/SSH/Transport/KeyExpander.html#method-c-expand_key","(bytes, start, options={})","<p>Generate a key value in accordance with the SSH2 specification. (RFC4253\n7.2. “Output from Key Exchange”) …\n"],["expandable_default_files","Net::SSH::Config","Net/SSH/Config.html#method-c-expandable_default_files","()","<p>Filters default_files down to the files that are expandable.\n"],["expect_message","Net::SSH::Authentication::Session","Net/SSH/Authentication/Session.html#method-i-expect_message","(type)","<p>Blocks until a packet is received, and returns it if it is of the given\ntype. If it is not, an exception …\n"],["extended","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-c-extended","(orig)",""],["extended","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-c-extended","(object)",""],["extension_enabled?","Net::SSH::Test::Extensions::IO","Net/SSH/Test/Extensions/IO.html#method-c-extension_enabled-3F","()",""],["fatal","Net::SSH::Loggable","Net/SSH/Loggable.html#method-i-fatal","()","<p>Displays the result of yielding if the log level is Logger::FATAL or\ngreater.\n"],["fill","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-fill","(n=8192)","<p>Tries to read up to <code>n</code> bytes of data from the remote end, and\nappends the data to the input buffer. It …\n"],["fill","Net::SSH::ForwardedBufferedIo","Net/SSH/ForwardedBufferedIo.html#method-i-fill","(n=8192)",""],["final","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-final","()",""],["final","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-final","()","<p>Returns the empty string.\n"],["final_cipher","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-final_cipher","()",""],["fingerprint","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-fingerprint","()",""],["fingerprint","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-i-fingerprint","()",""],["fingerprint","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-fingerprint","()","<p>Returns the fingerprint of the key for the host, which either was not found\nor did not match.\n"],["fingerprint","OpenSSL::PKey::PKey","OpenSSL/PKey/PKey.html#method-i-fingerprint","()",""],["finish","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-finish","()","<p>This is used as a hint to the KeyManager indicating that the agent\nconnection is no longer needed. Any …\n"],["for","Net::SSH::Config","Net/SSH/Config.html#method-c-for","(host, files=expandable_default_files)","<p>Loads the configuration data for the given <code>host</code> from all of\nthe given <code>files</code> (defaulting to the list of …\n"],["forward","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-forward","()","<p>Returns a reference to the Net::SSH::Service::Forward service, which can be\nused for forwarding ports …\n"],["from","Net::SSH::Buffer","Net/SSH/Buffer.html#method-c-from","(*args)","<p>This is a convenience method for creating and populating a new buffer from\na single command. The arguments …\n"],["get","Net::SSH::KeyFactory","Net/SSH/KeyFactory.html#method-c-get","(name)","<p>Fetch an OpenSSL key instance by its SSH name. It will be a new, empty key\nof the given type.\n"],["get","Net::SSH::Transport::CipherFactory","Net/SSH/Transport/CipherFactory.html#method-c-get","(name, options={})","<p>Retrieves a new instance of the named algorithm. The new instance will be\ninitialized using an iv and …\n"],["get","Net::SSH::Transport::HMAC","Net/SSH/Transport/HMAC.html#method-c-get","(name, key=\"\", parameters = {})","<p>Retrieves a new hmac instance of the given SSH type (<code>name</code>). If\n<code>key</code> is given, the new instance will be …\n"],["get_lengths","Net::SSH::Transport::CipherFactory","Net/SSH/Transport/CipherFactory.html#method-c-get_lengths","(name, options = {})","<p>Returns a two-element array containing the [ key-length, block-size ] for\nthe named cipher algorithm. …\n"],["get_ptr","Net::SSH::Authentication::Pageant::Win","Net/SSH/Authentication/Pageant/Win.html#method-c-get_ptr","(data)",""],["getbyte","String","String.html#method-i-getbyte","(index)",""],["getpeername","Net::SSH::Test::Socket","Net/SSH/Test/Socket.html#method-i-getpeername","()","<p>Returns a sockaddr struct for the port and host that were used when the\nsocket was instantiated.\n"],["gets","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-gets","(type, *args)","<p>A convenience method for adding an arbitrary remote packet to the events\nlist.\n"],["gets_channel_close","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-gets_channel_close","(channel)","<p>Scripts the reception of a channel close packet from the remote host by the\ngiven Net::SSH::Test::Channel …\n"],["gets_channel_data","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-gets_channel_data","(channel, data)","<p>Scripts the reception of a channel data packet from the remote host by the\ngiven Net::SSH::Test::Channel …\n"],["gets_channel_eof","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-gets_channel_eof","(channel)","<p>Scripts the reception of a channel EOF packet from the remote host by the\ngiven Net::SSH::Test::Channel …\n"],["gets_channel_extended_data","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-gets_channel_extended_data","(channel, data)","<p>Scripts the reception of a channel extended data packet from the remote\nhost by the given Net::SSH::Test::Channel …\n"],["gets_channel_request","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-gets_channel_request","(channel, request, reply, data)","<p>Scripts the reception of a channel request packet from the remote host by\nthe given Net::SSH::Test::Channel …\n"],["gets_close","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-gets_close","()","<p>Scripts the reception of a “channel close” packet from the remote end.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">gets_close</span>\n</pre>\n"],["gets_data","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-gets_data","(data)","<p>Scripts the reception of a channel data packet from the remote end.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">gets_data</span> <span class=\"ruby-string\">&quot;bar&quot;</span>\n</pre>\n"],["gets_eof","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-gets_eof","()","<p>Scripts the reception of an EOF packet from the remote end.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">gets_eof</span>\n</pre>\n"],["gets_exit_status","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-gets_exit_status","(status=0)","<p>Scripts the reception of an “exit-status” channel request packet.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">gets_exit_status</span>(<span class=\"ruby-value\">127</span>)\n</pre>\n"],["gets_extended_data","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-gets_extended_data","(data)","<p>Scripts the reception of a channel extended data packet from the remote\nend.\n\n<pre>channel.gets_extended_data ...</pre>\n"],["hint","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-hint","(which, value=true)","<p>Sets a new hint for the packet stream, which the packet stream may use to\nchange its behavior. (See …\n"],["host","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-host","()","<p>Returns the name of the host that was given to the transport layer to\nconnect to.\n"],["host","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-host","()","<p>Returns the host name for the remote host, as reported by the socket.\n"],["host_as_string","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-host_as_string","()","<p>Returns the host (and possibly IP address) in a format compatible with SSH\nknown-host files.\n"],["host_keys","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-host_keys","()",""],["hostfiles","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-c-hostfiles","(options, which=:all)","<p>Looks in the given <code>options</code> hash for the :user_known_hosts_file\nand :global_known_hosts_file keys, and …\n"],["identities","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-identities","()","<p>Return an array of all identities (public keys) known to the agent. Each\nkey returned is augmented with …\n"],["idle!","Net::SSH::Test::Extensions::PacketStream","Net/SSH/Test/Extensions/PacketStream.html#method-i-idle-21","()","<p>Called when another packet should be inspected from the current script. If\nthe next packet is a remote …\n"],["if_needs_rekey?","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-if_needs_rekey-3F","()","<p>If the IO object requires a rekey operation (as indicated by either its\nclient or server state objects, …\n"],["increment","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-increment","(packet_length)","<p>Increments the counters. The sequence number is incremented (and remapped\nso it always fits in a 32-bit …\n"],["increment_counter!","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-increment_counter-21","()",""],["info","Net::SSH::Loggable","Net/SSH/Loggable.html#method-i-info","()","<p>Displays the result of yielding if the log level is Logger::INFO or\ngreater.\n"],["initialize_ssh","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-initialize_ssh","()","<p>Called when this module is used to extend an object. It initializes the\nstates and generally prepares …\n"],["initialized?","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-initialized-3F","()","<p>Returns true if the algorithms have been negotiated at all.\n"],["inject_remote_delay!","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-inject_remote_delay-21","()","<p>Because adjacent calls to #gets_data will sometimes cause the data packets\nto be concatenated (causing …\n"],["instantiate!","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-i-instantiate-21","()","<p>Instantiates the packets data elements. When the packet was first defined,\nsome elements may not have …\n"],["interactive?","Net::SSH::Authentication::Methods::KeyboardInteractive","Net/SSH/Authentication/Methods/KeyboardInteractive.html#method-i-interactive-3F","()",""],["interval","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-i-interval","()",""],["io_select","Net::SSH::Compat","Net/SSH/Compat.html#method-c-io_select","(*params)",""],["ip","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-ip","()","<p>Returns the IP address of the remote host, as reported by the socket.\n"],["iv","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-iv","()",""],["iv=","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-iv-3D","(iv_s)",""],["iv=","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-iv-3D","(v)","<p>Does nothing. Returns nil.\n"],["iv_len","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-iv_len","()",""],["iv_len","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-iv_len","()","<p>Returns an arbitrary integer.\n"],["keepalive_maxcount","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-i-keepalive_maxcount","()",""],["key","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-key","()","<p>Returns the key itself, as reported by the remote host.\n"],["key=","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-i-key-3D","(value)","<p>Sets the key to the given value, truncating it so that it is the correct\nlength.\n"],["key_length","Net::SSH::Transport::HMAC","Net/SSH/Transport/HMAC.html#method-c-key_length","(name)","<p>Retrieves the key length for the hmac of the given SSH type\n(<code>name</code>).\n"],["key_length","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-c-key_length","(*v)",""],["key_length","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-i-key_length","()",""],["keys_for","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-i-keys_for","(host)","<p>Returns an array of all keys that are known to be associatd with the given\nhost. The <code>host</code> parameter is …\n"],["known_host_hash?","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-i-known_host_hash-3F","(hostlist, entries, scanner)","<p>Indicates whether one of the entries matches an hostname that has been\nstored as a HMAC-SHA1 hash in …\n"],["length","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-length","()","<p>Returns the length of the buffer&#39;s content.\n"],["listen_to","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-listen_to","(io, &callback)","<p>Adds an IO object for the event loop to listen to. If a callback is given,\nit will be invoked when the …\n"],["load","Net::SSH::Config","Net/SSH/Config.html#method-c-load","(path, host, settings={}, base_dir = nil)","<p>Load the OpenSSH configuration settings in the given <code>file</code> for\nthe given <code>host</code>. If <code>settings</code> is given, the …\n"],["load_data_private_key","Net::SSH::KeyFactory","Net/SSH/KeyFactory.html#method-c-load_data_private_key","(data, passphrase=nil, ask_passphrase=true, filename=\"\", prompt=Prompt.default)","<p>Loads a private key. It will correctly determine whether the file describes\nan RSA or DSA key, and will …\n"],["load_data_public_key","Net::SSH::KeyFactory","Net/SSH/KeyFactory.html#method-c-load_data_public_key","(data, filename=\"\")","<p>Loads a public key. It will correctly determine whether the file describes\nan RSA or DSA key, and will …\n"],["load_private_key","Net::SSH::KeyFactory","Net/SSH/KeyFactory.html#method-c-load_private_key","(filename, passphrase=nil, ask_passphrase=true, prompt=Prompt.default)","<p>Loads a private key from a file. It will correctly determine whether the\nfile describes an RSA or DSA …\n"],["load_public_key","Net::SSH::KeyFactory","Net/SSH/KeyFactory.html#method-c-load_public_key","(filename)","<p>Loads a public key from a file. It will correctly determine whether the\nfile describes an RSA or DSA …\n"],["local","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-local","(*args)","<p>Starts listening for connections on the local host, and forwards them to\nthe specified remote host/port …\n"],["local?","Net::SSH::Test::LocalPacket","Net/SSH/Test/LocalPacket.html#method-i-local-3F","()","<p>Returns <code>true</code>; this is a local packet.\n"],["local?","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-i-local-3F","()","<p>The default for <code>local?</code> is false. Subclasses should override as\nnecessary.\n"],["local_closed?","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-local_closed-3F","()","<p>True if we have sent CHANNEL_CLOSE to the remote server.\n"],["local_id","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-local_id","()","<p>Returns the local (client-assigned) id for this channel, or a Proc object\nthat will return the local-id …\n"],["local_socket","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-local_socket","(local_socket_path, remote_socket_path)","<p>Starts listening for connections on the local host, and forwards them to\nthe specified remote socket …\n"],["loop","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-loop","(wait=nil, &block)","<p>The main event loop. Calls #process until #process returns false. If a\nblock is given, it is passed to …\n"],["loop_forever","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-loop_forever","(wait=nil, &block)","<p>preserve a reference to Kernel#loop\n"],["lwarn","Net::SSH::Loggable","Net/SSH/Loggable.html#method-i-lwarn","()","<p>Displays the result of yielding if the log level is Logger::WARN or\ngreater. (Called lwarn to avoid shadowing …\n"],["mac_length","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-c-mac_length","(*v)",""],["mac_length","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-i-mac_length","()",""],["malloc_ptr","Net::SSH::Authentication::Pageant::Win","Net/SSH/Authentication/Pageant/Win.html#method-c-malloc_ptr","(size)",""],["max_select_wait_time","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-max_select_wait_time","()","<p>If the #preprocess and #postprocess callbacks for this session need to run\nperiodically, this method …\n"],["method_missing","Net::SSH::Connection::Session::NilChannel","Net/SSH/Connection/Session/NilChannel.html#method-i-method_missing","(sym, *args)",""],["name","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-name","()","<p>The name of this cipher, which is “identity”.\n"],["needs_rekey?","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-needs_rekey-3F","()","<p>Returns true if the number of packets processed exceeds the maximum number\nof packets, or if the number …\n"],["negotiate!","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-negotiate-21","()","<p>Attempts to negotiate the SSH agent protocol version. Raises an error if\nthe version could not be negotiated …\n"],["new","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-c-new","(logger=nil)","<p>Creates a new Agent object, using the optional logger instance to report\nstatus.\n"],["new","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-c-new","(datafull,password)",""],["new","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-c-new","(data)",""],["new","Net::SSH::Authentication::ED25519::SigningKeyFromFile","Net/SSH/Authentication/ED25519/SigningKeyFromFile.html#method-c-new","(pk,sk)",""],["new","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-c-new","(logger, options={})","<p>Create a new KeyManager. By default, the manager will use the ssh-agent if\nit is running and the `:use_agent` …\n"],["new","Net::SSH::Authentication::Methods::Abstract","Net/SSH/Authentication/Methods/Abstract.html#method-c-new","(session, options={})","<p>Instantiates a new authentication method.\n"],["new","Net::SSH::Authentication::Pageant::Socket","Net/SSH/Authentication/Pageant/Socket.html#method-c-new","()","<p>Create a new instance that communicates with the running pageant instance.\nIf no such instance is running, …\n"],["new","Net::SSH::Authentication::Session","Net/SSH/Authentication/Session.html#method-c-new","(transport, options={})","<p>Instantiates a new Authentication::Session object over the given transport\nlayer abstraction.\n"],["new","Net::SSH::Buffer","Net/SSH/Buffer.html#method-c-new","(content=\"\")","<p>Creates a new buffer, initialized to the given content. The position is\ninitialized to the beginning …\n"],["new","Net::SSH::ChannelOpenFailed","Net/SSH/ChannelOpenFailed.html#method-c-new","(code, reason)",""],["new","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-c-new","(connection, type, local_id, max_pkt_size = 0x8000, max_win_size = 0x20000, &on_confirm_open)","<p>Instantiates a new channel on the given connection, of the given type, and\nwith the given id. If a block …\n"],["new","Net::SSH::Connection::EventLoop","Net/SSH/Connection/EventLoop.html#method-c-new","(logger=nil)",""],["new","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-c-new","(session)",""],["new","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-c-new","(transport, options={})","<p>Create a new connection service instance atop the given transport layer.\nInitializes the listeners to …\n"],["new","Net::SSH::Connection::Session::NilChannel","Net/SSH/Connection/Session/NilChannel.html#method-c-new","(session)",""],["new","Net::SSH::Connection::Session::StringWithExitstatus","Net/SSH/Connection/Session/StringWithExitstatus.html#method-c-new","(str, exitstatus)",""],["new","Net::SSH::HostKeys","Net/SSH/HostKeys.html#method-c-new","(host_keys, host, known_hosts, options = {})",""],["new","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-c-new","(source)","<p>Instantiate a new KnownHosts instance that will search the given\nknown-hosts file. The path is expanded …\n"],["new","Net::SSH::Packet","Net/SSH/Packet.html#method-c-new","(payload)","<p>Create a new packet from the given payload. This will automatically parse\nthe packet if it is one that …\n"],["new","Net::SSH::Prompt","Net/SSH/Prompt.html#method-c-new","(options = {})",""],["new","Net::SSH::Prompt::Prompter","Net/SSH/Prompt/Prompter.html#method-c-new","(info)",""],["new","Net::SSH::Proxy::Command","Net/SSH/Proxy/Command.html#method-c-new","(command_line_template)","<p>Create a new socket factory that tunnels via a command executed with the\nuser&#39;s shell, which is composed …\n"],["new","Net::SSH::Proxy::HTTP","Net/SSH/Proxy/HTTP.html#method-c-new","(proxy_host, proxy_port=80, options={})","<p>Create a new socket factory that tunnels via the given host and port. The\n<code>options</code> parameter is a hash …\n"],["new","Net::SSH::Proxy::HTTPS","Net/SSH/Proxy/HTTPS.html#method-c-new","(proxy_host, proxy_port=80, options={})","<p>Create a new socket factory that tunnels via the given host and port. The\n<code>options</code> parameter is a hash …\n"],["new","Net::SSH::Proxy::Jump","Net/SSH/Proxy/Jump.html#method-c-new","(jump_proxies)","<p>Create a new socket factory that tunnels via multiple jump proxes as\n[user@]host.\n"],["new","Net::SSH::Proxy::SOCKS4","Net/SSH/Proxy/SOCKS4.html#method-c-new","(proxy_host, proxy_port=1080, options={})","<p>Create a new proxy connection to the given proxy host and port. Optionally,\na :user key may be given …\n"],["new","Net::SSH::Proxy::SOCKS5","Net/SSH/Proxy/SOCKS5.html#method-c-new","(proxy_host, proxy_port=1080, options={})","<p>Create a new proxy connection to the given proxy host and port. Optionally,\n:user and :password options …\n"],["new","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-c-new","(session)","<p>Instantiates a new Forward service instance atop the given connection\nservice session. This will register …\n"],["new","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-c-new","(script)","<p>Creates a new Test::Channel instance on top of the given\n<code>script</code> (which must be a Net::SSH::Test::Script …\n"],["new","Net::SSH::Test::Kex","Net/SSH/Test/Kex.html#method-c-new","(algorithms, connection, data)","<p>Creates a new instance of the testing key-exchange algorithm with the given\narguments.\n"],["new","Net::SSH::Test::LocalPacket","Net/SSH/Test/LocalPacket.html#method-c-new","(type, *args, &block)","<p>Extend the default Net::SSH::Test::Packet constructor to also accept an\noptional block, which is used …\n"],["new","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-c-new","(type, *args)","<p>Ceate a new packet of the given <code>type</code>, and with\n<code>args</code> being a list of data elements in the order expected …\n"],["new","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-c-new","()","<p>Create a new, empty script.\n"],["new","Net::SSH::Test::Socket","Net/SSH/Test/Socket.html#method-c-new","()","<p>Create a new test socket. This will also instantiate a new\nNet::SSH::Test::Script and seed it with the …\n"],["new","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-c-new","(session, options={})","<p>Instantiates a new Algorithms object, and prepares the hash of preferred\nalgorithms based on the options …\n"],["new","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-c-new","(key=nil)",""],["new","Net::SSH::Transport::Kex::DiffieHellmanGroup1SHA1","Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html#method-c-new","(algorithms, connection, data)","<p>Create a new instance of the DiffieHellmanGroup1SHA1 algorithm. The data is\na Hash of symbols representing …\n"],["new","Net::SSH::Transport::Kex::DiffieHellmanGroupExchangeSHA256","Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA256.html#method-c-new","(*args)",""],["new","Net::SSH::Transport::Kex::EcdhSHA2NistP256","Net/SSH/Transport/Kex/EcdhSHA2NistP256.html#method-c-new","(algorithms, connection, data)",""],["new","Net::SSH::Transport::ServerVersion","Net/SSH/Transport/ServerVersion.html#method-c-new","(socket, logger, timeout = nil)","<p>Instantiates a new ServerVersion and immediately (and synchronously)\nnegotiates the SSH protocol in effect, …\n"],["new","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-c-new","(host, options={})","<p>Instantiates a new transport layer abstraction. This will block until the\ninitial key exchange completes, …\n"],["new","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-c-new","(socket, role)","<p>Creates a new state object, belonging to the given socket. Initializes the\nalgorithms to “none”. …\n"],["new","Net::SSH::Version","Net/SSH/Version.html#method-c-new","(major, minor, tiny, pre = nil)","<p>Create a new Version object with the given components.\n"],["next","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-next","(mode=:shift)","<p>By default, removes the next event in the list and returns it. However,\nthis can also be used to non-destructively …\n"],["next_message","Net::SSH::Authentication::Session","Net/SSH/Authentication/Session.html#method-i-next_message","()","<p>Blocks until a packet is received. It silently handles USERAUTH_BANNER\npackets, and will raise an error …\n"],["next_message","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-next_message","()","<p>Blocks until a new packet is available to be read, and returns that packet.\nSee #poll_message.\n"],["next_packet","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-next_packet","(mode=:nonblock)","<p>Returns the next full packet. If the mode parameter is :nonblock (the\ndefault), then this will return …\n"],["on_close","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_close","(&block)","<p>Registers a callback to be invoked when the server acknowledges that a\nchannel is closed. This is invoked …\n"],["on_data","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_data","(&block)","<p>Registers a callback to be invoked when data packets are received by the\nchannel. The callback is called …\n"],["on_eof","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_eof","(&block)","<p>Registers a callback to be invoked when the server indicates that no more\ndata will be sent to the channel …\n"],["on_extended_data","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_extended_data","(&block)","<p>Registers a callback to be invoked when extended data packets are received\nby the channel. The callback …\n"],["on_global_request","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-on_global_request","(type, &block)","<p>Registers a handler to be invoked when the server sends a global request of\nthe given type. The callback …\n"],["on_open_channel","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-on_open_channel","(type, &block)","<p>Registers a handler to be invoked when the server wants to open a channel\non the client. The callback …\n"],["on_open_failed","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_open_failed","(&block)","<p>Registers a callback to be invoked when the server was unable to open the\nrequested channel. The channel …\n"],["on_process","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_process","(&block)","<p>Registers a callback to be invoked for each pass of the event loop for this\nchannel. There are no guarantees …\n"],["on_request","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_request","(type, &block)","<p>Registers a callback to be invoked when a channel request of the given type\nis received. The callback …\n"],["open","Net::SSH::Authentication::Pageant::Socket","Net/SSH/Authentication/Pageant/Socket.html#method-c-open","()","<p>The factory method for creating a new Socket instance.\n"],["open","Net::SSH::Proxy::Command","Net/SSH/Proxy/Command.html#method-i-open","(host, port, connection_options = nil)","<p>Return a new socket connected to the given host and port via the proxy that\nwas requested when the socket …\n"],["open","Net::SSH::Proxy::HTTP","Net/SSH/Proxy/HTTP.html#method-i-open","(host, port, connection_options)","<p>Return a new socket connected to the given host and port via the proxy that\nwas requested when the socket …\n"],["open","Net::SSH::Proxy::Jump","Net/SSH/Proxy/Jump.html#method-i-open","(host, port, connection_options = nil)","<p>Return a new socket connected to the given host and port via the jump proxy\nthat was requested when the …\n"],["open","Net::SSH::Proxy::SOCKS4","Net/SSH/Proxy/SOCKS4.html#method-i-open","(host, port, connection_options)","<p>Return a new socket connected to the given host and port via the proxy that\nwas requested when the socket …\n"],["open","Net::SSH::Proxy::SOCKS5","Net/SSH/Proxy/SOCKS5.html#method-i-open","(host, port, connection_options)","<p>Return a new socket connected to the given host and port via the proxy that\nwas requested when the socket …\n"],["open","Net::SSH::Test::Socket","Net/SSH/Test/Socket.html#method-i-open","(host, port, options={})","<p>Allows the socket to also mimic a socket factory, simply returning\n<code>self</code>.\n"],["open_channel","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-open_channel","(type=\"session\", *extra, &on_confirm)","<p>Requests that a new channel be opened. By default, the channel will be of\ntype “session”, but …\n"],["opens_channel","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-opens_channel","(confirm=true)","<p>Scripts the opening of a channel by adding a local packet sending the\nchannel open request, and if <code>confirm</code> …\n"],["options","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-i-options","()",""],["padding=","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-padding-3D","(pad)",""],["parse_response","Net::SSH::Proxy::HTTP","Net/SSH/Proxy/HTTP.html#method-i-parse_response","(socket)",""],["peer","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-peer","()","<p>Returns a hash of information about the peer (remote) side of the socket,\nincluding :ip, :port, :host, …\n"],["peer_ip","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-peer_ip","()","<p>The IP address of the peer (remote) end of the socket, as reported by the\nsocket.\n"],["pending?","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-pending-3F","()","<p>Returns <code>true</code> if a key-exchange is pending. This will be true\nfrom the moment either the client or server …\n"],["pending_write?","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-pending_write-3F","()","<p>Returns <code>true</code> if there is data waiting in the output buffer,\nand <code>false</code> otherwise.\n"],["poll_message","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-poll_message","(mode=:nonblock, consume_queue=true)","<p>Tries to read the next packet from the socket. If mode is :nonblock (the\ndefault), this will not block …\n"],["poll_next_packet","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-poll_next_packet","()","<p>Tries to read the next packet. If there is insufficient data to read an\nentire packet, this returns immediately, …\n"],["port","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-port","()","<p>Returns the port number for the remote host, as reported by the socket.\n"],["postprocess","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-postprocess","(readers, writers)","<p>This is called internally as part of #process.\n"],["preprocess","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-preprocess","(&block)","<p>This is called internally as part of #process. It dispatches any available\nincoming packets, and then …\n"],["process","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-process","()","<p>If an #on_process handler has been set up, this will cause it to be invoked\n(passing the channel itself …\n"],["process","Net::SSH::Connection::EventLoop","Net/SSH/Connection/EventLoop.html#method-i-process","(wait = nil, &block)","<p>process until timeout if a block is given a session will be removed from\nloop if block returns false …\n"],["process","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-process","(wait=nil, &block)","<p>The core of the event loop. It processes a single iteration of the event\nloop. If a block is given, it …\n"],["process","Net::SSH::Test::LocalPacket","Net/SSH/Test/LocalPacket.html#method-i-process","(packet)","<p>Called by Net::SSH::Test::Extensions::PacketStream#test_enqueue_packet to\nmimic remote processing of …\n"],["process","Net::SSH::Test::RemotePacket","Net/SSH/Test/RemotePacket.html#method-i-process","(packet)","<p>The #process method should only be called on Net::SSH::Test::LocalPacket\npackets; if it is attempted …\n"],["process","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-process","(packet)","<p>Compare the given packet against the next event in the list. If there is no\nnext event, an exception …\n"],["process_only","Net::SSH::Connection::EventLoop","Net/SSH/Connection/EventLoop.html#method-i-process_only","(session, wait = nil)","<p>process the event loop but only for the sepcified session\n"],["public_key","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-i-public_key","()",""],["push","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-push","(packet)","<p>Adds the given packet to the packet queue. If the queue is non-empty,\n#poll_message will return packets …\n"],["raiseUnlessLoaded","Net::SSH::Authentication::ED25519Loader","Net/SSH/Authentication/ED25519Loader.html#method-c-raiseUnlessLoaded","(message)",""],["read","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-c-read","(data,password)",""],["read","Net::SSH::Authentication::Pageant::Socket","Net/SSH/Authentication/Pageant/Socket.html#method-i-read","(n = nil)","<p>Reads <code>n</code> bytes from the cached result of the last query. If\n<code>n</code> is <code>nil</code>, returns all remaining data from …\n"],["read","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read","(count=nil)","<p>Reads and returns the next <code>count</code> bytes from the buffer,\nstarting from the read position. If <code>count</code> is …\n"],["read!","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read-21","(count=nil)","<p>Reads (as #read) and returns the given number of bytes from the buffer, and\nthen consumes (as #consume! …\n"],["read_all","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_all","(&block)","<p>Calls block(self) until the buffer is empty, and returns all results.\n"],["read_available","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-read_available","(length=nil)","<p>Read up to <code>length</code> bytes from the input buffer. If\n<code>length</code> is nil, all available data is read from the …\n"],["read_bignum","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_bignum","()","<p>Read a bignum (OpenSSL::BN) from the buffer, in SSH2 format. It is\nessentially just a string, which is …\n"],["read_bool","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_bool","()","<p>Read a single byte and convert it into a boolean, using &#39;C&#39; rules\n(i.e., zero is false, non-zero …\n"],["read_buffer","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_buffer","()","<p>Reads the next string from the buffer, and returns a new Buffer object that\nwraps it.\n"],["read_byte","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_byte","()","<p>Read and return the next byte in the buffer. Returns nil if called at the\nend of the buffer.\n"],["read_certblob","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-c-read_certblob","(buffer, type)","<p>Read a certificate blob associated with a key of the given type.\n"],["read_int64","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_int64","()","<p>Return the next 8 bytes as a 64-bit integer (in network byte order).\nReturns nil if there are less than …\n"],["read_key","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_key","()","<p>Read a key from the buffer. The key will start with a string describing its\ntype. The remainder of the …\n"],["read_keyblob","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-c-read_keyblob","(buffer)",""],["read_keyblob","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-c-read_keyblob","(buffer)",""],["read_keyblob","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_keyblob","(type)","<p>Read a keyblob of the given type from the buffer, and return it as a key.\nOnly RSA, DSA, and ECDSA keys …\n"],["read_keyblob","OpenSSL::PKey::EC","OpenSSL/PKey/EC.html#method-c-read_keyblob","(curve_name_in_type, buffer)",""],["read_long","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_long","()","<p>Return the next four bytes as a long integer (in network byte order).\nReturns nil if there are less than …\n"],["read_string","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_string","()","<p>Read and return an SSH2-encoded string. The string starts with a long\ninteger that describes the number …\n"],["read_to","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_to","(pattern)","<p>Reads all data up to and including the given pattern, which may be a\nString, Fixnum, or Regexp and is …\n"],["readpartial","Net::SSH::Test::Socket","Net/SSH/Test/Socket.html#method-i-readpartial","(n)",""],["recv","Net::SSH::Test::Socket","Net/SSH/Test/Socket.html#method-i-recv","(n)","<p>Alias to #read, but never returns nil (returns an empty string instead).\n"],["register","Net::SSH::Connection::EventLoop","Net/SSH/Connection/EventLoop.html#method-i-register","(session)",""],["register","Net::SSH::Packet","Net/SSH/Packet.html#method-c-register","(type, *pairs)","<p>Register a new packet type that should be recognized and auto-parsed by\nNet::SSH::Packet. Note that any …\n"],["register_channel_request","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-c-register_channel_request","(request, extra_parts)","<p>Register a custom channel request. extra_parts is an array of types of\nextra parameters\n"],["registered_channel_requests","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-c-registered_channel_requests","(request)",""],["rekey!","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-rekey-21","()","<p>Request a rekey operation. This will return immediately, and does not\nactually perform the rekey operation. …\n"],["rekey!","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-rekey-21","()","<p>Requests a rekey operation, and blocks until the operation completes. If a\nrekey is already pending, …\n"],["rekey_as_needed","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-rekey_as_needed","()","<p>Returns immediately if a rekey is already in process. Otherwise, if a rekey\nis needed (as indicated by …\n"],["remainder_as_buffer","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-remainder_as_buffer","()","<p>Returns all text from the current pointer to the end of the buffer as a new\nNet::SSH::Buffer object. …\n"],["remember_host!","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-remember_host-21","()","<p>Tell Net::SSH to record this host and key in the known hosts file, so that\nsubsequent connections will …\n"],["remote","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-remote","(port, host, remote_port, remote_host=\"127.0.0.1\")","<p>Requests that all connections on the given remote-port be forwarded via the\nlocal host to the given …\n"],["remote?","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-i-remote-3F","()","<p>The default for <code>remote?</code> is false. Subclasses should override\nas necessary.\n"],["remote?","Net::SSH::Test::RemotePacket","Net/SSH/Test/RemotePacket.html#method-i-remote-3F","()","<p>Returns <code>true</code>; this is a remote packet.\n"],["remote_closed!","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-remote_closed-21","()",""],["remote_closed?","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-remote_closed-3F","()",""],["remote_id","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-remote_id","()","<p>Returns the remote (server-assigned) id for this channel, or a Proc object\nthat will return the remote-id …\n"],["remote_to","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-remote_to","(port, host, remote_port, remote_host=\"127.0.0.1\")","<p>an alias, for token backwards compatibility with the 1.x API\n"],["remove_all_identities","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-remove_all_identities","()","<p>Removes all identities from the agent.\n"],["remove_identity","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-remove_identity","(key)","<p>Removes key from the agent.\n"],["request_pty","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-request_pty","(opts={}, &block)","<p>Requests that a pseudo-tty (or “pty”) be made available for this channel.\nThis is useful when …\n"],["reset","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-reset","()",""],["reset","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-reset","()","<p>Does nothing. Returns self.\n"],["reset!","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-reset-21","()","<p>Resets the pointer to the start of the buffer. Subsequent reads will begin\nat position 0.\n"],["reset!","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-reset-21","()","<p>Resets the counters on the state object, but leaves the sequence_number\nunchanged. It also sets defaults …\n"],["search_for","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-c-search_for","(host, options={})","<p>Searches all known host files (see KnownHosts.hostfiles) for all keys of\nthe given host. Returns an enumerable …\n"],["search_in","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-c-search_in","(files, host)","<p>Search for all known keys for the given host, in every file given in the\n<code>files</code> array. Returns the list …\n"],["select_for_read?","Net::SSH::Test::Extensions::BufferedIo","Net/SSH/Test/Extensions/BufferedIo.html#method-i-select_for_read-3F","()","<p>Returns <code>true</code> if the position in the stream is less than the\ntotal length of the stream.\n"],["select_for_test","Net::SSH::Test::Extensions::IO::ClassMethods","Net/SSH/Test/Extensions/IO/ClassMethods.html#method-i-select_for_test","(readers=nil, writers=nil, errors=nil, wait=nil)","<p>The testing version of ::IO.select. Assumes that all readers, writers, and\nerrors arrays are either nil, …\n"],["send","Net::SSH::Authentication::Pageant::Socket","Net/SSH/Authentication/Pageant/Socket.html#method-i-send","(data, *args)","<p>Forwards the data to #send_query, ignoring any arguments after the first.\n"],["send","Net::SSH::Proxy::HTTPS::SSLSocketCompatibility","Net/SSH/Proxy/HTTPS/SSLSocketCompatibility.html#method-i-send","(data, _opts)",""],["send_as_needed","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-i-send_as_needed","(was_events)",""],["send_channel_request","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-send_channel_request","(request_name, *data, &callback)","<p>Sends a new channel request with the given name. The extra\n<code>data</code> parameter must either be empty, or consist …\n"],["send_data","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-send_data","(data)","<p>Sends data to the channel&#39;s remote endpoint. This usually has the\neffect of sending the given string …\n"],["send_data_for_test","Net::SSH::Test::Extensions::Channel","Net/SSH/Test/Extensions/Channel.html#method-i-send_data_for_test","(data)","<p>The testing version of Net::SSH::Connection::Channel#send_data. Calls the\noriginal implementation, and …\n"],["send_global_request","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-send_global_request","(type, *extra, &callback)","<p>Send a global request of the given type. The <code>extra</code> parameters\nmust be even in number, and conform to …\n"],["send_message","Net::SSH::Authentication::Methods::Abstract","Net/SSH/Authentication/Methods/Abstract.html#method-i-send_message","(msg)","<p>Sends a message via the underlying transport layer abstraction. This will\nblock until the message is …\n"],["send_message","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-send_message","(message)","<p>Enqueues a message to be sent to the server as soon as the socket is\navailable for writing. Most programs …\n"],["send_message","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-send_message","(message)","<p>Sends the given message via the packet stream, blocking until the entire\nmessage has been sent.\n"],["send_packet","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-send_packet","(payload)","<p>Enqueues a packet to be sent, and blocks until the entire packet is sent.\n"],["send_pending","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-send_pending","()","<p>Sends as much of the pending output as possible. Returns <code>true</code>\nif any data was sent, and <code>false</code> otherwise. …\n"],["send_pending","Net::SSH::ForwardedBufferedIo","Net/SSH/ForwardedBufferedIo.html#method-i-send_pending","()",""],["send_query","Net::SSH::Authentication::Pageant::Socket","Net/SSH/Authentication/Pageant/Socket.html#method-i-send_query","(query)","<p>Packages the given query string and sends it to the pageant process via the\nWindows messaging subsystem. …\n"],["sends","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-sends","(type, *args, &block)","<p>A convenience method for adding an arbitrary local packet to the events\nlist.\n"],["sends_channel_close","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-sends_channel_close","(channel)","<p>Scripts the sending of a channel close packet from the given\nNet::SSH::Test::Channel <code>channel</code>. This will …\n"],["sends_channel_data","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-sends_channel_data","(channel, data)","<p>Scripts the sending of a channel data packet. <code>channel</code> must be\na Net::SSH::Test::Channel object, and …\n"],["sends_channel_eof","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-sends_channel_eof","(channel)","<p>Scripts the sending of a channel EOF packet from the given\nNet::SSH::Test::Channel <code>channel</code>. This will …\n"],["sends_channel_request","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-sends_channel_request","(channel, request, reply, data, success=true)","<p>Scripts the sending of a new channel request packet to the remote host.\n<code>channel</code> should be an instance …\n"],["sends_channel_request_pty","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-sends_channel_request_pty","(channel)","<p>Scripts the sending of a channel request pty packets from the given\nNet::SSH::Test::Channel <code>channel</code>. …\n"],["sends_close","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-sends_close","()","<p>Scripts the sending of a “channel close” packet across the channel.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">sends_close</span>\n</pre>\n"],["sends_data","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-sends_data","(data)","<p>Scripts the sending of a data packet across the channel.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">sends_data</span> <span class=\"ruby-string\">&quot;foo&quot;</span>\n</pre>\n"],["sends_eof","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-sends_eof","()","<p>Scripts the sending of an EOF packet across the channel.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">sends_eof</span>\n</pre>\n"],["sends_exec","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-sends_exec","(command, reply=true, success=true)","<p>Scripts the sending of an “exec” channel request packet to the mock \nserver. If <code>reply</code> is true, …\n"],["sends_request_pty","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-sends_request_pty","()","<p>Scripts the sending of a “request pty” request packet across the channel.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">sends_request_pty</span>\n</pre>\n"],["sends_subsystem","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-sends_subsystem","(subsystem, reply=true, success=true)","<p>Scripts the sending of a “subsystem” channel request packet to the mock\nserver. See #sends_exec …\n"],["service_request","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-service_request","(service)","<p>Returns a new service_request packet for the given service name, ready for\nsending to the server.\n"],["session_id","Net::SSH::Authentication::Methods::Abstract","Net/SSH/Authentication/Methods/Abstract.html#method-i-session_id","()","<p>Returns the session-id, as generated during the first key exchange of an\nSSH connection.\n"],["set","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-set","(values)","<p>A convenience method for quickly setting multiple values in a single\ncommand.\n"],["set_ptr_data","Net::SSH::Authentication::Pageant::Win","Net/SSH/Authentication/Pageant/Win.html#method-c-set_ptr_data","(ptr, data)",""],["setbyte","String","String.html#method-i-setbyte","(index, c)",""],["should_send?","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-i-should_send-3F","()",""],["shutdown!","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-shutdown-21","()","<p>Performs a “hard” shutdown of the connection. In general, this should never\nbe done, but it …\n"],["shutdown!","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-shutdown-21","()","<p>Performs a “hard” shutdown of the connection. In general, this should never\nbe done, but it …\n"],["sign","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-sign","(key, data, flags = 0)","<p>Using the agent and the given public key, sign the given data. The\nsignature is returned in SSH2 format. …\n"],["sign","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-sign","(key, sign_nonce=nil)",""],["sign","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-sign","(identity, data)","<p>Sign the given data, using the corresponding private key of the given\nidentity. If the identity was originally …\n"],["sign!","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-sign-21","(key, sign_nonce=nil)","<p>Signs the certificate with key.\n"],["signature_valid?","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-signature_valid-3F","()","<p>Checks whether the certificate&#39;s signature was signed by signature key.\n"],["socket","Net::SSH::Test","Net/SSH/Test.html#method-i-socket","(options={})","<p>Returns the test socket instance to use for these tests (see\nNet::SSH::Test::Socket).\n"],["ssh_do_sign","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-ssh_do_sign","(data)",""],["ssh_do_sign","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-i-ssh_do_sign","(data)",""],["ssh_do_sign","OpenSSL::PKey::DSA","OpenSSL/PKey/DSA.html#method-i-ssh_do_sign","(data)","<p>Signs the given data.\n"],["ssh_do_sign","OpenSSL::PKey::EC","OpenSSL/PKey/EC.html#method-i-ssh_do_sign","(data)","<p>Returns the signature for the given data.\n"],["ssh_do_sign","OpenSSL::PKey::RSA","OpenSSL/PKey/RSA.html#method-i-ssh_do_sign","(data)","<p>Returns the signature for the given data.\n"],["ssh_do_verify","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-ssh_do_verify","(sig, data)",""],["ssh_do_verify","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-i-ssh_do_verify","(sig,data)",""],["ssh_do_verify","OpenSSL::PKey::DSA","OpenSSL/PKey/DSA.html#method-i-ssh_do_verify","(sig, data)","<p>Verifies the given signature matches the given data.\n"],["ssh_do_verify","OpenSSL::PKey::EC","OpenSSL/PKey/EC.html#method-i-ssh_do_verify","(sig, data)","<p>Verifies the given signature matches the given data.\n"],["ssh_do_verify","OpenSSL::PKey::RSA","OpenSSL/PKey/RSA.html#method-i-ssh_do_verify","(sig, data)","<p>Verifies the given signature matches the given data.\n"],["ssh_signature_type","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-ssh_signature_type","()",""],["ssh_signature_type","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-i-ssh_signature_type","()",""],["ssh_signature_type","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-i-ssh_signature_type","()",""],["ssh_signature_type","OpenSSL::PKey::DSA","OpenSSL/PKey/DSA.html#method-i-ssh_signature_type","()",""],["ssh_signature_type","OpenSSL::PKey::EC","OpenSSL/PKey/EC.html#method-i-ssh_signature_type","()",""],["ssh_signature_type","OpenSSL::PKey::RSA","OpenSSL/PKey/RSA.html#method-i-ssh_signature_type","()",""],["ssh_type","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-ssh_type","()",""],["ssh_type","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-i-ssh_type","()",""],["ssh_type","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-i-ssh_type","()",""],["ssh_type","OpenSSL::PKey::DSA","OpenSSL/PKey/DSA.html#method-i-ssh_type","()","<p>Returns “ssh-dss”, which is the description of this key type used by the\nSSH2 protocol.\n"],["ssh_type","OpenSSL::PKey::EC","OpenSSL/PKey/EC.html#method-i-ssh_type","()","<p>Returns the description of this key type used by the SSH2 protocol, like\n“ecdsa-sha2-nistp256” …\n"],["ssh_type","OpenSSL::PKey::RSA","OpenSSL/PKey/RSA.html#method-i-ssh_type","()","<p>Returns “ssh-rsa”, which is the description of this key type used by the\nSSH2 protocol.\n"],["start","Net::SSH","Net/SSH.html#method-c-start","(host, user=nil, options={}, &block)","<p>The standard means of starting a new SSH connection. When used with a\nblock, the connection will be closed …\n"],["start","Net::SSH::Prompt","Net/SSH/Prompt.html#method-i-start","(info)","<p>start password session. Multiple questions might be asked multiple times on\nthe returned object. Info …\n"],["start","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-start","()","<p>Start the algorithm negotation\n"],["stop_listening_to","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-stop_listening_to","(io)","<p>Removes the given io object from the listeners collection, so that the\nevent loop will no longer monitor …\n"],["story","Net::SSH::Test","Net/SSH/Test.html#method-i-story","()","<p>If a block is given, yields the script for the test socket (#socket).\nOtherwise, simply returns the socket&#39;s …\n"],["subsystem","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-subsystem","(subsystem, &block)","<p>Syntactic sugar for requesting that a subsystem be started. Subsystems are\na way for other protocols …\n"],["success","Net::SSH::Prompt::Prompter","Net/SSH/Prompt/Prompter.html#method-i-success","()","<p>success method will be called when the password was accepted It&#39;s a\ngood time to save password asked …\n"],["supported?","Net::SSH::Transport::CipherFactory","Net/SSH/Transport/CipherFactory.html#method-c-supported-3F","(name)","<p>Returns true if the underlying OpenSSL library supports the given cipher,\nand false otherwise.\n"],["test_available_for_read?","Net::SSH::Test::Extensions::PacketStream","Net/SSH/Test/Extensions/PacketStream.html#method-i-test_available_for_read-3F","()","<p>The testing version of\nNet::SSH::Transport::PacketStream#available_for_read?. Returns true if\nthere is …\n"],["test_enqueue_packet","Net::SSH::Test::Extensions::PacketStream","Net/SSH/Test/Extensions/PacketStream.html#method-i-test_enqueue_packet","(payload)","<p>The testing version of Net::SSH::Transport::PacketStream#enqueued_packet.\nSimply calls Net::SSH::Test::Script#process …\n"],["test_poll_next_packet","Net::SSH::Test::Extensions::PacketStream","Net/SSH/Test/Extensions/PacketStream.html#method-i-test_poll_next_packet","()","<p>The testing version of Net::SSH::Transport::PacketStream#poll_next_packet.\nReads the next available packet …\n"],["to_blob","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-to_blob","()","<p>Serializes the certificate (and key).\n"],["to_blob","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-i-to_blob","()",""],["to_blob","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-i-to_blob","()",""],["to_blob","OpenSSL::PKey::DSA","OpenSSL/PKey/DSA.html#method-i-to_blob","()","<p>Converts the key to a blob, according to the SSH2 protocol.\n"],["to_blob","OpenSSL::PKey::EC","OpenSSL/PKey/EC.html#method-i-to_blob","()","<p>Converts the key to a blob, according to the SSH2 protocol.\n"],["to_blob","OpenSSL::PKey::RSA","OpenSSL/PKey/RSA.html#method-i-to_blob","()","<p>Converts the key to a blob, according to the SSH2 protocol.\n"],["to_i","Net::SSH::Version","Net/SSH/Version.html#method-i-to_i","()","<p>Converts this version to a canonical integer that may be compared against\nother version objects.\n"],["to_pem","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-to_pem","()",""],["to_pem","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-i-to_pem","()",""],["to_s","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-to_s","()","<p>Returns a copy of the buffer&#39;s content.\n"],["to_s","Net::SSH::Test::RemotePacket","Net/SSH/Test/RemotePacket.html#method-i-to_s","()","<p>Returns this remote packet as a string, suitable for parsing by \nNet::SSH::Transport::PacketStream and …\n"],["to_s","Net::SSH::Version","Net/SSH/Version.html#method-i-to_s","()","<p>Converts this version object to a string, where each of the three version\ncomponents are joined by the …\n"],["to_ssh","OpenSSL::BN","OpenSSL/BN.html#method-i-to_ssh","()","<p>Converts a BN object to a string. The format used is that which is required\nby the SSH2 protocol.\n"],["translate","Net::SSH::Config","Net/SSH/Config.html#method-c-translate","(settings)","<p>Given a hash of OpenSSH configuration options, converts them into a hash of\nNet::SSH options. Unrecognized …\n"],["transport","Net::SSH::Test","Net/SSH/Test.html#method-i-transport","(options={})","<p>Returns the transport session (Net::SSH::Transport::Session) for use in\nthese tests. It is a fully functional …\n"],["types","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-i-types","()","<p>Returns an array of symbols describing the data elements for packets of the\nsame type as this packet. …\n"],["update","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-update","(data)",""],["update","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-update","(text)","<p>Passes its single argument through unchanged.\n"],["update_cipher","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-update_cipher","(data)",""],["use_agent=","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-use_agent-3D","(use_agent)","<p>Toggles whether the ssh-agent will be used or not. If true, an attempt will\nbe made to use the ssh-agent. …\n"],["use_agent?","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-use_agent-3F","()","<p>Identifies whether the ssh-agent will be used or not.\n"],["userauth_request","Net::SSH::Authentication::Methods::Abstract","Net/SSH/Authentication/Methods/Abstract.html#method-i-userauth_request","(username, next_service, auth_method, *others)","<p>Creates a new USERAUTH_REQUEST packet. The extra arguments on the end must\nbe either boolean values or …\n"],["valid?","OpenSSL::PKey::DH","OpenSSL/PKey/DH.html#method-i-valid-3F","()","<p>Determines whether the pub_key for this key is valid. (This algorithm\nlifted more-or-less directly from …\n"],["verify","Net::SSH::Verifiers::Lenient","Net/SSH/Verifiers/Lenient.html#method-i-verify","(arguments)","<p>Tries to determine if the connection is being tunnelled, and if so, returns\ntrue. Otherwise, performs …\n"],["verify","Net::SSH::Verifiers::Null","Net/SSH/Verifiers/Null.html#method-i-verify","(arguments)","<p>Returns true.\n"],["verify","Net::SSH::Verifiers::Secure","Net/SSH/Verifiers/Secure.html#method-i-verify","(arguments)",""],["verify","Net::SSH::Verifiers::Strict","Net/SSH/Verifiers/Strict.html#method-i-verify","(arguments)",""],["wait","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-wait","()","<p>Runs the SSH event loop until the channel is no longer active. This is\nhandy for blocking while you wait …\n"],["wait","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-wait","()","<p>Waits (blocks) until the given block returns true. If no block is given,\nthis just waits long enough …\n"],["wait_for_pending_sends","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-wait_for_pending_sends","()","<p>Calls #send_pending repeatedly, if necessary, blocking until the output\nbuffer is empty.\n"],["with_test_extension","Net::SSH::Test::Extensions::IO","Net/SSH/Test/Extensions/IO.html#method-c-with_test_extension","(&block)",""],["write","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write","(*data)","<p>Writes the given data literally into the string. Does not alter the read\nposition. Returns the buffer …\n"],["write","Net::SSH::Test::Socket","Net/SSH/Test/Socket.html#method-i-write","(data)","<p>This doesn&#39;t actually do anything, since we don&#39;t really care what\ngets written.\n"],["write_bignum","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_bignum","(*n)","<p>Writes each argument to the buffer as a bignum (SSH2-style). No checking is\ndone to ensure that the arguments …\n"],["write_bool","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_bool","(*b)","<p>Writes each argument to the buffer as a (C-style) boolean, with 1 meaning\ntrue, and 0 meaning false. …\n"],["write_byte","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_byte","(*n)","<p>Writes each argument to the buffer as a byte. Does not alter the read\nposition. Returns the buffer object. …\n"],["write_int64","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_int64","(*n)","<p>Writes each argument to the buffer as a network-byte-order-encoded 64-bit\ninteger (8 bytes). Does not …\n"],["write_key","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_key","(*key)","<p>Writes the given arguments to the buffer as SSH2-encoded keys. Does not\nalter the read position. Returns …\n"],["write_long","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_long","(*n)","<p>Writes each argument to the buffer as a network-byte-order-encoded long\n(4-byte) integer. Does not alter …\n"],["write_moved","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_moved","(string)","<p>Optimized version of write where the caller gives up ownership of string to\nthe method. This way we can …\n"],["write_mstring","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_mstring","(*text)","<p>Writes each argument to the buffer as an SSH2-encoded string. Each string\nis prefixed by its length, …\n"],["write_string","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_string","(*text)","<p>Writes each argument to the buffer as an SSH2-encoded string. Each string\nis prefixed by its length, …\n"],["xor!","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-xor-21","(s1, s2)",""],["CHANGES","","CHANGES_txt.html","","<p>4.2.0.rc2\n\n<pre>* Fix double close bug on auth failure (or ruby 2.2 or earlier) [#538]</pre>\n<p>4.2.0.rc1\n"],["LICENSE","","LICENSE_txt.html","","<p>Copyright © 2008 Jamis Buck\n<p>Permission is hereby granted, free of charge, to any person obtaining a\ncopy …\n"],["README","","README_rdoc.html","","<p><img src=\"https://badge.fury.io/rb/net-ssh.svg\" alt=\"Gem Version\" /> <img\nsrc=“https://badges.gitter.im/net-ssh/net-ssh.svg” …\n"],["THANKS","","THANKS_txt.html","","<p>Net::SSH was originally written by Jamis Buck &lt;jamis@37signals.com&gt;.\nIt is currently maintained …\n"]]}} \ No newline at end of file
+var search_data = {"index":{"searchIndex":["dl","fiddle","net","ssh","authentication","agent","comment","agenterror","agentnotavailable","certificate","constants","disallowedmethod","ed25519","opensshprivatekeyloader","decrypterror","privkey","pubkey","signingkeyfromfile","ed25519loader","keymanager","keymanagererror","methods","abstract","hostbased","keyboardinteractive","none","password","publickey","pageant","socket","win","libc","ffi","library","session","authenticationfailed","buffer","bufferedio","channelopenfailed","channelrequestfailed","config","connection","channel","constants","eventloop","keepalive","session","nilchannel","stringwithexitstatus","singlesessioneventloop","term","connectiontimeout","disconnect","exception","forwardedbufferedio","hostkeyerror","hostkeymismatch","hostkeyunknown","hostkeys","keyfactory","keytype","opensshprivatekeytype","openssldsakeytype","openssleckeytype","opensslkeytypebase","opensslpkeytype","opensslrsakeytype","knownhosts","loggable","packet","prompt","prompter","proxy","command","connecterror","error","http","https","sslsocketcompatibility","jump","socks4","socks5","unauthorizederror","service","forward","test","channel","extensions","bufferedio","channel","io","classmethods","packetstream","kex","localpacket","packet","remotepacket","script","socket","timeout","transport","algorithms","ctr","cipherfactory","constants","hmac","abstract","md5","openssl","digest","md5_96","none","ripemd160","openssl","digest","sha1","openssl","digest","sha1_96","sha2_256","openssl","digest","sha2_256_96","sha2_256_etm","openssl","digest","sha2_512","openssl","digest","sha2_512_96","sha2_512_etm","openssl","digest","identitycipher","kex","abstract","abstract5656","curve25519sha256","curve25519sha256loader","diffiehellmangroup14sha1","diffiehellmangroup1sha1","diffiehellmangroupexchangesha1","diffiehellmangroupexchangesha256","ecdhsha2nistp256","ecdhsha2nistp384","ecdhsha2nistp521","keyexpander","opensslaesctr","packetstream","serverversion","session","compatibleverifier","state","verifiers","acceptnew","acceptneworlocaltunnel","always","never","version","openssl","bn","pkey","dh","dsa","ec","point","pkey","rsa","string","<=>()","==()","[]()","[]()","[]()","[]()","[]()","[]()","[]=()","[]=()","accept_kexinit()","active?()","active_local_sockets()","active_locals()","active_remote_destinations()","active_remotes()","add()","add()","add()","add_host_key()","add_identity()","add_key_data()","agent()","agent()","allow?()","allowed_packet?()","append()","ask()","assert_scripted()","assign_defaults()","authenticate()","authenticate()","authenticate()","authenticate()","authenticate()","authenticate()","available()","available()","available_for_read?()","block_size()","block_size()","block_size()","build_proxy_command_equivalent()","busy?()","cancel_local()","cancel_local_socket()","cancel_remote()","cleanup()","cleanup()","cleanup_channel()","clear!()","clear!()","client_name()","close()","close()","close()","close()","close()","close_on_error()","closed?()","closed?()","closing?()","compress()","compression?()","compressor()","configuration_for()","configure_client()","configure_server()","connect()","connect!()","connection()","consume!()","curve_name()","curve_name()","curve_name()","curve_name()","debug()","decompress()","decompressor()","decrypt()","decrypt()","default()","default_auth_methods()","default_files()","dependenciesrequiredfored25519()","dependenciesrequiredforx25519()","digest()","digest()","digest_class()","digest_class()","digester()","digester()","digester()","digester()","digester()","digester()","digester()","do_close()","do_eof()","do_extended_data()","do_failure()","do_open_failed()","do_success()","each()","each_identity()","empty?()","empty?()","enabled?()","encrypt()","encrypt()","encrypted_key?()","encrypted_key?()","encrypted_key?()","encrypted_key?()","enqueue()","enqueue_message()","enqueue_packet()","env()","eof!()","eof?()","eof?()","error()","error_classes()","error_classes()","error_classes()","error_classes()","error_classes()","error_classes()","establish_connection()","establish_connection()","etm()","etm()","ev_do_calculate_rw_wait()","ev_do_handle_events()","ev_do_postprocess()","ev_preprocess()","ev_preprocess()","ev_preprocess()","ev_select_and_postprocess()","ev_select_and_postprocess()","exchange_keys()","exchange_keys()","exec()","exec()","exec!()","expand_key()","expandable_default_files()","expect_message()","extended()","extended()","extension_enabled?()","fatal()","fill()","fill()","final()","final()","final_cipher()","fingerprint()","fingerprint()","finish()","for()","forward()","from()","get()","get()","get()","get_lengths()","get_ptr()","getbyte()","getpeername()","gets()","gets_channel_close()","gets_channel_data()","gets_channel_eof()","gets_channel_extended_data()","gets_channel_request()","gets_close()","gets_data()","gets_eof()","gets_exit_status()","gets_extended_data()","hint()","host()","host()","host_as_string()","host_key_format()","host_keys()","hostfiles()","identities()","idle!()","if_needs_rekey?()","increment()","increment_counter!()","info()","initialize_ssh()","initialized?()","inject_remote_delay!()","instantiate!()","interactive?()","interval()","ip()","iv()","iv=()","iv=()","iv=()","iv_len()","iv_len()","keepalive_maxcount()","key()","key=()","key_length()","key_length()","key_length()","keys_for()","known_host_hash?()","length()","listen_to()","load()","load_data_private_key()","load_data_public_key()","load_private_key()","load_public_key()","local()","local?()","local?()","local_closed?()","local_id()","local_socket()","loop()","loop_forever()","lwarn()","mac_length()","mac_length()","malloc_ptr()","match()","max_select_wait_time()","method_missing()","name()","needs_rekey?()","negotiate!()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","next()","next_message()","next_message()","next_packet()","no_keys?()","on_close()","on_data()","on_eof()","on_extended_data()","on_global_request()","on_open_channel()","on_open_failed()","on_process()","on_request()","open()","open()","open()","open()","open()","open()","open()","open_channel()","open_ssl_class()","open_ssl_class()","open_ssl_class()","open_ssl_class()","open_ssl_class()","opens_channel()","options()","padding=()","parse_response()","peer()","peer_ip()","pending?()","pending_write?()","poll_message()","poll_next_packet()","port()","postprocess()","preprocess()","process()","process()","process()","process()","process()","process()","process_only()","public_key()","push()","raiseunlessloaded()","raiseunlessloaded()","read()","read()","read()","read()","read()","read()","read()","read()","read!()","read_all()","read_available()","read_bignum()","read_bool()","read_buffer()","read_byte()","read_certblob()","read_int64()","read_key()","read_keyblob()","read_keyblob()","read_keyblob()","read_long()","read_private_keyblob()","read_string()","read_to()","readpartial()","recv()","register()","register()","register_channel_request()","registered_channel_requests()","rekey!()","rekey!()","rekey_as_needed()","remainder_as_buffer()","remember_host!()","remote()","remote?()","remote?()","remote_closed!()","remote_closed?()","remote_id()","remote_to()","remove_all_identities()","remove_identity()","request_pty()","reset()","reset()","reset()","reset!()","reset!()","search_for()","search_in()","select_for_read?()","select_for_test()","send()","send()","send_as_needed()","send_channel_request()","send_data()","send_data_for_test()","send_global_request()","send_message()","send_message()","send_message()","send_packet()","send_pending()","send_pending()","send_query()","sends()","sends_channel_close()","sends_channel_data()","sends_channel_eof()","sends_channel_request()","sends_channel_request_pty()","sends_close()","sends_data()","sends_eof()","sends_exec()","sends_request_pty()","sends_subsystem()","service_request()","session_id()","set()","set_ptr_data()","setbyte()","should_send?()","shutdown!()","shutdown!()","sign()","sign()","sign()","sign!()","signature_valid?()","socket()","ssh_do_sign()","ssh_do_sign()","ssh_do_sign()","ssh_do_sign()","ssh_do_sign()","ssh_do_verify()","ssh_do_verify()","ssh_do_verify()","ssh_do_verify()","ssh_do_verify()","ssh_signature_type()","ssh_signature_type()","ssh_signature_type()","ssh_signature_type()","ssh_signature_type()","ssh_signature_type()","ssh_type()","ssh_type()","ssh_type()","ssh_type()","ssh_type()","ssh_type()","ssh_type()","start()","start()","start()","stop_listening_to()","story()","subsystem()","success()","supported?()","test_available_for_read?()","test_enqueue_packet()","test_poll_next_packet()","to_blob()","to_blob()","to_blob()","to_blob()","to_blob()","to_blob()","to_blob()","to_i()","to_pem()","to_pem()","to_s()","to_s()","to_s()","to_ssh()","translate()","transport()","types()","update()","update()","update_cipher()","use_agent=()","use_agent?()","userauth_request()","valid?()","verify()","verify()","verify()","verify()","verify()","verify_signature()","verify_signature()","verify_signature()","verify_signature()","wait()","wait()","wait_for_pending_sends()","with_test_extension()","write()","write()","write_bignum()","write_bool()","write_byte()","write_int64()","write_key()","write_long()","write_moved()","write_mstring()","write_string()","xor!()","changes","license","readme","thanks"],"longSearchIndex":["dl","dl::fiddle","net","net::ssh","net::ssh::authentication","net::ssh::authentication::agent","net::ssh::authentication::agent::comment","net::ssh::authentication::agenterror","net::ssh::authentication::agentnotavailable","net::ssh::authentication::certificate","net::ssh::authentication::constants","net::ssh::authentication::disallowedmethod","net::ssh::authentication::ed25519","net::ssh::authentication::ed25519::opensshprivatekeyloader","net::ssh::authentication::ed25519::opensshprivatekeyloader::decrypterror","net::ssh::authentication::ed25519::privkey","net::ssh::authentication::ed25519::pubkey","net::ssh::authentication::ed25519::signingkeyfromfile","net::ssh::authentication::ed25519loader","net::ssh::authentication::keymanager","net::ssh::authentication::keymanagererror","net::ssh::authentication::methods","net::ssh::authentication::methods::abstract","net::ssh::authentication::methods::hostbased","net::ssh::authentication::methods::keyboardinteractive","net::ssh::authentication::methods::none","net::ssh::authentication::methods::password","net::ssh::authentication::methods::publickey","net::ssh::authentication::pageant","net::ssh::authentication::pageant::socket","net::ssh::authentication::pageant::win","net::ssh::authentication::pageant::win::libc","net::ssh::authentication::pageant::win::libc::ffi","net::ssh::authentication::pageant::win::libc::ffi::library","net::ssh::authentication::session","net::ssh::authenticationfailed","net::ssh::buffer","net::ssh::bufferedio","net::ssh::channelopenfailed","net::ssh::channelrequestfailed","net::ssh::config","net::ssh::connection","net::ssh::connection::channel","net::ssh::connection::constants","net::ssh::connection::eventloop","net::ssh::connection::keepalive","net::ssh::connection::session","net::ssh::connection::session::nilchannel","net::ssh::connection::session::stringwithexitstatus","net::ssh::connection::singlesessioneventloop","net::ssh::connection::term","net::ssh::connectiontimeout","net::ssh::disconnect","net::ssh::exception","net::ssh::forwardedbufferedio","net::ssh::hostkeyerror","net::ssh::hostkeymismatch","net::ssh::hostkeyunknown","net::ssh::hostkeys","net::ssh::keyfactory","net::ssh::keyfactory::keytype","net::ssh::keyfactory::opensshprivatekeytype","net::ssh::keyfactory::openssldsakeytype","net::ssh::keyfactory::openssleckeytype","net::ssh::keyfactory::opensslkeytypebase","net::ssh::keyfactory::opensslpkeytype","net::ssh::keyfactory::opensslrsakeytype","net::ssh::knownhosts","net::ssh::loggable","net::ssh::packet","net::ssh::prompt","net::ssh::prompt::prompter","net::ssh::proxy","net::ssh::proxy::command","net::ssh::proxy::connecterror","net::ssh::proxy::error","net::ssh::proxy::http","net::ssh::proxy::https","net::ssh::proxy::https::sslsocketcompatibility","net::ssh::proxy::jump","net::ssh::proxy::socks4","net::ssh::proxy::socks5","net::ssh::proxy::unauthorizederror","net::ssh::service","net::ssh::service::forward","net::ssh::test","net::ssh::test::channel","net::ssh::test::extensions","net::ssh::test::extensions::bufferedio","net::ssh::test::extensions::channel","net::ssh::test::extensions::io","net::ssh::test::extensions::io::classmethods","net::ssh::test::extensions::packetstream","net::ssh::test::kex","net::ssh::test::localpacket","net::ssh::test::packet","net::ssh::test::remotepacket","net::ssh::test::script","net::ssh::test::socket","net::ssh::timeout","net::ssh::transport","net::ssh::transport::algorithms","net::ssh::transport::ctr","net::ssh::transport::cipherfactory","net::ssh::transport::constants","net::ssh::transport::hmac","net::ssh::transport::hmac::abstract","net::ssh::transport::hmac::md5","net::ssh::transport::hmac::md5::openssl","net::ssh::transport::hmac::md5::openssl::digest","net::ssh::transport::hmac::md5_96","net::ssh::transport::hmac::none","net::ssh::transport::hmac::ripemd160","net::ssh::transport::hmac::ripemd160::openssl","net::ssh::transport::hmac::ripemd160::openssl::digest","net::ssh::transport::hmac::sha1","net::ssh::transport::hmac::sha1::openssl","net::ssh::transport::hmac::sha1::openssl::digest","net::ssh::transport::hmac::sha1_96","net::ssh::transport::hmac::sha2_256","net::ssh::transport::hmac::sha2_256::openssl","net::ssh::transport::hmac::sha2_256::openssl::digest","net::ssh::transport::hmac::sha2_256_96","net::ssh::transport::hmac::sha2_256_etm","net::ssh::transport::hmac::sha2_256_etm::openssl","net::ssh::transport::hmac::sha2_256_etm::openssl::digest","net::ssh::transport::hmac::sha2_512","net::ssh::transport::hmac::sha2_512::openssl","net::ssh::transport::hmac::sha2_512::openssl::digest","net::ssh::transport::hmac::sha2_512_96","net::ssh::transport::hmac::sha2_512_etm","net::ssh::transport::hmac::sha2_512_etm::openssl","net::ssh::transport::hmac::sha2_512_etm::openssl::digest","net::ssh::transport::identitycipher","net::ssh::transport::kex","net::ssh::transport::kex::abstract","net::ssh::transport::kex::abstract5656","net::ssh::transport::kex::curve25519sha256","net::ssh::transport::kex::curve25519sha256loader","net::ssh::transport::kex::diffiehellmangroup14sha1","net::ssh::transport::kex::diffiehellmangroup1sha1","net::ssh::transport::kex::diffiehellmangroupexchangesha1","net::ssh::transport::kex::diffiehellmangroupexchangesha256","net::ssh::transport::kex::ecdhsha2nistp256","net::ssh::transport::kex::ecdhsha2nistp384","net::ssh::transport::kex::ecdhsha2nistp521","net::ssh::transport::keyexpander","net::ssh::transport::opensslaesctr","net::ssh::transport::packetstream","net::ssh::transport::serverversion","net::ssh::transport::session","net::ssh::transport::session::compatibleverifier","net::ssh::transport::state","net::ssh::verifiers","net::ssh::verifiers::acceptnew","net::ssh::verifiers::acceptneworlocaltunnel","net::ssh::verifiers::always","net::ssh::verifiers::never","net::ssh::version","openssl","openssl::bn","openssl::pkey","openssl::pkey::dh","openssl::pkey::dsa","openssl::pkey::ec","openssl::pkey::ec::point","openssl::pkey::pkey","openssl::pkey::rsa","string","net::ssh::version#<=>()","net::ssh::buffer#==()","net::ssh::connection::channel#[]()","net::ssh::connection::session#[]()","net::ssh::hostkeyerror#[]()","net::ssh::packet#[]()","net::ssh::transport::algorithms#[]()","net::ssh::version::[]()","net::ssh::connection::channel#[]=()","net::ssh::connection::session#[]=()","net::ssh::transport::algorithms#accept_kexinit()","net::ssh::connection::channel#active?()","net::ssh::service::forward#active_local_sockets()","net::ssh::service::forward#active_locals()","net::ssh::service::forward#active_remote_destinations()","net::ssh::service::forward#active_remotes()","net::ssh::authentication::keymanager#add()","net::ssh::knownhosts::add()","net::ssh::knownhosts#add()","net::ssh::hostkeys#add_host_key()","net::ssh::authentication::agent#add_identity()","net::ssh::authentication::keymanager#add_key_data()","net::ssh::authentication::keymanager#agent()","net::ssh::service::forward#agent()","net::ssh::transport::algorithms#allow?()","net::ssh::transport::algorithms::allowed_packet?()","net::ssh::buffer#append()","net::ssh::prompt::prompter#ask()","net::ssh::test#assert_scripted()","net::ssh::assign_defaults()","net::ssh::authentication::methods::hostbased#authenticate()","net::ssh::authentication::methods::keyboardinteractive#authenticate()","net::ssh::authentication::methods::none#authenticate()","net::ssh::authentication::methods::password#authenticate()","net::ssh::authentication::methods::publickey#authenticate()","net::ssh::authentication::session#authenticate()","net::ssh::buffer#available()","net::ssh::bufferedio#available()","net::ssh::transport::packetstream#available_for_read?()","net::ssh::transport::identitycipher::block_size()","net::ssh::transport::opensslaesctr#block_size()","net::ssh::transport::opensslaesctr::block_size()","net::ssh::proxy::jump#build_proxy_command_equivalent()","net::ssh::connection::session#busy?()","net::ssh::service::forward#cancel_local()","net::ssh::service::forward#cancel_local_socket()","net::ssh::service::forward#cancel_remote()","net::ssh::transport::packetstream#cleanup()","net::ssh::transport::state#cleanup()","net::ssh::connection::session#cleanup_channel()","net::ssh::authentication::keymanager#clear!()","net::ssh::buffer#clear!()","net::ssh::transport::packetstream#client_name()","net::ssh::authentication::agent#close()","net::ssh::authentication::pageant::socket#close()","net::ssh::connection::channel#close()","net::ssh::connection::session#close()","net::ssh::transport::session#close()","net::ssh::proxy::command#close_on_error()","net::ssh::connection::session#closed?()","net::ssh::transport::session#closed?()","net::ssh::connection::channel#closing?()","net::ssh::transport::state#compress()","net::ssh::transport::state#compression?()","net::ssh::transport::state#compressor()","net::ssh::configuration_for()","net::ssh::transport::session#configure_client()","net::ssh::transport::session#configure_server()","net::ssh::authentication::agent::connect()","net::ssh::authentication::agent#connect!()","net::ssh::test#connection()","net::ssh::buffer#consume!()","net::ssh::transport::kex::abstract5656#curve_name()","net::ssh::transport::kex::ecdhsha2nistp256#curve_name()","net::ssh::transport::kex::ecdhsha2nistp384#curve_name()","net::ssh::transport::kex::ecdhsha2nistp521#curve_name()","net::ssh::loggable#debug()","net::ssh::transport::state#decompress()","net::ssh::transport::state#decompressor()","net::ssh::transport::ctr#decrypt()","net::ssh::transport::identitycipher::decrypt()","net::ssh::prompt::default()","net::ssh::config::default_auth_methods()","net::ssh::config::default_files()","net::ssh::authentication::ed25519loader::dependenciesrequiredfored25519()","net::ssh::transport::kex::curve25519sha256loader::dependenciesrequiredforx25519()","net::ssh::transport::hmac::abstract#digest()","net::ssh::transport::hmac::none#digest()","net::ssh::transport::hmac::abstract#digest_class()","net::ssh::transport::hmac::abstract::digest_class()","net::ssh::transport::kex::abstract#digester()","net::ssh::transport::kex::curve25519sha256#digester()","net::ssh::transport::kex::diffiehellmangroup1sha1#digester()","net::ssh::transport::kex::diffiehellmangroupexchangesha256#digester()","net::ssh::transport::kex::ecdhsha2nistp256#digester()","net::ssh::transport::kex::ecdhsha2nistp384#digester()","net::ssh::transport::kex::ecdhsha2nistp521#digester()","net::ssh::connection::channel#do_close()","net::ssh::connection::channel#do_eof()","net::ssh::connection::channel#do_extended_data()","net::ssh::connection::channel#do_failure()","net::ssh::connection::channel#do_open_failed()","net::ssh::connection::channel#do_success()","net::ssh::hostkeys#each()","net::ssh::authentication::keymanager#each_identity()","net::ssh::buffer#empty?()","net::ssh::hostkeys#empty?()","net::ssh::connection::keepalive#enabled?()","net::ssh::transport::ctr#encrypt()","net::ssh::transport::identitycipher::encrypt()","net::ssh::authentication::ed25519::opensshprivatekeyloader::decrypterror#encrypted_key?()","net::ssh::keyfactory::keytype::encrypted_key?()","net::ssh::keyfactory::opensshprivatekeytype::encrypted_key?()","net::ssh::keyfactory::opensslkeytypebase::encrypted_key?()","net::ssh::bufferedio#enqueue()","net::ssh::transport::session#enqueue_message()","net::ssh::transport::packetstream#enqueue_packet()","net::ssh::connection::channel#env()","net::ssh::connection::channel#eof!()","net::ssh::buffer#eof?()","net::ssh::connection::channel#eof?()","net::ssh::loggable#error()","net::ssh::keyfactory::keytype::error_classes()","net::ssh::keyfactory::opensshprivatekeytype::error_classes()","net::ssh::keyfactory::openssldsakeytype::error_classes()","net::ssh::keyfactory::openssleckeytype::error_classes()","net::ssh::keyfactory::opensslpkeytype::error_classes()","net::ssh::keyfactory::opensslrsakeytype::error_classes()","net::ssh::proxy::http#establish_connection()","net::ssh::proxy::https#establish_connection()","net::ssh::transport::hmac::abstract#etm()","net::ssh::transport::hmac::abstract::etm()","net::ssh::connection::session#ev_do_calculate_rw_wait()","net::ssh::connection::session#ev_do_handle_events()","net::ssh::connection::session#ev_do_postprocess()","net::ssh::connection::eventloop#ev_preprocess()","net::ssh::connection::session#ev_preprocess()","net::ssh::connection::singlesessioneventloop#ev_preprocess()","net::ssh::connection::eventloop#ev_select_and_postprocess()","net::ssh::connection::singlesessioneventloop#ev_select_and_postprocess()","net::ssh::test::kex#exchange_keys()","net::ssh::transport::kex::abstract#exchange_keys()","net::ssh::connection::channel#exec()","net::ssh::connection::session#exec()","net::ssh::connection::session#exec!()","net::ssh::transport::keyexpander::expand_key()","net::ssh::config::expandable_default_files()","net::ssh::authentication::session#expect_message()","net::ssh::transport::ctr::extended()","net::ssh::transport::packetstream::extended()","net::ssh::test::extensions::io::extension_enabled?()","net::ssh::loggable#fatal()","net::ssh::bufferedio#fill()","net::ssh::forwardedbufferedio#fill()","net::ssh::transport::ctr#final()","net::ssh::transport::identitycipher::final()","net::ssh::transport::state#final_cipher()","net::ssh::authentication::certificate#fingerprint()","net::ssh::hostkeyerror#fingerprint()","net::ssh::authentication::keymanager#finish()","net::ssh::config::for()","net::ssh::connection::session#forward()","net::ssh::buffer::from()","net::ssh::keyfactory::get()","net::ssh::transport::cipherfactory::get()","net::ssh::transport::hmac::get()","net::ssh::transport::cipherfactory::get_lengths()","net::ssh::authentication::pageant::win::get_ptr()","string#getbyte()","net::ssh::test::socket#getpeername()","net::ssh::test::script#gets()","net::ssh::test::script#gets_channel_close()","net::ssh::test::script#gets_channel_data()","net::ssh::test::script#gets_channel_eof()","net::ssh::test::script#gets_channel_extended_data()","net::ssh::test::script#gets_channel_request()","net::ssh::test::channel#gets_close()","net::ssh::test::channel#gets_data()","net::ssh::test::channel#gets_eof()","net::ssh::test::channel#gets_exit_status()","net::ssh::test::channel#gets_extended_data()","net::ssh::transport::session#hint()","net::ssh::connection::session#host()","net::ssh::hostkeyerror#host()","net::ssh::transport::session#host_as_string()","net::ssh::transport::algorithms#host_key_format()","net::ssh::transport::session#host_keys()","net::ssh::knownhosts::hostfiles()","net::ssh::authentication::agent#identities()","net::ssh::test::extensions::packetstream#idle!()","net::ssh::transport::packetstream#if_needs_rekey?()","net::ssh::transport::state#increment()","net::ssh::transport::ctr#increment_counter!()","net::ssh::loggable#info()","net::ssh::transport::packetstream#initialize_ssh()","net::ssh::transport::algorithms#initialized?()","net::ssh::test::channel#inject_remote_delay!()","net::ssh::test::packet#instantiate!()","net::ssh::authentication::methods::keyboardinteractive#interactive?()","net::ssh::connection::keepalive#interval()","net::ssh::hostkeyerror#ip()","net::ssh::transport::ctr#iv()","net::ssh::transport::ctr#iv=()","net::ssh::transport::identitycipher::iv=()","net::ssh::transport::opensslaesctr#iv=()","net::ssh::transport::ctr#iv_len()","net::ssh::transport::identitycipher::iv_len()","net::ssh::connection::keepalive#keepalive_maxcount()","net::ssh::hostkeyerror#key()","net::ssh::transport::hmac::abstract#key=()","net::ssh::transport::hmac::key_length()","net::ssh::transport::hmac::abstract#key_length()","net::ssh::transport::hmac::abstract::key_length()","net::ssh::knownhosts#keys_for()","net::ssh::knownhosts#known_host_hash?()","net::ssh::buffer#length()","net::ssh::connection::session#listen_to()","net::ssh::config::load()","net::ssh::keyfactory::load_data_private_key()","net::ssh::keyfactory::load_data_public_key()","net::ssh::keyfactory::load_private_key()","net::ssh::keyfactory::load_public_key()","net::ssh::service::forward#local()","net::ssh::test::localpacket#local?()","net::ssh::test::packet#local?()","net::ssh::connection::channel#local_closed?()","net::ssh::test::channel#local_id()","net::ssh::service::forward#local_socket()","net::ssh::connection::session#loop()","net::ssh::connection::session#loop_forever()","net::ssh::loggable#lwarn()","net::ssh::transport::hmac::abstract::mac_length()","net::ssh::transport::hmac::abstract#mac_length()","net::ssh::authentication::pageant::win::malloc_ptr()","net::ssh::knownhosts#match()","net::ssh::connection::session#max_select_wait_time()","net::ssh::connection::session::nilchannel#method_missing()","net::ssh::transport::identitycipher::name()","net::ssh::transport::state#needs_rekey?()","net::ssh::authentication::agent#negotiate!()","net::ssh::authentication::agent::new()","net::ssh::authentication::ed25519::opensshprivatekeyloader::decrypterror::new()","net::ssh::authentication::ed25519::privkey::new()","net::ssh::authentication::ed25519::pubkey::new()","net::ssh::authentication::ed25519::signingkeyfromfile::new()","net::ssh::authentication::keymanager::new()","net::ssh::authentication::methods::abstract::new()","net::ssh::authentication::pageant::socket::new()","net::ssh::authentication::session::new()","net::ssh::buffer::new()","net::ssh::channelopenfailed::new()","net::ssh::connection::channel::new()","net::ssh::connection::eventloop::new()","net::ssh::connection::keepalive::new()","net::ssh::connection::session::new()","net::ssh::connection::session::nilchannel::new()","net::ssh::connection::session::stringwithexitstatus::new()","net::ssh::hostkeys::new()","net::ssh::knownhosts::new()","net::ssh::packet::new()","net::ssh::prompt::new()","net::ssh::prompt::prompter::new()","net::ssh::proxy::command::new()","net::ssh::proxy::http::new()","net::ssh::proxy::https::new()","net::ssh::proxy::jump::new()","net::ssh::proxy::socks4::new()","net::ssh::proxy::socks5::new()","net::ssh::service::forward::new()","net::ssh::test::channel::new()","net::ssh::test::kex::new()","net::ssh::test::localpacket::new()","net::ssh::test::packet::new()","net::ssh::test::script::new()","net::ssh::test::socket::new()","net::ssh::transport::algorithms::new()","net::ssh::transport::hmac::abstract::new()","net::ssh::transport::kex::abstract::new()","net::ssh::transport::opensslaesctr::new()","net::ssh::transport::serverversion::new()","net::ssh::transport::session::new()","net::ssh::transport::session::compatibleverifier::new()","net::ssh::transport::state::new()","net::ssh::version::new()","net::ssh::test::script#next()","net::ssh::authentication::session#next_message()","net::ssh::transport::session#next_message()","net::ssh::transport::packetstream#next_packet()","net::ssh::authentication::keymanager#no_keys?()","net::ssh::connection::channel#on_close()","net::ssh::connection::channel#on_data()","net::ssh::connection::channel#on_eof()","net::ssh::connection::channel#on_extended_data()","net::ssh::connection::session#on_global_request()","net::ssh::connection::session#on_open_channel()","net::ssh::connection::channel#on_open_failed()","net::ssh::connection::channel#on_process()","net::ssh::connection::channel#on_request()","net::ssh::authentication::pageant::socket::open()","net::ssh::proxy::command#open()","net::ssh::proxy::http#open()","net::ssh::proxy::jump#open()","net::ssh::proxy::socks4#open()","net::ssh::proxy::socks5#open()","net::ssh::test::socket#open()","net::ssh::connection::session#open_channel()","net::ssh::keyfactory::openssldsakeytype::open_ssl_class()","net::ssh::keyfactory::openssleckeytype::open_ssl_class()","net::ssh::keyfactory::opensslkeytypebase::open_ssl_class()","net::ssh::keyfactory::opensslpkeytype::open_ssl_class()","net::ssh::keyfactory::opensslrsakeytype::open_ssl_class()","net::ssh::test::script#opens_channel()","net::ssh::connection::keepalive#options()","net::ssh::transport::ctr#padding=()","net::ssh::proxy::http#parse_response()","net::ssh::transport::session#peer()","net::ssh::transport::packetstream#peer_ip()","net::ssh::transport::algorithms#pending?()","net::ssh::bufferedio#pending_write?()","net::ssh::transport::session#poll_message()","net::ssh::transport::packetstream#poll_next_packet()","net::ssh::hostkeyerror#port()","net::ssh::connection::session#postprocess()","net::ssh::connection::session#preprocess()","net::ssh::connection::channel#process()","net::ssh::connection::eventloop#process()","net::ssh::connection::session#process()","net::ssh::test::localpacket#process()","net::ssh::test::remotepacket#process()","net::ssh::test::script#process()","net::ssh::connection::eventloop#process_only()","net::ssh::authentication::ed25519::privkey#public_key()","net::ssh::transport::session#push()","net::ssh::authentication::ed25519loader::raiseunlessloaded()","net::ssh::transport::kex::curve25519sha256loader::raiseunlessloaded()","net::ssh::authentication::ed25519::opensshprivatekeyloader::read()","net::ssh::authentication::ed25519::privkey::read()","net::ssh::authentication::pageant::socket#read()","net::ssh::buffer#read()","net::ssh::keyfactory::keytype::read()","net::ssh::keyfactory::opensshprivatekeytype::read()","net::ssh::keyfactory::opensslkeytypebase::read()","net::ssh::keyfactory::opensslpkeytype::read()","net::ssh::buffer#read!()","net::ssh::buffer#read_all()","net::ssh::bufferedio#read_available()","net::ssh::buffer#read_bignum()","net::ssh::buffer#read_bool()","net::ssh::buffer#read_buffer()","net::ssh::buffer#read_byte()","net::ssh::authentication::certificate::read_certblob()","net::ssh::buffer#read_int64()","net::ssh::buffer#read_key()","net::ssh::authentication::ed25519::pubkey::read_keyblob()","net::ssh::buffer#read_keyblob()","openssl::pkey::ec::read_keyblob()","net::ssh::buffer#read_long()","net::ssh::buffer#read_private_keyblob()","net::ssh::buffer#read_string()","net::ssh::buffer#read_to()","net::ssh::test::socket#readpartial()","net::ssh::test::socket#recv()","net::ssh::connection::eventloop#register()","net::ssh::packet::register()","net::ssh::test::packet::register_channel_request()","net::ssh::test::packet::registered_channel_requests()","net::ssh::transport::algorithms#rekey!()","net::ssh::transport::session#rekey!()","net::ssh::transport::session#rekey_as_needed()","net::ssh::buffer#remainder_as_buffer()","net::ssh::hostkeyerror#remember_host!()","net::ssh::service::forward#remote()","net::ssh::test::packet#remote?()","net::ssh::test::remotepacket#remote?()","net::ssh::connection::channel#remote_closed!()","net::ssh::connection::channel#remote_closed?()","net::ssh::test::channel#remote_id()","net::ssh::service::forward#remote_to()","net::ssh::authentication::agent#remove_all_identities()","net::ssh::authentication::agent#remove_identity()","net::ssh::connection::channel#request_pty()","net::ssh::transport::ctr#reset()","net::ssh::transport::identitycipher::reset()","net::ssh::transport::opensslaesctr#reset()","net::ssh::buffer#reset!()","net::ssh::transport::state#reset!()","net::ssh::knownhosts::search_for()","net::ssh::knownhosts::search_in()","net::ssh::test::extensions::bufferedio#select_for_read?()","net::ssh::test::extensions::io::classmethods#select_for_test()","net::ssh::authentication::pageant::socket#send()","net::ssh::proxy::https::sslsocketcompatibility#send()","net::ssh::connection::keepalive#send_as_needed()","net::ssh::connection::channel#send_channel_request()","net::ssh::connection::channel#send_data()","net::ssh::test::extensions::channel#send_data_for_test()","net::ssh::connection::session#send_global_request()","net::ssh::authentication::methods::abstract#send_message()","net::ssh::connection::session#send_message()","net::ssh::transport::session#send_message()","net::ssh::transport::packetstream#send_packet()","net::ssh::bufferedio#send_pending()","net::ssh::forwardedbufferedio#send_pending()","net::ssh::authentication::pageant::socket#send_query()","net::ssh::test::script#sends()","net::ssh::test::script#sends_channel_close()","net::ssh::test::script#sends_channel_data()","net::ssh::test::script#sends_channel_eof()","net::ssh::test::script#sends_channel_request()","net::ssh::test::script#sends_channel_request_pty()","net::ssh::test::channel#sends_close()","net::ssh::test::channel#sends_data()","net::ssh::test::channel#sends_eof()","net::ssh::test::channel#sends_exec()","net::ssh::test::channel#sends_request_pty()","net::ssh::test::channel#sends_subsystem()","net::ssh::transport::session#service_request()","net::ssh::authentication::methods::abstract#session_id()","net::ssh::transport::state#set()","net::ssh::authentication::pageant::win::set_ptr_data()","string#setbyte()","net::ssh::connection::keepalive#should_send?()","net::ssh::connection::session#shutdown!()","net::ssh::transport::session#shutdown!()","net::ssh::authentication::agent#sign()","net::ssh::authentication::certificate#sign()","net::ssh::authentication::keymanager#sign()","net::ssh::authentication::certificate#sign!()","net::ssh::authentication::certificate#signature_valid?()","net::ssh::test#socket()","net::ssh::authentication::certificate#ssh_do_sign()","net::ssh::authentication::ed25519::privkey#ssh_do_sign()","openssl::pkey::dsa#ssh_do_sign()","openssl::pkey::ec#ssh_do_sign()","openssl::pkey::rsa#ssh_do_sign()","net::ssh::authentication::certificate#ssh_do_verify()","net::ssh::authentication::ed25519::pubkey#ssh_do_verify()","openssl::pkey::dsa#ssh_do_verify()","openssl::pkey::ec#ssh_do_verify()","openssl::pkey::rsa#ssh_do_verify()","net::ssh::authentication::certificate#ssh_signature_type()","net::ssh::authentication::ed25519::privkey#ssh_signature_type()","net::ssh::authentication::ed25519::pubkey#ssh_signature_type()","openssl::pkey::dsa#ssh_signature_type()","openssl::pkey::ec#ssh_signature_type()","openssl::pkey::rsa#ssh_signature_type()","net::ssh::authentication::certificate#ssh_type()","net::ssh::authentication::ed25519::privkey#ssh_type()","net::ssh::authentication::ed25519::pubkey#ssh_type()","openssl::pkey::dsa#ssh_type()","openssl::pkey::ec#ssh_type()","openssl::pkey::ec::point#ssh_type()","openssl::pkey::rsa#ssh_type()","net::ssh::start()","net::ssh::prompt#start()","net::ssh::transport::algorithms#start()","net::ssh::connection::session#stop_listening_to()","net::ssh::test#story()","net::ssh::connection::channel#subsystem()","net::ssh::prompt::prompter#success()","net::ssh::transport::cipherfactory::supported?()","net::ssh::test::extensions::packetstream#test_available_for_read?()","net::ssh::test::extensions::packetstream#test_enqueue_packet()","net::ssh::test::extensions::packetstream#test_poll_next_packet()","net::ssh::authentication::certificate#to_blob()","net::ssh::authentication::ed25519::privkey#to_blob()","net::ssh::authentication::ed25519::pubkey#to_blob()","openssl::pkey::dsa#to_blob()","openssl::pkey::ec#to_blob()","openssl::pkey::ec::point#to_blob()","openssl::pkey::rsa#to_blob()","net::ssh::version#to_i()","net::ssh::authentication::certificate#to_pem()","net::ssh::authentication::ed25519::pubkey#to_pem()","net::ssh::buffer#to_s()","net::ssh::test::remotepacket#to_s()","net::ssh::version#to_s()","openssl::bn#to_ssh()","net::ssh::config::translate()","net::ssh::test#transport()","net::ssh::test::packet#types()","net::ssh::transport::ctr#update()","net::ssh::transport::identitycipher::update()","net::ssh::transport::state#update_cipher()","net::ssh::authentication::keymanager#use_agent=()","net::ssh::authentication::keymanager#use_agent?()","net::ssh::authentication::methods::abstract#userauth_request()","openssl::pkey::dh#valid?()","net::ssh::transport::session::compatibleverifier#verify()","net::ssh::verifiers::acceptnew#verify()","net::ssh::verifiers::acceptneworlocaltunnel#verify()","net::ssh::verifiers::always#verify()","net::ssh::verifiers::never#verify()","net::ssh::transport::session::compatibleverifier#verify_signature()","net::ssh::verifiers::acceptnew#verify_signature()","net::ssh::verifiers::always#verify_signature()","net::ssh::verifiers::never#verify_signature()","net::ssh::connection::channel#wait()","net::ssh::transport::session#wait()","net::ssh::bufferedio#wait_for_pending_sends()","net::ssh::test::extensions::io::with_test_extension()","net::ssh::buffer#write()","net::ssh::test::socket#write()","net::ssh::buffer#write_bignum()","net::ssh::buffer#write_bool()","net::ssh::buffer#write_byte()","net::ssh::buffer#write_int64()","net::ssh::buffer#write_key()","net::ssh::buffer#write_long()","net::ssh::buffer#write_moved()","net::ssh::buffer#write_mstring()","net::ssh::buffer#write_string()","net::ssh::transport::ctr#xor!()","","","",""],"info":[["DL","","DL.html","","<p>For now map DL to Fiddler versus updating all the code below\n"],["DL::Fiddle","","DL/Fiddle.html","",""],["Net","","Net.html","",""],["Net::SSH","","Net/SSH.html","","<p>Net::SSH is a library for interacting, programmatically, with remote\nprocesses via the SSH2 protocol. …\n"],["Net::SSH::Authentication","","Net/SSH/Authentication.html","",""],["Net::SSH::Authentication::Agent","","Net/SSH/Authentication/Agent.html","","<p>This class implements a simple client for the ssh-agent protocol. It does\nnot implement any specific …\n"],["Net::SSH::Authentication::Agent::Comment","","Net/SSH/Authentication/Agent/Comment.html","","<p>A simple module for extending keys, to allow comments to be specified for\nthem.\n"],["Net::SSH::Authentication::AgentError","","Net/SSH/Authentication/AgentError.html","","<p>Class for representing agent-specific errors.\n"],["Net::SSH::Authentication::AgentNotAvailable","","Net/SSH/Authentication/AgentNotAvailable.html","","<p>An exception for indicating that the SSH agent is not available.\n"],["Net::SSH::Authentication::Certificate","","Net/SSH/Authentication/Certificate.html","","<p>Class for representing an SSH certificate.\n<p>cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/usr.bin/ssh/PROTOCOL.certkeys?rev=1.10&content-type=text/plain\n…\n"],["Net::SSH::Authentication::Constants","","Net/SSH/Authentication/Constants.html","","<p>Describes the constants used by the Net::SSH::Authentication components of\nthe Net::SSH library. Individual …\n"],["Net::SSH::Authentication::DisallowedMethod","","Net/SSH/Authentication/DisallowedMethod.html","","<p>Raised if the current authentication method is not allowed\n"],["Net::SSH::Authentication::ED25519","","Net/SSH/Authentication/ED25519.html","",""],["Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader","","Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader.html","",""],["Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader::DecryptError","","Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader/DecryptError.html","",""],["Net::SSH::Authentication::ED25519::PrivKey","","Net/SSH/Authentication/ED25519/PrivKey.html","",""],["Net::SSH::Authentication::ED25519::PubKey","","Net/SSH/Authentication/ED25519/PubKey.html","",""],["Net::SSH::Authentication::ED25519::SigningKeyFromFile","","Net/SSH/Authentication/ED25519/SigningKeyFromFile.html","",""],["Net::SSH::Authentication::ED25519Loader","","Net/SSH/Authentication/ED25519Loader.html","","<p>Loads ED25519 support which requires optinal dependecies like rbnacl,\nbcrypt_pbkdf\n"],["Net::SSH::Authentication::KeyManager","","Net/SSH/Authentication/KeyManager.html","","<p>This class encapsulates all operations done by clients on a user&#39;s\nprivate keys. In practice, the …\n"],["Net::SSH::Authentication::KeyManagerError","","Net/SSH/Authentication/KeyManagerError.html","","<p>A trivial exception class used to report errors in the key manager.\n"],["Net::SSH::Authentication::Methods","","Net/SSH/Authentication/Methods.html","",""],["Net::SSH::Authentication::Methods::Abstract","","Net/SSH/Authentication/Methods/Abstract.html","","<p>The base class of all user authentication methods. It provides a few bits\nof common functionality.\n"],["Net::SSH::Authentication::Methods::Hostbased","","Net/SSH/Authentication/Methods/Hostbased.html","","<p>Implements the host-based SSH authentication method.\n"],["Net::SSH::Authentication::Methods::KeyboardInteractive","","Net/SSH/Authentication/Methods/KeyboardInteractive.html","","<p>Implements the “keyboard-interactive” SSH authentication method.\n"],["Net::SSH::Authentication::Methods::None","","Net/SSH/Authentication/Methods/None.html","","<p>Implements the “none” SSH authentication method.\n"],["Net::SSH::Authentication::Methods::Password","","Net/SSH/Authentication/Methods/Password.html","","<p>Implements the “password” SSH authentication method.\n"],["Net::SSH::Authentication::Methods::Publickey","","Net/SSH/Authentication/Methods/Publickey.html","","<p>Implements the “publickey” SSH authentication method.\n"],["Net::SSH::Authentication::Pageant","","Net/SSH/Authentication/Pageant.html","","<p>This module encapsulates the implementation of a socket factory that uses\nthe PuTTY “pageant” …\n"],["Net::SSH::Authentication::Pageant::Socket","","Net/SSH/Authentication/Pageant/Socket.html","","<p>This is the pseudo-socket implementation that mimics the interface of a\nsocket, translating each request …\n"],["Net::SSH::Authentication::Pageant::Win","","Net/SSH/Authentication/Pageant/Win.html","","<p>The definition of the Windows methods and data structures used in\ncommunicating with the pageant process. …\n"],["Net::SSH::Authentication::Pageant::Win::LibC","","Net/SSH/Authentication/Pageant/Win/LibC.html","",""],["Net::SSH::Authentication::Pageant::Win::LibC::FFI","","Net/SSH/Authentication/Pageant/Win/LibC/FFI.html","",""],["Net::SSH::Authentication::Pageant::Win::LibC::FFI::Library","","Net/SSH/Authentication/Pageant/Win/LibC/FFI/Library.html","",""],["Net::SSH::Authentication::Session","","Net/SSH/Authentication/Session.html","","<p>Represents an authentication session. It manages the authentication of a\nuser over an established connection …\n"],["Net::SSH::AuthenticationFailed","","Net/SSH/AuthenticationFailed.html","","<p>This exception is raised when authentication fails (whether it be public\nkey authentication, password …\n"],["Net::SSH::Buffer","","Net/SSH/Buffer.html","","<p>Net::SSH::Buffer is a flexible class for building and parsing binary data\npackets. It provides a stream-like …\n"],["Net::SSH::BufferedIo","","Net/SSH/BufferedIo.html","","<p>This module is used to extend sockets and other IO objects, to allow them\nto be buffered for both read …\n"],["Net::SSH::ChannelOpenFailed","","Net/SSH/ChannelOpenFailed.html","","<p>This is exception is primarily used internally, but if you have a channel\nopen handler (see Net::SSH::Connection::Session#on_open_channel …\n"],["Net::SSH::ChannelRequestFailed","","Net/SSH/ChannelRequestFailed.html","","<p>This exception is primarily used internally, but if you have a channel\nrequest handler (see Net::SSH::Connection::Channel#on_request …\n"],["Net::SSH::Config","","Net/SSH/Config.html","","<p>The Net::SSH::Config class is used to parse OpenSSH configuration files,\nand translates that syntax into …\n"],["Net::SSH::Connection","","Net/SSH/Connection.html","",""],["Net::SSH::Connection::Channel","","Net/SSH/Connection/Channel.html","","<p>The channel abstraction. Multiple “channels” can be multiplexed onto a\nsingle SSH channel, …\n"],["Net::SSH::Connection::Constants","","Net/SSH/Connection/Constants.html","","<p>Definitions of constants that are specific to the connection layer of the\nSSH protocol.\n"],["Net::SSH::Connection::EventLoop","","Net/SSH/Connection/EventLoop.html","","<p>EventLoop can be shared across multiple sessions\n<p>one issue is with blocks passed to loop, etc. they should …\n"],["Net::SSH::Connection::Keepalive","","Net/SSH/Connection/Keepalive.html","",""],["Net::SSH::Connection::Session","","Net/SSH/Connection/Session.html","","<p>A session class representing the connection service running on top of the\nSSH transport layer. It manages …\n"],["Net::SSH::Connection::Session::NilChannel","","Net/SSH/Connection/Session/NilChannel.html","",""],["Net::SSH::Connection::Session::StringWithExitstatus","","Net/SSH/Connection/Session/StringWithExitstatus.html","",""],["Net::SSH::Connection::SingleSessionEventLoop","","Net/SSH/Connection/SingleSessionEventLoop.html","","<p>optimized version for a single session\n"],["Net::SSH::Connection::Term","","Net/SSH/Connection/Term.html","","<p>These constants are used when requesting a pseudo-terminal (via\nNet::SSH::Connection::Channel#request_pty …\n"],["Net::SSH::ConnectionTimeout","","Net/SSH/ConnectionTimeout.html","","<p>This exception is raised when a connection attempt times out.\n"],["Net::SSH::Disconnect","","Net/SSH/Disconnect.html","","<p>This exception is raised when the remote host has disconnected\nunexpectedly.\n"],["Net::SSH::Exception","","Net/SSH/Exception.html","","<p>A general exception class, to act as the ancestor of all other Net::SSH\nexception classes.\n"],["Net::SSH::ForwardedBufferedIo","","Net/SSH/ForwardedBufferedIo.html","","<p>Fixes for two issues by Miklós Fazekas:\n\n<pre>* if client closes a forwarded connection, but the server is\n ...</pre>\n"],["Net::SSH::HostKeyError","","Net/SSH/HostKeyError.html","","<p>Base class for host key exceptions. When rescuing this exception, you can\ninspect the key fingerprint …\n"],["Net::SSH::HostKeyMismatch","","Net/SSH/HostKeyMismatch.html","","<p>Raised when the cached key for a particular host does not match the key\ngiven by the host, which can …\n"],["Net::SSH::HostKeyUnknown","","Net/SSH/HostKeyUnknown.html","","<p>Raised when there is no cached key for a particular host, which probably\nmeans that the host has simply …\n"],["Net::SSH::HostKeys","","Net/SSH/HostKeys.html","","<p>Represents the result of a search in known hosts see search_for\n"],["Net::SSH::KeyFactory","","Net/SSH/KeyFactory.html","","<p>A factory class for returning new Key classes. It is used for obtaining\nOpenSSL key instances via their …\n"],["Net::SSH::KeyFactory::KeyType","","Net/SSH/KeyFactory/KeyType.html","","<p>rubocop:disable Style/Documentation, Lint/DuplicateMethods\n"],["Net::SSH::KeyFactory::OpenSSHPrivateKeyType","","Net/SSH/KeyFactory/OpenSSHPrivateKeyType.html","",""],["Net::SSH::KeyFactory::OpenSSLDSAKeyType","","Net/SSH/KeyFactory/OpenSSLDSAKeyType.html","",""],["Net::SSH::KeyFactory::OpenSSLECKeyType","","Net/SSH/KeyFactory/OpenSSLECKeyType.html","",""],["Net::SSH::KeyFactory::OpenSSLKeyTypeBase","","Net/SSH/KeyFactory/OpenSSLKeyTypeBase.html","",""],["Net::SSH::KeyFactory::OpenSSLPKeyType","","Net/SSH/KeyFactory/OpenSSLPKeyType.html","",""],["Net::SSH::KeyFactory::OpenSSLRSAKeyType","","Net/SSH/KeyFactory/OpenSSLRSAKeyType.html","",""],["Net::SSH::KnownHosts","","Net/SSH/KnownHosts.html","","<p>Searches an OpenSSH-style known-host file for a given host, and returns all\nmatching keys. This is used …\n"],["Net::SSH::Loggable","","Net/SSH/Loggable.html","","<p>A simple module to make logging easier to deal with. It assumes that the\nlogger instance (if not nil) …\n"],["Net::SSH::Packet","","Net/SSH/Packet.html","","<p>A specialization of Buffer that knows the format of certain common packet\ntypes. It auto-parses those …\n"],["Net::SSH::Prompt","","Net/SSH/Prompt.html","","<p>Default prompt implementation, called for asking password from user. It\nwill never be instantiated directly, …\n"],["Net::SSH::Prompt::Prompter","","Net/SSH/Prompt/Prompter.html","","<p>default prompt object implementation. More sophisticated implemenetations\nmight implement caching.\n"],["Net::SSH::Proxy","","Net/SSH/Proxy.html","",""],["Net::SSH::Proxy::Command","","Net/SSH/Proxy/Command.html","","<p>An implementation of a command proxy. To use it, instantiate it, then pass\nthe instantiated object via …\n"],["Net::SSH::Proxy::ConnectError","","Net/SSH/Proxy/ConnectError.html","","<p>Used for reporting proxy connection errors.\n"],["Net::SSH::Proxy::Error","","Net/SSH/Proxy/Error.html","","<p>A general exception class for all Proxy errors.\n"],["Net::SSH::Proxy::HTTP","","Net/SSH/Proxy/HTTP.html","","<p>An implementation of an HTTP proxy. To use it, instantiate it, then pass\nthe instantiated object via …\n"],["Net::SSH::Proxy::HTTPS","","Net/SSH/Proxy/HTTPS.html","","<p>A specialization of the HTTP proxy which encrypts the whole connection\nusing OpenSSL. This has the advantage …\n"],["Net::SSH::Proxy::HTTPS::SSLSocketCompatibility","","Net/SSH/Proxy/HTTPS/SSLSocketCompatibility.html","","<p>Shim to make OpenSSL::SSL::SSLSocket behave like a regular TCPSocket for\nall intents and purposes of …\n"],["Net::SSH::Proxy::Jump","","Net/SSH/Proxy/Jump.html","","<p>An implementation of a jump proxy. To use it, instantiate it, then pass the\ninstantiated object via the …\n"],["Net::SSH::Proxy::SOCKS4","","Net/SSH/Proxy/SOCKS4.html","","<p>An implementation of a SOCKS4 proxy. To use it, instantiate it, then pass\nthe instantiated object via …\n"],["Net::SSH::Proxy::SOCKS5","","Net/SSH/Proxy/SOCKS5.html","","<p>An implementation of a SOCKS5 proxy. To use it, instantiate it, then pass\nthe instantiated object via …\n"],["Net::SSH::Proxy::UnauthorizedError","","Net/SSH/Proxy/UnauthorizedError.html","","<p>Used when the server doesn&#39;t recognize the user&#39;s credentials.\n"],["Net::SSH::Service","","Net/SSH/Service.html","",""],["Net::SSH::Service::Forward","","Net/SSH/Service/Forward.html","","<p>This class implements various port forwarding services for use by Net::SSH\nclients. The Forward class …\n"],["Net::SSH::Test","","Net/SSH/Test.html","","<p>This module may be used in unit tests, for when you want to test that your\nSSH state machines are really …\n"],["Net::SSH::Test::Channel","","Net/SSH/Test/Channel.html","","<p>A mock channel, used for scripting actions in tests. It wraps a\nNet::SSH::Test::Script instance, and …\n"],["Net::SSH::Test::Extensions","","Net/SSH/Test/Extensions.html","","<p>A collection of modules used to extend/override the default behavior of\nNet::SSH internals for ease of …\n"],["Net::SSH::Test::Extensions::BufferedIo","","Net/SSH/Test/Extensions/BufferedIo.html","","<p>An extension to Net::SSH::BufferedIo (assumes that the underlying IO is\nactually a StringIO). Facilitates …\n"],["Net::SSH::Test::Extensions::Channel","","Net/SSH/Test/Extensions/Channel.html","","<p>An extension to Net::SSH::Connection::Channel. Facilitates unit testing.\n"],["Net::SSH::Test::Extensions::IO","","Net/SSH/Test/Extensions/IO.html","","<p>An extension to the built-in ::IO class. Simply redefines IO.select so that\nit can be scripted in Net::SSH …\n"],["Net::SSH::Test::Extensions::IO::ClassMethods","","Net/SSH/Test/Extensions/IO/ClassMethods.html","",""],["Net::SSH::Test::Extensions::PacketStream","","Net/SSH/Test/Extensions/PacketStream.html","","<p>An extension to Net::SSH::Transport::PacketStream (assumes that the\nunderlying IO is actually a StringIO …\n"],["Net::SSH::Test::Kex","","Net/SSH/Test/Kex.html","","<p>An implementation of a key-exchange strategy specifically for unit tests.\n(This strategy would never …\n"],["Net::SSH::Test::LocalPacket","","Net/SSH/Test/LocalPacket.html","","<p>This is a specialization of Net::SSH::Test::Packet for representing mock\npackets that are sent from the …\n"],["Net::SSH::Test::Packet","","Net/SSH/Test/Packet.html","","<p>This is an abstract class, not to be instantiated directly, subclassed by\nNet::SSH::Test::LocalPacket …\n"],["Net::SSH::Test::RemotePacket","","Net/SSH/Test/RemotePacket.html","","<p>This is a specialization of Net::SSH::Test::Packet for representing mock\npackets that are received by …\n"],["Net::SSH::Test::Script","","Net/SSH/Test/Script.html","","<p>Represents a sequence of scripted events that identify the behavior that a\ntest expects. Methods named …\n"],["Net::SSH::Test::Socket","","Net/SSH/Test/Socket.html","","<p>A mock socket implementation for use in testing. It implements the minimum\nnecessary interface for interacting …\n"],["Net::SSH::Timeout","","Net/SSH/Timeout.html","","<p>This exception is raised when the remote host has disconnected/ timeouted\nunexpectedly.\n"],["Net::SSH::Transport","","Net/SSH/Transport.html","",""],["Net::SSH::Transport::Algorithms","","Net/SSH/Transport/Algorithms.html","","<p>Implements the higher-level logic behind an SSH key-exchange. It handles\nboth the initial exchange, as …\n"],["Net::SSH::Transport::CTR","","Net/SSH/Transport/CTR.html","","<p>Pure-Ruby implementation of Stateful Decryption Counter(SDCTR) Mode for\nBlock Ciphers. See RFC4344 for …\n"],["Net::SSH::Transport::CipherFactory","","Net/SSH/Transport/CipherFactory.html","","<p>Implements a factory of OpenSSL cipher algorithms.\n"],["Net::SSH::Transport::Constants","","Net/SSH/Transport/Constants.html","",""],["Net::SSH::Transport::HMAC","","Net/SSH/Transport/HMAC.html","","<p>Implements a simple factory interface for fetching hmac implementations, or\nfor finding the key lengths …\n"],["Net::SSH::Transport::HMAC::Abstract","","Net/SSH/Transport/HMAC/Abstract.html","","<p>The base class of all OpenSSL-based HMAC algorithm wrappers.\n"],["Net::SSH::Transport::HMAC::MD5","","Net/SSH/Transport/HMAC/MD5.html","","<p>The MD5 HMAC algorithm.\n"],["Net::SSH::Transport::HMAC::MD5::OpenSSL","","Net/SSH/Transport/HMAC/MD5/OpenSSL.html","",""],["Net::SSH::Transport::HMAC::MD5::OpenSSL::Digest","","Net/SSH/Transport/HMAC/MD5/OpenSSL/Digest.html","",""],["Net::SSH::Transport::HMAC::MD5_96","","Net/SSH/Transport/HMAC/MD5_96.html","","<p>The MD5-96 HMAC algorithm. This returns only the first 12 bytes of the\ndigest.\n"],["Net::SSH::Transport::HMAC::None","","Net/SSH/Transport/HMAC/None.html","","<p>The “none” algorithm. This has a key and mac length of 0.\n"],["Net::SSH::Transport::HMAC::RIPEMD160","","Net/SSH/Transport/HMAC/RIPEMD160.html","","<p>The RIPEMD-160 HMAC algorithm. This has a mac and key length of 20, and\nuses the RIPEMD-160 digest algorithm. …\n"],["Net::SSH::Transport::HMAC::RIPEMD160::OpenSSL","","Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL.html","",""],["Net::SSH::Transport::HMAC::RIPEMD160::OpenSSL::Digest","","Net/SSH/Transport/HMAC/RIPEMD160/OpenSSL/Digest.html","",""],["Net::SSH::Transport::HMAC::SHA1","","Net/SSH/Transport/HMAC/SHA1.html","","<p>The SHA1 HMAC algorithm. This has a mac and key length of 20, and uses the\nSHA1 digest algorithm.\n"],["Net::SSH::Transport::HMAC::SHA1::OpenSSL","","Net/SSH/Transport/HMAC/SHA1/OpenSSL.html","",""],["Net::SSH::Transport::HMAC::SHA1::OpenSSL::Digest","","Net/SSH/Transport/HMAC/SHA1/OpenSSL/Digest.html","",""],["Net::SSH::Transport::HMAC::SHA1_96","","Net/SSH/Transport/HMAC/SHA1_96.html","","<p>The SHA1-96 HMAC algorithm. This returns only the first 12 bytes of the\ndigest.\n"],["Net::SSH::Transport::HMAC::SHA2_256","","Net/SSH/Transport/HMAC/SHA2_256.html","","<p>The SHA-256 HMAC algorithm. This has a mac and key length of 32, and uses\nthe SHA-256 digest algorithm. …\n"],["Net::SSH::Transport::HMAC::SHA2_256::OpenSSL","","Net/SSH/Transport/HMAC/SHA2_256/OpenSSL.html","",""],["Net::SSH::Transport::HMAC::SHA2_256::OpenSSL::Digest","","Net/SSH/Transport/HMAC/SHA2_256/OpenSSL/Digest.html","",""],["Net::SSH::Transport::HMAC::SHA2_256_96","","Net/SSH/Transport/HMAC/SHA2_256_96.html","","<p>The SHA256-96 HMAC algorithm. This returns only the first 12 bytes of the\ndigest.\n"],["Net::SSH::Transport::HMAC::SHA2_256_Etm","","Net/SSH/Transport/HMAC/SHA2_256_Etm.html","","<p>The SHA-256 Encrypt-Then-Mac HMAC algorithm. This has a mac and key length\nof 32, and uses the SHA-256 …\n"],["Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL","","Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL.html","",""],["Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL::Digest","","Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL/Digest.html","",""],["Net::SSH::Transport::HMAC::SHA2_512","","Net/SSH/Transport/HMAC/SHA2_512.html","","<p>The SHA-512 HMAC algorithm. This has a mac and key length of 64, and uses\nthe SHA-512 digest algorithm. …\n"],["Net::SSH::Transport::HMAC::SHA2_512::OpenSSL","","Net/SSH/Transport/HMAC/SHA2_512/OpenSSL.html","",""],["Net::SSH::Transport::HMAC::SHA2_512::OpenSSL::Digest","","Net/SSH/Transport/HMAC/SHA2_512/OpenSSL/Digest.html","",""],["Net::SSH::Transport::HMAC::SHA2_512_96","","Net/SSH/Transport/HMAC/SHA2_512_96.html","","<p>The SHA2-512-96 HMAC algorithm. This returns only the first 12 bytes of the\ndigest.\n"],["Net::SSH::Transport::HMAC::SHA2_512_Etm","","Net/SSH/Transport/HMAC/SHA2_512_Etm.html","","<p>The SHA-512 Encrypt-Then-Mac HMAC algorithm. This has a mac and key length\nof 64, and uses the SHA-512 …\n"],["Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL","","Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL.html","",""],["Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL::Digest","","Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL/Digest.html","",""],["Net::SSH::Transport::IdentityCipher","","Net/SSH/Transport/IdentityCipher.html","","<p>A cipher that does nothing but pass the data through, unchanged. This keeps\nthings in the code nice and …\n"],["Net::SSH::Transport::Kex","","Net/SSH/Transport/Kex.html","",""],["Net::SSH::Transport::Kex::Abstract","","Net/SSH/Transport/Kex/Abstract.html","","<p>Abstract class that implement Diffie-Hellman Key Exchange See\ntools.ietf.org/html/rfc4253#page-21\n"],["Net::SSH::Transport::Kex::Abstract5656","","Net/SSH/Transport/Kex/Abstract5656.html","","<p>Implement key-exchange algorithm from Elliptic Curve Algorithm Integration\nin the Secure Shell Transport …\n"],["Net::SSH::Transport::Kex::Curve25519Sha256","","Net/SSH/Transport/Kex/Curve25519Sha256.html","","<p>A key-exchange service implementing the “curve25519-sha256@libssh.org”\nkey-exchange algorithm. …\n"],["Net::SSH::Transport::Kex::Curve25519Sha256Loader","","Net/SSH/Transport/Kex/Curve25519Sha256Loader.html","","<p>Loads Curve25519Sha256 support which requires optinal dependencies\n"],["Net::SSH::Transport::Kex::DiffieHellmanGroup14SHA1","","Net/SSH/Transport/Kex/DiffieHellmanGroup14SHA1.html","","<p>A key-exchange service implementing the “diffie-hellman-group14-sha1”\nkey-exchange algorithm. …\n"],["Net::SSH::Transport::Kex::DiffieHellmanGroup1SHA1","","Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html","","<p>A key-exchange service implementing the “diffie-hellman-group1-sha1”\nkey-exchange algorithm. …\n"],["Net::SSH::Transport::Kex::DiffieHellmanGroupExchangeSHA1","","Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA1.html","","<p>A key-exchange service implementing the\n“diffie-hellman-group-exchange-sha1” key-exchange algorithm. …\n"],["Net::SSH::Transport::Kex::DiffieHellmanGroupExchangeSHA256","","Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA256.html","","<p>A key-exchange service implementing the\n“diffie-hellman-group-exchange-sha256” key-exchange …\n"],["Net::SSH::Transport::Kex::EcdhSHA2NistP256","","Net/SSH/Transport/Kex/EcdhSHA2NistP256.html","","<p>A key-exchange service implementing the “ecdh-sha2-nistp256” key-exchange\nalgorithm. (defined …\n"],["Net::SSH::Transport::Kex::EcdhSHA2NistP384","","Net/SSH/Transport/Kex/EcdhSHA2NistP384.html","","<p>A key-exchange service implementing the “ecdh-sha2-nistp256” key-exchange\nalgorithm. (defined …\n"],["Net::SSH::Transport::Kex::EcdhSHA2NistP521","","Net/SSH/Transport/Kex/EcdhSHA2NistP521.html","","<p>A key-exchange service implementing the “ecdh-sha2-nistp521” key-exchange\nalgorithm. (defined …\n"],["Net::SSH::Transport::KeyExpander","","Net/SSH/Transport/KeyExpander.html","",""],["Net::SSH::Transport::OpenSSLAESCTR","","Net/SSH/Transport/OpenSSLAESCTR.html","",""],["Net::SSH::Transport::PacketStream","","Net/SSH/Transport/PacketStream.html","","<p>A module that builds additional functionality onto the Net::SSH::BufferedIo\nmodule. It adds SSH encryption, …\n"],["Net::SSH::Transport::ServerVersion","","Net/SSH/Transport/ServerVersion.html","","<p>Negotiates the SSH protocol version and trades information about server and\nclient. This is never used …\n"],["Net::SSH::Transport::Session","","Net/SSH/Transport/Session.html","","<p>The transport layer represents the lowest level of the SSH protocol, and\nimplements basic message exchanging …\n"],["Net::SSH::Transport::Session::CompatibleVerifier","","Net/SSH/Transport/Session/CompatibleVerifier.html","","<p>Compatibility verifier which allows users to keep using custom verifier\ncode without adding new :verify_signature …\n"],["Net::SSH::Transport::State","","Net/SSH/Transport/State.html","","<p>Encapsulates state information about one end of an SSH connection. Such\nstate includes the packet sequence …\n"],["Net::SSH::Verifiers","","Net/SSH/Verifiers.html","",""],["Net::SSH::Verifiers::AcceptNew","","Net/SSH/Verifiers/AcceptNew.html","","<p>Does a strict host verification, looking the server up in the known host\nfiles to see if a key has already …\n"],["Net::SSH::Verifiers::AcceptNewOrLocalTunnel","","Net/SSH/Verifiers/AcceptNewOrLocalTunnel.html","","<p>Basically the same as the AcceptNew verifier, but does not try to actually\nverify a connection if the …\n"],["Net::SSH::Verifiers::Always","","Net/SSH/Verifiers/Always.html","","<p>Does a strict host verification, looking the server up in the known host\nfiles to see if a key has already …\n"],["Net::SSH::Verifiers::Never","","Net/SSH/Verifiers/Never.html","","<p>This host key verifier simply allows every key it sees, without any\nverification. This is simple, but …\n"],["Net::SSH::Version","","Net/SSH/Version.html","","<p>A class for describing the current version of a library. The version\nconsists of three parts: the <code>major</code> …\n"],["OpenSSL","","OpenSSL.html","",""],["OpenSSL::BN","","OpenSSL/BN.html","","<p>This class is originally defined in the OpenSSL module. As needed, methods\nhave been added to it by the …\n"],["OpenSSL::PKey","","OpenSSL/PKey.html","",""],["OpenSSL::PKey::DH","","OpenSSL/PKey/DH.html","","<p>This class is originally defined in the OpenSSL module. As needed, methods\nhave been added to it by the …\n"],["OpenSSL::PKey::DSA","","OpenSSL/PKey/DSA.html","","<p>This class is originally defined in the OpenSSL module. As needed, methods\nhave been added to it by the …\n"],["OpenSSL::PKey::EC","","OpenSSL/PKey/EC.html","","<p>This class is originally defined in the OpenSSL module. As needed, methods\nhave been added to it by the …\n"],["OpenSSL::PKey::EC::Point","","OpenSSL/PKey/EC/Point.html","",""],["OpenSSL::PKey::PKey","","OpenSSL/PKey/PKey.html","",""],["OpenSSL::PKey::RSA","","OpenSSL/PKey/RSA.html","","<p>This class is originally defined in the OpenSSL module. As needed, methods\nhave been added to it by the …\n"],["String","","String.html","",""],["<=>","Net::SSH::Version","Net/SSH/Version.html#method-i-3C-3D-3E","(version)","<p>Compare this version to the given <code>version</code> object.\n"],["==","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-3D-3D","(buffer)","<p>Compares the contents of the two buffers, returning <code>true</code> only\nif they are identical in size and content. …\n"],["[]","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-5B-5D","(name)","<p>A shortcut for accessing properties of the channel (see #properties).\n"],["[]","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-5B-5D","(key)","<p>Retrieves a custom property from this instance. This can be used to store\nadditional state in applications …\n"],["[]","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-5B-5D","(key)","<p>An accessor for getting at the data that was used to look up the host (see\nalso #fingerprint, #host, …\n"],["[]","Net::SSH::Packet","Net/SSH/Packet.html#method-i-5B-5D","(name)","<p>Access one of the auto-parsed fields by name. Raises an error if no element\nby the given name exists. …\n"],["[]","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-5B-5D","(key)","<p>A convenience method for accessing the list of preferred types for a\nspecific algorithm (see #algorithms …\n"],["[]","Net::SSH::Version","Net/SSH/Version.html#method-c-5B-5D","(major, minor, tiny, pre = nil)","<p>A convenience method for instantiating a new Version instance with the\ngiven <code>major</code>, <code>minor</code>, and <code>tiny</code>\ncomponents. …\n"],["[]=","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-5B-5D-3D","(name, value)","<p>A shortcut for setting properties of the channel (see #properties).\n"],["[]=","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-5B-5D-3D","(key, value)","<p>Sets a custom property for this instance.\n"],["accept_kexinit","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-accept_kexinit","(packet)","<p>Called by the transport layer when a KEXINIT packet is received, indicating\nthat the server wants to …\n"],["active?","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-active-3F","()","<p>Returns true if the channel exists in the channel list of the session, and\nfalse otherwise. This can …\n"],["active_local_sockets","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-active_local_sockets","()","<p>Returns a list of all active locally forwarded sockets. The returned value\nis an array of Unix domain …\n"],["active_locals","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-active_locals","()","<p>Returns a list of all active locally forwarded ports. The returned value is\nan array of arrays, where …\n"],["active_remote_destinations","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-active_remote_destinations","()","<p>Returns all active remote forwarded ports and where they forward to. The\nreturned value is a hash from …\n"],["active_remotes","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-active_remotes","()","<p>Returns all active forwarded remote ports. The returned value is an array\nof two-element tuples, where …\n"],["add","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-add","(key_file)","<p>Add the given key_file to the list of key files that will be used.\n"],["add","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-c-add","(host, key, options={})","<p>Looks in all user known host files (see KnownHosts.hostfiles) and tries to\nadd an entry for the given …\n"],["add","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-i-add","(host, key)","<p>Tries to append an entry to the current source file for the given host and\nkey. If it is unable to (because …\n"],["add_host_key","Net::SSH::HostKeys","Net/SSH/HostKeys.html#method-i-add_host_key","(key)",""],["add_identity","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-add_identity","(priv_key, comment, lifetime: nil, confirm: false)","<p>Adds the private key with comment to the agent. If lifetime is given, the\nkey will automatically be removed …\n"],["add_key_data","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-add_key_data","(key_data_)","<p>Add the given key_file to the list of keys that will be used.\n"],["agent","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-agent","()","<p>Returns an Agent instance to use for communicating with an SSH agent\nprocess. Returns nil if use of an …\n"],["agent","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-agent","(channel)","<p>Enables SSH agent forwarding on the given channel. The forwarded agent will\nremain active even after …\n"],["allow?","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-allow-3F","(packet)","<p>Returns true if no exchange is pending, and otherwise returns true or false\ndepending on whether the …\n"],["allowed_packet?","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-c-allowed_packet-3F","(packet)","<p>Returns true if the given packet can be processed during a key-exchange.\n"],["append","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-append","(text)","<p>Appends the given text to the end of the buffer. Does not alter the read\nposition. Returns the buffer …\n"],["ask","Net::SSH::Prompt::Prompter","Net/SSH/Prompt/Prompter.html#method-i-ask","(prompt, echo=true)","<p>ask input from user, a prompter might ask for multiple inputs (like user\nand password) in a single session. …\n"],["assert_scripted","Net::SSH::Test","Net/SSH/Test.html#method-i-assert_scripted","()","<p>First asserts that a story has been described (see #story). Then yields,\nand then asserts that all items …\n"],["assign_defaults","Net::SSH","Net/SSH.html#method-c-assign_defaults","(options)",""],["authenticate","Net::SSH::Authentication::Methods::Hostbased","Net/SSH/Authentication/Methods/Hostbased.html#method-i-authenticate","(next_service, username, password=nil)","<p>Attempts to perform host-based authorization of the user by trying all\nknown keys.\n"],["authenticate","Net::SSH::Authentication::Methods::KeyboardInteractive","Net/SSH/Authentication/Methods/KeyboardInteractive.html#method-i-authenticate","(next_service, username, password=nil)","<p>Attempt to authenticate the given user for the given service.\n"],["authenticate","Net::SSH::Authentication::Methods::None","Net/SSH/Authentication/Methods/None.html#method-i-authenticate","(next_service, user=\"\", password=\"\")","<p>Attempt to authenticate as “none”\n"],["authenticate","Net::SSH::Authentication::Methods::Password","Net/SSH/Authentication/Methods/Password.html#method-i-authenticate","(next_service, username, password=nil)","<p>Attempt to authenticate the given user for the given service. If the\npassword parameter is nil, this …\n"],["authenticate","Net::SSH::Authentication::Methods::Publickey","Net/SSH/Authentication/Methods/Publickey.html#method-i-authenticate","(next_service, username, password=nil)","<p>Attempts to perform public-key authentication for the given username,\ntrying each identity known to the …\n"],["authenticate","Net::SSH::Authentication::Session","Net/SSH/Authentication/Session.html#method-i-authenticate","(next_service, username, password=nil)","<p>Attempts to authenticate the given user, in preparation for the next\nservice request. Returns true if …\n"],["available","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-available","()","<p>Returns the number of bytes available to be read (e.g., how many bytes\nremain between the current position …\n"],["available","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-available","()","<p>Returns the number of bytes available to be read from the input buffer.\n(See #read_available.)\n"],["available_for_read?","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-available_for_read-3F","()","<p>Returns true if the IO is available for reading, and false otherwise.\n"],["block_size","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-block_size","()","<p>A default block size of 8 is required by the SSH2 protocol.\n"],["block_size","Net::SSH::Transport::OpenSSLAESCTR","Net/SSH/Transport/OpenSSLAESCTR.html#method-i-block_size","()",""],["block_size","Net::SSH::Transport::OpenSSLAESCTR","Net/SSH/Transport/OpenSSLAESCTR.html#method-c-block_size","()",""],["build_proxy_command_equivalent","Net::SSH::Proxy::Jump","Net/SSH/Proxy/Jump.html#method-i-build_proxy_command_equivalent","(connection_options = nil)","<p>We cannot build the ProxyCommand template until we know if the :config\noption was specified during `Net::SSH.start`. …\n"],["busy?","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-busy-3F","(include_invisible=false)","<p>Returns <code>true</code> if there are any channels currently active on\nthis session. By default, this will not include …\n"],["cancel_local","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-cancel_local","(port, bind_address=\"127.0.0.1\")","<p>Terminates an active local forwarded port.\n\n<pre>ssh.forward.cancel_local(1234)\nssh.forward.cancel_local(1234, ...</pre>\n"],["cancel_local_socket","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-cancel_local_socket","(local_socket_path)","<p>Terminates an active local forwarded socket.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">ssh</span>.<span class=\"ruby-identifier\">forward</span>.<span class=\"ruby-identifier\">cancel_local_socket</span>(<span class=\"ruby-string\">&#39;/tmp/foo.sock&#39;</span>)\n</pre>\n"],["cancel_remote","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-cancel_remote","(port, host=\"127.0.0.1\")","<p>Requests that a remote forwarded port be cancelled. The remote forwarded\nport on the remote host, bound …\n"],["cleanup","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-cleanup","()","<p>Performs any pending cleanup necessary on the IO and its associated state\nobjects. (See State#cleanup …\n"],["cleanup","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-cleanup","()","<p>Closes any the compressor and/or decompressor objects that have been\ninstantiated.\n"],["cleanup_channel","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-cleanup_channel","(channel)",""],["clear!","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-clear-21","()","<p>Clear all knowledge of any loaded user keys. This also clears the list of\ndefault identity files that …\n"],["clear!","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-clear-21","()","<p>Resets the buffer, making it empty. Also, resets the read position to 0.\n"],["client_name","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-client_name","()","<p>The name of the client (local) end of the socket, as reported by the\nsocket.\n"],["close","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-close","()","<p>Closes this socket. This agent reference is no longer able to query the\nagent.\n"],["close","Net::SSH::Authentication::Pageant::Socket","Net/SSH/Authentication/Pageant/Socket.html#method-i-close","()",""],["close","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-close","()","<p>Requests that the channel be closed. It only marks the channel to be closed\nthe CHANNEL_CLOSE message …\n"],["close","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-close","()","<p>Closes the session gracefully, blocking until all channels have\nsuccessfully closed, and then closes …\n"],["close","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-close","()","<p>Cleans up (see PacketStream#cleanup) and closes the underlying socket.\n"],["close_on_error","Net::SSH::Proxy::Command","Net/SSH/Proxy/Command.html#method-i-close_on_error","(io)",""],["closed?","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-closed-3F","()","<p>Returns true if the underlying transport has been closed. Note that this\ncan be a little misleading, …\n"],["closed?","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-closed-3F","()","<p>Returns true if the underlying socket has been closed.\n"],["closing?","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-closing-3F","()","<p>True if close() has been called; NOTE: if the channel has data waiting to\nbe sent then the channel will …\n"],["compress","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-compress","(data)","<p>Compresses the data. If no compression is in effect, this will just return\nthe data unmodified, otherwise …\n"],["compression?","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-compression-3F","()","<p>Returns true if data compression/decompression is enabled. This will return\ntrue if :standard compression …\n"],["compressor","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-compressor","()","<p>The compressor object to use when compressing data. This takes into account\nthe desired compression level. …\n"],["configuration_for","Net::SSH","Net/SSH.html#method-c-configuration_for","(host, use_ssh_config)","<p>Returns a hash of the configuration options for the given host, as read\nfrom the SSH configuration file(s). …\n"],["configure_client","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-configure_client","(options={})","<p>Configure&#39;s the packet stream&#39;s client state with the given set of\noptions. This is typically …\n"],["configure_server","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-configure_server","(options={})","<p>Configure&#39;s the packet stream&#39;s server state with the given set of\noptions. This is typically …\n"],["connect","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-c-connect","(logger=nil, agent_socket_factory = nil, identity_agent = nil)","<p>Instantiates a new agent object, connects to a running SSH agent,\nnegotiates the agent protocol version, …\n"],["connect!","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-connect-21","(agent_socket_factory = nil, identity_agent = nil)","<p>Connect to the agent process using the socket factory and socket name given\nby the attribute writers. …\n"],["connection","Net::SSH::Test","Net/SSH/Test.html#method-i-connection","(options={})","<p>Returns the connection session (Net::SSH::Connection::Session) for use in\nthese tests. It is a fully …\n"],["consume!","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-consume-21","(n=position)","<p>Consumes n bytes from the buffer, where n is the current position unless\notherwise specified. This is …\n"],["curve_name","Net::SSH::Transport::Kex::Abstract5656","Net/SSH/Transport/Kex/Abstract5656.html#method-i-curve_name","()",""],["curve_name","Net::SSH::Transport::Kex::EcdhSHA2NistP256","Net/SSH/Transport/Kex/EcdhSHA2NistP256.html#method-i-curve_name","()",""],["curve_name","Net::SSH::Transport::Kex::EcdhSHA2NistP384","Net/SSH/Transport/Kex/EcdhSHA2NistP384.html#method-i-curve_name","()",""],["curve_name","Net::SSH::Transport::Kex::EcdhSHA2NistP521","Net/SSH/Transport/Kex/EcdhSHA2NistP521.html#method-i-curve_name","()",""],["debug","Net::SSH::Loggable","Net/SSH/Loggable.html#method-i-debug","()","<p>Displays the result of yielding if the log level is Logger::DEBUG or\ngreater.\n"],["decompress","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-decompress","(data)","<p>Deompresses the data. If no compression is in effect, this will just return\nthe data unmodified, otherwise …\n"],["decompressor","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-decompressor","()","<p>The decompressor object to use when decompressing data.\n"],["decrypt","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-decrypt","()",""],["decrypt","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-decrypt","()","<p>Does nothing. Returns self.\n"],["default","Net::SSH::Prompt","Net/SSH/Prompt.html#method-c-default","(options = {})","<p>factory\n"],["default_auth_methods","Net::SSH::Config","Net/SSH/Config.html#method-c-default_auth_methods","()",""],["default_files","Net::SSH::Config","Net/SSH/Config.html#method-c-default_files","()","<p>Returns an array of locations of OpenSSH configuration files to parse by\ndefault.\n"],["dependenciesRequiredForED25519","Net::SSH::Authentication::ED25519Loader","Net/SSH/Authentication/ED25519Loader.html#method-c-dependenciesRequiredForED25519","()",""],["dependenciesRequiredForX25519","Net::SSH::Transport::Kex::Curve25519Sha256Loader","Net/SSH/Transport/Kex/Curve25519Sha256Loader.html#method-c-dependenciesRequiredForX25519","()",""],["digest","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-i-digest","(data)","<p>Compute the HMAC digest for the given data string.\n"],["digest","Net::SSH::Transport::HMAC::None","Net/SSH/Transport/HMAC/None.html#method-i-digest","(data)",""],["digest_class","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-i-digest_class","()",""],["digest_class","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-c-digest_class","(*v)",""],["digester","Net::SSH::Transport::Kex::Abstract","Net/SSH/Transport/Kex/Abstract.html#method-i-digester","()",""],["digester","Net::SSH::Transport::Kex::Curve25519Sha256","Net/SSH/Transport/Kex/Curve25519Sha256.html#method-i-digester","()",""],["digester","Net::SSH::Transport::Kex::DiffieHellmanGroup1SHA1","Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html#method-i-digester","()",""],["digester","Net::SSH::Transport::Kex::DiffieHellmanGroupExchangeSHA256","Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA256.html#method-i-digester","()",""],["digester","Net::SSH::Transport::Kex::EcdhSHA2NistP256","Net/SSH/Transport/Kex/EcdhSHA2NistP256.html#method-i-digester","()",""],["digester","Net::SSH::Transport::Kex::EcdhSHA2NistP384","Net/SSH/Transport/Kex/EcdhSHA2NistP384.html#method-i-digester","()",""],["digester","Net::SSH::Transport::Kex::EcdhSHA2NistP521","Net/SSH/Transport/Kex/EcdhSHA2NistP521.html#method-i-digester","()",""],["do_close","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-do_close","()","<p>Invokes the #on_close callback when the server closes a channel. The\nchannel is the only argument.\n"],["do_eof","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-do_eof","()","<p>Invokes the #on_eof callback when the server indicates that no further data\nis forthcoming. The callback …\n"],["do_extended_data","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-do_extended_data","(type, data)","<p>Invokes the #on_extended_data callback when the server sends extended data\nto the channel. This will …\n"],["do_failure","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-do_failure","()","<p>Invokes the next pending request callback with <code>false</code> as the\nsecond argument.\n"],["do_open_failed","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-do_open_failed","(reason_code, description)","<p>Invoked when the server failed to open the channel. If an #on_open_failed\ncallback was specified, it …\n"],["do_success","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-do_success","()","<p>Invokes the next pending request callback with <code>true</code> as the\nsecond argument.\n"],["each","Net::SSH::HostKeys","Net/SSH/HostKeys.html#method-i-each","(&block)",""],["each_identity","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-each_identity","()","<p>Iterates over all available identities (public keys) known to this manager.\nAs it finds one, it will …\n"],["empty?","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-empty-3F","()","<p>Returns <code>true</code> if the buffer contains no data (e.g., it is of\nzero length).\n"],["empty?","Net::SSH::HostKeys","Net/SSH/HostKeys.html#method-i-empty-3F","()",""],["enabled?","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-i-enabled-3F","()",""],["encrypt","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-encrypt","()",""],["encrypt","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-encrypt","()","<p>Does nothing. Returns self.\n"],["encrypted_key?","Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader::DecryptError","Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader/DecryptError.html#method-i-encrypted_key-3F","()",""],["encrypted_key?","Net::SSH::KeyFactory::KeyType","Net/SSH/KeyFactory/KeyType.html#method-c-encrypted_key-3F","(data, error)",""],["encrypted_key?","Net::SSH::KeyFactory::OpenSSHPrivateKeyType","Net/SSH/KeyFactory/OpenSSHPrivateKeyType.html#method-c-encrypted_key-3F","(key_data, decode_error)",""],["encrypted_key?","Net::SSH::KeyFactory::OpenSSLKeyTypeBase","Net/SSH/KeyFactory/OpenSSLKeyTypeBase.html#method-c-encrypted_key-3F","(key_data, error)",""],["enqueue","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-enqueue","(data)","<p>Enqueues data in the output buffer, to be written when #send_pending is\ncalled. Note that the data is …\n"],["enqueue_message","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-enqueue_message","(message)","<p>Enqueues the given message, such that it will be sent at the earliest\nopportunity. This does not block, …\n"],["enqueue_packet","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-enqueue_packet","(payload)","<p>Enqueues a packet to be sent, but does not immediately send the packet. The\ngiven payload is pre-processed …\n"],["env","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-env","(variable_name, variable_value, &block)","<p>Syntactic sugar for setting an environment variable in the remote\nprocess&#39; environment. Note that …\n"],["eof!","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-eof-21","()","<p>Tells the remote end of the channel that no more data is forthcoming from\nthis end of the channel. The …\n"],["eof?","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-eof-3F","()","<p>Returns true if the pointer is at the end of the buffer. Subsequent reads\nwill return nil, in this case. …\n"],["eof?","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-eof-3F","()","<p>Returns true if the local end of the channel has declared that no more data\nis forthcoming (see #eof! …\n"],["error","Net::SSH::Loggable","Net/SSH/Loggable.html#method-i-error","()","<p>Displays the result of yielding if the log level is Logger:ERROR or\ngreater.\n"],["error_classes","Net::SSH::KeyFactory::KeyType","Net/SSH/KeyFactory/KeyType.html#method-c-error_classes","()",""],["error_classes","Net::SSH::KeyFactory::OpenSSHPrivateKeyType","Net/SSH/KeyFactory/OpenSSHPrivateKeyType.html#method-c-error_classes","()",""],["error_classes","Net::SSH::KeyFactory::OpenSSLDSAKeyType","Net/SSH/KeyFactory/OpenSSLDSAKeyType.html#method-c-error_classes","()",""],["error_classes","Net::SSH::KeyFactory::OpenSSLECKeyType","Net/SSH/KeyFactory/OpenSSLECKeyType.html#method-c-error_classes","()",""],["error_classes","Net::SSH::KeyFactory::OpenSSLPKeyType","Net/SSH/KeyFactory/OpenSSLPKeyType.html#method-c-error_classes","()",""],["error_classes","Net::SSH::KeyFactory::OpenSSLRSAKeyType","Net/SSH/KeyFactory/OpenSSLRSAKeyType.html#method-c-error_classes","()",""],["establish_connection","Net::SSH::Proxy::HTTP","Net/SSH/Proxy/HTTP.html#method-i-establish_connection","(connect_timeout)",""],["establish_connection","Net::SSH::Proxy::HTTPS","Net/SSH/Proxy/HTTPS.html#method-i-establish_connection","(connect_timeout)",""],["etm","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-i-etm","()",""],["etm","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-c-etm","(*v)",""],["ev_do_calculate_rw_wait","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-ev_do_calculate_rw_wait","(wait)","<p>Returns the file descriptors the event loop should wait for read/write\nevents, we also return the max …\n"],["ev_do_handle_events","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-ev_do_handle_events","(readers, writers)","<p>It loops over the given arrays of reader IO&#39;s and writer IO&#39;s,\nprocessing them as needed, and …\n"],["ev_do_postprocess","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-ev_do_postprocess","(was_events)","<p>calls Net::SSH::Transport::Session#rekey_as_needed to allow the transport\nlayer to rekey\n"],["ev_preprocess","Net::SSH::Connection::EventLoop","Net/SSH/Connection/EventLoop.html#method-i-ev_preprocess","(&block)","<p>Call preprocess on each session. If block given and that block retuns false\nthen we exit the processing …\n"],["ev_preprocess","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-ev_preprocess","(&block)","<p>Called by event loop to process available data before going to event\nmultiplexing\n"],["ev_preprocess","Net::SSH::Connection::SingleSessionEventLoop","Net/SSH/Connection/SingleSessionEventLoop.html#method-i-ev_preprocess","(&block)","<p>Compatibility for original single session event loops: we call block with\nsession as argument\n"],["ev_select_and_postprocess","Net::SSH::Connection::EventLoop","Net/SSH/Connection/EventLoop.html#method-i-ev_select_and_postprocess","(wait)",""],["ev_select_and_postprocess","Net::SSH::Connection::SingleSessionEventLoop","Net/SSH/Connection/SingleSessionEventLoop.html#method-i-ev_select_and_postprocess","(wait)",""],["exchange_keys","Net::SSH::Test::Kex","Net/SSH/Test/Kex.html#method-i-exchange_keys","()","<p>Exchange keys with the server. This returns a hash of constant values, and\ndoes not actually exchange …\n"],["exchange_keys","Net::SSH::Transport::Kex::Abstract","Net/SSH/Transport/Kex/Abstract.html#method-i-exchange_keys","()","<p>Perform the key-exchange for the given session, with the given data. This\nmethod will return a hash consisting …\n"],["exec","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-exec","(command, &block)","<p>Syntactic sugar for executing a command. Sends a channel request asking\nthat the given command be invoked. …\n"],["exec","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-exec","(command, status: nil, &block)","<p>A convenience method for executing a command and interacting with it. If no\nblock is given, all output …\n"],["exec!","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-exec-21","(command, status: nil, &block)","<p>Same as #exec, except this will block until the command finishes. Also, if\nno block is given, this will …\n"],["expand_key","Net::SSH::Transport::KeyExpander","Net/SSH/Transport/KeyExpander.html#method-c-expand_key","(bytes, start, options={})","<p>Generate a key value in accordance with the SSH2 specification. (RFC4253\n7.2. “Output from Key Exchange”) …\n"],["expandable_default_files","Net::SSH::Config","Net/SSH/Config.html#method-c-expandable_default_files","()","<p>Filters default_files down to the files that are expandable.\n"],["expect_message","Net::SSH::Authentication::Session","Net/SSH/Authentication/Session.html#method-i-expect_message","(type)","<p>Blocks until a packet is received, and returns it if it is of the given\ntype. If it is not, an exception …\n"],["extended","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-c-extended","(orig)",""],["extended","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-c-extended","(object)",""],["extension_enabled?","Net::SSH::Test::Extensions::IO","Net/SSH/Test/Extensions/IO.html#method-c-extension_enabled-3F","()",""],["fatal","Net::SSH::Loggable","Net/SSH/Loggable.html#method-i-fatal","()","<p>Displays the result of yielding if the log level is Logger::FATAL or\ngreater.\n"],["fill","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-fill","(n=8192)","<p>Tries to read up to <code>n</code> bytes of data from the remote end, and\nappends the data to the input buffer. It …\n"],["fill","Net::SSH::ForwardedBufferedIo","Net/SSH/ForwardedBufferedIo.html#method-i-fill","(n=8192)",""],["final","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-final","()",""],["final","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-final","()","<p>Returns the empty string.\n"],["final_cipher","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-final_cipher","()",""],["fingerprint","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-fingerprint","()",""],["fingerprint","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-fingerprint","()","<p>Returns the fingerprint of the key for the host, which either was not found\nor did not match.\n"],["finish","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-finish","()","<p>This is used as a hint to the KeyManager indicating that the agent\nconnection is no longer needed. Any …\n"],["for","Net::SSH::Config","Net/SSH/Config.html#method-c-for","(host, files=expandable_default_files)","<p>Loads the configuration data for the given <code>host</code> from all of\nthe given <code>files</code> (defaulting to the list of …\n"],["forward","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-forward","()","<p>Returns a reference to the Net::SSH::Service::Forward service, which can be\nused for forwarding ports …\n"],["from","Net::SSH::Buffer","Net/SSH/Buffer.html#method-c-from","(*args)","<p>This is a convenience method for creating and populating a new buffer from\na single command. The arguments …\n"],["get","Net::SSH::KeyFactory","Net/SSH/KeyFactory.html#method-c-get","(name)","<p>Fetch an OpenSSL key instance by its SSH name. It will be a new, empty key\nof the given type.\n"],["get","Net::SSH::Transport::CipherFactory","Net/SSH/Transport/CipherFactory.html#method-c-get","(name, options={})","<p>Retrieves a new instance of the named algorithm. The new instance will be\ninitialized using an iv and …\n"],["get","Net::SSH::Transport::HMAC","Net/SSH/Transport/HMAC.html#method-c-get","(name, key=\"\", parameters = {})","<p>Retrieves a new hmac instance of the given SSH type (<code>name</code>). If\n<code>key</code> is given, the new instance will be …\n"],["get_lengths","Net::SSH::Transport::CipherFactory","Net/SSH/Transport/CipherFactory.html#method-c-get_lengths","(name, options = {})","<p>Returns a two-element array containing the [ key-length, block-size ] for\nthe named cipher algorithm. …\n"],["get_ptr","Net::SSH::Authentication::Pageant::Win","Net/SSH/Authentication/Pageant/Win.html#method-c-get_ptr","(data)",""],["getbyte","String","String.html#method-i-getbyte","(index)",""],["getpeername","Net::SSH::Test::Socket","Net/SSH/Test/Socket.html#method-i-getpeername","()","<p>Returns a sockaddr struct for the port and host that were used when the\nsocket was instantiated.\n"],["gets","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-gets","(type, *args)","<p>A convenience method for adding an arbitrary remote packet to the events\nlist.\n"],["gets_channel_close","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-gets_channel_close","(channel)","<p>Scripts the reception of a channel close packet from the remote host by the\ngiven Net::SSH::Test::Channel …\n"],["gets_channel_data","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-gets_channel_data","(channel, data)","<p>Scripts the reception of a channel data packet from the remote host by the\ngiven Net::SSH::Test::Channel …\n"],["gets_channel_eof","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-gets_channel_eof","(channel)","<p>Scripts the reception of a channel EOF packet from the remote host by the\ngiven Net::SSH::Test::Channel …\n"],["gets_channel_extended_data","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-gets_channel_extended_data","(channel, data)","<p>Scripts the reception of a channel extended data packet from the remote\nhost by the given Net::SSH::Test::Channel …\n"],["gets_channel_request","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-gets_channel_request","(channel, request, reply, data)","<p>Scripts the reception of a channel request packet from the remote host by\nthe given Net::SSH::Test::Channel …\n"],["gets_close","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-gets_close","()","<p>Scripts the reception of a “channel close” packet from the remote end.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">gets_close</span>\n</pre>\n"],["gets_data","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-gets_data","(data)","<p>Scripts the reception of a channel data packet from the remote end.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">gets_data</span> <span class=\"ruby-string\">&quot;bar&quot;</span>\n</pre>\n"],["gets_eof","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-gets_eof","()","<p>Scripts the reception of an EOF packet from the remote end.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">gets_eof</span>\n</pre>\n"],["gets_exit_status","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-gets_exit_status","(status=0)","<p>Scripts the reception of an “exit-status” channel request packet.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">gets_exit_status</span>(<span class=\"ruby-value\">127</span>)\n</pre>\n"],["gets_extended_data","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-gets_extended_data","(data)","<p>Scripts the reception of a channel extended data packet from the remote\nend.\n\n<pre>channel.gets_extended_data ...</pre>\n"],["hint","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-hint","(which, value=true)","<p>Sets a new hint for the packet stream, which the packet stream may use to\nchange its behavior. (See …\n"],["host","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-host","()","<p>Returns the name of the host that was given to the transport layer to\nconnect to.\n"],["host","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-host","()","<p>Returns the host name for the remote host, as reported by the socket.\n"],["host_as_string","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-host_as_string","()","<p>Returns the host (and possibly IP address) in a format compatible with SSH\nknown-host files.\n"],["host_key_format","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-host_key_format","()",""],["host_keys","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-host_keys","()",""],["hostfiles","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-c-hostfiles","(options, which=:all)","<p>Looks in the given <code>options</code> hash for the :user_known_hosts_file\nand :global_known_hosts_file keys, and …\n"],["identities","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-identities","()","<p>Return an array of all identities (public keys) known to the agent. Each\nkey returned is augmented with …\n"],["idle!","Net::SSH::Test::Extensions::PacketStream","Net/SSH/Test/Extensions/PacketStream.html#method-i-idle-21","()","<p>Called when another packet should be inspected from the current script. If\nthe next packet is a remote …\n"],["if_needs_rekey?","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-if_needs_rekey-3F","()","<p>If the IO object requires a rekey operation (as indicated by either its\nclient or server state objects, …\n"],["increment","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-increment","(packet_length)","<p>Increments the counters. The sequence number is incremented (and remapped\nso it always fits in a 32-bit …\n"],["increment_counter!","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-increment_counter-21","()",""],["info","Net::SSH::Loggable","Net/SSH/Loggable.html#method-i-info","()","<p>Displays the result of yielding if the log level is Logger::INFO or\ngreater.\n"],["initialize_ssh","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-initialize_ssh","()","<p>Called when this module is used to extend an object. It initializes the\nstates and generally prepares …\n"],["initialized?","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-initialized-3F","()","<p>Returns true if the algorithms have been negotiated at all.\n"],["inject_remote_delay!","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-inject_remote_delay-21","()","<p>Because adjacent calls to #gets_data will sometimes cause the data packets\nto be concatenated (causing …\n"],["instantiate!","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-i-instantiate-21","()","<p>Instantiates the packets data elements. When the packet was first defined,\nsome elements may not have …\n"],["interactive?","Net::SSH::Authentication::Methods::KeyboardInteractive","Net/SSH/Authentication/Methods/KeyboardInteractive.html#method-i-interactive-3F","()",""],["interval","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-i-interval","()",""],["ip","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-ip","()","<p>Returns the IP address of the remote host, as reported by the socket.\n"],["iv","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-iv","()",""],["iv=","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-iv-3D","(iv_s)",""],["iv=","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-iv-3D","(v)","<p>Does nothing. Returns nil.\n"],["iv=","Net::SSH::Transport::OpenSSLAESCTR","Net/SSH/Transport/OpenSSLAESCTR.html#method-i-iv-3D","(iv_s)",""],["iv_len","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-iv_len","()",""],["iv_len","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-iv_len","()","<p>Returns an arbitrary integer.\n"],["keepalive_maxcount","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-i-keepalive_maxcount","()",""],["key","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-key","()","<p>Returns the key itself, as reported by the remote host.\n"],["key=","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-i-key-3D","(value)","<p>Sets the key to the given value, truncating it so that it is the correct\nlength.\n"],["key_length","Net::SSH::Transport::HMAC","Net/SSH/Transport/HMAC.html#method-c-key_length","(name)","<p>Retrieves the key length for the hmac of the given SSH type\n(<code>name</code>).\n"],["key_length","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-i-key_length","()",""],["key_length","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-c-key_length","(*v)",""],["keys_for","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-i-keys_for","(host, options = {})","<p>Returns an array of all keys that are known to be associatd with the given\nhost. The <code>host</code> parameter is …\n"],["known_host_hash?","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-i-known_host_hash-3F","(hostlist, entries)","<p>Indicates whether one of the entries matches an hostname that has been\nstored as a HMAC-SHA1 hash in …\n"],["length","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-length","()","<p>Returns the length of the buffer&#39;s content.\n"],["listen_to","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-listen_to","(io, &callback)","<p>Adds an IO object for the event loop to listen to. If a callback is given,\nit will be invoked when the …\n"],["load","Net::SSH::Config","Net/SSH/Config.html#method-c-load","(path, host, settings={}, base_dir = nil)","<p>Load the OpenSSH configuration settings in the given <code>file</code> for\nthe given <code>host</code>. If <code>settings</code> is given, the …\n"],["load_data_private_key","Net::SSH::KeyFactory","Net/SSH/KeyFactory.html#method-c-load_data_private_key","(data, passphrase=nil, ask_passphrase=true, filename=\"\", prompt=Prompt.default)","<p>Loads a private key. It will correctly determine whether the file describes\nan RSA or DSA key, and will …\n"],["load_data_public_key","Net::SSH::KeyFactory","Net/SSH/KeyFactory.html#method-c-load_data_public_key","(data, filename=\"\")","<p>Loads a public key. It will correctly determine whether the file describes\nan RSA or DSA key, and will …\n"],["load_private_key","Net::SSH::KeyFactory","Net/SSH/KeyFactory.html#method-c-load_private_key","(filename, passphrase=nil, ask_passphrase=true, prompt=Prompt.default)","<p>Loads a private key from a file. It will correctly determine whether the\nfile describes an RSA or DSA …\n"],["load_public_key","Net::SSH::KeyFactory","Net/SSH/KeyFactory.html#method-c-load_public_key","(filename)","<p>Loads a public key from a file. It will correctly determine whether the\nfile describes an RSA or DSA …\n"],["local","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-local","(*args)","<p>Starts listening for connections on the local host, and forwards them to\nthe specified remote host/port …\n"],["local?","Net::SSH::Test::LocalPacket","Net/SSH/Test/LocalPacket.html#method-i-local-3F","()","<p>Returns <code>true</code>; this is a local packet.\n"],["local?","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-i-local-3F","()","<p>The default for <code>local?</code> is false. Subclasses should override as\nnecessary.\n"],["local_closed?","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-local_closed-3F","()","<p>True if we have sent CHANNEL_CLOSE to the remote server.\n"],["local_id","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-local_id","()","<p>Returns the local (client-assigned) id for this channel, or a Proc object\nthat will return the local-id …\n"],["local_socket","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-local_socket","(local_socket_path, remote_socket_path)","<p>Starts listening for connections on the local host, and forwards them to\nthe specified remote socket …\n"],["loop","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-loop","(wait=nil, &block)","<p>The main event loop. Calls #process until #process returns false. If a\nblock is given, it is passed to …\n"],["loop_forever","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-loop_forever","(wait=nil, &block)","<p>preserve a reference to Kernel#loop\n"],["lwarn","Net::SSH::Loggable","Net/SSH/Loggable.html#method-i-lwarn","()","<p>Displays the result of yielding if the log level is Logger::WARN or\ngreater. (Called lwarn to avoid shadowing …\n"],["mac_length","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-c-mac_length","(*v)",""],["mac_length","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-i-mac_length","()",""],["malloc_ptr","Net::SSH::Authentication::Pageant::Win","Net/SSH/Authentication/Pageant/Win.html#method-c-malloc_ptr","(size)",""],["match","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-i-match","(host, pattern)",""],["max_select_wait_time","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-max_select_wait_time","()","<p>If the #preprocess and #postprocess callbacks for this session need to run\nperiodically, this method …\n"],["method_missing","Net::SSH::Connection::Session::NilChannel","Net/SSH/Connection/Session/NilChannel.html#method-i-method_missing","(sym, *args)",""],["name","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-name","()","<p>The name of this cipher, which is “identity”.\n"],["needs_rekey?","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-needs_rekey-3F","()","<p>Returns true if the number of packets processed exceeds the maximum number\nof packets, or if the number …\n"],["negotiate!","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-negotiate-21","()","<p>Attempts to negotiate the SSH agent protocol version. Raises an error if\nthe version could not be negotiated …\n"],["new","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-c-new","(logger=nil)","<p>Creates a new Agent object, using the optional logger instance to report\nstatus.\n"],["new","Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader::DecryptError","Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader/DecryptError.html#method-c-new","(message, encrypted_key: false)",""],["new","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-c-new","(buffer)",""],["new","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-c-new","(data)",""],["new","Net::SSH::Authentication::ED25519::SigningKeyFromFile","Net/SSH/Authentication/ED25519/SigningKeyFromFile.html#method-c-new","(pk,sk)",""],["new","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-c-new","(logger, options={})","<p>Create a new KeyManager. By default, the manager will use the ssh-agent if\nit is running and the `:use_agent` …\n"],["new","Net::SSH::Authentication::Methods::Abstract","Net/SSH/Authentication/Methods/Abstract.html#method-c-new","(session, options={})","<p>Instantiates a new authentication method.\n"],["new","Net::SSH::Authentication::Pageant::Socket","Net/SSH/Authentication/Pageant/Socket.html#method-c-new","()","<p>Create a new instance that communicates with the running pageant instance.\nIf no such instance is running, …\n"],["new","Net::SSH::Authentication::Session","Net/SSH/Authentication/Session.html#method-c-new","(transport, options={})","<p>Instantiates a new Authentication::Session object over the given transport\nlayer abstraction.\n"],["new","Net::SSH::Buffer","Net/SSH/Buffer.html#method-c-new","(content=\"\")","<p>Creates a new buffer, initialized to the given content. The position is\ninitialized to the beginning …\n"],["new","Net::SSH::ChannelOpenFailed","Net/SSH/ChannelOpenFailed.html#method-c-new","(code, reason)",""],["new","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-c-new","(connection, type, local_id, max_pkt_size = 0x8000, max_win_size = 0x20000, &on_confirm_open)","<p>Instantiates a new channel on the given connection, of the given type, and\nwith the given id. If a block …\n"],["new","Net::SSH::Connection::EventLoop","Net/SSH/Connection/EventLoop.html#method-c-new","(logger=nil)",""],["new","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-c-new","(session)",""],["new","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-c-new","(transport, options={})","<p>Create a new connection service instance atop the given transport layer.\nInitializes the listeners to …\n"],["new","Net::SSH::Connection::Session::NilChannel","Net/SSH/Connection/Session/NilChannel.html#method-c-new","(session)",""],["new","Net::SSH::Connection::Session::StringWithExitstatus","Net/SSH/Connection/Session/StringWithExitstatus.html#method-c-new","(str, exitstatus)",""],["new","Net::SSH::HostKeys","Net/SSH/HostKeys.html#method-c-new","(host_keys, host, known_hosts, options = {})",""],["new","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-c-new","(source)","<p>Instantiate a new KnownHosts instance that will search the given\nknown-hosts file. The path is expanded …\n"],["new","Net::SSH::Packet","Net/SSH/Packet.html#method-c-new","(payload)","<p>Create a new packet from the given payload. This will automatically parse\nthe packet if it is one that …\n"],["new","Net::SSH::Prompt","Net/SSH/Prompt.html#method-c-new","(options = {})",""],["new","Net::SSH::Prompt::Prompter","Net/SSH/Prompt/Prompter.html#method-c-new","(info)",""],["new","Net::SSH::Proxy::Command","Net/SSH/Proxy/Command.html#method-c-new","(command_line_template)","<p>Create a new socket factory that tunnels via a command executed with the\nuser&#39;s shell, which is composed …\n"],["new","Net::SSH::Proxy::HTTP","Net/SSH/Proxy/HTTP.html#method-c-new","(proxy_host, proxy_port=80, options={})","<p>Create a new socket factory that tunnels via the given host and port. The\n<code>options</code> parameter is a hash …\n"],["new","Net::SSH::Proxy::HTTPS","Net/SSH/Proxy/HTTPS.html#method-c-new","(proxy_host, proxy_port=80, options={})","<p>Create a new socket factory that tunnels via the given host and port. The\n<code>options</code> parameter is a hash …\n"],["new","Net::SSH::Proxy::Jump","Net/SSH/Proxy/Jump.html#method-c-new","(jump_proxies)","<p>Create a new socket factory that tunnels via multiple jump proxes as\n[user@]host.\n"],["new","Net::SSH::Proxy::SOCKS4","Net/SSH/Proxy/SOCKS4.html#method-c-new","(proxy_host, proxy_port=1080, options={})","<p>Create a new proxy connection to the given proxy host and port. Optionally,\na :user key may be given …\n"],["new","Net::SSH::Proxy::SOCKS5","Net/SSH/Proxy/SOCKS5.html#method-c-new","(proxy_host, proxy_port=1080, options={})","<p>Create a new proxy connection to the given proxy host and port. Optionally,\n:user and :password options …\n"],["new","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-c-new","(session)","<p>Instantiates a new Forward service instance atop the given connection\nservice session. This will register …\n"],["new","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-c-new","(script)","<p>Creates a new Test::Channel instance on top of the given\n<code>script</code> (which must be a Net::SSH::Test::Script …\n"],["new","Net::SSH::Test::Kex","Net/SSH/Test/Kex.html#method-c-new","(algorithms, connection, data)","<p>Creates a new instance of the testing key-exchange algorithm with the given\narguments.\n"],["new","Net::SSH::Test::LocalPacket","Net/SSH/Test/LocalPacket.html#method-c-new","(type, *args, &block)","<p>Extend the default Net::SSH::Test::Packet constructor to also accept an\noptional block, which is used …\n"],["new","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-c-new","(type, *args)","<p>Ceate a new packet of the given <code>type</code>, and with\n<code>args</code> being a list of data elements in the order expected …\n"],["new","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-c-new","()","<p>Create a new, empty script.\n"],["new","Net::SSH::Test::Socket","Net/SSH/Test/Socket.html#method-c-new","()","<p>Create a new test socket. This will also instantiate a new\nNet::SSH::Test::Script and seed it with the …\n"],["new","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-c-new","(session, options={})","<p>Instantiates a new Algorithms object, and prepares the hash of preferred\nalgorithms based on the options …\n"],["new","Net::SSH::Transport::HMAC::Abstract","Net/SSH/Transport/HMAC/Abstract.html#method-c-new","(key=nil)",""],["new","Net::SSH::Transport::Kex::Abstract","Net/SSH/Transport/Kex/Abstract.html#method-c-new","(algorithms, connection, data)","<p>Create a new instance of the Diffie-Hellman Key Exchange algorithm. The\nDiffie-Hellman (DH) key exchange …\n"],["new","Net::SSH::Transport::OpenSSLAESCTR","Net/SSH/Transport/OpenSSLAESCTR.html#method-c-new","(original)",""],["new","Net::SSH::Transport::ServerVersion","Net/SSH/Transport/ServerVersion.html#method-c-new","(socket, logger, timeout = nil)","<p>Instantiates a new ServerVersion and immediately (and synchronously)\nnegotiates the SSH protocol in effect, …\n"],["new","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-c-new","(host, options={})","<p>Instantiates a new transport layer abstraction. This will block until the\ninitial key exchange completes, …\n"],["new","Net::SSH::Transport::Session::CompatibleVerifier","Net/SSH/Transport/Session/CompatibleVerifier.html#method-c-new","(verifier)",""],["new","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-c-new","(socket, role)","<p>Creates a new state object, belonging to the given socket. Initializes the\nalgorithms to “none”. …\n"],["new","Net::SSH::Version","Net/SSH/Version.html#method-c-new","(major, minor, tiny, pre = nil)","<p>Create a new Version object with the given components.\n"],["next","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-next","(mode=:shift)","<p>By default, removes the next event in the list and returns it. However,\nthis can also be used to non-destructively …\n"],["next_message","Net::SSH::Authentication::Session","Net/SSH/Authentication/Session.html#method-i-next_message","()","<p>Blocks until a packet is received. It silently handles USERAUTH_BANNER\npackets, and will raise an error …\n"],["next_message","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-next_message","()","<p>Blocks until a new packet is available to be read, and returns that packet.\nSee #poll_message.\n"],["next_packet","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-next_packet","(mode=:nonblock, timeout=nil)","<p>Returns the next full packet. If the mode parameter is :nonblock (the\ndefault), then this will return …\n"],["no_keys?","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-no_keys-3F","()",""],["on_close","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_close","(&block)","<p>Registers a callback to be invoked when the server acknowledges that a\nchannel is closed. This is invoked …\n"],["on_data","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_data","(&block)","<p>Registers a callback to be invoked when data packets are received by the\nchannel. The callback is called …\n"],["on_eof","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_eof","(&block)","<p>Registers a callback to be invoked when the server indicates that no more\ndata will be sent to the channel …\n"],["on_extended_data","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_extended_data","(&block)","<p>Registers a callback to be invoked when extended data packets are received\nby the channel. The callback …\n"],["on_global_request","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-on_global_request","(type, &block)","<p>Registers a handler to be invoked when the server sends a global request of\nthe given type. The callback …\n"],["on_open_channel","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-on_open_channel","(type, &block)","<p>Registers a handler to be invoked when the server wants to open a channel\non the client. The callback …\n"],["on_open_failed","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_open_failed","(&block)","<p>Registers a callback to be invoked when the server was unable to open the\nrequested channel. The channel …\n"],["on_process","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_process","(&block)","<p>Registers a callback to be invoked for each pass of the event loop for this\nchannel. There are no guarantees …\n"],["on_request","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-on_request","(type, &block)","<p>Registers a callback to be invoked when a channel request of the given type\nis received. The callback …\n"],["open","Net::SSH::Authentication::Pageant::Socket","Net/SSH/Authentication/Pageant/Socket.html#method-c-open","()","<p>The factory method for creating a new Socket instance.\n"],["open","Net::SSH::Proxy::Command","Net/SSH/Proxy/Command.html#method-i-open","(host, port, connection_options = nil)","<p>Return a new socket connected to the given host and port via the proxy that\nwas requested when the socket …\n"],["open","Net::SSH::Proxy::HTTP","Net/SSH/Proxy/HTTP.html#method-i-open","(host, port, connection_options)","<p>Return a new socket connected to the given host and port via the proxy that\nwas requested when the socket …\n"],["open","Net::SSH::Proxy::Jump","Net/SSH/Proxy/Jump.html#method-i-open","(host, port, connection_options = nil)","<p>Return a new socket connected to the given host and port via the jump proxy\nthat was requested when the …\n"],["open","Net::SSH::Proxy::SOCKS4","Net/SSH/Proxy/SOCKS4.html#method-i-open","(host, port, connection_options)","<p>Return a new socket connected to the given host and port via the proxy that\nwas requested when the socket …\n"],["open","Net::SSH::Proxy::SOCKS5","Net/SSH/Proxy/SOCKS5.html#method-i-open","(host, port, connection_options)","<p>Return a new socket connected to the given host and port via the proxy that\nwas requested when the socket …\n"],["open","Net::SSH::Test::Socket","Net/SSH/Test/Socket.html#method-i-open","(host, port, options={})","<p>Allows the socket to also mimic a socket factory, simply returning\n<code>self</code>.\n"],["open_channel","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-open_channel","(type=\"session\", *extra, &on_confirm)","<p>Requests that a new channel be opened. By default, the channel will be of\ntype “session”, but …\n"],["open_ssl_class","Net::SSH::KeyFactory::OpenSSLDSAKeyType","Net/SSH/KeyFactory/OpenSSLDSAKeyType.html#method-c-open_ssl_class","()",""],["open_ssl_class","Net::SSH::KeyFactory::OpenSSLECKeyType","Net/SSH/KeyFactory/OpenSSLECKeyType.html#method-c-open_ssl_class","()",""],["open_ssl_class","Net::SSH::KeyFactory::OpenSSLKeyTypeBase","Net/SSH/KeyFactory/OpenSSLKeyTypeBase.html#method-c-open_ssl_class","()",""],["open_ssl_class","Net::SSH::KeyFactory::OpenSSLPKeyType","Net/SSH/KeyFactory/OpenSSLPKeyType.html#method-c-open_ssl_class","()",""],["open_ssl_class","Net::SSH::KeyFactory::OpenSSLRSAKeyType","Net/SSH/KeyFactory/OpenSSLRSAKeyType.html#method-c-open_ssl_class","()",""],["opens_channel","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-opens_channel","(confirm=true)","<p>Scripts the opening of a channel by adding a local packet sending the\nchannel open request, and if <code>confirm</code> …\n"],["options","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-i-options","()",""],["padding=","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-padding-3D","(pad)",""],["parse_response","Net::SSH::Proxy::HTTP","Net/SSH/Proxy/HTTP.html#method-i-parse_response","(socket)",""],["peer","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-peer","()","<p>Returns a hash of information about the peer (remote) side of the socket,\nincluding :ip, :port, :host, …\n"],["peer_ip","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-peer_ip","()","<p>The IP address of the peer (remote) end of the socket, as reported by the\nsocket.\n"],["pending?","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-pending-3F","()","<p>Returns <code>true</code> if a key-exchange is pending. This will be true\nfrom the moment either the client or server …\n"],["pending_write?","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-pending_write-3F","()","<p>Returns <code>true</code> if there is data waiting in the output buffer,\nand <code>false</code> otherwise.\n"],["poll_message","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-poll_message","(mode=:nonblock, consume_queue=true)","<p>Tries to read the next packet from the socket. If mode is :nonblock (the\ndefault), this will not block …\n"],["poll_next_packet","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-poll_next_packet","()","<p>Tries to read the next packet. If there is insufficient data to read an\nentire packet, this returns immediately, …\n"],["port","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-port","()","<p>Returns the port number for the remote host, as reported by the socket.\n"],["postprocess","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-postprocess","(readers, writers)","<p>This is called internally as part of #process.\n"],["preprocess","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-preprocess","(&block)","<p>This is called internally as part of #process. It dispatches any available\nincoming packets, and then …\n"],["process","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-process","()","<p>If an #on_process handler has been set up, this will cause it to be invoked\n(passing the channel itself …\n"],["process","Net::SSH::Connection::EventLoop","Net/SSH/Connection/EventLoop.html#method-i-process","(wait = nil, &block)","<p>process until timeout if a block is given a session will be removed from\nloop if block returns false …\n"],["process","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-process","(wait=nil, &block)","<p>The core of the event loop. It processes a single iteration of the event\nloop. If a block is given, it …\n"],["process","Net::SSH::Test::LocalPacket","Net/SSH/Test/LocalPacket.html#method-i-process","(packet)","<p>Called by Net::SSH::Test::Extensions::PacketStream#test_enqueue_packet to\nmimic remote processing of …\n"],["process","Net::SSH::Test::RemotePacket","Net/SSH/Test/RemotePacket.html#method-i-process","(packet)","<p>The #process method should only be called on Net::SSH::Test::LocalPacket\npackets; if it is attempted …\n"],["process","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-process","(packet)","<p>Compare the given packet against the next event in the list. If there is no\nnext event, an exception …\n"],["process_only","Net::SSH::Connection::EventLoop","Net/SSH/Connection/EventLoop.html#method-i-process_only","(session, wait = nil)","<p>process the event loop but only for the sepcified session\n"],["public_key","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-i-public_key","()",""],["push","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-push","(packet)","<p>Adds the given packet to the packet queue. If the queue is non-empty,\n#poll_message will return packets …\n"],["raiseUnlessLoaded","Net::SSH::Authentication::ED25519Loader","Net/SSH/Authentication/ED25519Loader.html#method-c-raiseUnlessLoaded","(message)",""],["raiseUnlessLoaded","Net::SSH::Transport::Kex::Curve25519Sha256Loader","Net/SSH/Transport/Kex/Curve25519Sha256Loader.html#method-c-raiseUnlessLoaded","(message)",""],["read","Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader","Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader.html#method-c-read","(datafull, password)",""],["read","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-c-read","(data, password)",""],["read","Net::SSH::Authentication::Pageant::Socket","Net/SSH/Authentication/Pageant/Socket.html#method-i-read","(n = nil)","<p>Reads <code>n</code> bytes from the cached result of the last query. If\n<code>n</code> is <code>nil</code>, returns all remaining data from …\n"],["read","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read","(count=nil)","<p>Reads and returns the next <code>count</code> bytes from the buffer,\nstarting from the read position. If <code>count</code> is …\n"],["read","Net::SSH::KeyFactory::KeyType","Net/SSH/KeyFactory/KeyType.html#method-c-read","(key_data, passphrase)",""],["read","Net::SSH::KeyFactory::OpenSSHPrivateKeyType","Net/SSH/KeyFactory/OpenSSHPrivateKeyType.html#method-c-read","(key_data, passphrase)",""],["read","Net::SSH::KeyFactory::OpenSSLKeyTypeBase","Net/SSH/KeyFactory/OpenSSLKeyTypeBase.html#method-c-read","(key_data, passphrase)",""],["read","Net::SSH::KeyFactory::OpenSSLPKeyType","Net/SSH/KeyFactory/OpenSSLPKeyType.html#method-c-read","(key_data, passphrase)",""],["read!","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read-21","(count=nil)","<p>Reads (as #read) and returns the given number of bytes from the buffer, and\nthen consumes (as #consume! …\n"],["read_all","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_all","(&block)","<p>Calls block(self) until the buffer is empty, and returns all results.\n"],["read_available","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-read_available","(length=nil)","<p>Read up to <code>length</code> bytes from the input buffer. If\n<code>length</code> is nil, all available data is read from the …\n"],["read_bignum","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_bignum","()","<p>Read a bignum (OpenSSL::BN) from the buffer, in SSH2 format. It is\nessentially just a string, which is …\n"],["read_bool","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_bool","()","<p>Read a single byte and convert it into a boolean, using &#39;C&#39; rules\n(i.e., zero is false, non-zero …\n"],["read_buffer","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_buffer","()","<p>Reads the next string from the buffer, and returns a new Buffer object that\nwraps it.\n"],["read_byte","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_byte","()","<p>Read and return the next byte in the buffer. Returns nil if called at the\nend of the buffer.\n"],["read_certblob","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-c-read_certblob","(buffer, type)","<p>Read a certificate blob associated with a key of the given type.\n"],["read_int64","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_int64","()","<p>Return the next 8 bytes as a 64-bit integer (in network byte order).\nReturns nil if there are less than …\n"],["read_key","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_key","()","<p>Read a key from the buffer. The key will start with a string describing its\ntype. The remainder of the …\n"],["read_keyblob","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-c-read_keyblob","(buffer)",""],["read_keyblob","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_keyblob","(type)","<p>Read a keyblob of the given type from the buffer, and return it as a key.\nOnly RSA, DSA, and ECDSA keys …\n"],["read_keyblob","OpenSSL::PKey::EC","OpenSSL/PKey/EC.html#method-c-read_keyblob","(curve_name_in_type, buffer)",""],["read_long","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_long","()","<p>Return the next four bytes as a long integer (in network byte order).\nReturns nil if there are less than …\n"],["read_private_keyblob","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_private_keyblob","(type)",""],["read_string","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_string","()","<p>Read and return an SSH2-encoded string. The string starts with a long\ninteger that describes the number …\n"],["read_to","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-read_to","(pattern)","<p>Reads all data up to and including the given pattern, which may be a\nString, Fixnum, or Regexp and is …\n"],["readpartial","Net::SSH::Test::Socket","Net/SSH/Test/Socket.html#method-i-readpartial","(n)",""],["recv","Net::SSH::Test::Socket","Net/SSH/Test/Socket.html#method-i-recv","(n)","<p>Alias to #read, but never returns nil (returns an empty string instead).\n"],["register","Net::SSH::Connection::EventLoop","Net/SSH/Connection/EventLoop.html#method-i-register","(session)",""],["register","Net::SSH::Packet","Net/SSH/Packet.html#method-c-register","(type, *pairs)","<p>Register a new packet type that should be recognized and auto-parsed by\nNet::SSH::Packet. Note that any …\n"],["register_channel_request","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-c-register_channel_request","(request, extra_parts)","<p>Register a custom channel request. extra_parts is an array of types of\nextra parameters\n"],["registered_channel_requests","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-c-registered_channel_requests","(request)",""],["rekey!","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-rekey-21","()","<p>Request a rekey operation. This will return immediately, and does not\nactually perform the rekey operation. …\n"],["rekey!","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-rekey-21","()","<p>Requests a rekey operation, and blocks until the operation completes. If a\nrekey is already pending, …\n"],["rekey_as_needed","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-rekey_as_needed","()","<p>Returns immediately if a rekey is already in process. Otherwise, if a rekey\nis needed (as indicated by …\n"],["remainder_as_buffer","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-remainder_as_buffer","()","<p>Returns all text from the current pointer to the end of the buffer as a new\nNet::SSH::Buffer object. …\n"],["remember_host!","Net::SSH::HostKeyError","Net/SSH/HostKeyError.html#method-i-remember_host-21","()","<p>Tell Net::SSH to record this host and key in the known hosts file, so that\nsubsequent connections will …\n"],["remote","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-remote","(port, host, remote_port, remote_host=\"127.0.0.1\")","<p>Requests that all connections on the given remote-port be forwarded via the\nlocal host to the given …\n"],["remote?","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-i-remote-3F","()","<p>The default for <code>remote?</code> is false. Subclasses should override\nas necessary.\n"],["remote?","Net::SSH::Test::RemotePacket","Net/SSH/Test/RemotePacket.html#method-i-remote-3F","()","<p>Returns <code>true</code>; this is a remote packet.\n"],["remote_closed!","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-remote_closed-21","()",""],["remote_closed?","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-remote_closed-3F","()",""],["remote_id","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-remote_id","()","<p>Returns the remote (server-assigned) id for this channel, or a Proc object\nthat will return the remote-id …\n"],["remote_to","Net::SSH::Service::Forward","Net/SSH/Service/Forward.html#method-i-remote_to","(port, host, remote_port, remote_host=\"127.0.0.1\")","<p>an alias, for token backwards compatibility with the 1.x API\n"],["remove_all_identities","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-remove_all_identities","()","<p>Removes all identities from the agent.\n"],["remove_identity","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-remove_identity","(key)","<p>Removes key from the agent.\n"],["request_pty","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-request_pty","(opts={}, &block)","<p>Requests that a pseudo-tty (or “pty”) be made available for this channel.\nThis is useful when …\n"],["reset","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-reset","()",""],["reset","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-reset","()","<p>Does nothing. Returns self.\n"],["reset","Net::SSH::Transport::OpenSSLAESCTR","Net/SSH/Transport/OpenSSLAESCTR.html#method-i-reset","()",""],["reset!","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-reset-21","()","<p>Resets the pointer to the start of the buffer. Subsequent reads will begin\nat position 0.\n"],["reset!","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-reset-21","()","<p>Resets the counters on the state object, but leaves the sequence_number\nunchanged. It also sets defaults …\n"],["search_for","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-c-search_for","(host, options={})","<p>Searches all known host files (see KnownHosts.hostfiles) for all keys of\nthe given host. Returns an enumerable …\n"],["search_in","Net::SSH::KnownHosts","Net/SSH/KnownHosts.html#method-c-search_in","(files, host, options = {})","<p>Search for all known keys for the given host, in every file given in the\n<code>files</code> array. Returns the list …\n"],["select_for_read?","Net::SSH::Test::Extensions::BufferedIo","Net/SSH/Test/Extensions/BufferedIo.html#method-i-select_for_read-3F","()","<p>Returns <code>true</code> if the position in the stream is less than the\ntotal length of the stream.\n"],["select_for_test","Net::SSH::Test::Extensions::IO::ClassMethods","Net/SSH/Test/Extensions/IO/ClassMethods.html#method-i-select_for_test","(readers=nil, writers=nil, errors=nil, wait=nil)","<p>The testing version of ::IO.select. Assumes that all readers, writers, and\nerrors arrays are either nil, …\n"],["send","Net::SSH::Authentication::Pageant::Socket","Net/SSH/Authentication/Pageant/Socket.html#method-i-send","(data, *args)","<p>Forwards the data to #send_query, ignoring any arguments after the first.\n"],["send","Net::SSH::Proxy::HTTPS::SSLSocketCompatibility","Net/SSH/Proxy/HTTPS/SSLSocketCompatibility.html#method-i-send","(data, _opts)",""],["send_as_needed","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-i-send_as_needed","(was_events)",""],["send_channel_request","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-send_channel_request","(request_name, *data, &callback)","<p>Sends a new channel request with the given name. The extra\n<code>data</code> parameter must either be empty, or consist …\n"],["send_data","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-send_data","(data)","<p>Sends data to the channel&#39;s remote endpoint. This usually has the\neffect of sending the given string …\n"],["send_data_for_test","Net::SSH::Test::Extensions::Channel","Net/SSH/Test/Extensions/Channel.html#method-i-send_data_for_test","(data)","<p>The testing version of Net::SSH::Connection::Channel#send_data. Calls the\noriginal implementation, and …\n"],["send_global_request","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-send_global_request","(type, *extra, &callback)","<p>Send a global request of the given type. The <code>extra</code> parameters\nmust be even in number, and conform to …\n"],["send_message","Net::SSH::Authentication::Methods::Abstract","Net/SSH/Authentication/Methods/Abstract.html#method-i-send_message","(msg)","<p>Sends a message via the underlying transport layer abstraction. This will\nblock until the message is …\n"],["send_message","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-send_message","(message)","<p>Enqueues a message to be sent to the server as soon as the socket is\navailable for writing. Most programs …\n"],["send_message","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-send_message","(message)","<p>Sends the given message via the packet stream, blocking until the entire\nmessage has been sent.\n"],["send_packet","Net::SSH::Transport::PacketStream","Net/SSH/Transport/PacketStream.html#method-i-send_packet","(payload)","<p>Enqueues a packet to be sent, and blocks until the entire packet is sent.\n"],["send_pending","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-send_pending","()","<p>Sends as much of the pending output as possible. Returns <code>true</code>\nif any data was sent, and <code>false</code> otherwise. …\n"],["send_pending","Net::SSH::ForwardedBufferedIo","Net/SSH/ForwardedBufferedIo.html#method-i-send_pending","()",""],["send_query","Net::SSH::Authentication::Pageant::Socket","Net/SSH/Authentication/Pageant/Socket.html#method-i-send_query","(query)","<p>Packages the given query string and sends it to the pageant process via the\nWindows messaging subsystem. …\n"],["sends","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-sends","(type, *args, &block)","<p>A convenience method for adding an arbitrary local packet to the events\nlist.\n"],["sends_channel_close","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-sends_channel_close","(channel)","<p>Scripts the sending of a channel close packet from the given\nNet::SSH::Test::Channel <code>channel</code>. This will …\n"],["sends_channel_data","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-sends_channel_data","(channel, data)","<p>Scripts the sending of a channel data packet. <code>channel</code> must be\na Net::SSH::Test::Channel object, and …\n"],["sends_channel_eof","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-sends_channel_eof","(channel)","<p>Scripts the sending of a channel EOF packet from the given\nNet::SSH::Test::Channel <code>channel</code>. This will …\n"],["sends_channel_request","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-sends_channel_request","(channel, request, reply, data, success=true)","<p>Scripts the sending of a new channel request packet to the remote host.\n<code>channel</code> should be an instance …\n"],["sends_channel_request_pty","Net::SSH::Test::Script","Net/SSH/Test/Script.html#method-i-sends_channel_request_pty","(channel)","<p>Scripts the sending of a channel request pty packets from the given\nNet::SSH::Test::Channel <code>channel</code>. …\n"],["sends_close","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-sends_close","()","<p>Scripts the sending of a “channel close” packet across the channel.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">sends_close</span>\n</pre>\n"],["sends_data","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-sends_data","(data)","<p>Scripts the sending of a data packet across the channel.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">sends_data</span> <span class=\"ruby-string\">&quot;foo&quot;</span>\n</pre>\n"],["sends_eof","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-sends_eof","()","<p>Scripts the sending of an EOF packet across the channel.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">sends_eof</span>\n</pre>\n"],["sends_exec","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-sends_exec","(command, reply=true, success=true)","<p>Scripts the sending of an “exec” channel request packet to the mock \nserver. If <code>reply</code> is true, …\n"],["sends_request_pty","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-sends_request_pty","()","<p>Scripts the sending of a “request pty” request packet across the channel.\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">channel</span>.<span class=\"ruby-identifier\">sends_request_pty</span>\n</pre>\n"],["sends_subsystem","Net::SSH::Test::Channel","Net/SSH/Test/Channel.html#method-i-sends_subsystem","(subsystem, reply=true, success=true)","<p>Scripts the sending of a “subsystem” channel request packet to the mock\nserver. See #sends_exec …\n"],["service_request","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-service_request","(service)","<p>Returns a new service_request packet for the given service name, ready for\nsending to the server.\n"],["session_id","Net::SSH::Authentication::Methods::Abstract","Net/SSH/Authentication/Methods/Abstract.html#method-i-session_id","()","<p>Returns the session-id, as generated during the first key exchange of an\nSSH connection.\n"],["set","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-set","(values)","<p>A convenience method for quickly setting multiple values in a single\ncommand.\n"],["set_ptr_data","Net::SSH::Authentication::Pageant::Win","Net/SSH/Authentication/Pageant/Win.html#method-c-set_ptr_data","(ptr, data)",""],["setbyte","String","String.html#method-i-setbyte","(index, c)",""],["should_send?","Net::SSH::Connection::Keepalive","Net/SSH/Connection/Keepalive.html#method-i-should_send-3F","()",""],["shutdown!","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-shutdown-21","()","<p>Performs a “hard” shutdown of the connection. In general, this should never\nbe done, but it …\n"],["shutdown!","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-shutdown-21","()","<p>Performs a “hard” shutdown of the connection. In general, this should never\nbe done, but it …\n"],["sign","Net::SSH::Authentication::Agent","Net/SSH/Authentication/Agent.html#method-i-sign","(key, data, flags = 0)","<p>Using the agent and the given public key, sign the given data. The\nsignature is returned in SSH2 format. …\n"],["sign","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-sign","(key, sign_nonce=nil)",""],["sign","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-sign","(identity, data)","<p>Sign the given data, using the corresponding private key of the given\nidentity. If the identity was originally …\n"],["sign!","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-sign-21","(key, sign_nonce=nil)","<p>Signs the certificate with key.\n"],["signature_valid?","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-signature_valid-3F","()","<p>Checks whether the certificate&#39;s signature was signed by signature key.\n"],["socket","Net::SSH::Test","Net/SSH/Test.html#method-i-socket","(options={})","<p>Returns the test socket instance to use for these tests (see\nNet::SSH::Test::Socket).\n"],["ssh_do_sign","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-ssh_do_sign","(data)",""],["ssh_do_sign","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-i-ssh_do_sign","(data)",""],["ssh_do_sign","OpenSSL::PKey::DSA","OpenSSL/PKey/DSA.html#method-i-ssh_do_sign","(data)","<p>Signs the given data.\n"],["ssh_do_sign","OpenSSL::PKey::EC","OpenSSL/PKey/EC.html#method-i-ssh_do_sign","(data)","<p>Returns the signature for the given data.\n"],["ssh_do_sign","OpenSSL::PKey::RSA","OpenSSL/PKey/RSA.html#method-i-ssh_do_sign","(data)","<p>Returns the signature for the given data.\n"],["ssh_do_verify","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-ssh_do_verify","(sig, data)",""],["ssh_do_verify","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-i-ssh_do_verify","(sig,data)",""],["ssh_do_verify","OpenSSL::PKey::DSA","OpenSSL/PKey/DSA.html#method-i-ssh_do_verify","(sig, data)","<p>Verifies the given signature matches the given data.\n"],["ssh_do_verify","OpenSSL::PKey::EC","OpenSSL/PKey/EC.html#method-i-ssh_do_verify","(sig, data)","<p>Verifies the given signature matches the given data.\n"],["ssh_do_verify","OpenSSL::PKey::RSA","OpenSSL/PKey/RSA.html#method-i-ssh_do_verify","(sig, data)","<p>Verifies the given signature matches the given data.\n"],["ssh_signature_type","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-ssh_signature_type","()",""],["ssh_signature_type","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-i-ssh_signature_type","()",""],["ssh_signature_type","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-i-ssh_signature_type","()",""],["ssh_signature_type","OpenSSL::PKey::DSA","OpenSSL/PKey/DSA.html#method-i-ssh_signature_type","()",""],["ssh_signature_type","OpenSSL::PKey::EC","OpenSSL/PKey/EC.html#method-i-ssh_signature_type","()",""],["ssh_signature_type","OpenSSL::PKey::RSA","OpenSSL/PKey/RSA.html#method-i-ssh_signature_type","()",""],["ssh_type","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-ssh_type","()",""],["ssh_type","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-i-ssh_type","()",""],["ssh_type","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-i-ssh_type","()",""],["ssh_type","OpenSSL::PKey::DSA","OpenSSL/PKey/DSA.html#method-i-ssh_type","()","<p>Returns “ssh-dss”, which is the description of this key type used by the\nSSH2 protocol.\n"],["ssh_type","OpenSSL::PKey::EC","OpenSSL/PKey/EC.html#method-i-ssh_type","()","<p>Returns the description of this key type used by the SSH2 protocol, like\n“ecdsa-sha2-nistp256” …\n"],["ssh_type","OpenSSL::PKey::EC::Point","OpenSSL/PKey/EC/Point.html#method-i-ssh_type","()","<p>Returns the description of this key type used by the SSH2 protocol, like\n“ecdsa-sha2-nistp256” …\n"],["ssh_type","OpenSSL::PKey::RSA","OpenSSL/PKey/RSA.html#method-i-ssh_type","()","<p>Returns “ssh-rsa”, which is the description of this key type used by the\nSSH2 protocol.\n"],["start","Net::SSH","Net/SSH.html#method-c-start","(host, user=nil, options={}, &block)","<p>The standard means of starting a new SSH connection. When used with a\nblock, the connection will be closed …\n"],["start","Net::SSH::Prompt","Net/SSH/Prompt.html#method-i-start","(info)","<p>start password session. Multiple questions might be asked multiple times on\nthe returned object. Info …\n"],["start","Net::SSH::Transport::Algorithms","Net/SSH/Transport/Algorithms.html#method-i-start","()","<p>Start the algorithm negotation\n"],["stop_listening_to","Net::SSH::Connection::Session","Net/SSH/Connection/Session.html#method-i-stop_listening_to","(io)","<p>Removes the given io object from the listeners collection, so that the\nevent loop will no longer monitor …\n"],["story","Net::SSH::Test","Net/SSH/Test.html#method-i-story","()","<p>If a block is given, yields the script for the test socket (#socket).\nOtherwise, simply returns the socket&#39;s …\n"],["subsystem","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-subsystem","(subsystem, &block)","<p>Syntactic sugar for requesting that a subsystem be started. Subsystems are\na way for other protocols …\n"],["success","Net::SSH::Prompt::Prompter","Net/SSH/Prompt/Prompter.html#method-i-success","()","<p>success method will be called when the password was accepted It&#39;s a\ngood time to save password asked …\n"],["supported?","Net::SSH::Transport::CipherFactory","Net/SSH/Transport/CipherFactory.html#method-c-supported-3F","(name)","<p>Returns true if the underlying OpenSSL library supports the given cipher,\nand false otherwise.\n"],["test_available_for_read?","Net::SSH::Test::Extensions::PacketStream","Net/SSH/Test/Extensions/PacketStream.html#method-i-test_available_for_read-3F","()","<p>The testing version of\nNet::SSH::Transport::PacketStream#available_for_read?. Returns true if\nthere is …\n"],["test_enqueue_packet","Net::SSH::Test::Extensions::PacketStream","Net/SSH/Test/Extensions/PacketStream.html#method-i-test_enqueue_packet","(payload)","<p>The testing version of Net::SSH::Transport::PacketStream#enqueued_packet.\nSimply calls Net::SSH::Test::Script#process …\n"],["test_poll_next_packet","Net::SSH::Test::Extensions::PacketStream","Net/SSH/Test/Extensions/PacketStream.html#method-i-test_poll_next_packet","()","<p>The testing version of Net::SSH::Transport::PacketStream#poll_next_packet.\nReads the next available packet …\n"],["to_blob","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-to_blob","()","<p>Serializes the certificate (and key).\n"],["to_blob","Net::SSH::Authentication::ED25519::PrivKey","Net/SSH/Authentication/ED25519/PrivKey.html#method-i-to_blob","()",""],["to_blob","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-i-to_blob","()",""],["to_blob","OpenSSL::PKey::DSA","OpenSSL/PKey/DSA.html#method-i-to_blob","()","<p>Converts the key to a blob, according to the SSH2 protocol.\n"],["to_blob","OpenSSL::PKey::EC","OpenSSL/PKey/EC.html#method-i-to_blob","()","<p>Converts the key to a blob, according to the SSH2 protocol.\n"],["to_blob","OpenSSL::PKey::EC::Point","OpenSSL/PKey/EC/Point.html#method-i-to_blob","()","<p>Converts the key to a blob, according to the SSH2 protocol.\n"],["to_blob","OpenSSL::PKey::RSA","OpenSSL/PKey/RSA.html#method-i-to_blob","()","<p>Converts the key to a blob, according to the SSH2 protocol.\n"],["to_i","Net::SSH::Version","Net/SSH/Version.html#method-i-to_i","()","<p>Converts this version to a canonical integer that may be compared against\nother version objects.\n"],["to_pem","Net::SSH::Authentication::Certificate","Net/SSH/Authentication/Certificate.html#method-i-to_pem","()",""],["to_pem","Net::SSH::Authentication::ED25519::PubKey","Net/SSH/Authentication/ED25519/PubKey.html#method-i-to_pem","()",""],["to_s","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-to_s","()","<p>Returns a copy of the buffer&#39;s content.\n"],["to_s","Net::SSH::Test::RemotePacket","Net/SSH/Test/RemotePacket.html#method-i-to_s","()","<p>Returns this remote packet as a string, suitable for parsing by \nNet::SSH::Transport::PacketStream and …\n"],["to_s","Net::SSH::Version","Net/SSH/Version.html#method-i-to_s","()","<p>Converts this version object to a string, where each of the three version\ncomponents are joined by the …\n"],["to_ssh","OpenSSL::BN","OpenSSL/BN.html#method-i-to_ssh","()","<p>Converts a BN object to a string. The format used is that which is required\nby the SSH2 protocol.\n"],["translate","Net::SSH::Config","Net/SSH/Config.html#method-c-translate","(settings)","<p>Given a hash of OpenSSH configuration options, converts them into a hash of\nNet::SSH options. Unrecognized …\n"],["transport","Net::SSH::Test","Net/SSH/Test.html#method-i-transport","(options={})","<p>Returns the transport session (Net::SSH::Transport::Session) for use in\nthese tests. It is a fully functional …\n"],["types","Net::SSH::Test::Packet","Net/SSH/Test/Packet.html#method-i-types","()","<p>Returns an array of symbols describing the data elements for packets of the\nsame type as this packet. …\n"],["update","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-update","(data)",""],["update","Net::SSH::Transport::IdentityCipher","Net/SSH/Transport/IdentityCipher.html#method-c-update","(text)","<p>Passes its single argument through unchanged.\n"],["update_cipher","Net::SSH::Transport::State","Net/SSH/Transport/State.html#method-i-update_cipher","(data)",""],["use_agent=","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-use_agent-3D","(use_agent)","<p>Toggles whether the ssh-agent will be used or not. If true, an attempt will\nbe made to use the ssh-agent. …\n"],["use_agent?","Net::SSH::Authentication::KeyManager","Net/SSH/Authentication/KeyManager.html#method-i-use_agent-3F","()","<p>Identifies whether the ssh-agent will be used or not.\n"],["userauth_request","Net::SSH::Authentication::Methods::Abstract","Net/SSH/Authentication/Methods/Abstract.html#method-i-userauth_request","(username, next_service, auth_method, *others)","<p>Creates a new USERAUTH_REQUEST packet. The extra arguments on the end must\nbe either boolean values or …\n"],["valid?","OpenSSL::PKey::DH","OpenSSL/PKey/DH.html#method-i-valid-3F","()","<p>Determines whether the pub_key for this key is valid. (This algorithm\nlifted more-or-less directly from …\n"],["verify","Net::SSH::Transport::Session::CompatibleVerifier","Net/SSH/Transport/Session/CompatibleVerifier.html#method-i-verify","(arguments)",""],["verify","Net::SSH::Verifiers::AcceptNew","Net/SSH/Verifiers/AcceptNew.html#method-i-verify","(arguments)",""],["verify","Net::SSH::Verifiers::AcceptNewOrLocalTunnel","Net/SSH/Verifiers/AcceptNewOrLocalTunnel.html#method-i-verify","(arguments)","<p>Tries to determine if the connection is being tunnelled, and if so, returns\ntrue. Otherwise, performs …\n"],["verify","Net::SSH::Verifiers::Always","Net/SSH/Verifiers/Always.html#method-i-verify","(arguments)",""],["verify","Net::SSH::Verifiers::Never","Net/SSH/Verifiers/Never.html#method-i-verify","(arguments)","<p>Returns true.\n"],["verify_signature","Net::SSH::Transport::Session::CompatibleVerifier","Net/SSH/Transport/Session/CompatibleVerifier.html#method-i-verify_signature","(&block)",""],["verify_signature","Net::SSH::Verifiers::AcceptNew","Net/SSH/Verifiers/AcceptNew.html#method-i-verify_signature","(&block)",""],["verify_signature","Net::SSH::Verifiers::Always","Net/SSH/Verifiers/Always.html#method-i-verify_signature","(&block)",""],["verify_signature","Net::SSH::Verifiers::Never","Net/SSH/Verifiers/Never.html#method-i-verify_signature","(&block)",""],["wait","Net::SSH::Connection::Channel","Net/SSH/Connection/Channel.html#method-i-wait","()","<p>Runs the SSH event loop until the channel is no longer active. This is\nhandy for blocking while you wait …\n"],["wait","Net::SSH::Transport::Session","Net/SSH/Transport/Session.html#method-i-wait","()","<p>Waits (blocks) until the given block returns true. If no block is given,\nthis just waits long enough …\n"],["wait_for_pending_sends","Net::SSH::BufferedIo","Net/SSH/BufferedIo.html#method-i-wait_for_pending_sends","()","<p>Calls #send_pending repeatedly, if necessary, blocking until the output\nbuffer is empty.\n"],["with_test_extension","Net::SSH::Test::Extensions::IO","Net/SSH/Test/Extensions/IO.html#method-c-with_test_extension","(&block)",""],["write","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write","(*data)","<p>Writes the given data literally into the string. Does not alter the read\nposition. Returns the buffer …\n"],["write","Net::SSH::Test::Socket","Net/SSH/Test/Socket.html#method-i-write","(data)","<p>This doesn&#39;t actually do anything, since we don&#39;t really care what\ngets written.\n"],["write_bignum","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_bignum","(*n)","<p>Writes each argument to the buffer as a bignum (SSH2-style). No checking is\ndone to ensure that the arguments …\n"],["write_bool","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_bool","(*b)","<p>Writes each argument to the buffer as a (C-style) boolean, with 1 meaning\ntrue, and 0 meaning false. …\n"],["write_byte","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_byte","(*n)","<p>Writes each argument to the buffer as a byte. Does not alter the read\nposition. Returns the buffer object. …\n"],["write_int64","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_int64","(*n)","<p>Writes each argument to the buffer as a network-byte-order-encoded 64-bit\ninteger (8 bytes). Does not …\n"],["write_key","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_key","(*key)","<p>Writes the given arguments to the buffer as SSH2-encoded keys. Does not\nalter the read position. Returns …\n"],["write_long","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_long","(*n)","<p>Writes each argument to the buffer as a network-byte-order-encoded long\n(4-byte) integer. Does not alter …\n"],["write_moved","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_moved","(string)","<p>Optimized version of write where the caller gives up ownership of string to\nthe method. This way we can …\n"],["write_mstring","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_mstring","(*text)","<p>Writes each argument to the buffer as an SSH2-encoded string. Each string\nis prefixed by its length, …\n"],["write_string","Net::SSH::Buffer","Net/SSH/Buffer.html#method-i-write_string","(*text)","<p>Writes each argument to the buffer as an SSH2-encoded string. Each string\nis prefixed by its length, …\n"],["xor!","Net::SSH::Transport::CTR","Net/SSH/Transport/CTR.html#method-i-xor-21","(s1, s2)",""],["CHANGES","","CHANGES_txt.html","","<p>6.0.0 beta1\n\n<pre>* curve25519sha256 support [Florian Wininger ,#690]\n* disabled insecure algs [Florian Wininger ...</pre>\n"],["LICENSE","","LICENSE_txt.html","","<p>Copyright © 2008 Jamis Buck\n<p>Permission is hereby granted, free of charge, to any person obtaining a\ncopy …\n"],["README","","README_md.html","","<p><img src=\"https://badge.fury.io/rb/net-ssh.svg\">\n<img\nsrc=\"https://badges.gitter.im/net-ssh/net-ssh.svg\"> ...\n"],["THANKS","","THANKS_txt.html","","<p>Net::SSH was originally written by Jamis Buck &lt;jamis@37signals.com&gt;.\nIt is currently maintained …\n"]]}} \ No newline at end of file
diff --git a/js/search_index.js.gz b/js/search_index.js.gz
index 7a538ff..9d729df 100644
--- a/js/search_index.js.gz
+++ b/js/search_index.js.gz
Binary files differ
diff --git a/js/searcher.js.gz b/js/searcher.js.gz
index 6ef8289..d6e339c 100644
--- a/js/searcher.js.gz
+++ b/js/searcher.js.gz
Binary files differ
diff --git a/table_of_contents.html b/table_of_contents.html
index 9732015..5daa7bb 100644
--- a/table_of_contents.html
+++ b/table_of_contents.html
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
-<title>Table of Contents - net-ssh 4.2.0</title>
+<title>Table of Contents - net-ssh 6.0.0.beta1</title>
<script type="text/javascript">
var rdoc_rel_prefix = "./";
@@ -21,7 +21,7 @@
<body id="top" class="table-of-contents">
<main role="main">
-<h1 class="class">Table of Contents - net-ssh 4.2.0</h1>
+<h1 class="class">Table of Contents - net-ssh 6.0.0.beta1</h1>
<h2 id="pages">Pages</h2>
<ul>
@@ -29,6 +29,20 @@
<a href="CHANGES_txt.html">CHANGES</a>
<ul>
+ <li><a href="CHANGES_txt.html#label-6.0.0+beta1">6.0.0 beta1</a>
+ <li><a href="CHANGES_txt.html#label-5.2.0">5.2.0</a>
+ <li><a href="CHANGES_txt.html#label-5.2.0.rc3">5.2.0.rc3</a>
+ <li><a href="CHANGES_txt.html#label-5.2.0.rc2">5.2.0.rc2</a>
+ <li><a href="CHANGES_txt.html#label-5.2.0.rc1">5.2.0.rc1</a>
+ <li><a href="CHANGES_txt.html#label-5.1.0">5.1.0</a>
+ <li><a href="CHANGES_txt.html#label-5.1.0.rc1">5.1.0.rc1</a>
+ <li><a href="CHANGES_txt.html#label-5.0.2">5.0.2</a>
+ <li><a href="CHANGES_txt.html#label-5.0.1">5.0.1</a>
+ <li><a href="CHANGES_txt.html#label-5.0.0">5.0.0</a>
+ <li><a href="CHANGES_txt.html#label-5.0.0.rc2">5.0.0.rc2</a>
+ <li><a href="CHANGES_txt.html#label-5.0.0.rc1">5.0.0.rc1</a>
+ <li><a href="CHANGES_txt.html#label-5.0.0.beta2">5.0.0.beta2</a>
+ <li><a href="CHANGES_txt.html#label-5.0.0.beta1">5.0.0.beta1</a>
<li><a href="CHANGES_txt.html#label-4.2.0.rc2">4.2.0.rc2</a>
<li><a href="CHANGES_txt.html#label-4.2.0.rc1">4.2.0.rc1</a>
<li><a href="CHANGES_txt.html#label-4.1.0">4.1.0</a>
@@ -130,20 +144,29 @@
<a href="LICENSE_txt.html">LICENSE</a>
</li>
<li class="file">
- <a href="README_rdoc.html">README</a>
+ <a href="README_md.html">README</a>
<ul>
- <li><a href="README_rdoc.html#label-Net-3A-3ASSH+4.x">Net::SSH 4.x</a>
- <li><a href="README_rdoc.html#label-DESCRIPTION-3A">DESCRIPTION:</a>
- <li><a href="README_rdoc.html#label-FEATURES-3A">FEATURES:</a>
- <li><a href="README_rdoc.html#label-SYNOPSIS-3A">SYNOPSIS:</a>
- <li><a href="README_rdoc.html#label-REQUIREMENTS-3A">REQUIREMENTS:</a>
- <li><a href="README_rdoc.html#label-INSTALL-3A">INSTALL:</a>
- <li><a href="README_rdoc.html#label-RUBY+SUPPORT">RUBY SUPPORT</a>
- <li><a href="README_rdoc.html#label-RUNNING+TESTS">RUNNING TESTS</a>
- <li><a href="README_rdoc.html#label-BUILDING+GEM">BUILDING GEM</a>
- <li><a href="README_rdoc.html#label-GEM+SIGNING+-28for+maintainers-29">GEM SIGNING (for maintainers)</a>
- <li><a href="README_rdoc.html#label-LICENSE-3A">LICENSE:</a>
+ <li><a href="README_md.html#label-Net-3A-3ASSH+6.x">Net::SSH 6.x</a>
+ <li><a href="README_md.html#label-DESCRIPTION-3A">DESCRIPTION:</a>
+ <li><a href="README_md.html#label-FEATURES-3A">FEATURES:</a>
+ <li><a href="README_md.html#label-Supported+Algorithms">Supported Algorithms</a>
+ <li><a href="README_md.html#label-Host+Keys">Host Keys</a>
+ <li><a href="README_md.html#label-Key+Exchange">Key Exchange</a>
+ <li><a href="README_md.html#label-Encryption+algorithms+-28ciphers-29">Encryption algorithms (ciphers)</a>
+ <li><a href="README_md.html#label-Message+Authentication+Code+algorithms">Message Authentication Code algorithms</a>
+ <li><a href="README_md.html#label-SYNOPSIS-3A">SYNOPSIS:</a>
+ <li><a href="README_md.html#label-REQUIREMENTS-3A">REQUIREMENTS:</a>
+ <li><a href="README_md.html#label-INSTALL-3A">INSTALL:</a>
+ <li><a href="README_md.html#label-RUBY+SUPPORT">RUBY SUPPORT</a>
+ <li><a href="README_md.html#label-RUNNING+TESTS">RUNNING TESTS</a>
+ <li><a href="README_md.html#label-BUILDING+GEM">BUILDING GEM</a>
+ <li><a href="README_md.html#label-GEM+SIGNING+-28for+maintainers-29">GEM SIGNING (for maintainers)</a>
+ <li><a href="README_md.html#label-CREDITS">CREDITS</a>
+ <li><a href="README_md.html#label-Contributors">Contributors</a>
+ <li><a href="README_md.html#label-Backers">Backers</a>
+ <li><a href="README_md.html#label-Sponsors">Sponsors</a>
+ <li><a href="README_md.html#label-LICENSE-3A">LICENSE:</a>
</ul>
</li>
<li class="file">
@@ -201,6 +224,12 @@
<a href="Net/SSH/Authentication/ED25519.html">Net::SSH::Authentication::ED25519</a>
</li>
<li class="class">
+ <a href="Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader.html">Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader</a>
+ </li>
+ <li class="class">
+ <a href="Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader/DecryptError.html">Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader::DecryptError</a>
+ </li>
+ <li class="class">
<a href="Net/SSH/Authentication/ED25519/PrivKey.html">Net::SSH::Authentication::ED25519::PrivKey</a>
</li>
<li class="class">
@@ -276,9 +305,6 @@
<a href="Net/SSH/ChannelRequestFailed.html">Net::SSH::ChannelRequestFailed</a>
</li>
<li class="class">
- <a href="Net/SSH/Compat.html">Net::SSH::Compat</a>
- </li>
- <li class="class">
<a href="Net/SSH/Config.html">Net::SSH::Config</a>
</li>
<li class="module">
@@ -338,20 +364,29 @@
<li class="class">
<a href="Net/SSH/KeyFactory.html">Net::SSH::KeyFactory</a>
</li>
- <li class="module">
- <a href="Net/SSH/KeyFactory/OpenSSL.html">Net::SSH::KeyFactory::OpenSSL</a>
+ <li class="class">
+ <a href="Net/SSH/KeyFactory/KeyType.html">Net::SSH::KeyFactory::KeyType</a>
</li>
- <li class="module">
- <a href="Net/SSH/KeyFactory/OpenSSL/PKey.html">Net::SSH::KeyFactory::OpenSSL::PKey</a>
+ <li class="class">
+ <a href="Net/SSH/KeyFactory/OpenSSHPrivateKeyType.html">Net::SSH::KeyFactory::OpenSSHPrivateKeyType</a>
</li>
<li class="class">
- <a href="Net/SSH/KnownHosts.html">Net::SSH::KnownHosts</a>
+ <a href="Net/SSH/KeyFactory/OpenSSLDSAKeyType.html">Net::SSH::KeyFactory::OpenSSLDSAKeyType</a>
</li>
- <li class="module">
- <a href="Net/SSH/KnownHosts/OpenSSL.html">Net::SSH::KnownHosts::OpenSSL</a>
+ <li class="class">
+ <a href="Net/SSH/KeyFactory/OpenSSLECKeyType.html">Net::SSH::KeyFactory::OpenSSLECKeyType</a>
</li>
- <li class="module">
- <a href="Net/SSH/KnownHosts/OpenSSL/PKey.html">Net::SSH::KnownHosts::OpenSSL::PKey</a>
+ <li class="class">
+ <a href="Net/SSH/KeyFactory/OpenSSLKeyTypeBase.html">Net::SSH::KeyFactory::OpenSSLKeyTypeBase</a>
+ </li>
+ <li class="class">
+ <a href="Net/SSH/KeyFactory/OpenSSLPKeyType.html">Net::SSH::KeyFactory::OpenSSLPKeyType</a>
+ </li>
+ <li class="class">
+ <a href="Net/SSH/KeyFactory/OpenSSLRSAKeyType.html">Net::SSH::KeyFactory::OpenSSLRSAKeyType</a>
+ </li>
+ <li class="class">
+ <a href="Net/SSH/KnownHosts.html">Net::SSH::KnownHosts</a>
</li>
<li class="module">
<a href="Net/SSH/Loggable.html">Net::SSH::Loggable</a>
@@ -456,12 +491,6 @@
<a href="Net/SSH/Transport/Algorithms.html">Net::SSH::Transport::Algorithms</a>
</li>
<li class="module">
- <a href="Net/SSH/Transport/Algorithms/OpenSSL.html">Net::SSH::Transport::Algorithms::OpenSSL</a>
- </li>
- <li class="module">
- <a href="Net/SSH/Transport/Algorithms/OpenSSL/PKey.html">Net::SSH::Transport::Algorithms::OpenSSL::PKey</a>
- </li>
- <li class="module">
<a href="Net/SSH/Transport/CTR.html">Net::SSH::Transport::CTR</a>
</li>
<li class="class">
@@ -515,22 +544,64 @@
<li class="class">
<a href="Net/SSH/Transport/HMAC/SHA2_256.html">Net::SSH::Transport::HMAC::SHA2_256</a>
</li>
+ <li class="module">
+ <a href="Net/SSH/Transport/HMAC/SHA2_256/OpenSSL.html">Net::SSH::Transport::HMAC::SHA2_256::OpenSSL</a>
+ </li>
+ <li class="module">
+ <a href="Net/SSH/Transport/HMAC/SHA2_256/OpenSSL/Digest.html">Net::SSH::Transport::HMAC::SHA2_256::OpenSSL::Digest</a>
+ </li>
<li class="class">
<a href="Net/SSH/Transport/HMAC/SHA2_256_96.html">Net::SSH::Transport::HMAC::SHA2_256_96</a>
</li>
<li class="class">
+ <a href="Net/SSH/Transport/HMAC/SHA2_256_Etm.html">Net::SSH::Transport::HMAC::SHA2_256_Etm</a>
+ </li>
+ <li class="module">
+ <a href="Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL.html">Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL</a>
+ </li>
+ <li class="module">
+ <a href="Net/SSH/Transport/HMAC/SHA2_256_Etm/OpenSSL/Digest.html">Net::SSH::Transport::HMAC::SHA2_256_Etm::OpenSSL::Digest</a>
+ </li>
+ <li class="class">
<a href="Net/SSH/Transport/HMAC/SHA2_512.html">Net::SSH::Transport::HMAC::SHA2_512</a>
</li>
+ <li class="module">
+ <a href="Net/SSH/Transport/HMAC/SHA2_512/OpenSSL.html">Net::SSH::Transport::HMAC::SHA2_512::OpenSSL</a>
+ </li>
+ <li class="module">
+ <a href="Net/SSH/Transport/HMAC/SHA2_512/OpenSSL/Digest.html">Net::SSH::Transport::HMAC::SHA2_512::OpenSSL::Digest</a>
+ </li>
<li class="class">
<a href="Net/SSH/Transport/HMAC/SHA2_512_96.html">Net::SSH::Transport::HMAC::SHA2_512_96</a>
</li>
<li class="class">
+ <a href="Net/SSH/Transport/HMAC/SHA2_512_Etm.html">Net::SSH::Transport::HMAC::SHA2_512_Etm</a>
+ </li>
+ <li class="module">
+ <a href="Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL.html">Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL</a>
+ </li>
+ <li class="module">
+ <a href="Net/SSH/Transport/HMAC/SHA2_512_Etm/OpenSSL/Digest.html">Net::SSH::Transport::HMAC::SHA2_512_Etm::OpenSSL::Digest</a>
+ </li>
+ <li class="class">
<a href="Net/SSH/Transport/IdentityCipher.html">Net::SSH::Transport::IdentityCipher</a>
</li>
<li class="module">
<a href="Net/SSH/Transport/Kex.html">Net::SSH::Transport::Kex</a>
</li>
<li class="class">
+ <a href="Net/SSH/Transport/Kex/Abstract.html">Net::SSH::Transport::Kex::Abstract</a>
+ </li>
+ <li class="class">
+ <a href="Net/SSH/Transport/Kex/Abstract5656.html">Net::SSH::Transport::Kex::Abstract5656</a>
+ </li>
+ <li class="class">
+ <a href="Net/SSH/Transport/Kex/Curve25519Sha256.html">Net::SSH::Transport::Kex::Curve25519Sha256</a>
+ </li>
+ <li class="module">
+ <a href="Net/SSH/Transport/Kex/Curve25519Sha256Loader.html">Net::SSH::Transport::Kex::Curve25519Sha256Loader</a>
+ </li>
+ <li class="class">
<a href="Net/SSH/Transport/Kex/DiffieHellmanGroup14SHA1.html">Net::SSH::Transport::Kex::DiffieHellmanGroup14SHA1</a>
</li>
<li class="class">
@@ -554,6 +625,9 @@
<li class="module">
<a href="Net/SSH/Transport/KeyExpander.html">Net::SSH::Transport::KeyExpander</a>
</li>
+ <li class="class">
+ <a href="Net/SSH/Transport/OpenSSLAESCTR.html">Net::SSH::Transport::OpenSSLAESCTR</a>
+ </li>
<li class="module">
<a href="Net/SSH/Transport/PacketStream.html">Net::SSH::Transport::PacketStream</a>
</li>
@@ -564,22 +638,25 @@
<a href="Net/SSH/Transport/Session.html">Net::SSH::Transport::Session</a>
</li>
<li class="class">
+ <a href="Net/SSH/Transport/Session/CompatibleVerifier.html">Net::SSH::Transport::Session::CompatibleVerifier</a>
+ </li>
+ <li class="class">
<a href="Net/SSH/Transport/State.html">Net::SSH::Transport::State</a>
</li>
<li class="module">
<a href="Net/SSH/Verifiers.html">Net::SSH::Verifiers</a>
</li>
<li class="class">
- <a href="Net/SSH/Verifiers/Lenient.html">Net::SSH::Verifiers::Lenient</a>
+ <a href="Net/SSH/Verifiers/AcceptNew.html">Net::SSH::Verifiers::AcceptNew</a>
</li>
<li class="class">
- <a href="Net/SSH/Verifiers/Null.html">Net::SSH::Verifiers::Null</a>
+ <a href="Net/SSH/Verifiers/AcceptNewOrLocalTunnel.html">Net::SSH::Verifiers::AcceptNewOrLocalTunnel</a>
</li>
<li class="class">
- <a href="Net/SSH/Verifiers/Secure.html">Net::SSH::Verifiers::Secure</a>
+ <a href="Net/SSH/Verifiers/Always.html">Net::SSH::Verifiers::Always</a>
</li>
<li class="class">
- <a href="Net/SSH/Verifiers/Strict.html">Net::SSH::Verifiers::Strict</a>
+ <a href="Net/SSH/Verifiers/Never.html">Net::SSH::Verifiers::Never</a>
</li>
<li class="class">
<a href="Net/SSH/Version.html">Net::SSH::Version</a>
@@ -591,9 +668,6 @@
<a href="OpenSSL/BN.html">OpenSSL::BN</a>
</li>
<li class="module">
- <a href="OpenSSL/Digest.html">OpenSSL::Digest</a>
- </li>
- <li class="module">
<a href="OpenSSL/PKey.html">OpenSSL::PKey</a>
</li>
<li class="class">
@@ -605,20 +679,8 @@
<li class="class">
<a href="OpenSSL/PKey/EC.html">OpenSSL::PKey::EC</a>
</li>
- <li class="module">
- <a href="OpenSSL/PKey/OpenSSL.html">OpenSSL::PKey::OpenSSL</a>
- </li>
- <li class="module">
- <a href="OpenSSL/PKey/OpenSSL/PKey.html">OpenSSL::PKey::OpenSSL::PKey</a>
- </li>
- <li class="module">
- <a href="OpenSSL/PKey/OpenSSL/PKey/OpenSSL.html">OpenSSL::PKey::OpenSSL::PKey::OpenSSL</a>
- </li>
- <li class="module">
- <a href="OpenSSL/PKey/OpenSSL/PKey/OpenSSL/PKey.html">OpenSSL::PKey::OpenSSL::PKey::OpenSSL::PKey</a>
- </li>
<li class="class">
- <a href="OpenSSL/PKey/OpenSSL/PKey/OpenSSL/PKey/ECError.html">OpenSSL::PKey::OpenSSL::PKey::OpenSSL::PKey::ECError</a>
+ <a href="OpenSSL/PKey/EC/Point.html">OpenSSL::PKey::EC::Point</a>
</li>
<li class="class">
<a href="OpenSSL/PKey/PKey.html">OpenSSL::PKey::PKey</a>
@@ -660,6 +722,11 @@
<span class="container">Net::SSH::Transport::IdentityCipher</span>
<li class="method">
+ <a href="Net/SSH/Transport/OpenSSLAESCTR.html#method-c-block_size">::block_size</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::OpenSSLAESCTR</span>
+
+ <li class="method">
<a href="Net/SSH.html#method-c-configuration_for">::configuration_for</a>
&mdash;
<span class="container">Net::SSH</span>
@@ -695,6 +762,11 @@
<span class="container">Net::SSH::Authentication::ED25519Loader</span>
<li class="method">
+ <a href="Net/SSH/Transport/Kex/Curve25519Sha256Loader.html#method-c-dependenciesRequiredForX25519">::dependenciesRequiredForX25519</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::Kex::Curve25519Sha256Loader</span>
+
+ <li class="method">
<a href="Net/SSH/Transport/HMAC/Abstract.html#method-c-digest_class">::digest_class</a>
&mdash;
<span class="container">Net::SSH::Transport::HMAC::Abstract</span>
@@ -705,6 +777,56 @@
<span class="container">Net::SSH::Transport::IdentityCipher</span>
<li class="method">
+ <a href="Net/SSH/KeyFactory/OpenSSHPrivateKeyType.html#method-c-encrypted_key-3F">::encrypted_key?</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::OpenSSHPrivateKeyType</span>
+
+ <li class="method">
+ <a href="Net/SSH/KeyFactory/KeyType.html#method-c-encrypted_key-3F">::encrypted_key?</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::KeyType</span>
+
+ <li class="method">
+ <a href="Net/SSH/KeyFactory/OpenSSLKeyTypeBase.html#method-c-encrypted_key-3F">::encrypted_key?</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::OpenSSLKeyTypeBase</span>
+
+ <li class="method">
+ <a href="Net/SSH/KeyFactory/OpenSSLDSAKeyType.html#method-c-error_classes">::error_classes</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::OpenSSLDSAKeyType</span>
+
+ <li class="method">
+ <a href="Net/SSH/KeyFactory/OpenSSLECKeyType.html#method-c-error_classes">::error_classes</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::OpenSSLECKeyType</span>
+
+ <li class="method">
+ <a href="Net/SSH/KeyFactory/OpenSSHPrivateKeyType.html#method-c-error_classes">::error_classes</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::OpenSSHPrivateKeyType</span>
+
+ <li class="method">
+ <a href="Net/SSH/KeyFactory/OpenSSLRSAKeyType.html#method-c-error_classes">::error_classes</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::OpenSSLRSAKeyType</span>
+
+ <li class="method">
+ <a href="Net/SSH/KeyFactory/KeyType.html#method-c-error_classes">::error_classes</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::KeyType</span>
+
+ <li class="method">
+ <a href="Net/SSH/KeyFactory/OpenSSLPKeyType.html#method-c-error_classes">::error_classes</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::OpenSSLPKeyType</span>
+
+ <li class="method">
+ <a href="Net/SSH/Transport/HMAC/Abstract.html#method-c-etm">::etm</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::HMAC::Abstract</span>
+
+ <li class="method">
<a href="Net/SSH/Transport/KeyExpander.html#method-c-expand_key">::expand_key</a>
&mdash;
<span class="container">Net::SSH::Transport::KeyExpander</span>
@@ -715,14 +837,14 @@
<span class="container">Net::SSH::Config</span>
<li class="method">
- <a href="Net/SSH/Transport/PacketStream.html#method-c-extended">::extended</a>
+ <a href="Net/SSH/Transport/CTR.html#method-c-extended">::extended</a>
&mdash;
- <span class="container">Net::SSH::Transport::PacketStream</span>
+ <span class="container">Net::SSH::Transport::CTR</span>
<li class="method">
- <a href="Net/SSH/Transport/CTR.html#method-c-extended">::extended</a>
+ <a href="Net/SSH/Transport/PacketStream.html#method-c-extended">::extended</a>
&mdash;
- <span class="container">Net::SSH::Transport::CTR</span>
+ <span class="container">Net::SSH::Transport::PacketStream</span>
<li class="method">
<a href="Net/SSH/Test/Extensions/IO.html#method-c-extension_enabled-3F">::extension_enabled?</a>
@@ -745,9 +867,9 @@
<span class="container">Net::SSH::Buffer</span>
<li class="method">
- <a href="Net/SSH/KeyFactory.html#method-c-get">::get</a>
+ <a href="Net/SSH/Transport/CipherFactory.html#method-c-get">::get</a>
&mdash;
- <span class="container">Net::SSH::KeyFactory</span>
+ <span class="container">Net::SSH::Transport::CipherFactory</span>
<li class="method">
<a href="Net/SSH/Transport/HMAC.html#method-c-get">::get</a>
@@ -755,9 +877,9 @@
<span class="container">Net::SSH::Transport::HMAC</span>
<li class="method">
- <a href="Net/SSH/Transport/CipherFactory.html#method-c-get">::get</a>
+ <a href="Net/SSH/KeyFactory.html#method-c-get">::get</a>
&mdash;
- <span class="container">Net::SSH::Transport::CipherFactory</span>
+ <span class="container">Net::SSH::KeyFactory</span>
<li class="method">
<a href="Net/SSH/Transport/CipherFactory.html#method-c-get_lengths">::get_lengths</a>
@@ -775,11 +897,6 @@
<span class="container">Net::SSH::KnownHosts</span>
<li class="method">
- <a href="Net/SSH/Compat.html#method-c-io_select">::io_select</a>
- &mdash;
- <span class="container">Net::SSH::Compat</span>
-
- <li class="method">
<a href="Net/SSH/Transport/IdentityCipher.html#method-c-iv-3D">::iv=</a>
&mdash;
<span class="container">Net::SSH::Transport::IdentityCipher</span>
@@ -840,34 +957,34 @@
<span class="container">Net::SSH::Transport::IdentityCipher</span>
<li class="method">
- <a href="Net/SSH/Authentication/Methods/Abstract.html#method-c-new">::new</a>
+ <a href="Net/SSH/ChannelOpenFailed.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Methods::Abstract</span>
+ <span class="container">Net::SSH::ChannelOpenFailed</span>
<li class="method">
- <a href="Net/SSH/Transport/HMAC/Abstract.html#method-c-new">::new</a>
+ <a href="Net/SSH/Connection/Session/StringWithExitstatus.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Transport::HMAC::Abstract</span>
+ <span class="container">Net::SSH::Connection::Session::StringWithExitstatus</span>
<li class="method">
- <a href="Net/SSH/Prompt/Prompter.html#method-c-new">::new</a>
+ <a href="Net/SSH/Connection/Session/NilChannel.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Prompt::Prompter</span>
+ <span class="container">Net::SSH::Connection::Session::NilChannel</span>
<li class="method">
- <a href="Net/SSH/Proxy/SOCKS5.html#method-c-new">::new</a>
+ <a href="Net/SSH/Authentication/Agent.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Proxy::SOCKS5</span>
+ <span class="container">Net::SSH::Authentication::Agent</span>
<li class="method">
- <a href="Net/SSH/Prompt.html#method-c-new">::new</a>
+ <a href="Net/SSH/Authentication/ED25519/SigningKeyFromFile.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Prompt</span>
+ <span class="container">Net::SSH::Authentication::ED25519::SigningKeyFromFile</span>
<li class="method">
- <a href="Net/SSH/Authentication/ED25519/SigningKeyFromFile.html#method-c-new">::new</a>
+ <a href="Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader/DecryptError.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Authentication::ED25519::SigningKeyFromFile</span>
+ <span class="container">Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader::DecryptError</span>
<li class="method">
<a href="Net/SSH/Authentication/ED25519/PubKey.html#method-c-new">::new</a>
@@ -875,19 +992,19 @@
<span class="container">Net::SSH::Authentication::ED25519::PubKey</span>
<li class="method">
- <a href="Net/SSH/Packet.html#method-c-new">::new</a>
+ <a href="Net/SSH/Authentication/ED25519/PrivKey.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Packet</span>
+ <span class="container">Net::SSH::Authentication::ED25519::PrivKey</span>
<li class="method">
- <a href="Net/SSH/KnownHosts.html#method-c-new">::new</a>
+ <a href="Net/SSH/Version.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::KnownHosts</span>
+ <span class="container">Net::SSH::Version</span>
<li class="method">
- <a href="Net/SSH/Authentication/ED25519/PrivKey.html#method-c-new">::new</a>
+ <a href="Net/SSH/Transport/State.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Authentication::ED25519::PrivKey</span>
+ <span class="container">Net::SSH::Transport::State</span>
<li class="method">
<a href="Net/SSH/Authentication/KeyManager.html#method-c-new">::new</a>
@@ -895,159 +1012,159 @@
<span class="container">Net::SSH::Authentication::KeyManager</span>
<li class="method">
- <a href="Net/SSH/HostKeys.html#method-c-new">::new</a>
+ <a href="Net/SSH/Transport/Session/CompatibleVerifier.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::HostKeys</span>
+ <span class="container">Net::SSH::Transport::Session::CompatibleVerifier</span>
<li class="method">
- <a href="Net/SSH/Connection/EventLoop.html#method-c-new">::new</a>
+ <a href="Net/SSH/Transport/Session.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Connection::EventLoop</span>
+ <span class="container">Net::SSH::Transport::Session</span>
<li class="method">
- <a href="Net/SSH/Authentication/Agent.html#method-c-new">::new</a>
+ <a href="Net/SSH/Transport/ServerVersion.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Agent</span>
+ <span class="container">Net::SSH::Transport::ServerVersion</span>
<li class="method">
- <a href="Net/SSH/Proxy/Jump.html#method-c-new">::new</a>
+ <a href="Net/SSH/Transport/Kex/Abstract.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Proxy::Jump</span>
+ <span class="container">Net::SSH::Transport::Kex::Abstract</span>
<li class="method">
- <a href="Net/SSH/Proxy/HTTP.html#method-c-new">::new</a>
+ <a href="Net/SSH/Authentication/Methods/Abstract.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Proxy::HTTP</span>
+ <span class="container">Net::SSH::Authentication::Methods::Abstract</span>
<li class="method">
- <a href="Net/SSH/Proxy/HTTPS.html#method-c-new">::new</a>
+ <a href="Net/SSH/Authentication/Pageant/Socket.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Proxy::HTTPS</span>
+ <span class="container">Net::SSH::Authentication::Pageant::Socket</span>
<li class="method">
- <a href="Net/SSH/Proxy/Command.html#method-c-new">::new</a>
+ <a href="Net/SSH/Authentication/Session.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Proxy::Command</span>
+ <span class="container">Net::SSH::Authentication::Session</span>
<li class="method">
- <a href="Net/SSH/Authentication/Pageant/Socket.html#method-c-new">::new</a>
+ <a href="Net/SSH/Transport/HMAC/Abstract.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Pageant::Socket</span>
+ <span class="container">Net::SSH::Transport::HMAC::Abstract</span>
<li class="method">
- <a href="Net/SSH/Version.html#method-c-new">::new</a>
+ <a href="Net/SSH/Buffer.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Version</span>
+ <span class="container">Net::SSH::Buffer</span>
<li class="method">
- <a href="Net/SSH/Authentication/Session.html#method-c-new">::new</a>
+ <a href="Net/SSH/Transport/OpenSSLAESCTR.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Session</span>
+ <span class="container">Net::SSH::Transport::OpenSSLAESCTR</span>
<li class="method">
- <a href="Net/SSH/Proxy/SOCKS4.html#method-c-new">::new</a>
+ <a href="Net/SSH/Transport/Algorithms.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Proxy::SOCKS4</span>
+ <span class="container">Net::SSH::Transport::Algorithms</span>
<li class="method">
- <a href="Net/SSH/Buffer.html#method-c-new">::new</a>
+ <a href="Net/SSH/Test/Socket.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Buffer</span>
+ <span class="container">Net::SSH::Test::Socket</span>
<li class="method">
- <a href="Net/SSH/Service/Forward.html#method-c-new">::new</a>
+ <a href="Net/SSH/Test/Script.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Service::Forward</span>
+ <span class="container">Net::SSH::Test::Script</span>
<li class="method">
- <a href="Net/SSH/ChannelOpenFailed.html#method-c-new">::new</a>
+ <a href="Net/SSH/Test/Packet.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::ChannelOpenFailed</span>
+ <span class="container">Net::SSH::Test::Packet</span>
<li class="method">
- <a href="Net/SSH/Connection/Session/StringWithExitstatus.html#method-c-new">::new</a>
+ <a href="Net/SSH/Test/LocalPacket.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Connection::Session::StringWithExitstatus</span>
+ <span class="container">Net::SSH::Test::LocalPacket</span>
<li class="method">
- <a href="Net/SSH/Connection/Session/NilChannel.html#method-c-new">::new</a>
+ <a href="Net/SSH/Test/Kex.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Connection::Session::NilChannel</span>
+ <span class="container">Net::SSH::Test::Kex</span>
<li class="method">
- <a href="Net/SSH/Transport/State.html#method-c-new">::new</a>
+ <a href="Net/SSH/Test/Channel.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Transport::State</span>
+ <span class="container">Net::SSH::Test::Channel</span>
<li class="method">
- <a href="Net/SSH/Test/Channel.html#method-c-new">::new</a>
+ <a href="Net/SSH/Connection/Channel.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Test::Channel</span>
+ <span class="container">Net::SSH::Connection::Channel</span>
<li class="method">
- <a href="Net/SSH/Test/Kex.html#method-c-new">::new</a>
+ <a href="Net/SSH/Service/Forward.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Test::Kex</span>
+ <span class="container">Net::SSH::Service::Forward</span>
<li class="method">
- <a href="Net/SSH/Test/LocalPacket.html#method-c-new">::new</a>
+ <a href="Net/SSH/Proxy/SOCKS5.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Test::LocalPacket</span>
+ <span class="container">Net::SSH::Proxy::SOCKS5</span>
<li class="method">
- <a href="Net/SSH/Transport/Session.html#method-c-new">::new</a>
+ <a href="Net/SSH/Proxy/SOCKS4.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Transport::Session</span>
+ <span class="container">Net::SSH::Proxy::SOCKS4</span>
<li class="method">
- <a href="Net/SSH/Transport/ServerVersion.html#method-c-new">::new</a>
+ <a href="Net/SSH/Proxy/Jump.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Transport::ServerVersion</span>
+ <span class="container">Net::SSH::Proxy::Jump</span>
<li class="method">
- <a href="Net/SSH/Test/Packet.html#method-c-new">::new</a>
+ <a href="Net/SSH/Proxy/HTTPS.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Test::Packet</span>
+ <span class="container">Net::SSH::Proxy::HTTPS</span>
<li class="method">
- <a href="Net/SSH/Test/Script.html#method-c-new">::new</a>
+ <a href="Net/SSH/Proxy/HTTP.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Test::Script</span>
+ <span class="container">Net::SSH::Proxy::HTTP</span>
<li class="method">
- <a href="Net/SSH/Test/Socket.html#method-c-new">::new</a>
+ <a href="Net/SSH/Proxy/Command.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Test::Socket</span>
+ <span class="container">Net::SSH::Proxy::Command</span>
<li class="method">
- <a href="Net/SSH/Transport/Kex/EcdhSHA2NistP256.html#method-c-new">::new</a>
+ <a href="Net/SSH/Prompt/Prompter.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Transport::Kex::EcdhSHA2NistP256</span>
+ <span class="container">Net::SSH::Prompt::Prompter</span>
<li class="method">
- <a href="Net/SSH/Connection/Session.html#method-c-new">::new</a>
+ <a href="Net/SSH/Prompt.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Connection::Session</span>
+ <span class="container">Net::SSH::Prompt</span>
<li class="method">
- <a href="Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA256.html#method-c-new">::new</a>
+ <a href="Net/SSH/Packet.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Transport::Kex::DiffieHellmanGroupExchangeSHA256</span>
+ <span class="container">Net::SSH::Packet</span>
<li class="method">
- <a href="Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html#method-c-new">::new</a>
+ <a href="Net/SSH/KnownHosts.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Transport::Kex::DiffieHellmanGroup1SHA1</span>
+ <span class="container">Net::SSH::KnownHosts</span>
<li class="method">
- <a href="Net/SSH/Connection/Channel.html#method-c-new">::new</a>
+ <a href="Net/SSH/HostKeys.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Connection::Channel</span>
+ <span class="container">Net::SSH::HostKeys</span>
<li class="method">
- <a href="Net/SSH/Transport/Algorithms.html#method-c-new">::new</a>
+ <a href="Net/SSH/Connection/EventLoop.html#method-c-new">::new</a>
&mdash;
- <span class="container">Net::SSH::Transport::Algorithms</span>
+ <span class="container">Net::SSH::Connection::EventLoop</span>
<li class="method">
<a href="Net/SSH/Connection/Keepalive.html#method-c-new">::new</a>
@@ -1055,34 +1172,84 @@
<span class="container">Net::SSH::Connection::Keepalive</span>
<li class="method">
+ <a href="Net/SSH/Connection/Session.html#method-c-new">::new</a>
+ &mdash;
+ <span class="container">Net::SSH::Connection::Session</span>
+
+ <li class="method">
<a href="Net/SSH/Authentication/Pageant/Socket.html#method-c-open">::open</a>
&mdash;
<span class="container">Net::SSH::Authentication::Pageant::Socket</span>
<li class="method">
+ <a href="Net/SSH/KeyFactory/OpenSSLKeyTypeBase.html#method-c-open_ssl_class">::open_ssl_class</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::OpenSSLKeyTypeBase</span>
+
+ <li class="method">
+ <a href="Net/SSH/KeyFactory/OpenSSLDSAKeyType.html#method-c-open_ssl_class">::open_ssl_class</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::OpenSSLDSAKeyType</span>
+
+ <li class="method">
+ <a href="Net/SSH/KeyFactory/OpenSSLPKeyType.html#method-c-open_ssl_class">::open_ssl_class</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::OpenSSLPKeyType</span>
+
+ <li class="method">
+ <a href="Net/SSH/KeyFactory/OpenSSLRSAKeyType.html#method-c-open_ssl_class">::open_ssl_class</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::OpenSSLRSAKeyType</span>
+
+ <li class="method">
+ <a href="Net/SSH/KeyFactory/OpenSSLECKeyType.html#method-c-open_ssl_class">::open_ssl_class</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::OpenSSLECKeyType</span>
+
+ <li class="method">
<a href="Net/SSH/Authentication/ED25519Loader.html#method-c-raiseUnlessLoaded">::raiseUnlessLoaded</a>
&mdash;
<span class="container">Net::SSH::Authentication::ED25519Loader</span>
<li class="method">
+ <a href="Net/SSH/Transport/Kex/Curve25519Sha256Loader.html#method-c-raiseUnlessLoaded">::raiseUnlessLoaded</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::Kex::Curve25519Sha256Loader</span>
+
+ <li class="method">
+ <a href="Net/SSH/KeyFactory/OpenSSHPrivateKeyType.html#method-c-read">::read</a>
+ &mdash;
+ <span class="container">Net::SSH::KeyFactory::OpenSSHPrivateKeyType</span>
+
+ <li class="method">
<a href="Net/SSH/Authentication/ED25519/PrivKey.html#method-c-read">::read</a>
&mdash;
<span class="container">Net::SSH::Authentication::ED25519::PrivKey</span>
<li class="method">
- <a href="Net/SSH/Authentication/Certificate.html#method-c-read_certblob">::read_certblob</a>
+ <a href="Net/SSH/KeyFactory/OpenSSLKeyTypeBase.html#method-c-read">::read</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Certificate</span>
+ <span class="container">Net::SSH::KeyFactory::OpenSSLKeyTypeBase</span>
<li class="method">
- <a href="OpenSSL/PKey/EC.html#method-c-read_keyblob">::read_keyblob</a>
+ <a href="Net/SSH/KeyFactory/KeyType.html#method-c-read">::read</a>
&mdash;
- <span class="container">OpenSSL::PKey::EC</span>
+ <span class="container">Net::SSH::KeyFactory::KeyType</span>
<li class="method">
- <a href="Net/SSH/Authentication/ED25519/PrivKey.html#method-c-read_keyblob">::read_keyblob</a>
+ <a href="Net/SSH/KeyFactory/OpenSSLPKeyType.html#method-c-read">::read</a>
&mdash;
- <span class="container">Net::SSH::Authentication::ED25519::PrivKey</span>
+ <span class="container">Net::SSH::KeyFactory::OpenSSLPKeyType</span>
+
+ <li class="method">
+ <a href="Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader.html#method-c-read">::read</a>
+ &mdash;
+ <span class="container">Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader</span>
+
+ <li class="method">
+ <a href="Net/SSH/Authentication/Certificate.html#method-c-read_certblob">::read_certblob</a>
+ &mdash;
+ <span class="container">Net::SSH::Authentication::Certificate</span>
<li class="method">
<a href="Net/SSH/Authentication/ED25519/PubKey.html#method-c-read_keyblob">::read_keyblob</a>
@@ -1090,6 +1257,11 @@
<span class="container">Net::SSH::Authentication::ED25519::PubKey</span>
<li class="method">
+ <a href="OpenSSL/PKey/EC.html#method-c-read_keyblob">::read_keyblob</a>
+ &mdash;
+ <span class="container">OpenSSL::PKey::EC</span>
+
+ <li class="method">
<a href="Net/SSH/Packet.html#method-c-register">::register</a>
&mdash;
<span class="container">Net::SSH::Packet</span>
@@ -1165,16 +1337,6 @@
<span class="container">Net::SSH::Transport::Algorithms</span>
<li class="method">
- <a href="Net/SSH/Connection/Session.html#method-i-5B-5D">#[]</a>
- &mdash;
- <span class="container">Net::SSH::Connection::Session</span>
-
- <li class="method">
- <a href="Net/SSH/Packet.html#method-i-5B-5D">#[]</a>
- &mdash;
- <span class="container">Net::SSH::Packet</span>
-
- <li class="method">
<a href="Net/SSH/Connection/Channel.html#method-i-5B-5D">#[]</a>
&mdash;
<span class="container">Net::SSH::Connection::Channel</span>
@@ -1185,7 +1347,12 @@
<span class="container">Net::SSH::HostKeyError</span>
<li class="method">
- <a href="Net/SSH/Connection/Session.html#method-i-5B-5D-3D">#[]=</a>
+ <a href="Net/SSH/Packet.html#method-i-5B-5D">#[]</a>
+ &mdash;
+ <span class="container">Net::SSH::Packet</span>
+
+ <li class="method">
+ <a href="Net/SSH/Connection/Session.html#method-i-5B-5D">#[]</a>
&mdash;
<span class="container">Net::SSH::Connection::Session</span>
@@ -1195,6 +1362,11 @@
<span class="container">Net::SSH::Connection::Channel</span>
<li class="method">
+ <a href="Net/SSH/Connection/Session.html#method-i-5B-5D-3D">#[]=</a>
+ &mdash;
+ <span class="container">Net::SSH::Connection::Session</span>
+
+ <li class="method">
<a href="Net/SSH/Transport/Algorithms.html#method-i-accept_kexinit">#accept_kexinit</a>
&mdash;
<span class="container">Net::SSH::Transport::Algorithms</span>
@@ -1250,14 +1422,14 @@
<span class="container">Net::SSH::Authentication::KeyManager</span>
<li class="method">
- <a href="Net/SSH/Authentication/KeyManager.html#method-i-agent">#agent</a>
+ <a href="Net/SSH/Service/Forward.html#method-i-agent">#agent</a>
&mdash;
- <span class="container">Net::SSH::Authentication::KeyManager</span>
+ <span class="container">Net::SSH::Service::Forward</span>
<li class="method">
- <a href="Net/SSH/Service/Forward.html#method-i-agent">#agent</a>
+ <a href="Net/SSH/Authentication/KeyManager.html#method-i-agent">#agent</a>
&mdash;
- <span class="container">Net::SSH::Service::Forward</span>
+ <span class="container">Net::SSH::Authentication::KeyManager</span>
<li class="method">
<a href="Net/SSH/Transport/Algorithms.html#method-i-allow-3F">#allow?</a>
@@ -1280,44 +1452,44 @@
<span class="container">Net::SSH::Test</span>
<li class="method">
- <a href="Net/SSH/Authentication/Methods/Password.html#method-i-authenticate">#authenticate</a>
+ <a href="Net/SSH/Authentication/Methods/None.html#method-i-authenticate">#authenticate</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Methods::Password</span>
+ <span class="container">Net::SSH::Authentication::Methods::None</span>
<li class="method">
- <a href="Net/SSH/Authentication/Methods/Hostbased.html#method-i-authenticate">#authenticate</a>
+ <a href="Net/SSH/Authentication/Session.html#method-i-authenticate">#authenticate</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Methods::Hostbased</span>
+ <span class="container">Net::SSH::Authentication::Session</span>
<li class="method">
- <a href="Net/SSH/Authentication/Methods/KeyboardInteractive.html#method-i-authenticate">#authenticate</a>
+ <a href="Net/SSH/Authentication/Methods/Publickey.html#method-i-authenticate">#authenticate</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Methods::KeyboardInteractive</span>
+ <span class="container">Net::SSH::Authentication::Methods::Publickey</span>
<li class="method">
- <a href="Net/SSH/Authentication/Methods/None.html#method-i-authenticate">#authenticate</a>
+ <a href="Net/SSH/Authentication/Methods/Password.html#method-i-authenticate">#authenticate</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Methods::None</span>
+ <span class="container">Net::SSH::Authentication::Methods::Password</span>
<li class="method">
- <a href="Net/SSH/Authentication/Methods/Publickey.html#method-i-authenticate">#authenticate</a>
+ <a href="Net/SSH/Authentication/Methods/KeyboardInteractive.html#method-i-authenticate">#authenticate</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Methods::Publickey</span>
+ <span class="container">Net::SSH::Authentication::Methods::KeyboardInteractive</span>
<li class="method">
- <a href="Net/SSH/Authentication/Session.html#method-i-authenticate">#authenticate</a>
+ <a href="Net/SSH/Authentication/Methods/Hostbased.html#method-i-authenticate">#authenticate</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Session</span>
+ <span class="container">Net::SSH::Authentication::Methods::Hostbased</span>
<li class="method">
- <a href="Net/SSH/BufferedIo.html#method-i-available">#available</a>
+ <a href="Net/SSH/Buffer.html#method-i-available">#available</a>
&mdash;
- <span class="container">Net::SSH::BufferedIo</span>
+ <span class="container">Net::SSH::Buffer</span>
<li class="method">
- <a href="Net/SSH/Buffer.html#method-i-available">#available</a>
+ <a href="Net/SSH/BufferedIo.html#method-i-available">#available</a>
&mdash;
- <span class="container">Net::SSH::Buffer</span>
+ <span class="container">Net::SSH::BufferedIo</span>
<li class="method">
<a href="Net/SSH/Transport/PacketStream.html#method-i-available_for_read-3F">#available_for_read?</a>
@@ -1325,6 +1497,11 @@
<span class="container">Net::SSH::Transport::PacketStream</span>
<li class="method">
+ <a href="Net/SSH/Transport/OpenSSLAESCTR.html#method-i-block_size">#block_size</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::OpenSSLAESCTR</span>
+
+ <li class="method">
<a href="Net/SSH/Proxy/Jump.html#method-i-build_proxy_command_equivalent">#build_proxy_command_equivalent</a>
&mdash;
<span class="container">Net::SSH::Proxy::Jump</span>
@@ -1350,14 +1527,14 @@
<span class="container">Net::SSH::Service::Forward</span>
<li class="method">
- <a href="Net/SSH/Transport/PacketStream.html#method-i-cleanup">#cleanup</a>
+ <a href="Net/SSH/Transport/State.html#method-i-cleanup">#cleanup</a>
&mdash;
- <span class="container">Net::SSH::Transport::PacketStream</span>
+ <span class="container">Net::SSH::Transport::State</span>
<li class="method">
- <a href="Net/SSH/Transport/State.html#method-i-cleanup">#cleanup</a>
+ <a href="Net/SSH/Transport/PacketStream.html#method-i-cleanup">#cleanup</a>
&mdash;
- <span class="container">Net::SSH::Transport::State</span>
+ <span class="container">Net::SSH::Transport::PacketStream</span>
<li class="method">
<a href="Net/SSH/Connection/Session.html#method-i-cleanup_channel">#cleanup_channel</a>
@@ -1365,14 +1542,14 @@
<span class="container">Net::SSH::Connection::Session</span>
<li class="method">
- <a href="Net/SSH/Authentication/KeyManager.html#method-i-clear-21">#clear!</a>
+ <a href="Net/SSH/Buffer.html#method-i-clear-21">#clear!</a>
&mdash;
- <span class="container">Net::SSH::Authentication::KeyManager</span>
+ <span class="container">Net::SSH::Buffer</span>
<li class="method">
- <a href="Net/SSH/Buffer.html#method-i-clear-21">#clear!</a>
+ <a href="Net/SSH/Authentication/KeyManager.html#method-i-clear-21">#clear!</a>
&mdash;
- <span class="container">Net::SSH::Buffer</span>
+ <span class="container">Net::SSH::Authentication::KeyManager</span>
<li class="method">
<a href="Net/SSH/Transport/PacketStream.html#method-i-client_name">#client_name</a>
@@ -1380,9 +1557,9 @@
<span class="container">Net::SSH::Transport::PacketStream</span>
<li class="method">
- <a href="Net/SSH/Transport/Session.html#method-i-close">#close</a>
+ <a href="Net/SSH/Authentication/Pageant/Socket.html#method-i-close">#close</a>
&mdash;
- <span class="container">Net::SSH::Transport::Session</span>
+ <span class="container">Net::SSH::Authentication::Pageant::Socket</span>
<li class="method">
<a href="Net/SSH/Authentication/Agent.html#method-i-close">#close</a>
@@ -1390,11 +1567,6 @@
<span class="container">Net::SSH::Authentication::Agent</span>
<li class="method">
- <a href="Net/SSH/Authentication/Pageant/Socket.html#method-i-close">#close</a>
- &mdash;
- <span class="container">Net::SSH::Authentication::Pageant::Socket</span>
-
- <li class="method">
<a href="Net/SSH/Connection/Channel.html#method-i-close">#close</a>
&mdash;
<span class="container">Net::SSH::Connection::Channel</span>
@@ -1405,9 +1577,14 @@
<span class="container">Net::SSH::Connection::Session</span>
<li class="method">
- <a href="Net/SSH/Connection/Session.html#method-i-closed-3F">#closed?</a>
+ <a href="Net/SSH/Transport/Session.html#method-i-close">#close</a>
&mdash;
- <span class="container">Net::SSH::Connection::Session</span>
+ <span class="container">Net::SSH::Transport::Session</span>
+
+ <li class="method">
+ <a href="Net/SSH/Proxy/Command.html#method-i-close_on_error">#close_on_error</a>
+ &mdash;
+ <span class="container">Net::SSH::Proxy::Command</span>
<li class="method">
<a href="Net/SSH/Transport/Session.html#method-i-closed-3F">#closed?</a>
@@ -1415,6 +1592,11 @@
<span class="container">Net::SSH::Transport::Session</span>
<li class="method">
+ <a href="Net/SSH/Connection/Session.html#method-i-closed-3F">#closed?</a>
+ &mdash;
+ <span class="container">Net::SSH::Connection::Session</span>
+
+ <li class="method">
<a href="Net/SSH/Connection/Channel.html#method-i-closing-3F">#closing?</a>
&mdash;
<span class="container">Net::SSH::Connection::Channel</span>
@@ -1460,14 +1642,14 @@
<span class="container">Net::SSH::Buffer</span>
<li class="method">
- <a href="Net/SSH/Transport/Kex/EcdhSHA2NistP256.html#method-i-curve_name">#curve_name</a>
+ <a href="Net/SSH/Transport/Kex/EcdhSHA2NistP384.html#method-i-curve_name">#curve_name</a>
&mdash;
- <span class="container">Net::SSH::Transport::Kex::EcdhSHA2NistP256</span>
+ <span class="container">Net::SSH::Transport::Kex::EcdhSHA2NistP384</span>
<li class="method">
- <a href="Net/SSH/Transport/Kex/EcdhSHA2NistP384.html#method-i-curve_name">#curve_name</a>
+ <a href="Net/SSH/Transport/Kex/Abstract5656.html#method-i-curve_name">#curve_name</a>
&mdash;
- <span class="container">Net::SSH::Transport::Kex::EcdhSHA2NistP384</span>
+ <span class="container">Net::SSH::Transport::Kex::Abstract5656</span>
<li class="method">
<a href="Net/SSH/Transport/Kex/EcdhSHA2NistP521.html#method-i-curve_name">#curve_name</a>
@@ -1475,6 +1657,11 @@
<span class="container">Net::SSH::Transport::Kex::EcdhSHA2NistP521</span>
<li class="method">
+ <a href="Net/SSH/Transport/Kex/EcdhSHA2NistP256.html#method-i-curve_name">#curve_name</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::Kex::EcdhSHA2NistP256</span>
+
+ <li class="method">
<a href="Net/SSH/Loggable.html#method-i-debug">#debug</a>
&mdash;
<span class="container">Net::SSH::Loggable</span>
@@ -1495,14 +1682,14 @@
<span class="container">Net::SSH::Transport::CTR</span>
<li class="method">
- <a href="Net/SSH/Transport/HMAC/Abstract.html#method-i-digest">#digest</a>
+ <a href="Net/SSH/Transport/HMAC/None.html#method-i-digest">#digest</a>
&mdash;
- <span class="container">Net::SSH::Transport::HMAC::Abstract</span>
+ <span class="container">Net::SSH::Transport::HMAC::None</span>
<li class="method">
- <a href="Net/SSH/Transport/HMAC/None.html#method-i-digest">#digest</a>
+ <a href="Net/SSH/Transport/HMAC/Abstract.html#method-i-digest">#digest</a>
&mdash;
- <span class="container">Net::SSH::Transport::HMAC::None</span>
+ <span class="container">Net::SSH::Transport::HMAC::Abstract</span>
<li class="method">
<a href="Net/SSH/Transport/HMAC/Abstract.html#method-i-digest_class">#digest_class</a>
@@ -1510,6 +1697,31 @@
<span class="container">Net::SSH::Transport::HMAC::Abstract</span>
<li class="method">
+ <a href="Net/SSH/Transport/Kex/EcdhSHA2NistP521.html#method-i-digester">#digester</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::Kex::EcdhSHA2NistP521</span>
+
+ <li class="method">
+ <a href="Net/SSH/Transport/Kex/Abstract.html#method-i-digester">#digester</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::Kex::Abstract</span>
+
+ <li class="method">
+ <a href="Net/SSH/Transport/Kex/Curve25519Sha256.html#method-i-digester">#digester</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::Kex::Curve25519Sha256</span>
+
+ <li class="method">
+ <a href="Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html#method-i-digester">#digester</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::Kex::DiffieHellmanGroup1SHA1</span>
+
+ <li class="method">
+ <a href="Net/SSH/Transport/Kex/DiffieHellmanGroupExchangeSHA256.html#method-i-digester">#digester</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::Kex::DiffieHellmanGroupExchangeSHA256</span>
+
+ <li class="method">
<a href="Net/SSH/Transport/Kex/EcdhSHA2NistP256.html#method-i-digester">#digester</a>
&mdash;
<span class="container">Net::SSH::Transport::Kex::EcdhSHA2NistP256</span>
@@ -1520,11 +1732,6 @@
<span class="container">Net::SSH::Transport::Kex::EcdhSHA2NistP384</span>
<li class="method">
- <a href="Net/SSH/Transport/Kex/EcdhSHA2NistP521.html#method-i-digester">#digester</a>
- &mdash;
- <span class="container">Net::SSH::Transport::Kex::EcdhSHA2NistP521</span>
-
- <li class="method">
<a href="Net/SSH/Connection/Channel.html#method-i-do_close">#do_close</a>
&mdash;
<span class="container">Net::SSH::Connection::Channel</span>
@@ -1565,14 +1772,14 @@
<span class="container">Net::SSH::Authentication::KeyManager</span>
<li class="method">
- <a href="Net/SSH/Buffer.html#method-i-empty-3F">#empty?</a>
+ <a href="Net/SSH/HostKeys.html#method-i-empty-3F">#empty?</a>
&mdash;
- <span class="container">Net::SSH::Buffer</span>
+ <span class="container">Net::SSH::HostKeys</span>
<li class="method">
- <a href="Net/SSH/HostKeys.html#method-i-empty-3F">#empty?</a>
+ <a href="Net/SSH/Buffer.html#method-i-empty-3F">#empty?</a>
&mdash;
- <span class="container">Net::SSH::HostKeys</span>
+ <span class="container">Net::SSH::Buffer</span>
<li class="method">
<a href="Net/SSH/Connection/Keepalive.html#method-i-enabled-3F">#enabled?</a>
@@ -1585,6 +1792,11 @@
<span class="container">Net::SSH::Transport::CTR</span>
<li class="method">
+ <a href="Net/SSH/Authentication/ED25519/OpenSSHPrivateKeyLoader/DecryptError.html#method-i-encrypted_key-3F">#encrypted_key?</a>
+ &mdash;
+ <span class="container">Net::SSH::Authentication::ED25519::OpenSSHPrivateKeyLoader::DecryptError</span>
+
+ <li class="method">
<a href="Net/SSH/BufferedIo.html#method-i-enqueue">#enqueue</a>
&mdash;
<span class="container">Net::SSH::BufferedIo</span>
@@ -1625,14 +1837,19 @@
<span class="container">Net::SSH::Loggable</span>
<li class="method">
+ <a href="Net/SSH/Proxy/HTTPS.html#method-i-establish_connection">#establish_connection</a>
+ &mdash;
+ <span class="container">Net::SSH::Proxy::HTTPS</span>
+
+ <li class="method">
<a href="Net/SSH/Proxy/HTTP.html#method-i-establish_connection">#establish_connection</a>
&mdash;
<span class="container">Net::SSH::Proxy::HTTP</span>
<li class="method">
- <a href="Net/SSH/Proxy/HTTPS.html#method-i-establish_connection">#establish_connection</a>
+ <a href="Net/SSH/Transport/HMAC/Abstract.html#method-i-etm">#etm</a>
&mdash;
- <span class="container">Net::SSH::Proxy::HTTPS</span>
+ <span class="container">Net::SSH::Transport::HMAC::Abstract</span>
<li class="method">
<a href="Net/SSH/Connection/Session.html#method-i-ev_do_calculate_rw_wait">#ev_do_calculate_rw_wait</a>
@@ -1650,14 +1867,14 @@
<span class="container">Net::SSH::Connection::Session</span>
<li class="method">
- <a href="Net/SSH/Connection/SingleSessionEventLoop.html#method-i-ev_preprocess">#ev_preprocess</a>
+ <a href="Net/SSH/Connection/Session.html#method-i-ev_preprocess">#ev_preprocess</a>
&mdash;
- <span class="container">Net::SSH::Connection::SingleSessionEventLoop</span>
+ <span class="container">Net::SSH::Connection::Session</span>
<li class="method">
- <a href="Net/SSH/Connection/Session.html#method-i-ev_preprocess">#ev_preprocess</a>
+ <a href="Net/SSH/Connection/SingleSessionEventLoop.html#method-i-ev_preprocess">#ev_preprocess</a>
&mdash;
- <span class="container">Net::SSH::Connection::Session</span>
+ <span class="container">Net::SSH::Connection::SingleSessionEventLoop</span>
<li class="method">
<a href="Net/SSH/Connection/EventLoop.html#method-i-ev_preprocess">#ev_preprocess</a>
@@ -1665,14 +1882,14 @@
<span class="container">Net::SSH::Connection::EventLoop</span>
<li class="method">
- <a href="Net/SSH/Connection/SingleSessionEventLoop.html#method-i-ev_select_and_postprocess">#ev_select_and_postprocess</a>
+ <a href="Net/SSH/Connection/EventLoop.html#method-i-ev_select_and_postprocess">#ev_select_and_postprocess</a>
&mdash;
- <span class="container">Net::SSH::Connection::SingleSessionEventLoop</span>
+ <span class="container">Net::SSH::Connection::EventLoop</span>
<li class="method">
- <a href="Net/SSH/Connection/EventLoop.html#method-i-ev_select_and_postprocess">#ev_select_and_postprocess</a>
+ <a href="Net/SSH/Connection/SingleSessionEventLoop.html#method-i-ev_select_and_postprocess">#ev_select_and_postprocess</a>
&mdash;
- <span class="container">Net::SSH::Connection::EventLoop</span>
+ <span class="container">Net::SSH::Connection::SingleSessionEventLoop</span>
<li class="method">
<a href="Net/SSH/Test/Kex.html#method-i-exchange_keys">#exchange_keys</a>
@@ -1680,9 +1897,9 @@
<span class="container">Net::SSH::Test::Kex</span>
<li class="method">
- <a href="Net/SSH/Transport/Kex/DiffieHellmanGroup1SHA1.html#method-i-exchange_keys">#exchange_keys</a>
+ <a href="Net/SSH/Transport/Kex/Abstract.html#method-i-exchange_keys">#exchange_keys</a>
&mdash;
- <span class="container">Net::SSH::Transport::Kex::DiffieHellmanGroup1SHA1</span>
+ <span class="container">Net::SSH::Transport::Kex::Abstract</span>
<li class="method">
<a href="Net/SSH/Connection/Channel.html#method-i-exec">#exec</a>
@@ -1735,21 +1952,11 @@
<span class="container">Net::SSH::Authentication::Certificate</span>
<li class="method">
- <a href="Net/SSH/Authentication/ED25519/PubKey.html#method-i-fingerprint">#fingerprint</a>
- &mdash;
- <span class="container">Net::SSH::Authentication::ED25519::PubKey</span>
-
- <li class="method">
<a href="Net/SSH/HostKeyError.html#method-i-fingerprint">#fingerprint</a>
&mdash;
<span class="container">Net::SSH::HostKeyError</span>
<li class="method">
- <a href="OpenSSL/PKey/PKey.html#method-i-fingerprint">#fingerprint</a>
- &mdash;
- <span class="container">OpenSSL::PKey::PKey</span>
-
- <li class="method">
<a href="Net/SSH/Authentication/KeyManager.html#method-i-finish">#finish</a>
&mdash;
<span class="container">Net::SSH::Authentication::KeyManager</span>
@@ -1830,14 +2037,14 @@
<span class="container">Net::SSH::Transport::Session</span>
<li class="method">
- <a href="Net/SSH/HostKeyError.html#method-i-host">#host</a>
+ <a href="Net/SSH/Connection/Session.html#method-i-host">#host</a>
&mdash;
- <span class="container">Net::SSH::HostKeyError</span>
+ <span class="container">Net::SSH::Connection::Session</span>
<li class="method">
- <a href="Net/SSH/Connection/Session.html#method-i-host">#host</a>
+ <a href="Net/SSH/HostKeyError.html#method-i-host">#host</a>
&mdash;
- <span class="container">Net::SSH::Connection::Session</span>
+ <span class="container">Net::SSH::HostKeyError</span>
<li class="method">
<a href="Net/SSH/Transport/Session.html#method-i-host_as_string">#host_as_string</a>
@@ -1845,6 +2052,11 @@
<span class="container">Net::SSH::Transport::Session</span>
<li class="method">
+ <a href="Net/SSH/Transport/Algorithms.html#method-i-host_key_format">#host_key_format</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::Algorithms</span>
+
+ <li class="method">
<a href="Net/SSH/Transport/Session.html#method-i-host_keys">#host_keys</a>
&mdash;
<span class="container">Net::SSH::Transport::Session</span>
@@ -1920,6 +2132,11 @@
<span class="container">Net::SSH::Transport::CTR</span>
<li class="method">
+ <a href="Net/SSH/Transport/OpenSSLAESCTR.html#method-i-iv-3D">#iv=</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::OpenSSLAESCTR</span>
+
+ <li class="method">
<a href="Net/SSH/Transport/CTR.html#method-i-iv-3D">#iv=</a>
&mdash;
<span class="container">Net::SSH::Transport::CTR</span>
@@ -1975,14 +2192,14 @@
<span class="container">Net::SSH::Service::Forward</span>
<li class="method">
- <a href="Net/SSH/Test/Packet.html#method-i-local-3F">#local?</a>
+ <a href="Net/SSH/Test/LocalPacket.html#method-i-local-3F">#local?</a>
&mdash;
- <span class="container">Net::SSH::Test::Packet</span>
+ <span class="container">Net::SSH::Test::LocalPacket</span>
<li class="method">
- <a href="Net/SSH/Test/LocalPacket.html#method-i-local-3F">#local?</a>
+ <a href="Net/SSH/Test/Packet.html#method-i-local-3F">#local?</a>
&mdash;
- <span class="container">Net::SSH::Test::LocalPacket</span>
+ <span class="container">Net::SSH::Test::Packet</span>
<li class="method">
<a href="Net/SSH/Connection/Channel.html#method-i-local_closed-3F">#local_closed?</a>
@@ -2020,6 +2237,11 @@
<span class="container">Net::SSH::Transport::HMAC::Abstract</span>
<li class="method">
+ <a href="Net/SSH/KnownHosts.html#method-i-match">#match</a>
+ &mdash;
+ <span class="container">Net::SSH::KnownHosts</span>
+
+ <li class="method">
<a href="Net/SSH/Connection/Session.html#method-i-max_select_wait_time">#max_select_wait_time</a>
&mdash;
<span class="container">Net::SSH::Connection::Session</span>
@@ -2060,6 +2282,11 @@
<span class="container">Net::SSH::Transport::PacketStream</span>
<li class="method">
+ <a href="Net/SSH/Authentication/KeyManager.html#method-i-no_keys-3F">#no_keys?</a>
+ &mdash;
+ <span class="container">Net::SSH::Authentication::KeyManager</span>
+
+ <li class="method">
<a href="Net/SSH/Connection/Channel.html#method-i-on_close">#on_close</a>
&mdash;
<span class="container">Net::SSH::Connection::Channel</span>
@@ -2105,14 +2332,14 @@
<span class="container">Net::SSH::Connection::Channel</span>
<li class="method">
- <a href="Net/SSH/Proxy/HTTP.html#method-i-open">#open</a>
+ <a href="Net/SSH/Proxy/Jump.html#method-i-open">#open</a>
&mdash;
- <span class="container">Net::SSH::Proxy::HTTP</span>
+ <span class="container">Net::SSH::Proxy::Jump</span>
<li class="method">
- <a href="Net/SSH/Proxy/Jump.html#method-i-open">#open</a>
+ <a href="Net/SSH/Test/Socket.html#method-i-open">#open</a>
&mdash;
- <span class="container">Net::SSH::Proxy::Jump</span>
+ <span class="container">Net::SSH::Test::Socket</span>
<li class="method">
<a href="Net/SSH/Proxy/Command.html#method-i-open">#open</a>
@@ -2120,14 +2347,14 @@
<span class="container">Net::SSH::Proxy::Command</span>
<li class="method">
- <a href="Net/SSH/Proxy/SOCKS5.html#method-i-open">#open</a>
+ <a href="Net/SSH/Proxy/HTTP.html#method-i-open">#open</a>
&mdash;
- <span class="container">Net::SSH::Proxy::SOCKS5</span>
+ <span class="container">Net::SSH::Proxy::HTTP</span>
<li class="method">
- <a href="Net/SSH/Test/Socket.html#method-i-open">#open</a>
+ <a href="Net/SSH/Proxy/SOCKS5.html#method-i-open">#open</a>
&mdash;
- <span class="container">Net::SSH::Test::Socket</span>
+ <span class="container">Net::SSH::Proxy::SOCKS5</span>
<li class="method">
<a href="Net/SSH/Proxy/SOCKS4.html#method-i-open">#open</a>
@@ -2205,34 +2432,34 @@
<span class="container">Net::SSH::Connection::Session</span>
<li class="method">
- <a href="Net/SSH/Test/RemotePacket.html#method-i-process">#process</a>
+ <a href="Net/SSH/Connection/Channel.html#method-i-process">#process</a>
&mdash;
- <span class="container">Net::SSH::Test::RemotePacket</span>
+ <span class="container">Net::SSH::Connection::Channel</span>
<li class="method">
- <a href="Net/SSH/Test/LocalPacket.html#method-i-process">#process</a>
+ <a href="Net/SSH/Test/Script.html#method-i-process">#process</a>
&mdash;
- <span class="container">Net::SSH::Test::LocalPacket</span>
+ <span class="container">Net::SSH::Test::Script</span>
<li class="method">
- <a href="Net/SSH/Connection/Session.html#method-i-process">#process</a>
+ <a href="Net/SSH/Connection/EventLoop.html#method-i-process">#process</a>
&mdash;
- <span class="container">Net::SSH::Connection::Session</span>
+ <span class="container">Net::SSH::Connection::EventLoop</span>
<li class="method">
- <a href="Net/SSH/Test/Script.html#method-i-process">#process</a>
+ <a href="Net/SSH/Connection/Session.html#method-i-process">#process</a>
&mdash;
- <span class="container">Net::SSH::Test::Script</span>
+ <span class="container">Net::SSH::Connection::Session</span>
<li class="method">
- <a href="Net/SSH/Connection/EventLoop.html#method-i-process">#process</a>
+ <a href="Net/SSH/Test/LocalPacket.html#method-i-process">#process</a>
&mdash;
- <span class="container">Net::SSH::Connection::EventLoop</span>
+ <span class="container">Net::SSH::Test::LocalPacket</span>
<li class="method">
- <a href="Net/SSH/Connection/Channel.html#method-i-process">#process</a>
+ <a href="Net/SSH/Test/RemotePacket.html#method-i-process">#process</a>
&mdash;
- <span class="container">Net::SSH::Connection::Channel</span>
+ <span class="container">Net::SSH::Test::RemotePacket</span>
<li class="method">
<a href="Net/SSH/Connection/EventLoop.html#method-i-process_only">#process_only</a>
@@ -2250,14 +2477,14 @@
<span class="container">Net::SSH::Transport::Session</span>
<li class="method">
- <a href="Net/SSH/Authentication/Pageant/Socket.html#method-i-read">#read</a>
+ <a href="Net/SSH/Buffer.html#method-i-read">#read</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Pageant::Socket</span>
+ <span class="container">Net::SSH::Buffer</span>
<li class="method">
- <a href="Net/SSH/Buffer.html#method-i-read">#read</a>
+ <a href="Net/SSH/Authentication/Pageant/Socket.html#method-i-read">#read</a>
&mdash;
- <span class="container">Net::SSH::Buffer</span>
+ <span class="container">Net::SSH::Authentication::Pageant::Socket</span>
<li class="method">
<a href="Net/SSH/Buffer.html#method-i-read-21">#read!</a>
@@ -2315,6 +2542,11 @@
<span class="container">Net::SSH::Buffer</span>
<li class="method">
+ <a href="Net/SSH/Buffer.html#method-i-read_private_keyblob">#read_private_keyblob</a>
+ &mdash;
+ <span class="container">Net::SSH::Buffer</span>
+
+ <li class="method">
<a href="Net/SSH/Buffer.html#method-i-read_string">#read_string</a>
&mdash;
<span class="container">Net::SSH::Buffer</span>
@@ -2340,14 +2572,14 @@
<span class="container">Net::SSH::Connection::EventLoop</span>
<li class="method">
- <a href="Net/SSH/Transport/Session.html#method-i-rekey-21">#rekey!</a>
+ <a href="Net/SSH/Transport/Algorithms.html#method-i-rekey-21">#rekey!</a>
&mdash;
- <span class="container">Net::SSH::Transport::Session</span>
+ <span class="container">Net::SSH::Transport::Algorithms</span>
<li class="method">
- <a href="Net/SSH/Transport/Algorithms.html#method-i-rekey-21">#rekey!</a>
+ <a href="Net/SSH/Transport/Session.html#method-i-rekey-21">#rekey!</a>
&mdash;
- <span class="container">Net::SSH::Transport::Algorithms</span>
+ <span class="container">Net::SSH::Transport::Session</span>
<li class="method">
<a href="Net/SSH/Transport/Session.html#method-i-rekey_as_needed">#rekey_as_needed</a>
@@ -2420,9 +2652,9 @@
<span class="container">Net::SSH::Transport::CTR</span>
<li class="method">
- <a href="Net/SSH/Transport/State.html#method-i-reset-21">#reset!</a>
+ <a href="Net/SSH/Transport/OpenSSLAESCTR.html#method-i-reset">#reset</a>
&mdash;
- <span class="container">Net::SSH::Transport::State</span>
+ <span class="container">Net::SSH::Transport::OpenSSLAESCTR</span>
<li class="method">
<a href="Net/SSH/Buffer.html#method-i-reset-21">#reset!</a>
@@ -2430,6 +2662,11 @@
<span class="container">Net::SSH::Buffer</span>
<li class="method">
+ <a href="Net/SSH/Transport/State.html#method-i-reset-21">#reset!</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::State</span>
+
+ <li class="method">
<a href="Net/SSH/Test/Extensions/BufferedIo.html#method-i-select_for_read-3F">#select_for_read?</a>
&mdash;
<span class="container">Net::SSH::Test::Extensions::BufferedIo</span>
@@ -2475,11 +2712,6 @@
<span class="container">Net::SSH::Connection::Session</span>
<li class="method">
- <a href="Net/SSH/Authentication/Methods/Abstract.html#method-i-send_message">#send_message</a>
- &mdash;
- <span class="container">Net::SSH::Authentication::Methods::Abstract</span>
-
- <li class="method">
<a href="Net/SSH/Connection/Session.html#method-i-send_message">#send_message</a>
&mdash;
<span class="container">Net::SSH::Connection::Session</span>
@@ -2490,14 +2722,14 @@
<span class="container">Net::SSH::Transport::Session</span>
<li class="method">
- <a href="Net/SSH/Transport/PacketStream.html#method-i-send_packet">#send_packet</a>
+ <a href="Net/SSH/Authentication/Methods/Abstract.html#method-i-send_message">#send_message</a>
&mdash;
- <span class="container">Net::SSH::Transport::PacketStream</span>
+ <span class="container">Net::SSH::Authentication::Methods::Abstract</span>
<li class="method">
- <a href="Net/SSH/ForwardedBufferedIo.html#method-i-send_pending">#send_pending</a>
+ <a href="Net/SSH/Transport/PacketStream.html#method-i-send_packet">#send_packet</a>
&mdash;
- <span class="container">Net::SSH::ForwardedBufferedIo</span>
+ <span class="container">Net::SSH::Transport::PacketStream</span>
<li class="method">
<a href="Net/SSH/BufferedIo.html#method-i-send_pending">#send_pending</a>
@@ -2505,6 +2737,11 @@
<span class="container">Net::SSH::BufferedIo</span>
<li class="method">
+ <a href="Net/SSH/ForwardedBufferedIo.html#method-i-send_pending">#send_pending</a>
+ &mdash;
+ <span class="container">Net::SSH::ForwardedBufferedIo</span>
+
+ <li class="method">
<a href="Net/SSH/Authentication/Pageant/Socket.html#method-i-send_query">#send_query</a>
&mdash;
<span class="container">Net::SSH::Authentication::Pageant::Socket</span>
@@ -2605,11 +2842,6 @@
<span class="container">Net::SSH::Connection::Session</span>
<li class="method">
- <a href="Net/SSH/Authentication/Certificate.html#method-i-sign">#sign</a>
- &mdash;
- <span class="container">Net::SSH::Authentication::Certificate</span>
-
- <li class="method">
<a href="Net/SSH/Authentication/Agent.html#method-i-sign">#sign</a>
&mdash;
<span class="container">Net::SSH::Authentication::Agent</span>
@@ -2620,6 +2852,11 @@
<span class="container">Net::SSH::Authentication::KeyManager</span>
<li class="method">
+ <a href="Net/SSH/Authentication/Certificate.html#method-i-sign">#sign</a>
+ &mdash;
+ <span class="container">Net::SSH::Authentication::Certificate</span>
+
+ <li class="method">
<a href="Net/SSH/Authentication/Certificate.html#method-i-sign-21">#sign!</a>
&mdash;
<span class="container">Net::SSH::Authentication::Certificate</span>
@@ -2635,14 +2872,14 @@
<span class="container">Net::SSH::Test</span>
<li class="method">
- <a href="Net/SSH/Authentication/ED25519/PrivKey.html#method-i-ssh_do_sign">#ssh_do_sign</a>
+ <a href="OpenSSL/PKey/EC.html#method-i-ssh_do_sign">#ssh_do_sign</a>
&mdash;
- <span class="container">Net::SSH::Authentication::ED25519::PrivKey</span>
+ <span class="container">OpenSSL::PKey::EC</span>
<li class="method">
- <a href="Net/SSH/Authentication/Certificate.html#method-i-ssh_do_sign">#ssh_do_sign</a>
+ <a href="Net/SSH/Authentication/ED25519/PrivKey.html#method-i-ssh_do_sign">#ssh_do_sign</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Certificate</span>
+ <span class="container">Net::SSH::Authentication::ED25519::PrivKey</span>
<li class="method">
<a href="OpenSSL/PKey/RSA.html#method-i-ssh_do_sign">#ssh_do_sign</a>
@@ -2650,19 +2887,19 @@
<span class="container">OpenSSL::PKey::RSA</span>
<li class="method">
- <a href="OpenSSL/PKey/DSA.html#method-i-ssh_do_sign">#ssh_do_sign</a>
+ <a href="Net/SSH/Authentication/Certificate.html#method-i-ssh_do_sign">#ssh_do_sign</a>
&mdash;
- <span class="container">OpenSSL::PKey::DSA</span>
+ <span class="container">Net::SSH::Authentication::Certificate</span>
<li class="method">
- <a href="OpenSSL/PKey/EC.html#method-i-ssh_do_sign">#ssh_do_sign</a>
+ <a href="OpenSSL/PKey/DSA.html#method-i-ssh_do_sign">#ssh_do_sign</a>
&mdash;
- <span class="container">OpenSSL::PKey::EC</span>
+ <span class="container">OpenSSL::PKey::DSA</span>
<li class="method">
- <a href="Net/SSH/Authentication/Certificate.html#method-i-ssh_do_verify">#ssh_do_verify</a>
+ <a href="Net/SSH/Authentication/ED25519/PubKey.html#method-i-ssh_do_verify">#ssh_do_verify</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Certificate</span>
+ <span class="container">Net::SSH::Authentication::ED25519::PubKey</span>
<li class="method">
<a href="OpenSSL/PKey/EC.html#method-i-ssh_do_verify">#ssh_do_verify</a>
@@ -2670,9 +2907,9 @@
<span class="container">OpenSSL::PKey::EC</span>
<li class="method">
- <a href="Net/SSH/Authentication/ED25519/PubKey.html#method-i-ssh_do_verify">#ssh_do_verify</a>
+ <a href="OpenSSL/PKey/DSA.html#method-i-ssh_do_verify">#ssh_do_verify</a>
&mdash;
- <span class="container">Net::SSH::Authentication::ED25519::PubKey</span>
+ <span class="container">OpenSSL::PKey::DSA</span>
<li class="method">
<a href="OpenSSL/PKey/RSA.html#method-i-ssh_do_verify">#ssh_do_verify</a>
@@ -2680,9 +2917,9 @@
<span class="container">OpenSSL::PKey::RSA</span>
<li class="method">
- <a href="OpenSSL/PKey/DSA.html#method-i-ssh_do_verify">#ssh_do_verify</a>
+ <a href="Net/SSH/Authentication/Certificate.html#method-i-ssh_do_verify">#ssh_do_verify</a>
&mdash;
- <span class="container">OpenSSL::PKey::DSA</span>
+ <span class="container">Net::SSH::Authentication::Certificate</span>
<li class="method">
<a href="OpenSSL/PKey/RSA.html#method-i-ssh_signature_type">#ssh_signature_type</a>
@@ -2690,11 +2927,21 @@
<span class="container">OpenSSL::PKey::RSA</span>
<li class="method">
+ <a href="Net/SSH/Authentication/ED25519/PrivKey.html#method-i-ssh_signature_type">#ssh_signature_type</a>
+ &mdash;
+ <span class="container">Net::SSH::Authentication::ED25519::PrivKey</span>
+
+ <li class="method">
<a href="Net/SSH/Authentication/Certificate.html#method-i-ssh_signature_type">#ssh_signature_type</a>
&mdash;
<span class="container">Net::SSH::Authentication::Certificate</span>
<li class="method">
+ <a href="Net/SSH/Authentication/ED25519/PubKey.html#method-i-ssh_signature_type">#ssh_signature_type</a>
+ &mdash;
+ <span class="container">Net::SSH::Authentication::ED25519::PubKey</span>
+
+ <li class="method">
<a href="OpenSSL/PKey/EC.html#method-i-ssh_signature_type">#ssh_signature_type</a>
&mdash;
<span class="container">OpenSSL::PKey::EC</span>
@@ -2705,19 +2952,14 @@
<span class="container">OpenSSL::PKey::DSA</span>
<li class="method">
- <a href="Net/SSH/Authentication/ED25519/PrivKey.html#method-i-ssh_signature_type">#ssh_signature_type</a>
- &mdash;
- <span class="container">Net::SSH::Authentication::ED25519::PrivKey</span>
-
- <li class="method">
- <a href="Net/SSH/Authentication/ED25519/PubKey.html#method-i-ssh_signature_type">#ssh_signature_type</a>
+ <a href="Net/SSH/Authentication/ED25519/PubKey.html#method-i-ssh_type">#ssh_type</a>
&mdash;
<span class="container">Net::SSH::Authentication::ED25519::PubKey</span>
<li class="method">
- <a href="Net/SSH/Authentication/ED25519/PubKey.html#method-i-ssh_type">#ssh_type</a>
+ <a href="Net/SSH/Authentication/Certificate.html#method-i-ssh_type">#ssh_type</a>
&mdash;
- <span class="container">Net::SSH::Authentication::ED25519::PubKey</span>
+ <span class="container">Net::SSH::Authentication::Certificate</span>
<li class="method">
<a href="OpenSSL/PKey/EC.html#method-i-ssh_type">#ssh_type</a>
@@ -2725,14 +2967,14 @@
<span class="container">OpenSSL::PKey::EC</span>
<li class="method">
- <a href="OpenSSL/PKey/DSA.html#method-i-ssh_type">#ssh_type</a>
+ <a href="OpenSSL/PKey/RSA.html#method-i-ssh_type">#ssh_type</a>
&mdash;
- <span class="container">OpenSSL::PKey::DSA</span>
+ <span class="container">OpenSSL::PKey::RSA</span>
<li class="method">
- <a href="OpenSSL/PKey/RSA.html#method-i-ssh_type">#ssh_type</a>
+ <a href="OpenSSL/PKey/DSA.html#method-i-ssh_type">#ssh_type</a>
&mdash;
- <span class="container">OpenSSL::PKey::RSA</span>
+ <span class="container">OpenSSL::PKey::DSA</span>
<li class="method">
<a href="Net/SSH/Authentication/ED25519/PrivKey.html#method-i-ssh_type">#ssh_type</a>
@@ -2740,19 +2982,19 @@
<span class="container">Net::SSH::Authentication::ED25519::PrivKey</span>
<li class="method">
- <a href="Net/SSH/Authentication/Certificate.html#method-i-ssh_type">#ssh_type</a>
+ <a href="OpenSSL/PKey/EC/Point.html#method-i-ssh_type">#ssh_type</a>
&mdash;
- <span class="container">Net::SSH::Authentication::Certificate</span>
+ <span class="container">OpenSSL::PKey::EC::Point</span>
<li class="method">
- <a href="Net/SSH/Transport/Algorithms.html#method-i-start">#start</a>
+ <a href="Net/SSH/Prompt.html#method-i-start">#start</a>
&mdash;
- <span class="container">Net::SSH::Transport::Algorithms</span>
+ <span class="container">Net::SSH::Prompt</span>
<li class="method">
- <a href="Net/SSH/Prompt.html#method-i-start">#start</a>
+ <a href="Net/SSH/Transport/Algorithms.html#method-i-start">#start</a>
&mdash;
- <span class="container">Net::SSH::Prompt</span>
+ <span class="container">Net::SSH::Transport::Algorithms</span>
<li class="method">
<a href="Net/SSH/Connection/Session.html#method-i-stop_listening_to">#stop_listening_to</a>
@@ -2790,14 +3032,19 @@
<span class="container">Net::SSH::Test::Extensions::PacketStream</span>
<li class="method">
- <a href="OpenSSL/PKey/RSA.html#method-i-to_blob">#to_blob</a>
+ <a href="OpenSSL/PKey/EC/Point.html#method-i-to_blob">#to_blob</a>
&mdash;
- <span class="container">OpenSSL::PKey::RSA</span>
+ <span class="container">OpenSSL::PKey::EC::Point</span>
<li class="method">
- <a href="Net/SSH/Authentication/ED25519/PubKey.html#method-i-to_blob">#to_blob</a>
+ <a href="Net/SSH/Authentication/ED25519/PrivKey.html#method-i-to_blob">#to_blob</a>
&mdash;
- <span class="container">Net::SSH::Authentication::ED25519::PubKey</span>
+ <span class="container">Net::SSH::Authentication::ED25519::PrivKey</span>
+
+ <li class="method">
+ <a href="OpenSSL/PKey/EC.html#method-i-to_blob">#to_blob</a>
+ &mdash;
+ <span class="container">OpenSSL::PKey::EC</span>
<li class="method">
<a href="OpenSSL/PKey/DSA.html#method-i-to_blob">#to_blob</a>
@@ -2805,14 +3052,14 @@
<span class="container">OpenSSL::PKey::DSA</span>
<li class="method">
- <a href="OpenSSL/PKey/EC.html#method-i-to_blob">#to_blob</a>
+ <a href="Net/SSH/Authentication/ED25519/PubKey.html#method-i-to_blob">#to_blob</a>
&mdash;
- <span class="container">OpenSSL::PKey::EC</span>
+ <span class="container">Net::SSH::Authentication::ED25519::PubKey</span>
<li class="method">
- <a href="Net/SSH/Authentication/ED25519/PrivKey.html#method-i-to_blob">#to_blob</a>
+ <a href="OpenSSL/PKey/RSA.html#method-i-to_blob">#to_blob</a>
&mdash;
- <span class="container">Net::SSH::Authentication::ED25519::PrivKey</span>
+ <span class="container">OpenSSL::PKey::RSA</span>
<li class="method">
<a href="Net/SSH/Authentication/Certificate.html#method-i-to_blob">#to_blob</a>
@@ -2835,11 +3082,6 @@
<span class="container">Net::SSH::Authentication::ED25519::PubKey</span>
<li class="method">
- <a href="Net/SSH/Test/RemotePacket.html#method-i-to_s">#to_s</a>
- &mdash;
- <span class="container">Net::SSH::Test::RemotePacket</span>
-
- <li class="method">
<a href="Net/SSH/Version.html#method-i-to_s">#to_s</a>
&mdash;
<span class="container">Net::SSH::Version</span>
@@ -2850,6 +3092,11 @@
<span class="container">Net::SSH::Buffer</span>
<li class="method">
+ <a href="Net/SSH/Test/RemotePacket.html#method-i-to_s">#to_s</a>
+ &mdash;
+ <span class="container">Net::SSH::Test::RemotePacket</span>
+
+ <li class="method">
<a href="OpenSSL/BN.html#method-i-to_ssh">#to_ssh</a>
&mdash;
<span class="container">OpenSSL::BN</span>
@@ -2895,24 +3142,49 @@
<span class="container">OpenSSL::PKey::DH</span>
<li class="method">
- <a href="Net/SSH/Verifiers/Strict.html#method-i-verify">#verify</a>
+ <a href="Net/SSH/Verifiers/Always.html#method-i-verify">#verify</a>
&mdash;
- <span class="container">Net::SSH::Verifiers::Strict</span>
+ <span class="container">Net::SSH::Verifiers::Always</span>
<li class="method">
- <a href="Net/SSH/Verifiers/Secure.html#method-i-verify">#verify</a>
+ <a href="Net/SSH/Transport/Session/CompatibleVerifier.html#method-i-verify">#verify</a>
&mdash;
- <span class="container">Net::SSH::Verifiers::Secure</span>
+ <span class="container">Net::SSH::Transport::Session::CompatibleVerifier</span>
<li class="method">
- <a href="Net/SSH/Verifiers/Null.html#method-i-verify">#verify</a>
+ <a href="Net/SSH/Verifiers/Never.html#method-i-verify">#verify</a>
&mdash;
- <span class="container">Net::SSH::Verifiers::Null</span>
+ <span class="container">Net::SSH::Verifiers::Never</span>
<li class="method">
- <a href="Net/SSH/Verifiers/Lenient.html#method-i-verify">#verify</a>
+ <a href="Net/SSH/Verifiers/AcceptNewOrLocalTunnel.html#method-i-verify">#verify</a>
&mdash;
- <span class="container">Net::SSH::Verifiers::Lenient</span>
+ <span class="container">Net::SSH::Verifiers::AcceptNewOrLocalTunnel</span>
+
+ <li class="method">
+ <a href="Net/SSH/Verifiers/AcceptNew.html#method-i-verify">#verify</a>
+ &mdash;
+ <span class="container">Net::SSH::Verifiers::AcceptNew</span>
+
+ <li class="method">
+ <a href="Net/SSH/Verifiers/AcceptNew.html#method-i-verify_signature">#verify_signature</a>
+ &mdash;
+ <span class="container">Net::SSH::Verifiers::AcceptNew</span>
+
+ <li class="method">
+ <a href="Net/SSH/Verifiers/Always.html#method-i-verify_signature">#verify_signature</a>
+ &mdash;
+ <span class="container">Net::SSH::Verifiers::Always</span>
+
+ <li class="method">
+ <a href="Net/SSH/Transport/Session/CompatibleVerifier.html#method-i-verify_signature">#verify_signature</a>
+ &mdash;
+ <span class="container">Net::SSH::Transport::Session::CompatibleVerifier</span>
+
+ <li class="method">
+ <a href="Net/SSH/Verifiers/Never.html#method-i-verify_signature">#verify_signature</a>
+ &mdash;
+ <span class="container">Net::SSH::Verifiers::Never</span>
<li class="method">
<a href="Net/SSH/Connection/Channel.html#method-i-wait">#wait</a>
@@ -2930,14 +3202,14 @@
<span class="container">Net::SSH::BufferedIo</span>
<li class="method">
- <a href="Net/SSH/Buffer.html#method-i-write">#write</a>
+ <a href="Net/SSH/Test/Socket.html#method-i-write">#write</a>
&mdash;
- <span class="container">Net::SSH::Buffer</span>
+ <span class="container">Net::SSH::Test::Socket</span>
<li class="method">
- <a href="Net/SSH/Test/Socket.html#method-i-write">#write</a>
+ <a href="Net/SSH/Buffer.html#method-i-write">#write</a>
&mdash;
- <span class="container">Net::SSH::Test::Socket</span>
+ <span class="container">Net::SSH::Buffer</span>
<li class="method">
<a href="Net/SSH/Buffer.html#method-i-write_bignum">#write_bignum</a>