net-ssh 1.0.0 → 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/doc/manual-html/chapter-1.html +388 -0
- data/doc/manual-html/chapter-2.html +544 -0
- data/doc/manual-html/chapter-3.html +470 -0
- data/doc/manual-html/chapter-4.html +413 -0
- data/doc/manual-html/chapter-5.html +525 -0
- data/doc/manual-html/chapter-6.html +456 -0
- data/doc/manual-html/chapter-7.html +343 -0
- data/doc/manual-html/index.html +237 -0
- data/doc/manual-html/stylesheets/manual.css +270 -0
- data/doc/manual-html/stylesheets/ruby.css +17 -0
- data/doc/manual/manual.rb +2 -2
- data/doc/manual/manual.yml +41 -44
- data/doc/manual/parts/{intro_what_is.txt → 0000.txt} +0 -0
- data/doc/manual/parts/{intro_what_is_not.txt → 0001.txt} +0 -0
- data/doc/manual/parts/{intro_getting.txt → 0002.txt} +7 -6
- data/doc/manual/parts/{intro_license.txt → 0003.txt} +0 -0
- data/doc/manual/parts/{intro_support.txt → 0004.txt} +0 -0
- data/doc/manual/parts/{intro_author.txt → 0005.txt} +1 -1
- data/doc/manual/parts/{session_start.txt → 0006.txt} +11 -11
- data/doc/manual/parts/{session_key.txt → 0007.txt} +6 -6
- data/doc/manual/parts/{session_options.txt → 0008.txt} +2 -3
- data/doc/manual/parts/0009.txt +14 -0
- data/doc/manual/parts/{channels_what_are.txt → 0010.txt} +0 -0
- data/doc/manual/parts/{channels_loop.txt → 0011.txt} +2 -2
- data/doc/manual/parts/{channels_types.txt → 0012.txt} +0 -0
- data/doc/manual/parts/{channels_open.txt → 0013.txt} +2 -2
- data/doc/manual/parts/{channels_callbacks.txt → 0014.txt} +3 -3
- data/doc/manual/parts/{channels_operations.txt → 0015.txt} +1 -2
- data/doc/manual/parts/{exec_channels.txt → 0016.txt} +2 -2
- data/doc/manual/parts/{exec_open.txt → 0017.txt} +3 -3
- data/doc/manual/parts/{exec_popen3.txt → 0018.txt} +5 -5
- data/doc/manual/parts/{shells_intro.txt → 0019.txt} +0 -0
- data/doc/manual/parts/{shells_channels.txt → 0020.txt} +5 -5
- data/doc/manual/parts/{shells_shell.txt → 0021.txt} +6 -6
- data/doc/manual/parts/{shells_sync.txt → 0022.txt} +4 -4
- data/doc/manual/parts/{shells_clients.txt → 0023.txt} +3 -3
- data/doc/manual/parts/{forward_intro.txt → 0024.txt} +2 -2
- data/doc/manual/parts/{forward_local.txt → 0025.txt} +4 -4
- data/doc/manual/parts/{forward_remote.txt → 0026.txt} +6 -5
- data/doc/manual/parts/{forward_direct.txt → 0027.txt} +2 -2
- data/doc/manual/parts/{forward_handlers.txt → 0028.txt} +0 -0
- data/doc/manual/parts/{proxy_intro.txt → 0029.txt} +0 -0
- data/doc/manual/parts/{proxy_http.txt → 0030.txt} +6 -6
- data/doc/manual/parts/{proxy_socks.txt → 0031.txt} +4 -2
- data/doc/manual/stylesheets/manual.css +7 -2
- data/lib/net/ssh/connection/driver.rb +6 -0
- data/lib/net/ssh/transport/session.rb +6 -2
- data/lib/net/ssh/userauth/services.rb +1 -1
- data/lib/net/ssh/version.rb +1 -1
- data/test/transport/tc_session.rb +13 -0
- metadata +161 -149
- data/doc/manual/parts/session_session.txt +0 -14
@@ -1,14 +1,15 @@
|
|
1
1
|
Forwarding remote connections to the local host is also straightforward; simply call the @#remote_to@ method of the @#forward@ service. This takes three (or four) parameters: the local port and host to be forwarded to (in that order), and the remote port to listen on. The fourth parameter is optional, and is the bind address on the remote machine; this defaults to "127.0.0.1".
|
2
2
|
|
3
|
-
|
3
|
+
{{{lang=ruby,number=true,caption=Forwarding a remote port
|
4
4
|
Net::SSH.start( 'host' ) do |session|
|
5
5
|
session.forward.remote_to( 80, 'www.google.com', 1234 )
|
6
6
|
session.loop
|
7
7
|
end
|
8
|
-
|
8
|
+
}}}
|
9
9
|
|
10
|
-
The above example causes any connection on port 1234 of the remote machine (_from_ the remote machine) to be forwarded via the local host to port 80 at www.google.com.
|
10
|
+
The above example causes any connection on port 1234 of the remote machine (_from_ the remote machine) to be forwarded via the local host to port 80 at www.google.com. To make things a bit more open, you could specify a bind address of 0.0.0.0:
|
11
11
|
|
12
|
-
|
12
|
+
{{{lang=ruby,caption=Specifying the bind address when forwarding a remote port
|
13
13
|
session.forward.remote_to( 80, 'www.google.com', 1234, '0.0.0.0' )
|
14
|
-
|
14
|
+
}}}
|
15
|
+
|
@@ -14,7 +14,7 @@ table(list).
|
|
14
14
|
|
15
15
|
For example, the following example pretends to be a client that has connected to the local host on a forwarded port:
|
16
16
|
|
17
|
-
|
17
|
+
{{{lang=ruby,number=true,caption=Using a handler object to mimic a forwarded port
|
18
18
|
class Handler
|
19
19
|
def on_receive( channel, data )
|
20
20
|
puts "got data: #{data.inspect}"
|
@@ -32,6 +32,6 @@ Net::SSH.start( 'host' ) do |session|
|
|
32
32
|
|
33
33
|
session.loop
|
34
34
|
end
|
35
|
-
|
35
|
+
}}}
|
36
36
|
|
37
37
|
The local port number for @#direct_channel@ has no real purpose, other than to report to the SSH server that the "virtual" connection occurred on that port.
|
File without changes
|
File without changes
|
@@ -1,6 +1,6 @@
|
|
1
1
|
If you have an HTTP proxy running, you may be able to use it to your advantage. The following snippet demonstrates how to tunnel an SSH connection through an HTTP proxy:
|
2
2
|
|
3
|
-
|
3
|
+
{{{lang=ruby,number=true,caption=Tunnelling an SSH connection over HTTP
|
4
4
|
require 'net/ssh'
|
5
5
|
require 'net/ssh/proxy/http'
|
6
6
|
|
@@ -11,7 +11,7 @@ proxy = Net::SSH::Proxy::HTTP.new( proxy_host, proxy_port )
|
|
11
11
|
Net::SSH.start( 'host', :proxy => proxy ) do |session|
|
12
12
|
...
|
13
13
|
end
|
14
|
-
|
14
|
+
}}}
|
15
15
|
|
16
16
|
As you can see, you first create an instance of the proxy you want to use. (This flexibility allows for other proxy types to be supported, although at present only HTTP and SOCKS are available.)
|
17
17
|
|
@@ -21,9 +21,9 @@ Note: If your proxy does not allow connects to be made to other hosts on port 22
|
|
21
21
|
|
22
22
|
For instance, if your proxy disallows connections to any port except (say) 443, you could run the following command on the remote host:
|
23
23
|
|
24
|
-
|
24
|
+
{{{lang=shell,caption=Forwarding a port using the ssh command
|
25
25
|
ssh -gL 443:localhost:22 localhost
|
26
|
-
|
26
|
+
}}}
|
27
27
|
|
28
28
|
Then, as long as that command is running, port 443 will always be forwarded to port 22. Naturally, this means that you must run this command while you have access to the box; if you can't access that machine in the first place (ie, because you're behind a firewall), then it does you no good.
|
29
29
|
|
@@ -31,7 +31,7 @@ h3. Proxy Authentication
|
|
31
31
|
|
32
32
|
Some proxies require authentication. Net::SSH supports these proxies as well. If you specify the user name either as a @:user@ option to the HTTP proxy constructor, or in the @HTTP_PROXY_USER@ or @CONNECT_USER@ environment variables, that name will be used to authenticate with the proxy. Likewise, the password may be given either via the @:password@ constructor option, or via the @HTTP_PROXY_PASSWORD@ or @CONNECT_PASSWORD@ environment variables.
|
33
33
|
|
34
|
-
|
34
|
+
{{{lang=ruby,number=true,caption=Using HTTP proxy authentication
|
35
35
|
require 'net/ssh'
|
36
36
|
require 'net/ssh/proxy/http'
|
37
37
|
|
@@ -47,6 +47,6 @@ proxy = Net::SSH::Proxy::HTTP.new( proxy_host, proxy_port,
|
|
47
47
|
Net::SSH.start( 'host', :proxy => proxy ) do |session|
|
48
48
|
...
|
49
49
|
end
|
50
|
-
|
50
|
+
}}}
|
51
51
|
|
52
52
|
Note that currently, only basic authentication is supported; in the future, digest authentication may be added for proxies that support it.
|
@@ -1,6 +1,6 @@
|
|
1
1
|
In addition to the HTTP proxy, Net::SSH also supports SOCKS proxies (both versions 4 and 5). Their usage is almost identical to the HTTP version (except SOCKS4 does not use passwords, just user names):
|
2
2
|
|
3
|
-
|
3
|
+
{{{lang=ruby,number=true,caption=Using SOCKS proxies
|
4
4
|
require 'net/ssh'
|
5
5
|
require 'net/ssh/proxy/socks4'
|
6
6
|
require 'net/ssh/proxy/socks5'
|
@@ -20,4 +20,6 @@ socks5 = Net::SSH::Proxy::SOCKS5.new( proxy_host, proxy_port,
|
|
20
20
|
Net::SSH.start( 'host', :proxy => socks4 ) do |session|
|
21
21
|
...
|
22
22
|
end
|
23
|
-
|
23
|
+
}}}
|
24
|
+
|
25
|
+
|
@@ -244,6 +244,11 @@ table.list td {
|
|
244
244
|
border: 1px dotted #77F;
|
245
245
|
}
|
246
246
|
|
247
|
+
.figure table {
|
248
|
+
padding-top: 0.8em;
|
249
|
+
padding-bottom: 0.5em;
|
250
|
+
}
|
251
|
+
|
247
252
|
.figure .body {
|
248
253
|
padding-left: 1em;
|
249
254
|
}
|
@@ -253,13 +258,13 @@ table.list td {
|
|
253
258
|
background: transparent;
|
254
259
|
border: none;
|
255
260
|
font-size: small;
|
256
|
-
font-family:
|
261
|
+
font-family: monospace;
|
257
262
|
}
|
258
263
|
|
259
264
|
.figure .lineno {
|
260
265
|
text-align: right;
|
261
266
|
color: #B00;
|
262
|
-
font-family:
|
267
|
+
font-family: monospace;
|
263
268
|
font-size: small;
|
264
269
|
padding-right: 1em;
|
265
270
|
}
|
@@ -350,6 +350,10 @@ module Net
|
|
350
350
|
|
351
351
|
# Process all pending data requests.
|
352
352
|
def process_data_requests
|
353
|
+
# guard against recursive/simultaneous calls
|
354
|
+
return if @processing_data_requests
|
355
|
+
|
356
|
+
@processing_data_requests = true
|
353
357
|
@data_requests.map! do |req|
|
354
358
|
while req && req.channel.window_size > 0
|
355
359
|
remaining = if req.type
|
@@ -367,6 +371,8 @@ module Net
|
|
367
371
|
req
|
368
372
|
end
|
369
373
|
@data_requests.compact!
|
374
|
+
ensure
|
375
|
+
@processing_data_requests = false
|
370
376
|
end
|
371
377
|
|
372
378
|
#--
|
@@ -15,6 +15,7 @@
|
|
15
15
|
#++
|
16
16
|
|
17
17
|
require 'socket'
|
18
|
+
require 'timeout'
|
18
19
|
require 'net/ssh/transport/constants'
|
19
20
|
require 'net/ssh/transport/errors'
|
20
21
|
require 'net/ssh/version'
|
@@ -60,7 +61,8 @@ module Net
|
|
60
61
|
end
|
61
62
|
|
62
63
|
VALID_OPTIONS = [ :port, :host_key, :kex, :encryption, :hmac,
|
63
|
-
:compression, :languages, :compression_level, :proxy
|
64
|
+
:compression, :languages, :compression_level, :proxy,
|
65
|
+
:timeout ]
|
64
66
|
|
65
67
|
# Create a new connection to the given host. This will negotiate the
|
66
68
|
# algorithms to use and exchange the keys. A block must be given. The
|
@@ -80,7 +82,9 @@ module Net
|
|
80
82
|
end
|
81
83
|
|
82
84
|
@port = options[ :port ] || @default_port
|
83
|
-
@socket = ( options[:
|
85
|
+
@socket = timeout( options[:timeout] || 0 ) do
|
86
|
+
( options[:proxy] || @socket_factory ).open( host, @port )
|
87
|
+
end
|
84
88
|
|
85
89
|
@packet_sender.socket = @socket
|
86
90
|
@packet_receiver.socket = @socket
|
@@ -41,7 +41,7 @@ module Net
|
|
41
41
|
socket_factory = c[:agent_socket_factory]
|
42
42
|
socket_name = c[:default_agent_socket_name]
|
43
43
|
|
44
|
-
if socket_name && socket_factory
|
44
|
+
if (File::ALT_SEPARATOR || socket_name) && socket_factory
|
45
45
|
require 'net/ssh/userauth/agent'
|
46
46
|
require 'net/ssh/transport/services'
|
47
47
|
|
data/lib/net/ssh/version.rb
CHANGED
@@ -69,14 +69,17 @@ class TC_Session < Test::Unit::TestCase
|
|
69
69
|
|
70
70
|
class ScriptedSocket
|
71
71
|
attr_reader :replies
|
72
|
+
attr_accessor :open_delay
|
72
73
|
|
73
74
|
def initialize( script )
|
74
75
|
@replies = []
|
75
76
|
@script = script
|
77
|
+
@open_delay = 0
|
76
78
|
end
|
77
79
|
|
78
80
|
def open( host, port )
|
79
81
|
@replies << "#{host}:#{port}"
|
82
|
+
sleep @open_delay
|
80
83
|
self
|
81
84
|
end
|
82
85
|
|
@@ -280,4 +283,14 @@ class TC_Session < Test::Unit::TestCase
|
|
280
283
|
|
281
284
|
assert @logger.msgs.include?("[I] re-key requested")
|
282
285
|
end
|
286
|
+
|
287
|
+
def test_timeout_expired
|
288
|
+
@socket.open_delay = 2
|
289
|
+
assert_raise(Timeout::Error) { do_setup( "the.host.com", :timeout => 1 ) }
|
290
|
+
end
|
291
|
+
|
292
|
+
def test_timeout_not_expired
|
293
|
+
@socket.open_delay = 1
|
294
|
+
assert_nothing_raised { do_setup( "the.host.com", :timeout => 2 ) }
|
295
|
+
end
|
283
296
|
end
|
metadata
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
|
-
rubygems_version: 0.8.
|
2
|
+
rubygems_version: 0.8.10
|
3
3
|
specification_version: 1
|
4
4
|
name: net-ssh
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 1.0.
|
7
|
-
date: 2005-
|
6
|
+
version: 1.0.1
|
7
|
+
date: 2005-06-17
|
8
8
|
summary: Net::SSH is a pure-Ruby implementation of the SSH2 client protocol.
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -27,223 +27,235 @@ platform: ruby
|
|
27
27
|
authors:
|
28
28
|
- Jamis Buck
|
29
29
|
files:
|
30
|
-
- doc/LICENSE-RUBY
|
31
30
|
- doc/LICENSE-BSD
|
32
31
|
- doc/LICENSE-GPL
|
32
|
+
- doc/LICENSE-RUBY
|
33
33
|
- doc/manual
|
34
|
-
- doc/manual
|
35
|
-
- doc/manual/stylesheets
|
36
|
-
- doc/manual/tutorial.erb
|
37
|
-
- doc/manual/parts
|
34
|
+
- doc/manual-html
|
38
35
|
- doc/manual/chapter.erb
|
39
|
-
- doc/manual/page.erb
|
40
36
|
- doc/manual/example.erb
|
41
37
|
- doc/manual/index.erb
|
42
38
|
- doc/manual/manual.rb
|
39
|
+
- doc/manual/manual.yml
|
40
|
+
- doc/manual/page.erb
|
41
|
+
- doc/manual/parts
|
42
|
+
- doc/manual/stylesheets
|
43
|
+
- doc/manual/tutorial.erb
|
44
|
+
- doc/manual/parts/0000.txt
|
45
|
+
- doc/manual/parts/0001.txt
|
46
|
+
- doc/manual/parts/0002.txt
|
47
|
+
- doc/manual/parts/0003.txt
|
48
|
+
- doc/manual/parts/0004.txt
|
49
|
+
- doc/manual/parts/0005.txt
|
50
|
+
- doc/manual/parts/0006.txt
|
51
|
+
- doc/manual/parts/0007.txt
|
52
|
+
- doc/manual/parts/0008.txt
|
53
|
+
- doc/manual/parts/0009.txt
|
54
|
+
- doc/manual/parts/0010.txt
|
55
|
+
- doc/manual/parts/0011.txt
|
56
|
+
- doc/manual/parts/0012.txt
|
57
|
+
- doc/manual/parts/0013.txt
|
58
|
+
- doc/manual/parts/0014.txt
|
59
|
+
- doc/manual/parts/0015.txt
|
60
|
+
- doc/manual/parts/0016.txt
|
61
|
+
- doc/manual/parts/0017.txt
|
62
|
+
- doc/manual/parts/0018.txt
|
63
|
+
- doc/manual/parts/0019.txt
|
64
|
+
- doc/manual/parts/0020.txt
|
65
|
+
- doc/manual/parts/0021.txt
|
66
|
+
- doc/manual/parts/0022.txt
|
67
|
+
- doc/manual/parts/0023.txt
|
68
|
+
- doc/manual/parts/0024.txt
|
69
|
+
- doc/manual/parts/0025.txt
|
70
|
+
- doc/manual/parts/0026.txt
|
71
|
+
- doc/manual/parts/0027.txt
|
72
|
+
- doc/manual/parts/0028.txt
|
73
|
+
- doc/manual/parts/0029.txt
|
74
|
+
- doc/manual/parts/0030.txt
|
75
|
+
- doc/manual/parts/0031.txt
|
43
76
|
- doc/manual/stylesheets/manual.css
|
44
77
|
- doc/manual/stylesheets/ruby.css
|
45
|
-
- doc/manual/
|
46
|
-
- doc/manual/
|
47
|
-
- doc/manual/
|
48
|
-
- doc/manual/
|
49
|
-
- doc/manual/
|
50
|
-
- doc/manual/
|
51
|
-
- doc/manual/
|
52
|
-
- doc/manual/
|
53
|
-
- doc/manual/
|
54
|
-
- doc/manual/
|
55
|
-
- doc/manual/
|
56
|
-
- doc/manual/parts/intro_license.txt
|
57
|
-
- doc/manual/parts/shells_intro.txt
|
58
|
-
- doc/manual/parts/intro_what_is_not.txt
|
59
|
-
- doc/manual/parts/proxy_intro.txt
|
60
|
-
- doc/manual/parts/proxy_http.txt
|
61
|
-
- doc/manual/parts/session_key.txt
|
62
|
-
- doc/manual/parts/channels_open.txt
|
63
|
-
- doc/manual/parts/channels_callbacks.txt
|
64
|
-
- doc/manual/parts/intro_getting.txt
|
65
|
-
- doc/manual/parts/intro_what_is.txt
|
66
|
-
- doc/manual/parts/intro_support.txt
|
67
|
-
- doc/manual/parts/channels_loop.txt
|
68
|
-
- doc/manual/parts/shells_clients.txt
|
69
|
-
- doc/manual/parts/forward_remote.txt
|
70
|
-
- doc/manual/parts/channels_types.txt
|
71
|
-
- doc/manual/parts/forward_local.txt
|
72
|
-
- doc/manual/parts/channels_operations.txt
|
73
|
-
- doc/manual/parts/forward_direct.txt
|
74
|
-
- doc/manual/parts/session_session.txt
|
75
|
-
- doc/manual/parts/exec_popen3.txt
|
76
|
-
- doc/manual/parts/intro_author.txt
|
78
|
+
- doc/manual-html/chapter-1.html
|
79
|
+
- doc/manual-html/chapter-2.html
|
80
|
+
- doc/manual-html/chapter-3.html
|
81
|
+
- doc/manual-html/chapter-4.html
|
82
|
+
- doc/manual-html/chapter-5.html
|
83
|
+
- doc/manual-html/chapter-6.html
|
84
|
+
- doc/manual-html/chapter-7.html
|
85
|
+
- doc/manual-html/index.html
|
86
|
+
- doc/manual-html/stylesheets
|
87
|
+
- doc/manual-html/stylesheets/manual.css
|
88
|
+
- doc/manual-html/stylesheets/ruby.css
|
77
89
|
- lib/net
|
78
90
|
- lib/net/ssh
|
79
91
|
- lib/net/ssh.rb
|
80
|
-
- lib/net/ssh/
|
81
|
-
- lib/net/ssh/
|
92
|
+
- lib/net/ssh/connection
|
93
|
+
- lib/net/ssh/errors.rb
|
82
94
|
- lib/net/ssh/proxy
|
83
95
|
- lib/net/ssh/service
|
84
|
-
- lib/net/ssh/connection
|
85
96
|
- lib/net/ssh/session.rb
|
97
|
+
- lib/net/ssh/transport
|
86
98
|
- lib/net/ssh/userauth
|
99
|
+
- lib/net/ssh/util
|
87
100
|
- lib/net/ssh/version.rb
|
88
|
-
- lib/net/ssh/
|
89
|
-
- lib/net/ssh/
|
90
|
-
- lib/net/ssh/
|
91
|
-
- lib/net/ssh/
|
92
|
-
- lib/net/ssh/
|
93
|
-
- lib/net/ssh/
|
94
|
-
- lib/net/ssh/
|
101
|
+
- lib/net/ssh/connection/channel.rb
|
102
|
+
- lib/net/ssh/connection/constants.rb
|
103
|
+
- lib/net/ssh/connection/driver.rb
|
104
|
+
- lib/net/ssh/connection/services.rb
|
105
|
+
- lib/net/ssh/connection/term.rb
|
106
|
+
- lib/net/ssh/proxy/errors.rb
|
107
|
+
- lib/net/ssh/proxy/http.rb
|
108
|
+
- lib/net/ssh/proxy/socks4.rb
|
109
|
+
- lib/net/ssh/proxy/socks5.rb
|
110
|
+
- lib/net/ssh/service/forward
|
111
|
+
- lib/net/ssh/service/process
|
112
|
+
- lib/net/ssh/service/services.rb
|
113
|
+
- lib/net/ssh/service/shell
|
114
|
+
- lib/net/ssh/service/forward/driver.rb
|
115
|
+
- lib/net/ssh/service/forward/local-network-handler.rb
|
116
|
+
- lib/net/ssh/service/forward/remote-network-handler.rb
|
117
|
+
- lib/net/ssh/service/forward/services.rb
|
118
|
+
- lib/net/ssh/service/process/driver.rb
|
119
|
+
- lib/net/ssh/service/process/open.rb
|
120
|
+
- lib/net/ssh/service/process/popen3.rb
|
121
|
+
- lib/net/ssh/service/process/services.rb
|
122
|
+
- lib/net/ssh/service/shell/driver.rb
|
123
|
+
- lib/net/ssh/service/shell/services.rb
|
124
|
+
- lib/net/ssh/service/shell/shell.rb
|
125
|
+
- lib/net/ssh/service/shell/sync.rb
|
95
126
|
- lib/net/ssh/transport/algorithm-negotiator.rb
|
96
127
|
- lib/net/ssh/transport/compress
|
97
128
|
- lib/net/ssh/transport/constants.rb
|
129
|
+
- lib/net/ssh/transport/errors.rb
|
130
|
+
- lib/net/ssh/transport/identity-cipher.rb
|
131
|
+
- lib/net/ssh/transport/kex
|
132
|
+
- lib/net/ssh/transport/ossl
|
98
133
|
- lib/net/ssh/transport/packet-stream.rb
|
99
134
|
- lib/net/ssh/transport/services.rb
|
100
135
|
- lib/net/ssh/transport/session.rb
|
101
136
|
- lib/net/ssh/transport/version-negotiator.rb
|
102
|
-
- lib/net/ssh/transport/
|
103
|
-
- lib/net/ssh/transport/
|
137
|
+
- lib/net/ssh/transport/compress/compressor.rb
|
138
|
+
- lib/net/ssh/transport/compress/decompressor.rb
|
139
|
+
- lib/net/ssh/transport/compress/none-compressor.rb
|
140
|
+
- lib/net/ssh/transport/compress/none-decompressor.rb
|
141
|
+
- lib/net/ssh/transport/compress/services.rb
|
142
|
+
- lib/net/ssh/transport/compress/zlib-compressor.rb
|
143
|
+
- lib/net/ssh/transport/compress/zlib-decompressor.rb
|
104
144
|
- lib/net/ssh/transport/kex/dh-gex.rb
|
145
|
+
- lib/net/ssh/transport/kex/dh.rb
|
105
146
|
- lib/net/ssh/transport/kex/services.rb
|
106
|
-
- lib/net/ssh/transport/ossl/
|
147
|
+
- lib/net/ssh/transport/ossl/buffer-factory.rb
|
107
148
|
- lib/net/ssh/transport/ossl/buffer.rb
|
108
|
-
- lib/net/ssh/transport/ossl/key-factory.rb
|
109
149
|
- lib/net/ssh/transport/ossl/cipher-factory.rb
|
110
|
-
- lib/net/ssh/transport/ossl/buffer-factory.rb
|
111
150
|
- lib/net/ssh/transport/ossl/digest-factory.rb
|
112
|
-
- lib/net/ssh/transport/ossl/
|
151
|
+
- lib/net/ssh/transport/ossl/hmac
|
113
152
|
- lib/net/ssh/transport/ossl/hmac-factory.rb
|
114
|
-
- lib/net/ssh/transport/ossl/
|
153
|
+
- lib/net/ssh/transport/ossl/key-factory.rb
|
154
|
+
- lib/net/ssh/transport/ossl/services.rb
|
155
|
+
- lib/net/ssh/transport/ossl/hmac/hmac.rb
|
115
156
|
- lib/net/ssh/transport/ossl/hmac/md5-96.rb
|
116
|
-
- lib/net/ssh/transport/ossl/hmac/sha1.rb
|
117
157
|
- lib/net/ssh/transport/ossl/hmac/md5.rb
|
118
158
|
- lib/net/ssh/transport/ossl/hmac/none.rb
|
119
|
-
- lib/net/ssh/transport/ossl/hmac/hmac.rb
|
120
159
|
- lib/net/ssh/transport/ossl/hmac/services.rb
|
121
|
-
- lib/net/ssh/transport/
|
122
|
-
- lib/net/ssh/transport/
|
123
|
-
- lib/net/ssh/transport/compress/decompressor.rb
|
124
|
-
- lib/net/ssh/transport/compress/zlib-decompressor.rb
|
125
|
-
- lib/net/ssh/transport/compress/none-decompressor.rb
|
126
|
-
- lib/net/ssh/transport/compress/services.rb
|
127
|
-
- lib/net/ssh/transport/compress/none-compressor.rb
|
128
|
-
- lib/net/ssh/proxy/http.rb
|
129
|
-
- lib/net/ssh/proxy/socks4.rb
|
130
|
-
- lib/net/ssh/proxy/socks5.rb
|
131
|
-
- lib/net/ssh/proxy/errors.rb
|
132
|
-
- lib/net/ssh/service/shell
|
133
|
-
- lib/net/ssh/service/forward
|
134
|
-
- lib/net/ssh/service/services.rb
|
135
|
-
- lib/net/ssh/service/process
|
136
|
-
- lib/net/ssh/service/shell/driver.rb
|
137
|
-
- lib/net/ssh/service/shell/sync.rb
|
138
|
-
- lib/net/ssh/service/shell/services.rb
|
139
|
-
- lib/net/ssh/service/shell/shell.rb
|
140
|
-
- lib/net/ssh/service/forward/driver.rb
|
141
|
-
- lib/net/ssh/service/forward/remote-network-handler.rb
|
142
|
-
- lib/net/ssh/service/forward/services.rb
|
143
|
-
- lib/net/ssh/service/forward/local-network-handler.rb
|
144
|
-
- lib/net/ssh/service/process/driver.rb
|
145
|
-
- lib/net/ssh/service/process/services.rb
|
146
|
-
- lib/net/ssh/service/process/open.rb
|
147
|
-
- lib/net/ssh/service/process/popen3.rb
|
148
|
-
- lib/net/ssh/connection/driver.rb
|
149
|
-
- lib/net/ssh/connection/term.rb
|
150
|
-
- lib/net/ssh/connection/constants.rb
|
151
|
-
- lib/net/ssh/connection/services.rb
|
152
|
-
- lib/net/ssh/connection/channel.rb
|
160
|
+
- lib/net/ssh/transport/ossl/hmac/sha1-96.rb
|
161
|
+
- lib/net/ssh/transport/ossl/hmac/sha1.rb
|
153
162
|
- lib/net/ssh/userauth/agent.rb
|
163
|
+
- lib/net/ssh/userauth/constants.rb
|
154
164
|
- lib/net/ssh/userauth/driver.rb
|
155
|
-
- lib/net/ssh/userauth/userkeys.rb
|
156
|
-
- lib/net/ssh/userauth/pageant.rb
|
157
165
|
- lib/net/ssh/userauth/methods
|
158
|
-
- lib/net/ssh/userauth/
|
166
|
+
- lib/net/ssh/userauth/pageant.rb
|
159
167
|
- lib/net/ssh/userauth/services.rb
|
168
|
+
- lib/net/ssh/userauth/userkeys.rb
|
160
169
|
- lib/net/ssh/userauth/methods/hostbased.rb
|
161
|
-
- lib/net/ssh/userauth/methods/
|
170
|
+
- lib/net/ssh/userauth/methods/keyboard-interactive.rb
|
162
171
|
- lib/net/ssh/userauth/methods/password.rb
|
172
|
+
- lib/net/ssh/userauth/methods/publickey.rb
|
163
173
|
- lib/net/ssh/userauth/methods/services.rb
|
164
|
-
- lib/net/ssh/
|
174
|
+
- lib/net/ssh/util/buffer.rb
|
175
|
+
- lib/net/ssh/util/openssl.rb
|
176
|
+
- lib/net/ssh/util/prompter.rb
|
177
|
+
- examples/channel-demo.rb
|
165
178
|
- examples/port-forward.rb
|
166
179
|
- examples/process-demo.rb
|
180
|
+
- examples/remote-net-port-forward.rb
|
167
181
|
- examples/remote-port-forward.rb
|
168
182
|
- examples/shell-demo.rb
|
183
|
+
- examples/ssh-client.rb
|
169
184
|
- examples/sync-shell-demo.rb
|
170
185
|
- examples/tail-demo.rb
|
171
|
-
-
|
172
|
-
-
|
173
|
-
- examples/ssh-client.rb
|
174
|
-
- test/util
|
175
|
-
- test/transport
|
186
|
+
- test/ALL-TESTS.rb
|
187
|
+
- test/connection
|
176
188
|
- test/proxy
|
177
189
|
- test/service
|
178
190
|
- test/tc_integration.rb
|
179
|
-
- test/
|
180
|
-
- test/ALL-TESTS.rb
|
191
|
+
- test/transport
|
181
192
|
- test/userauth
|
182
|
-
- test/util
|
193
|
+
- test/util
|
194
|
+
- test/connection/tc_channel.rb
|
195
|
+
- test/connection/tc_driver.rb
|
196
|
+
- test/connection/tc_integration.rb
|
197
|
+
- test/proxy/tc_http.rb
|
198
|
+
- test/proxy/tc_socks4.rb
|
199
|
+
- test/proxy/tc_socks5.rb
|
200
|
+
- test/service/forward
|
201
|
+
- test/service/process
|
202
|
+
- test/service/forward/tc_driver.rb
|
203
|
+
- test/service/forward/tc_local_network_handler.rb
|
204
|
+
- test/service/forward/tc_remote_network_handler.rb
|
205
|
+
- test/service/process/tc_driver.rb
|
206
|
+
- test/service/process/tc_integration.rb
|
207
|
+
- test/service/process/tc_open.rb
|
208
|
+
- test/service/process/tc_popen3.rb
|
209
|
+
- test/transport/compress
|
183
210
|
- test/transport/kex
|
184
211
|
- test/transport/ossl
|
185
|
-
- test/transport/tc_session.rb
|
186
|
-
- test/transport/tc_packet_stream.rb
|
187
|
-
- test/transport/tc_integration.rb
|
188
|
-
- test/transport/tc_identity_cipher.rb
|
189
212
|
- test/transport/tc_algorithm_negotiator.rb
|
213
|
+
- test/transport/tc_identity_cipher.rb
|
214
|
+
- test/transport/tc_integration.rb
|
215
|
+
- test/transport/tc_packet_stream.rb
|
216
|
+
- test/transport/tc_session.rb
|
190
217
|
- test/transport/tc_version_negotiator.rb
|
191
|
-
- test/transport/compress
|
218
|
+
- test/transport/compress/tc_none_compress.rb
|
219
|
+
- test/transport/compress/tc_none_decompress.rb
|
220
|
+
- test/transport/compress/tc_zlib_compress.rb
|
221
|
+
- test/transport/compress/tc_zlib_decompress.rb
|
192
222
|
- test/transport/kex/tc_dh.rb
|
193
223
|
- test/transport/kex/tc_dh_gex.rb
|
194
|
-
- test/transport/ossl/hmac
|
195
|
-
- test/transport/ossl/tc_hmac_factory.rb
|
196
|
-
- test/transport/ossl/tc_key_factory.rb
|
197
|
-
- test/transport/ossl/tc_cipher_factory.rb
|
198
224
|
- test/transport/ossl/fixtures
|
225
|
+
- test/transport/ossl/hmac
|
199
226
|
- test/transport/ossl/tc_buffer.rb
|
200
227
|
- test/transport/ossl/tc_buffer_factory.rb
|
228
|
+
- test/transport/ossl/tc_cipher_factory.rb
|
201
229
|
- test/transport/ossl/tc_digest_factory.rb
|
202
|
-
- test/transport/ossl/
|
203
|
-
- test/transport/ossl/
|
204
|
-
- test/transport/ossl/
|
205
|
-
- test/transport/ossl/hmac/tc_md5_96.rb
|
206
|
-
- test/transport/ossl/hmac/tc_md5.rb
|
207
|
-
- test/transport/ossl/hmac/tc_sha1.rb
|
208
|
-
- test/transport/ossl/fixtures/rsa-unencrypted-bad
|
209
|
-
- test/transport/ossl/fixtures/rsa-unencrypted.pub
|
210
|
-
- test/transport/ossl/fixtures/rsa-encrypted
|
230
|
+
- test/transport/ossl/tc_hmac_factory.rb
|
231
|
+
- test/transport/ossl/tc_key_factory.rb
|
232
|
+
- test/transport/ossl/fixtures/dsa-encrypted
|
211
233
|
- test/transport/ossl/fixtures/dsa-encrypted-bad
|
212
|
-
- test/transport/ossl/fixtures/rsa-unencrypted
|
213
234
|
- test/transport/ossl/fixtures/dsa-unencrypted
|
214
|
-
- test/transport/ossl/fixtures/not-supported
|
215
|
-
- test/transport/ossl/fixtures/rsa-encrypted-bad
|
216
235
|
- test/transport/ossl/fixtures/dsa-unencrypted-bad
|
217
236
|
- test/transport/ossl/fixtures/dsa-unencrypted.pub
|
218
|
-
- test/transport/ossl/fixtures/dsa-encrypted
|
219
237
|
- test/transport/ossl/fixtures/not-a-private-key
|
220
|
-
- test/transport/
|
221
|
-
- test/transport/
|
222
|
-
- test/transport/
|
223
|
-
- test/transport/
|
224
|
-
- test/
|
225
|
-
- test/
|
226
|
-
- test/
|
227
|
-
- test/
|
228
|
-
- test/
|
229
|
-
- test/
|
230
|
-
- test/
|
231
|
-
- test/
|
232
|
-
- test/service/process/tc_open.rb
|
233
|
-
- test/service/process/tc_integration.rb
|
234
|
-
- test/service/process/tc_popen3.rb
|
235
|
-
- test/service/process/tc_driver.rb
|
236
|
-
- test/connection/tc_channel.rb
|
237
|
-
- test/connection/tc_integration.rb
|
238
|
-
- test/connection/tc_driver.rb
|
239
|
-
- test/userauth/tc_agent.rb
|
238
|
+
- test/transport/ossl/fixtures/not-supported
|
239
|
+
- test/transport/ossl/fixtures/rsa-encrypted
|
240
|
+
- test/transport/ossl/fixtures/rsa-encrypted-bad
|
241
|
+
- test/transport/ossl/fixtures/rsa-unencrypted
|
242
|
+
- test/transport/ossl/fixtures/rsa-unencrypted-bad
|
243
|
+
- test/transport/ossl/fixtures/rsa-unencrypted.pub
|
244
|
+
- test/transport/ossl/hmac/tc_hmac.rb
|
245
|
+
- test/transport/ossl/hmac/tc_md5.rb
|
246
|
+
- test/transport/ossl/hmac/tc_md5_96.rb
|
247
|
+
- test/transport/ossl/hmac/tc_none.rb
|
248
|
+
- test/transport/ossl/hmac/tc_sha1.rb
|
249
|
+
- test/transport/ossl/hmac/tc_sha1_96.rb
|
240
250
|
- test/userauth/methods
|
241
|
-
- test/userauth/
|
251
|
+
- test/userauth/tc_agent.rb
|
242
252
|
- test/userauth/tc_driver.rb
|
253
|
+
- test/userauth/tc_integration.rb
|
243
254
|
- test/userauth/tc_userkeys.rb
|
244
|
-
- test/userauth/methods/tc_password.rb
|
245
255
|
- test/userauth/methods/tc_hostbased.rb
|
256
|
+
- test/userauth/methods/tc_password.rb
|
246
257
|
- test/userauth/methods/tc_publickey.rb
|
258
|
+
- test/util/tc_buffer.rb
|
247
259
|
test_files:
|
248
260
|
- test/ALL-TESTS.rb
|
249
261
|
rdoc_options: []
|