net-ssh 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
@@ -0,0 +1,270 @@
|
|
1
|
+
body {
|
2
|
+
background: #FFF;
|
3
|
+
font-family: sans-serif;
|
4
|
+
color: #000;
|
5
|
+
margin: 0px;
|
6
|
+
}
|
7
|
+
|
8
|
+
a {
|
9
|
+
color: #00F;
|
10
|
+
text-decoration: none;
|
11
|
+
}
|
12
|
+
|
13
|
+
a:hover {
|
14
|
+
text-decoration: underline;
|
15
|
+
}
|
16
|
+
|
17
|
+
.product-manual {
|
18
|
+
text-align: center;
|
19
|
+
font-size: x-large;
|
20
|
+
font-variant: small-caps;
|
21
|
+
font-weight: bold;
|
22
|
+
color: #005;
|
23
|
+
}
|
24
|
+
|
25
|
+
.copyright {
|
26
|
+
text-align: center;
|
27
|
+
font-size: small;
|
28
|
+
font-style: italic;
|
29
|
+
color: #005;
|
30
|
+
margin-top: 1in;
|
31
|
+
}
|
32
|
+
|
33
|
+
#banner {
|
34
|
+
background: #005;
|
35
|
+
color: #FFF;
|
36
|
+
border-bottom: 1px solid #000;
|
37
|
+
padding-top: 0.5em;
|
38
|
+
padding-bottom: 0.5em;
|
39
|
+
padding-left: 1em;
|
40
|
+
margin-bottom: 1em;
|
41
|
+
}
|
42
|
+
|
43
|
+
#banner .title {
|
44
|
+
font-size: x-large;
|
45
|
+
}
|
46
|
+
|
47
|
+
#banner .title:first-letter {
|
48
|
+
font-size: 250%;
|
49
|
+
font-weight: normal;
|
50
|
+
float: left;
|
51
|
+
margin-top: -7px;
|
52
|
+
margin-bottom: -7px;
|
53
|
+
}
|
54
|
+
|
55
|
+
#banner .product {
|
56
|
+
font-weight: bold;
|
57
|
+
color: #FF7;
|
58
|
+
letter-spacing: 0.5em;
|
59
|
+
}
|
60
|
+
|
61
|
+
#banner .tagline {
|
62
|
+
font-style: italic;
|
63
|
+
font-size: large;
|
64
|
+
letter-spacing: 0.1em;
|
65
|
+
color: #FFF;
|
66
|
+
}
|
67
|
+
|
68
|
+
#banner .info {
|
69
|
+
color: white;
|
70
|
+
font-size: small;
|
71
|
+
padding-right: 1em;
|
72
|
+
}
|
73
|
+
|
74
|
+
#content {
|
75
|
+
margin-left: 0cm;
|
76
|
+
margin-right: 1cm;
|
77
|
+
}
|
78
|
+
|
79
|
+
#navigation {
|
80
|
+
font-size: x-small;
|
81
|
+
border-right: 2px groove black;
|
82
|
+
border-top: 2px groove black;
|
83
|
+
margin-right: 1em;
|
84
|
+
width: 200px;
|
85
|
+
height: 100%;
|
86
|
+
background: #FFD;
|
87
|
+
}
|
88
|
+
|
89
|
+
#navigation ul, #navigation ol {
|
90
|
+
margin-left: 1.2em;
|
91
|
+
padding-left: 1.2em;
|
92
|
+
}
|
93
|
+
|
94
|
+
#navigation .license {
|
95
|
+
font-size: x-small;
|
96
|
+
text-align: center;
|
97
|
+
border-top: 1px dashed #005;
|
98
|
+
margin-top: 2em;
|
99
|
+
padding: 1em;
|
100
|
+
}
|
101
|
+
|
102
|
+
.section {
|
103
|
+
margin-bottom: 1em;
|
104
|
+
}
|
105
|
+
|
106
|
+
.section p {
|
107
|
+
text-align: justify;
|
108
|
+
}
|
109
|
+
|
110
|
+
#content h1 {
|
111
|
+
background: #005;
|
112
|
+
color: #FFF;
|
113
|
+
font-size: x-large;
|
114
|
+
font-weight: bold;
|
115
|
+
font-variant: small-caps;
|
116
|
+
padding: 0.5em;
|
117
|
+
border: 1px solid #000;
|
118
|
+
margin-top: 0px;
|
119
|
+
margin-bottom: 1em;
|
120
|
+
}
|
121
|
+
|
122
|
+
#content h2 {
|
123
|
+
background: #005;
|
124
|
+
color: #FFF;
|
125
|
+
font-size: large;
|
126
|
+
font-weight: bold;
|
127
|
+
font-variant: small-caps;
|
128
|
+
padding: 0.25em;
|
129
|
+
padding-left: 0.5em;
|
130
|
+
border: 1px solid #000;
|
131
|
+
margin-bottom: 1em;
|
132
|
+
}
|
133
|
+
|
134
|
+
#content h3 {
|
135
|
+
background: #FFD;
|
136
|
+
color: #000;
|
137
|
+
font-size: normal;
|
138
|
+
font-weight: bold;
|
139
|
+
font-variant: small-caps;
|
140
|
+
padding: 0.25em;
|
141
|
+
padding-left: 0.5em;
|
142
|
+
border: 1px dotted #000;
|
143
|
+
margin-bottom: 1em;
|
144
|
+
}
|
145
|
+
|
146
|
+
#content h4 {
|
147
|
+
background: #FFE;
|
148
|
+
color: #000;
|
149
|
+
font-size: normal;
|
150
|
+
font-weight: bold;
|
151
|
+
font-variant: small-caps;
|
152
|
+
padding: 0.25em;
|
153
|
+
padding-left: 0.5em;
|
154
|
+
border: 1px dotted #777;
|
155
|
+
margin-bottom: 1em;
|
156
|
+
}
|
157
|
+
|
158
|
+
#navigation h1 {
|
159
|
+
margin: 0px;
|
160
|
+
padding: 1em;
|
161
|
+
color: #005;
|
162
|
+
background: transparent;
|
163
|
+
font-weight: bold;
|
164
|
+
font-size: 150%;
|
165
|
+
font-variant: small-caps;
|
166
|
+
text-align: center;
|
167
|
+
}
|
168
|
+
|
169
|
+
#navigation h2 {
|
170
|
+
margin: 0px;
|
171
|
+
margin-bottom: 1em;
|
172
|
+
padding: 0.5em;
|
173
|
+
border-top: 1px dashed #005;
|
174
|
+
border-bottom: 1px dashed #005;
|
175
|
+
color: #005;
|
176
|
+
background: transparent;
|
177
|
+
font-weight: bold;
|
178
|
+
font-size: 125%;
|
179
|
+
font-variant: small-caps;
|
180
|
+
text-align: center;
|
181
|
+
}
|
182
|
+
|
183
|
+
table.list {
|
184
|
+
margin: 2em;
|
185
|
+
border: 1px solid black;
|
186
|
+
background: #FFD;
|
187
|
+
padding: 0px;
|
188
|
+
border-spacing: 0px;
|
189
|
+
}
|
190
|
+
|
191
|
+
table.list th {
|
192
|
+
border-bottom: 1px solid #005;
|
193
|
+
padding-bottom: 5px;
|
194
|
+
background: #008;
|
195
|
+
color: white;
|
196
|
+
padding: 0.5em;
|
197
|
+
text-align: left;
|
198
|
+
}
|
199
|
+
|
200
|
+
table.list td {
|
201
|
+
padding: 0.2em;
|
202
|
+
text-align: left;
|
203
|
+
vertical-align: top;
|
204
|
+
border-bottom: 1px solid;
|
205
|
+
}
|
206
|
+
|
207
|
+
.prevnext {
|
208
|
+
padding: 0.5em 1em 0.5em 1em;
|
209
|
+
background: #557;
|
210
|
+
color: #FFF;
|
211
|
+
font-size: small;
|
212
|
+
font-weight: bold;
|
213
|
+
border: 1px solid #000;
|
214
|
+
}
|
215
|
+
|
216
|
+
.prevnext a {
|
217
|
+
color: #FF0;
|
218
|
+
}
|
219
|
+
|
220
|
+
.top .prevnext {
|
221
|
+
margin: 0 0 1em 0;
|
222
|
+
text-align: left;
|
223
|
+
}
|
224
|
+
|
225
|
+
.bottom .prevnext {
|
226
|
+
margin: 1em 0 0 0;
|
227
|
+
text-align: right;
|
228
|
+
}
|
229
|
+
|
230
|
+
.figure {
|
231
|
+
border: 1px solid black;
|
232
|
+
line-height: normal;
|
233
|
+
background: #FFD;
|
234
|
+
margin: 2em;
|
235
|
+
}
|
236
|
+
|
237
|
+
.figure .caption {
|
238
|
+
background: #008;
|
239
|
+
color: white;
|
240
|
+
font-weight: bold;
|
241
|
+
font-size: small;
|
242
|
+
padding: 4px 24px 4px 8px;
|
243
|
+
margin-left: -4px;
|
244
|
+
border: 1px dotted #77F;
|
245
|
+
}
|
246
|
+
|
247
|
+
.figure table {
|
248
|
+
padding-top: 0.8em;
|
249
|
+
padding-bottom: 0.5em;
|
250
|
+
}
|
251
|
+
|
252
|
+
.figure .body {
|
253
|
+
padding-left: 1em;
|
254
|
+
}
|
255
|
+
|
256
|
+
.figure pre {
|
257
|
+
padding: 0px;
|
258
|
+
background: transparent;
|
259
|
+
border: none;
|
260
|
+
font-size: small;
|
261
|
+
font-family: monospace;
|
262
|
+
}
|
263
|
+
|
264
|
+
.figure .lineno {
|
265
|
+
text-align: right;
|
266
|
+
color: #B00;
|
267
|
+
font-family: monospace;
|
268
|
+
font-size: small;
|
269
|
+
padding-right: 1em;
|
270
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
.ruby .normal {}
|
2
|
+
.ruby .comment { color: #005; font-style: italic; }
|
3
|
+
.ruby .keyword { color: #A00; font-weight: bold; }
|
4
|
+
.ruby .method { color: #077; }
|
5
|
+
.ruby .class { color: #074; }
|
6
|
+
.ruby .module { color: #050; }
|
7
|
+
.ruby .punct { color: #447; font-weight: bold; }
|
8
|
+
.ruby .symbol { color: #099; }
|
9
|
+
.ruby .string { color: #944; }
|
10
|
+
.ruby .char { color: #F07; }
|
11
|
+
.ruby .ident { color: #004; }
|
12
|
+
.ruby .constant { color: #07F; }
|
13
|
+
.ruby .regex { color: #B66; }
|
14
|
+
.ruby .number { color: #D55; }
|
15
|
+
.ruby .attribute { color: #377; }
|
16
|
+
.ruby .global { color: #3B7; }
|
17
|
+
.ruby .expr { color: #227; }
|
data/doc/manual/manual.rb
CHANGED
@@ -125,7 +125,7 @@ module Net ; module SSH
|
|
125
125
|
|
126
126
|
def extract_figures
|
127
127
|
@figures = []
|
128
|
-
@content.gsub!( /^\
|
128
|
+
@content.gsub!( /^\{\{\{(.*?)?\n(.*?)\n\}\}\}$/m ) do
|
129
129
|
body = $2.strip
|
130
130
|
opts = Hash[*$1.strip.split(/,/).map{|p| p.split(/=/)}.flatten]
|
131
131
|
@figures << Figure.new( opts, body )
|
@@ -234,7 +234,7 @@ module Net ; module SSH
|
|
234
234
|
end
|
235
235
|
|
236
236
|
end
|
237
|
-
end
|
237
|
+
end; end
|
238
238
|
|
239
239
|
if __FILE__ == $0
|
240
240
|
|
data/doc/manual/manual.yml
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
meta: !^meta
|
9
9
|
copyright: 2004,2005
|
10
10
|
author: Jamis Buck
|
11
|
-
email:
|
11
|
+
email: jamis@jamisbuck.org
|
12
12
|
|
13
13
|
product: !^product
|
14
14
|
name: Net::SSH
|
@@ -23,55 +23,52 @@ product: !^product
|
|
23
23
|
- Net::SSH Wiki: http://net-ssh.rubyforge.org/wiki/wiki.pl
|
24
24
|
|
25
25
|
recent_updates:
|
26
|
-
- "
|
27
|
-
- "Shell service"
|
28
|
-
- "Enhancements to the channel and connection interfaces"
|
29
|
-
- "Keyboard-interactive authentication method"
|
26
|
+
- "Updated from the (now-defunct) Hieraki version of the documentation"
|
30
27
|
|
31
28
|
chapters:
|
32
29
|
|
33
|
-
- Introduction:
|
34
|
-
- "What is Net::SSH?": !!file parts/
|
35
|
-
- "What isn't Net::SSH?": !!file parts/
|
36
|
-
- "Getting Net::SSH": !!file parts/
|
37
|
-
- License Information: !!file parts/
|
38
|
-
- Support: !!file parts/
|
39
|
-
- About the Author: !!file parts/
|
30
|
+
- "Introduction":
|
31
|
+
- "What is Net::SSH?": !!file parts/0000.txt
|
32
|
+
- "What isn't Net::SSH?": !!file parts/0001.txt
|
33
|
+
- "Getting Net::SSH": !!file parts/0002.txt
|
34
|
+
- "License Information": !!file parts/0003.txt
|
35
|
+
- "Support": !!file parts/0004.txt
|
36
|
+
- "About the Author": !!file parts/0005.txt
|
40
37
|
|
41
|
-
- Starting a Session:
|
42
|
-
- "Using Net::SSH.start": !!file parts/
|
43
|
-
- Using a Public/Private Key: !!file parts/
|
44
|
-
- Options: !!file parts/
|
45
|
-
- "Using Net::SSH::Session": !!file parts/
|
38
|
+
- "Starting a Session":
|
39
|
+
- "Using Net::SSH.start": !!file parts/0006.txt
|
40
|
+
- "Using a Public/Private Key": !!file parts/0007.txt
|
41
|
+
- "Options": !!file parts/0008.txt
|
42
|
+
- "Using Net::SSH::Session": !!file parts/0009.txt
|
46
43
|
|
47
|
-
- Channels:
|
48
|
-
- What are Channels
|
49
|
-
- Session.loop: !!file parts/
|
50
|
-
- Channel Types: !!file parts/
|
51
|
-
- Opening a Channel: !!file parts/
|
52
|
-
- Callbacks: !!file parts/
|
53
|
-
- Channel Operations: !!file parts/
|
44
|
+
- "Channels":
|
45
|
+
- "What are Channels?": !!file parts/0010.txt
|
46
|
+
- "Session.loop": !!file parts/0011.txt
|
47
|
+
- "Channel Types": !!file parts/0012.txt
|
48
|
+
- "Opening a Channel": !!file parts/0013.txt
|
49
|
+
- "Callbacks": !!file parts/0014.txt
|
50
|
+
- "Channel Operations": !!file parts/0015.txt
|
54
51
|
|
55
|
-
- Executing Commands:
|
56
|
-
- Using Channels: !!file parts/
|
57
|
-
- "Using #process.open": !!file parts/
|
58
|
-
- "Using #process.popen3": !!file parts/
|
52
|
+
- "Executing Commands":
|
53
|
+
- "Using Channels": !!file parts/0016.txt
|
54
|
+
- "Using #process.open": !!file parts/0017.txt
|
55
|
+
- "Using #process.popen3": !!file parts/0018.txt
|
59
56
|
|
60
|
-
- User Shells:
|
61
|
-
- Introduction: !!file parts/
|
62
|
-
- Using Channels: !!file parts/
|
63
|
-
- Shell Service: !!file parts/
|
64
|
-
- SyncShell Service: !!file parts/
|
65
|
-
- Terminal Clients: !!file parts/
|
57
|
+
- "User Shells":
|
58
|
+
- "Introduction": !!file parts/0019.txt
|
59
|
+
- "Using Channels": !!file parts/0020.txt
|
60
|
+
- "Shell Service": !!file parts/0021.txt
|
61
|
+
- "SyncShell Service": !!file parts/0022.txt
|
62
|
+
- "Terminal Clients": !!file parts/0023.txt
|
66
63
|
|
67
|
-
- Port Forwarding:
|
68
|
-
- Introduction: !!file parts/
|
69
|
-
- Local-to-Remote: !!file parts/
|
70
|
-
- Remote-to-Local: !!file parts/
|
71
|
-
- Direct Channels: !!file parts/
|
72
|
-
- Remote-to-Local Handlers: !!file parts/
|
64
|
+
- "Port Forwarding":
|
65
|
+
- "Introduction": !!file parts/0024.txt
|
66
|
+
- "Local-to-Remote": !!file parts/0025.txt
|
67
|
+
- "Remote-to-Local": !!file parts/0026.txt
|
68
|
+
- "Direct Channels": !!file parts/0027.txt
|
69
|
+
- "Remote-to-Local Handlers": !!file parts/0028.txt
|
73
70
|
|
74
|
-
- Using Proxies:
|
75
|
-
- Introduction: !!file parts/
|
76
|
-
- HTTP: !!file parts/
|
77
|
-
- SOCKS: !!file parts/
|
71
|
+
- "Using Proxies":
|
72
|
+
- "Introduction": !!file parts/0029.txt
|
73
|
+
- "HTTP": !!file parts/0030.txt
|
74
|
+
- "SOCKS": !!file parts/0031.txt
|
File without changes
|
File without changes
|
@@ -10,9 +10,9 @@ h3. Using "RubyGems":http://rubygems.rubyforge.org
|
|
10
10
|
|
11
11
|
If you have "RubyGems":http://rubygems.rubyforge.org installed, installing Net::SSH is simple:
|
12
12
|
|
13
|
-
|
13
|
+
{{{lang=shell,caption=Using Rubygems to install Net::SSH
|
14
14
|
gem install net-ssh
|
15
|
-
|
15
|
+
}}}
|
16
16
|
|
17
17
|
You still need to make sure you have a working version of Ruby's OpenSSL module, but other than that, you should be good to go!
|
18
18
|
|
@@ -20,9 +20,9 @@ h3. Using "rpa-base":http://rpa-base.rubyforge.org
|
|
20
20
|
|
21
21
|
If you have "rpa-base":http://rpa-base.rubyforge.org installed:
|
22
22
|
|
23
|
-
|
23
|
+
{{{lang=shell,caption=Using RPA to install Net::SSH
|
24
24
|
rpa install net-ssh
|
25
|
-
|
25
|
+
}}}
|
26
26
|
|
27
27
|
As with the gem install, you still need to make sure you have a working version of Ruby's OpenSSL module, but other than that, you should be good to go!
|
28
28
|
|
@@ -32,8 +32,9 @@ If you don't have "RubyGems":http://rubygems.rubyforge.org or "rpa-base":http://
|
|
32
32
|
|
33
33
|
Then, unpack the archive and run the @setup.rb@ script:
|
34
34
|
|
35
|
-
|
35
|
+
{{{lang=shell,caption=Using setup.rb to install Net::SSH
|
36
36
|
ruby setup.rb config
|
37
37
|
ruby setup.rb setup
|
38
38
|
ruby setup.rb install
|
39
|
-
|
39
|
+
}}}
|
40
|
+
|