diff options
author | Miklos Fazekas <mfazekas@szemafor.com> | 2019-10-25 19:30:38 +0200 |
---|---|---|
committer | Miklos Fazekas <mfazekas@szemafor.com> | 2019-10-25 19:30:38 +0200 |
commit | f52ea64977dd7dd30fbc49ac651cb5f784b0818c (patch) | |
tree | 0ff3a2f29c8a24dc814037c30de1140c90293428 /Net/SSH/Authentication | |
parent | 51c0dce218783c7eb82e5b45d65cfcb20f733288 (diff) | |
download | net-ssh-gh-pages.tar.gz |
Update docsgh-pages
Diffstat (limited to 'Net/SSH/Authentication')
30 files changed, 638 insertions, 271 deletions
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">"could not add identity to agent"</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">"connecting to ssh-agent"</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">'SSH_AUTH_SOCK'</span>] <span class="ruby-operator">&&</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">'SSH_AUTH_SOCK'</span>]) <span class="ruby-keyword">elsif</span> <span class="ruby-constant">Gem</span>.<span class="ruby-identifier">win_platform?</span> <span class="ruby-operator">&&</span> <span class="ruby-constant">RUBY_ENGINE</span> <span class="ruby-operator">!=</span> <span class="ruby-string">"jruby"</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">"could not get identity count"</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">"ignoring invalid key: #{comment_str}"</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'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">"could not remove all identity from agent"</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">"could not remove identity from agent"</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">"-cert-v01@openssh.com"</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">"Expected #{MBEGIN} at start of private key"</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">"Expected #{MEND} at end of private key"</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">"Expected #{MAGIC} at start of decoded private key"</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">"#{ciphername} in private key is not supported"</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">"Expected #{kdfname} to be or none or bcrypt"</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">"Only 1 key is supported in ssh keys #{num_keys} was in private key"</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">"Private key len:#{len} is not a multiple of #{blocksize}"</span>) <span class="ruby-keyword">if</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-identifier">blocksize</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>) <span class="ruby-operator">&&</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">'bcrypt'</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">"BCryptPbkdf is not implemented for jruby"</span> <span class="ruby-keyword">if</span> <span class="ruby-constant">RUBY_PLATFORM</span> <span class="ruby-operator">==</span> <span class="ruby-string">"java"</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">'\x00'</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"><<</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">"Decrypt failed on private key"</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">'bcrypt'</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">"ssh-ed25519"</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">"Expected #{MBEGIN} at start of private key"</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">"Expected #{MEND} at end of private key"</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">"Expected #{MAGIC} at start of decoded private key"</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">"#{ciphername} in private key is not supported"</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">"Expected #{kdfname} to be or none or bcrypt"</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">"Only 1 key is supported in ssh keys #{num_keys} was in private key"</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">"Private key len:#{len} is not a multiple of #{blocksize}"</span>) <span class="ruby-keyword">if</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-identifier">blocksize</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>) <span class="ruby-operator">&&</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">'bcrypt'</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">"BCryptPbkdf is not implemented for jruby"</span> <span class="ruby-keyword">if</span> <span class="ruby-constant">RUBY_PLATFORM</span> <span class="ruby-operator">==</span> <span class="ruby-string">"java"</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">'\x00'</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"><<</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">"Decrypt failed on private key"</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">"ssh-ed25519"</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">":"</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">"ssh-ed25519"</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">"ssh-ed25519"</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">"pk does not match sk"</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">"net-ssh requires the following gems for ed25519 support:\n"</span> - <span class="ruby-identifier">result</span> <span class="ruby-operator"><<</span> <span class="ruby-string">" * rbnacl (>= 3.2, < 5.0)\n"</span> - <span class="ruby-identifier">result</span> <span class="ruby-operator"><<</span> <span class="ruby-string">" * rbnacl-libsodium, if your system doesn't have libsodium installed.\n"</span> + <span class="ruby-identifier">result</span> <span class="ruby-operator"><<</span> <span class="ruby-string">" * ed25519 (>= 1.2, < 2.0)\n"</span> <span class="ruby-identifier">result</span> <span class="ruby-operator"><<</span> <span class="ruby-string">" * bcrypt_pbkdf (>= 1.0, < 2.0)\n"</span> <span class="ruby-keyword">unless</span> <span class="ruby-constant">RUBY_PLATFORM</span> <span class="ruby-operator">==</span> <span class="ruby-string">"java"</span> - <span class="ruby-identifier">result</span> <span class="ruby-operator"><<</span> <span class="ruby-string">"See https://github.com/net-ssh/net-ssh/issues/478 for more information\n"</span> + <span class="ruby-identifier">result</span> <span class="ruby-operator"><<</span> <span class="ruby-string">"See https://github.com/net-ssh/net-ssh/issues/565 for more information\n"</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">''</span> <span class="ruby-identifier">description</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"#{ERROR.class} : \"#{ERROR.message}\"\n"</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">&&</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">&&</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">></span> <span class="ruby-identifier">e</span> <span class="ruby-identifier">raise</span> <span class="ruby-constant">KeyManagerError</span>, <span class="ruby-node">"the given identity is known, but the private key could not be loaded: #{e.class} (#{e.message})"</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">"none succeeded"</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">"none failed"</span> } + <span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_SUCCESS</span> + <span class="ruby-identifier">debug</span> { <span class="ruby-string">"none succeeded"</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">"none failed"</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">'none'</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">'none'</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">"unexpected reply to USERAUTH_REQUEST: #{message.type} (#{message.inspect})"</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">"unexpected reply to USERAUTH_REQUEST: #{message.type} (#{message.inspect})"</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">&&</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">>=</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">"password succeeded"</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">"password change request received, failing"</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">"unexpected reply to USERAUTH_REQUEST: #{message.type} (#{message.inspect})"</span> + <span class="ruby-keyword">when</span> <span class="ruby-constant">USERAUTH_SUCCESS</span> + <span class="ruby-identifier">debug</span> { <span class="ruby-string">"password succeeded"</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">"password change request received, failing"</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">"unexpected reply to USERAUTH_REQUEST: #{message.type} (#{message.inspect})"</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">"Pageant"</span>, <span class="ruby-string">"Pageant"</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">"pageant process not running"</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"><</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"><</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">"PageantRequest%08x"</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">"Creation of file mapping failed with error: #{Win.GetLastError}"</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">"Mapping of file failed"</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">></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">"N"</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">"Message failed with error: #{Win.GetLastError}"</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">"beginning authentication of `#{username}'"</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">"Mechanism #{name} was requested, but isn't a known type. Ignoring it."</span>} + <span class="ruby-identifier">debug</span> {<span class="ruby-node">"Mechanism #{name} was requested, but isn't a known type. Ignoring it."</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">"expected #{type}, got #{message.type} (#{message})"</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">"expected #{type}, got #{message.type} (#{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">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>) |