net-ssh 2.6.3 → 2.6.4

Sign up to get free protection for your applications and to get access to all the features.
Binary file
@@ -1,4 +1,9 @@
1
1
 
2
+ === 2.6.4 / 06 Feb 2013
3
+
4
+ * Added license info to gemspec [jordimassaguerpla]
5
+
6
+
2
7
  === 2.6.3 / 10 Jan 2013
3
8
 
4
9
  * Small doc fix and correct error class for PKey::EC key type [Andreas Wolff]
File without changes
@@ -47,12 +47,12 @@ In a nutshell:
47
47
 
48
48
  # "on_data" is called when the process writes something to stdout
49
49
  ch.on_data do |c, data|
50
- $STDOUT.print data
50
+ $stdout.print data
51
51
  end
52
52
 
53
53
  # "on_extended_data" is called when the process writes something to stderr
54
54
  ch.on_extended_data do |c, type, data|
55
- $STDERR.print data
55
+ $stderr.print data
56
56
  end
57
57
 
58
58
  ch.on_close { puts "done!" }
@@ -90,11 +90,24 @@ Lastly, if you want to run the tests or use any of the Rake tasks, you'll need:
90
90
 
91
91
  NOTE: If you are running on jruby you need to install jruby-pageant manually (gemspec doesn't allow for platform specific dependencies).
92
92
 
93
+ However, in order to be sure the code you're installing hasn't been tampered with, it's recommended that you verify the signiture[http://docs.rubygems.org/read/chapter/21]. To do this, you need to add my public key as a trusted certificate (you only need to do this once):
94
+
95
+ # Add the public key as a trusted certificate
96
+ # (You only need to do this once)
97
+ $ curl -O https://raw.github.com/net-ssh/net-ssh/master/gem-public_cert.pem
98
+ $ gem cert --add gem-public_cert.pem
99
+
100
+ Then, when install the gem, do so with high security:
101
+
102
+ $ gem install net-ssh -P HighSecurity
103
+
104
+ If you don't add the public key, you'll see an error like "Couldn't verify data signature". If you're still having trouble let me know and I'll give you a hand.
105
+
93
106
  == RUBY 1.8 SUPPORT
94
107
 
95
108
  net-ssh supports Ruby 1.8.x up until the 2.5.1 release. Later releases will work but the test suite is no longer guaranteed to pass all tests.
96
109
 
97
- == JRUBY 1.6
110
+ == JRUBY 1.6
98
111
 
99
112
  There is an issue with jruby-openssl that produces the following error in jruby 1.6:
100
113
 
@@ -111,7 +124,7 @@ from Karl Varga:
111
124
  Ruby's OpenSSL bindings always return a key length of 16 for RC4 ciphers, which means that when we try to use ARCFOUR256 or higher, Net::SSH generates keys which are consistently too short - 16 bytes as opposed to 32 bytes - resulting in the following error:
112
125
 
113
126
  OpenSSL::CipherError: key length too short
114
-
127
+
115
128
  My patch simply instructs Net::SSH to build keys of the the proper length, regardless of the required key length reported by OpenSSL.
116
129
 
117
130
  You should also be aware that your OpenSSL C libraries may also contain this bug. I've updated to 0.9.8k, but according to this thread[https://bugzilla.mindrot.org/show_bug.cgi?id=1291], the bug existed as recently as 0.9.8e! I've manually taken a look at my header files and they look ok, which is what makes me think it's a bug in the Ruby implementation.
@@ -120,17 +133,17 @@ To see your OpenSSL version:
120
133
 
121
134
  $ openssl version
122
135
  OpenSSL 0.9.8k 25 Mar 2009
123
-
136
+
124
137
  After installing this gem, verify that Net::SSH is generating keys of the correct length by running the script <tt>support/arcfour_check.rb</tt>:
125
138
 
126
139
  $ ruby arcfour_support.rb
127
-
140
+
128
141
  which should produce the following:
129
142
 
130
143
  arcfour128: [16, 8] OpenSSL::Cipher::Cipher
131
144
  arcfour256: [32, 8] OpenSSL::Cipher::Cipher
132
145
  arcfour512: [64, 8] OpenSSL::Cipher::Cipher
133
-
146
+
134
147
 
135
148
  == RUNNING TESTS
136
149
 
data/Rakefile CHANGED
@@ -1,84 +1,57 @@
1
- require 'rubygems'
2
- require 'rubygems/package_task'
3
- require 'rake/clean'
4
- require 'fileutils'
5
- include FileUtils
6
-
7
- require 'rdoc/task'
8
-
9
-
10
- task :default => :package
11
-
12
- # CONFIG =============================================================
13
-
14
- # Change the following according to your needs
15
- README = "README.rdoc"
16
- CHANGES = "CHANGELOG.rdoc"
17
- THANKS = 'THANKS.rdoc'
18
- LICENSE = "LICENSE.rdoc"
19
-
20
- # Files and directories to be deleted when you run "rake clean"
21
- CLEAN.include [ 'pkg', '*.gem', '.config', 'doc']
22
-
23
- # Virginia assumes your project and gemspec have the same name
24
- name = 'net-ssh'
25
- load "#{name}.gemspec"
26
- version = @spec.version
27
-
28
- # That's it! The following defaults should allow you to get started
29
- # on other things.
30
-
31
-
32
- # TESTS/SPECS =========================================================
33
-
34
-
35
-
36
- # INSTALL =============================================================
37
-
38
- Gem::PackageTask.new(@spec) do |p|
39
- p.need_tar = true if RUBY_PLATFORM !~ /mswin/
40
- end
41
-
42
- task :build => [ :package ]
43
- task :release => [ :rdoc, :package ]
44
- task :install => [ :rdoc, :package ] do
45
- sh %{sudo gem install pkg/#{name}-#{version}.gem}
46
- end
47
- task :uninstall => [ :clean ] do
48
- sh %{sudo gem uninstall #{name}}
49
- end
50
-
1
+ require "rubygems"
2
+ require "rake"
3
+ require "rake/clean"
4
+ require "rdoc/task"
5
+
6
+ task :default => ["build"]
7
+ CLEAN.include [ 'pkg', 'rdoc' ]
8
+ name = "net-ssh"
9
+
10
+ $:.unshift File.join(File.dirname(__FILE__), 'lib')
11
+ require "net/ssh"
12
+ version = Net::SSH::Version::CURRENT
13
+
14
+ begin
15
+ require "jeweler"
16
+ Jeweler::Tasks.new do |s|
17
+ s.version = version
18
+ s.name = name
19
+ s.rubyforge_project = s.name
20
+ s.summary = "Net::SSH: a pure-Ruby implementation of the SSH2 client protocol."
21
+ s.description = s.summary + " It allows you to write programs that invoke and interact with processes on remote servers, via SSH2."
22
+ s.email = "net-ssh@solutious.com"
23
+ s.homepage = "https://github.com/net-ssh/net-ssh"
24
+ s.authors = ["Jamis Buck", "Delano Mandelbaum"]
25
+
26
+ # Note: this is run at package time not install time so if you are
27
+ # running on jruby, you need to install jruby-pageant manually.
28
+ if RUBY_PLATFORM == "java"
29
+ s.add_dependency 'jruby-pageant', ">=1.1.1"
30
+ end
51
31
 
52
- # RUBYFORGE RELEASE / PUBLISH TASKS ==================================
32
+ s.add_development_dependency 'test-unit'
33
+ s.add_development_dependency 'mocha'
53
34
 
54
- if @spec.rubyforge_project
55
- desc 'Publish website to rubyforge'
56
- task 'publish:rdoc' => 'doc/index.html' do
57
- sh "scp -r doc/* rubyforge.org:/var/www/gforge-projects/#{name}/ssh/v2/api/"
58
- end
35
+ s.license = "MIT"
59
36
 
60
- desc 'Public release to rubyforge'
61
- task 'publish:gem' => [:package] do |t|
62
- sh <<-end
63
- rubyforge add_release -o Any -a #{CHANGES} -f -n #{README} #{name} #{name} #{@spec.version} pkg/#{name}-#{@spec.version}.gem &&
64
- rubyforge add_file -o Any -a #{CHANGES} -f -n #{README} #{name} #{name} #{@spec.version} pkg/#{name}-#{@spec.version}.tgz
65
- end
37
+ s.signing_key = File.join('/mnt/gem/', 'gem-private_key.pem')
38
+ s.cert_chain = ['gem-public_cert.pem']
66
39
  end
40
+ Jeweler::GemcutterTasks.new
41
+ rescue LoadError
42
+ puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
67
43
  end
68
44
 
69
-
70
-
71
- # RUBY DOCS TASK ==================================
72
-
73
- RDoc::Task.new do |t|
74
- # this only works with RDoc 3.1 or greater
75
- t.generator = 'hanna' # gem install hanna-nouveau
76
- t.rdoc_dir = 'doc'
77
- t.title = @spec.summary
78
- t.main = README
79
- t.rdoc_files.include(README)
80
- t.rdoc_files.include(CHANGES)
81
- t.rdoc_files.include(THANKS)
82
- t.rdoc_files.include(LICENSE)
83
- t.rdoc_files.include('lib/**/*.rb')
45
+ RDoc::Task.new do |rdoc|
46
+ rdoc.rdoc_dir = "rdoc"
47
+ rdoc.title = "#{name} #{version}"
48
+ rdoc.generator = 'hanna' # gem install hanna-nouveau
49
+ rdoc.main = 'README.rdoc'
50
+ rdoc.rdoc_files.include("README*")
51
+ rdoc.rdoc_files.include("LICENSE.txt")
52
+ rdoc.rdoc_files.include("THANKS.txt")
53
+ rdoc.rdoc_files.include("CHANGES.txt")
54
+ rdoc.rdoc_files.include("bin/*.rb")
55
+ rdoc.rdoc_files.include("lib/**/*.rb")
84
56
  end
57
+
@@ -0,0 +1,91 @@
1
+ Net::SSH was originally written by Jamis Buck <jamis@37signals.com>. It
2
+ is currently maintained by Delano Mandelbaum <delano@solutious.com>. In
3
+ addition, the following individuals are gratefully acknowledged for their
4
+ contributions:
5
+
6
+ GOTOU Yuuzou <gotoyuzo@notwork.org>
7
+ * help and code related to OpenSSL
8
+
9
+ Guillaume Marçais <guillaume.marcais@free.fr>
10
+ * support for communicating with the the PuTTY "pageant" process
11
+
12
+ Daniel Berger <djberg96@yahoo.com>
13
+ * help getting unit tests in earlier Net::SSH versions to pass in Windows
14
+ * initial version of Net::SSH::Config provided inspiration and encouragement
15
+
16
+ Chris Andrews <chris@nodnol.org> and Lee Jensen <lee@outerim.com>
17
+ * support for ssh agent forwarding
18
+
19
+ Hiroshi Nakamura
20
+ * fixed errors with JRuby tests
21
+
22
+
23
+ Additional Contributors:
24
+ Andreas Wolff
25
+ mhuffnagle
26
+ ohrite
27
+ iltempo
28
+ nagachika
29
+ Nobuhiro IMAI
30
+ arturaz
31
+ dubspeed
32
+ Andy Brody
33
+ Marco Sandrini
34
+ Ryosuke Yamazaki
35
+ muffl0n
36
+ pcn
37
+ musybite
38
+ Mark Imbriaco
39
+ Joel Watson
40
+ Woon Jung
41
+ Edmund Haselwanter
42
+ robbebob
43
+ Daniel Pittman
44
+ Markus Roberts
45
+ Gavin Brock
46
+ Rich Lane
47
+ Lee Marlow
48
+ xbaldauf
49
+ Delano Mandelbaum
50
+ Miklós Fazekas
51
+ Andy Lo-A-Foe
52
+ Jason Weathered
53
+ Hans de Graaff
54
+ Travis Reeder
55
+ Akinori MUSHA
56
+ Alex Peuchert
57
+ Daniel Azuma
58
+ Will Bryant
59
+ Gerald Talton
60
+ ckoehler
61
+ Karl Varga
62
+ Denis Bernard
63
+ Steven Hazel
64
+ Alex Holems
65
+ Andrew Babkin
66
+ Bob Cotton
67
+ Yanko Ivanov
68
+ Angel N. Sciortino
69
+ arilerner@mac.com
70
+ David Dollar
71
+ Timo Gatsonides
72
+ Matthew Todd
73
+ Brian Candler
74
+ Francis Sullivan
75
+ James Rosen
76
+ Mike Timm
77
+
78
+
79
+
80
+
81
+
82
+
83
+
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+
@@ -0,0 +1,20 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIDNjCCAh6gAwIBAgIBADANBgkqhkiG9w0BAQUFADBBMQ8wDQYDVQQDDAZkZWxh
3
+ bm8xGTAXBgoJkiaJk/IsZAEZFglzb2x1dGlvdXMxEzARBgoJkiaJk/IsZAEZFgNj
4
+ b20wHhcNMTMwMjA2MTE1NzQ1WhcNMTQwMjA2MTE1NzQ1WjBBMQ8wDQYDVQQDDAZk
5
+ ZWxhbm8xGTAXBgoJkiaJk/IsZAEZFglzb2x1dGlvdXMxEzARBgoJkiaJk/IsZAEZ
6
+ FgNjb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDg1hMtl0XsMuUK
7
+ AKTgYWv3gjj7vuEsE2EjT+vyBg8/LpqVVwZziiaebJT9IZiQ+sCFqbiakj0b53pI
8
+ hg1yOaBEmH6/W0L7rwzqaRV9sW1eJs9JxFYQCnd67zUnzj8nnRlOjG+hhIG+Vsij
9
+ npsGbt28pefuNZJjO5q2clAlfSniIIHfIsU7/StEYu6FUGOjnwryZ0r5yJlr9RrE
10
+ Gs+q0DW8QnZ9UpAfuDFQZuIqeKQFFLE7nMmCGaA+0BN1nLl3fVHNbLHq7Avk8+Z+
11
+ ZuuvkdscbHlO/l+3xCNQ5nUnHwq0ADAbMLOlmiYYzqXoWLjmeI6me/clktJCfN2R
12
+ oZG3UQvvAgMBAAGjOTA3MAkGA1UdEwQCMAAwHQYDVR0OBBYEFMSJOEtHzE4l0azv
13
+ M0JK0kKNToK1MAsGA1UdDwQEAwIEsDANBgkqhkiG9w0BAQUFAAOCAQEAtOdE73qx
14
+ OH2ydi9oT2hS5f9G0y1Z70Tlwh+VGExyfxzVE9XwC+iPpJxNraiHYgF/9/oky7ZZ
15
+ R9q0/tJneuhAenZdiQkX7oi4O3v9wRS6YHoWBxMPFKVRLNTzvVJsbmfpCAlp5/5g
16
+ ps4wQFy5mibElGVlOobf/ghqZ25HS9J6kd0/C/ry0AUtTogsL7TxGwT4kbCx63ub
17
+ 3vywEEhsJUzfd97GCABmtQfRTldX/j7F1z/5wd8p+hfdox1iibds9ZtfaZA3KzKn
18
+ kchWN9B6zg9r1XMQ8BM2Jz0XoPanPe354+lWwjpkRKbFow/ZbQHcCLCq24+N6b6g
19
+ dgKfNDzwiDpqCA==
20
+ -----END CERTIFICATE-----
@@ -0,0 +1,37 @@
1
+ require 'net/ssh/errors'
2
+ require 'net/ssh/authentication/methods/abstract'
3
+
4
+ module Net
5
+ module SSH
6
+ module Authentication
7
+ module Methods
8
+
9
+ # Implements the "none" SSH authentication method.
10
+ class None < Abstract
11
+ # Attempt to authenticate as "none"
12
+ def authenticate(next_service, user="", password="")
13
+ send_message(userauth_request(user, next_service, "none"))
14
+ message = session.next_message
15
+
16
+ case message.type
17
+ when USERAUTH_SUCCESS
18
+ debug { "none succeeded" }
19
+ return true
20
+ when USERAUTH_FAILURE
21
+ debug { "none failed" }
22
+
23
+ raise Net::SSH::Authentication::DisallowedMethod unless
24
+ message[:authentications].split(/,/).include? 'none'
25
+
26
+ return false
27
+ else
28
+ raise Net::SSH::Exception, "unexpected reply to USERAUTH_REQUEST: #{message.type} (#{message.inspect})"
29
+ end
30
+
31
+ end
32
+ end
33
+
34
+ end
35
+ end
36
+ end
37
+ end
@@ -33,17 +33,17 @@ module Net; module SSH; module Test
33
33
  type = packet.read_byte
34
34
  raise "expected #{@type}, but got #{type}" if @type != type
35
35
 
36
- @data.zip(types).each do |expected, type|
37
- type ||= case expected
36
+ @data.zip(types).each do |expected, _type|
37
+ _type ||= case expected
38
38
  when nil then break
39
39
  when Numeric then :long
40
40
  when String then :string
41
41
  when TrueClass, FalseClass then :bool
42
42
  end
43
43
 
44
- actual = packet.send("read_#{type}")
44
+ actual = packet.send("read_#{_type}")
45
45
  next if expected.nil?
46
- raise "expected #{type} #{expected.inspect} but got #{actual.inspect}" unless expected == actual
46
+ raise "expected #{_type} #{expected.inspect} but got #{actual.inspect}" unless expected == actual
47
47
  end
48
48
  end
49
49
  end
@@ -51,7 +51,7 @@ module Net; module SSH
51
51
  MINOR = 6
52
52
 
53
53
  # The tiny component of this version of the Net::SSH library
54
- TINY = 3
54
+ TINY = 4
55
55
 
56
56
  # The current version of the Net::SSH library as a Version instance
57
57
  CURRENT = new(MAJOR, MINOR, TINY)
@@ -1,175 +1,191 @@
1
- @spec = Gem::Specification.new do |s|
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
2
7
  s.name = "net-ssh"
3
- s.rubyforge_project = 'net-ssh'
4
- s.version = "2.6.3"
5
- s.summary = "Net::SSH: a pure-Ruby implementation of the SSH2 client protocol."
6
- s.description = s.summary + " It allows you to write programs that invoke and interact with processes on remote servers, via SSH2."
8
+ s.version = "2.6.4"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
7
11
  s.authors = ["Jamis Buck", "Delano Mandelbaum"]
8
- s.email = ["net-ssh@solutious.com"]
9
- s.homepage = "http://github.com/net-ssh/net-ssh"
12
+ s.cert_chain = ["gem-public_cert.pem"]
13
+ s.date = "2013-02-06"
14
+ s.description = "Net::SSH: a pure-Ruby implementation of the SSH2 client protocol. It allows you to write programs that invoke and interact with processes on remote servers, via SSH2."
15
+ s.email = "net-ssh@solutious.com"
16
+ s.extra_rdoc_files = [
17
+ "LICENSE.txt",
18
+ "README.rdoc"
19
+ ]
20
+ s.files = [
21
+ "CHANGES.txt",
22
+ "LICENSE.txt",
23
+ "Manifest",
24
+ "README.rdoc",
25
+ "Rakefile",
26
+ "Rudyfile",
27
+ "THANKS.txt",
28
+ "gem-public_cert.pem",
29
+ "lib/net/ssh.rb",
30
+ "lib/net/ssh/authentication/agent.rb",
31
+ "lib/net/ssh/authentication/agent/java_pageant.rb",
32
+ "lib/net/ssh/authentication/agent/socket.rb",
33
+ "lib/net/ssh/authentication/constants.rb",
34
+ "lib/net/ssh/authentication/key_manager.rb",
35
+ "lib/net/ssh/authentication/methods/abstract.rb",
36
+ "lib/net/ssh/authentication/methods/hostbased.rb",
37
+ "lib/net/ssh/authentication/methods/keyboard_interactive.rb",
38
+ "lib/net/ssh/authentication/methods/none.rb",
39
+ "lib/net/ssh/authentication/methods/password.rb",
40
+ "lib/net/ssh/authentication/methods/publickey.rb",
41
+ "lib/net/ssh/authentication/pageant.rb",
42
+ "lib/net/ssh/authentication/session.rb",
43
+ "lib/net/ssh/buffer.rb",
44
+ "lib/net/ssh/buffered_io.rb",
45
+ "lib/net/ssh/config.rb",
46
+ "lib/net/ssh/connection/channel.rb",
47
+ "lib/net/ssh/connection/constants.rb",
48
+ "lib/net/ssh/connection/session.rb",
49
+ "lib/net/ssh/connection/term.rb",
50
+ "lib/net/ssh/errors.rb",
51
+ "lib/net/ssh/key_factory.rb",
52
+ "lib/net/ssh/known_hosts.rb",
53
+ "lib/net/ssh/loggable.rb",
54
+ "lib/net/ssh/packet.rb",
55
+ "lib/net/ssh/prompt.rb",
56
+ "lib/net/ssh/proxy/command.rb",
57
+ "lib/net/ssh/proxy/errors.rb",
58
+ "lib/net/ssh/proxy/http.rb",
59
+ "lib/net/ssh/proxy/socks4.rb",
60
+ "lib/net/ssh/proxy/socks5.rb",
61
+ "lib/net/ssh/ruby_compat.rb",
62
+ "lib/net/ssh/service/forward.rb",
63
+ "lib/net/ssh/test.rb",
64
+ "lib/net/ssh/test/channel.rb",
65
+ "lib/net/ssh/test/extensions.rb",
66
+ "lib/net/ssh/test/kex.rb",
67
+ "lib/net/ssh/test/local_packet.rb",
68
+ "lib/net/ssh/test/packet.rb",
69
+ "lib/net/ssh/test/remote_packet.rb",
70
+ "lib/net/ssh/test/script.rb",
71
+ "lib/net/ssh/test/socket.rb",
72
+ "lib/net/ssh/transport/algorithms.rb",
73
+ "lib/net/ssh/transport/cipher_factory.rb",
74
+ "lib/net/ssh/transport/constants.rb",
75
+ "lib/net/ssh/transport/ctr.rb",
76
+ "lib/net/ssh/transport/hmac.rb",
77
+ "lib/net/ssh/transport/hmac/abstract.rb",
78
+ "lib/net/ssh/transport/hmac/md5.rb",
79
+ "lib/net/ssh/transport/hmac/md5_96.rb",
80
+ "lib/net/ssh/transport/hmac/none.rb",
81
+ "lib/net/ssh/transport/hmac/ripemd160.rb",
82
+ "lib/net/ssh/transport/hmac/sha1.rb",
83
+ "lib/net/ssh/transport/hmac/sha1_96.rb",
84
+ "lib/net/ssh/transport/hmac/sha2_256.rb",
85
+ "lib/net/ssh/transport/hmac/sha2_256_96.rb",
86
+ "lib/net/ssh/transport/hmac/sha2_512.rb",
87
+ "lib/net/ssh/transport/hmac/sha2_512_96.rb",
88
+ "lib/net/ssh/transport/identity_cipher.rb",
89
+ "lib/net/ssh/transport/kex.rb",
90
+ "lib/net/ssh/transport/kex/diffie_hellman_group14_sha1.rb",
91
+ "lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb",
92
+ "lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb",
93
+ "lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha256.rb",
94
+ "lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb",
95
+ "lib/net/ssh/transport/kex/ecdh_sha2_nistp384.rb",
96
+ "lib/net/ssh/transport/kex/ecdh_sha2_nistp521.rb",
97
+ "lib/net/ssh/transport/key_expander.rb",
98
+ "lib/net/ssh/transport/openssl.rb",
99
+ "lib/net/ssh/transport/packet_stream.rb",
100
+ "lib/net/ssh/transport/server_version.rb",
101
+ "lib/net/ssh/transport/session.rb",
102
+ "lib/net/ssh/transport/state.rb",
103
+ "lib/net/ssh/verifiers/lenient.rb",
104
+ "lib/net/ssh/verifiers/null.rb",
105
+ "lib/net/ssh/verifiers/secure.rb",
106
+ "lib/net/ssh/verifiers/strict.rb",
107
+ "lib/net/ssh/version.rb",
108
+ "net-ssh.gemspec",
109
+ "setup.rb",
110
+ "support/arcfour_check.rb",
111
+ "support/ssh_tunnel_bug.rb",
112
+ "test/README.txt",
113
+ "test/authentication/methods/common.rb",
114
+ "test/authentication/methods/test_abstract.rb",
115
+ "test/authentication/methods/test_hostbased.rb",
116
+ "test/authentication/methods/test_keyboard_interactive.rb",
117
+ "test/authentication/methods/test_none.rb",
118
+ "test/authentication/methods/test_password.rb",
119
+ "test/authentication/methods/test_publickey.rb",
120
+ "test/authentication/test_agent.rb",
121
+ "test/authentication/test_key_manager.rb",
122
+ "test/authentication/test_session.rb",
123
+ "test/common.rb",
124
+ "test/configs/eqsign",
125
+ "test/configs/exact_match",
126
+ "test/configs/host_plus",
127
+ "test/configs/multihost",
128
+ "test/configs/nohost",
129
+ "test/configs/numeric_host",
130
+ "test/configs/wild_cards",
131
+ "test/connection/test_channel.rb",
132
+ "test/connection/test_session.rb",
133
+ "test/known_hosts/github",
134
+ "test/manual/test_forward.rb",
135
+ "test/start/test_transport.rb",
136
+ "test/test_all.rb",
137
+ "test/test_buffer.rb",
138
+ "test/test_buffered_io.rb",
139
+ "test/test_config.rb",
140
+ "test/test_key_factory.rb",
141
+ "test/test_known_hosts.rb",
142
+ "test/transport/hmac/test_md5.rb",
143
+ "test/transport/hmac/test_md5_96.rb",
144
+ "test/transport/hmac/test_none.rb",
145
+ "test/transport/hmac/test_ripemd160.rb",
146
+ "test/transport/hmac/test_sha1.rb",
147
+ "test/transport/hmac/test_sha1_96.rb",
148
+ "test/transport/hmac/test_sha2_256.rb",
149
+ "test/transport/hmac/test_sha2_256_96.rb",
150
+ "test/transport/hmac/test_sha2_512.rb",
151
+ "test/transport/hmac/test_sha2_512_96.rb",
152
+ "test/transport/kex/test_diffie_hellman_group14_sha1.rb",
153
+ "test/transport/kex/test_diffie_hellman_group1_sha1.rb",
154
+ "test/transport/kex/test_diffie_hellman_group_exchange_sha1.rb",
155
+ "test/transport/kex/test_diffie_hellman_group_exchange_sha256.rb",
156
+ "test/transport/kex/test_ecdh_sha2_nistp256.rb",
157
+ "test/transport/kex/test_ecdh_sha2_nistp384.rb",
158
+ "test/transport/kex/test_ecdh_sha2_nistp521.rb",
159
+ "test/transport/test_algorithms.rb",
160
+ "test/transport/test_cipher_factory.rb",
161
+ "test/transport/test_hmac.rb",
162
+ "test/transport/test_identity_cipher.rb",
163
+ "test/transport/test_packet_stream.rb",
164
+ "test/transport/test_server_version.rb",
165
+ "test/transport/test_session.rb",
166
+ "test/transport/test_state.rb"
167
+ ]
168
+ s.homepage = "https://github.com/net-ssh/net-ssh"
169
+ s.licenses = ["MIT"]
170
+ s.require_paths = ["lib"]
171
+ s.rubyforge_project = "net-ssh"
172
+ s.rubygems_version = "1.8.25"
173
+ s.signing_key = "/mnt/gem/gem-private_key.pem"
174
+ s.summary = "Net::SSH: a pure-Ruby implementation of the SSH2 client protocol."
10
175
 
11
- s.extra_rdoc_files = %w[README.rdoc THANKS.rdoc CHANGELOG.rdoc]
12
- s.has_rdoc = true
13
- s.rdoc_options = ["--line-numbers", "--title", s.summary, "--main", "README.rdoc"]
14
- s.require_paths = %w[lib]
15
- s.rubygems_version = '1.3.2'
176
+ if s.respond_to? :specification_version then
177
+ s.specification_version = 3
16
178
 
17
- # Note: this is run at package time not install time so if you are
18
- # running on jruby, you need to install jruby-pageant manually.
19
- if RUBY_PLATFORM == "java"
20
- s.add_dependency 'jruby-pageant', ">=1.1.1"
179
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
180
+ s.add_development_dependency(%q<test-unit>, [">= 0"])
181
+ s.add_development_dependency(%q<mocha>, [">= 0"])
182
+ else
183
+ s.add_dependency(%q<test-unit>, [">= 0"])
184
+ s.add_dependency(%q<mocha>, [">= 0"])
185
+ end
186
+ else
187
+ s.add_dependency(%q<test-unit>, [">= 0"])
188
+ s.add_dependency(%q<mocha>, [">= 0"])
21
189
  end
22
-
23
- s.add_development_dependency 'test-unit'
24
- s.add_development_dependency 'mocha'
25
-
26
- s.executables = %w[]
27
-
28
- # = MANIFEST =
29
- s.files = %w(
30
- CHANGELOG.rdoc
31
- Manifest
32
- README.rdoc
33
- LICENSE.rdoc
34
- Rakefile
35
- Rudyfile
36
- THANKS.rdoc
37
- lib/net/ssh.rb
38
- lib/net/ssh/authentication/agent.rb
39
- lib/net/ssh/authentication/agent/java_pageant.rb
40
- lib/net/ssh/authentication/agent/socket.rb
41
- lib/net/ssh/authentication/constants.rb
42
- lib/net/ssh/authentication/key_manager.rb
43
- lib/net/ssh/authentication/methods/abstract.rb
44
- lib/net/ssh/authentication/methods/hostbased.rb
45
- lib/net/ssh/authentication/methods/keyboard_interactive.rb
46
- lib/net/ssh/authentication/methods/password.rb
47
- lib/net/ssh/authentication/methods/publickey.rb
48
- lib/net/ssh/authentication/pageant.rb
49
- lib/net/ssh/authentication/session.rb
50
- lib/net/ssh/buffer.rb
51
- lib/net/ssh/buffered_io.rb
52
- lib/net/ssh/config.rb
53
- lib/net/ssh/connection/channel.rb
54
- lib/net/ssh/connection/constants.rb
55
- lib/net/ssh/connection/session.rb
56
- lib/net/ssh/connection/term.rb
57
- lib/net/ssh/errors.rb
58
- lib/net/ssh/key_factory.rb
59
- lib/net/ssh/known_hosts.rb
60
- lib/net/ssh/loggable.rb
61
- lib/net/ssh/packet.rb
62
- lib/net/ssh/prompt.rb
63
- lib/net/ssh/proxy/command.rb
64
- lib/net/ssh/proxy/errors.rb
65
- lib/net/ssh/proxy/http.rb
66
- lib/net/ssh/proxy/socks4.rb
67
- lib/net/ssh/proxy/socks5.rb
68
- lib/net/ssh/ruby_compat.rb
69
- lib/net/ssh/service/forward.rb
70
- lib/net/ssh/test.rb
71
- lib/net/ssh/test/channel.rb
72
- lib/net/ssh/test/extensions.rb
73
- lib/net/ssh/test/kex.rb
74
- lib/net/ssh/test/local_packet.rb
75
- lib/net/ssh/test/packet.rb
76
- lib/net/ssh/test/remote_packet.rb
77
- lib/net/ssh/test/script.rb
78
- lib/net/ssh/test/socket.rb
79
- lib/net/ssh/transport/algorithms.rb
80
- lib/net/ssh/transport/cipher_factory.rb
81
- lib/net/ssh/transport/constants.rb
82
- lib/net/ssh/transport/ctr.rb
83
- lib/net/ssh/transport/hmac.rb
84
- lib/net/ssh/transport/hmac/abstract.rb
85
- lib/net/ssh/transport/hmac/md5.rb
86
- lib/net/ssh/transport/hmac/md5_96.rb
87
- lib/net/ssh/transport/hmac/none.rb
88
- lib/net/ssh/transport/hmac/ripemd160.rb
89
- lib/net/ssh/transport/hmac/sha1.rb
90
- lib/net/ssh/transport/hmac/sha1_96.rb
91
- lib/net/ssh/transport/hmac/sha2_256.rb
92
- lib/net/ssh/transport/hmac/sha2_256_96.rb
93
- lib/net/ssh/transport/hmac/sha2_512.rb
94
- lib/net/ssh/transport/hmac/sha2_512_96.rb
95
- lib/net/ssh/transport/identity_cipher.rb
96
- lib/net/ssh/transport/kex.rb
97
- lib/net/ssh/transport/kex/diffie_hellman_group14_sha1.rb
98
- lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb
99
- lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb
100
- lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha256.rb
101
- lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb
102
- lib/net/ssh/transport/kex/ecdh_sha2_nistp384.rb
103
- lib/net/ssh/transport/kex/ecdh_sha2_nistp521.rb
104
- lib/net/ssh/transport/key_expander.rb
105
- lib/net/ssh/transport/openssl.rb
106
- lib/net/ssh/transport/packet_stream.rb
107
- lib/net/ssh/transport/server_version.rb
108
- lib/net/ssh/transport/session.rb
109
- lib/net/ssh/transport/state.rb
110
- lib/net/ssh/verifiers/lenient.rb
111
- lib/net/ssh/verifiers/null.rb
112
- lib/net/ssh/verifiers/secure.rb
113
- lib/net/ssh/verifiers/strict.rb
114
- lib/net/ssh/version.rb
115
- net-ssh.gemspec
116
- setup.rb
117
- support/arcfour_check.rb
118
- support/ssh_tunnel_bug.rb
119
- test/README.txt
120
- test/authentication/methods/common.rb
121
- test/authentication/methods/test_abstract.rb
122
- test/authentication/methods/test_hostbased.rb
123
- test/authentication/methods/test_keyboard_interactive.rb
124
- test/authentication/methods/test_password.rb
125
- test/authentication/methods/test_publickey.rb
126
- test/authentication/test_agent.rb
127
- test/authentication/test_key_manager.rb
128
- test/authentication/test_session.rb
129
- test/common.rb
130
- test/configs/eqsign
131
- test/configs/exact_match
132
- test/configs/host_plus
133
- test/configs/multihost
134
- test/configs/nohost
135
- test/configs/numeric_host
136
- test/configs/wild_cards
137
- test/connection/test_channel.rb
138
- test/connection/test_session.rb
139
- test/manual/test_forward.rb
140
- test/start/test_transport.rb
141
- test/known_hosts/github
142
- test/test_all.rb
143
- test/test_buffer.rb
144
- test/test_buffered_io.rb
145
- test/test_config.rb
146
- test/test_key_factory.rb
147
- test/test_known_hosts.rb
148
- test/transport/hmac/test_md5.rb
149
- test/transport/hmac/test_md5_96.rb
150
- test/transport/hmac/test_none.rb
151
- test/transport/hmac/test_ripemd160.rb
152
- test/transport/hmac/test_sha1.rb
153
- test/transport/hmac/test_sha1_96.rb
154
- test/transport/hmac/test_sha2_256.rb
155
- test/transport/hmac/test_sha2_256_96.rb
156
- test/transport/hmac/test_sha2_512.rb
157
- test/transport/hmac/test_sha2_512_96.rb
158
- test/transport/kex/test_diffie_hellman_group14_sha1.rb
159
- test/transport/kex/test_diffie_hellman_group1_sha1.rb
160
- test/transport/kex/test_diffie_hellman_group_exchange_sha1.rb
161
- test/transport/kex/test_diffie_hellman_group_exchange_sha256.rb
162
- test/transport/kex/test_ecdh_sha2_nistp256.rb
163
- test/transport/kex/test_ecdh_sha2_nistp384.rb
164
- test/transport/kex/test_ecdh_sha2_nistp521.rb
165
- test/transport/test_algorithms.rb
166
- test/transport/test_cipher_factory.rb
167
- test/transport/test_hmac.rb
168
- test/transport/test_identity_cipher.rb
169
- test/transport/test_packet_stream.rb
170
- test/transport/test_server_version.rb
171
- test/transport/test_session.rb
172
- test/transport/test_state.rb
173
- )
174
-
175
190
  end
191
+
@@ -0,0 +1,41 @@
1
+ require 'common'
2
+ require 'net/ssh/authentication/methods/none'
3
+ require 'authentication/methods/common'
4
+
5
+ module Authentication; module Methods
6
+
7
+ class TestNone < Test::Unit::TestCase
8
+ include Common
9
+
10
+ def test_authenticate_should_raise_if_none_disallowed
11
+ transport.expect do |t,packet|
12
+ assert_equal USERAUTH_REQUEST, packet.type
13
+ assert_equal "jamis", packet.read_string
14
+ assert_equal "ssh-connection", packet.read_string
15
+ assert_equal "none", packet.read_string
16
+
17
+ t.return(USERAUTH_FAILURE, :string, "publickey")
18
+ end
19
+
20
+ assert_raises Net::SSH::Authentication::DisallowedMethod do
21
+ subject.authenticate("ssh-connection", "jamis", "pass")
22
+ end
23
+ end
24
+
25
+ def test_authenticate_should_return_true
26
+ transport.expect do |t,packet|
27
+ assert_equal USERAUTH_REQUEST, packet.type
28
+ t.return(USERAUTH_SUCCESS)
29
+ end
30
+
31
+ assert subject.authenticate("ssh-connection", "", "")
32
+ end
33
+
34
+ private
35
+
36
+ def subject(options={})
37
+ @subject ||= Net::SSH::Authentication::Methods::None.new(session(options), options)
38
+ end
39
+ end
40
+
41
+ end; end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: net-ssh
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.6.3
4
+ version: 2.6.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,12 +9,40 @@ authors:
9
9
  - Delano Mandelbaum
10
10
  autorequire:
11
11
  bindir: bin
12
- cert_chain: []
13
- date: 2013-01-10 00:00:00.000000000 Z
12
+ cert_chain:
13
+ - !binary |-
14
+ LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUROakNDQWg2Z0F3SUJB
15
+ Z0lCQURBTkJna3Foa2lHOXcwQkFRVUZBREJCTVE4d0RRWURWUVFEREFaa1pX
16
+ eGgKYm04eEdUQVhCZ29Ka2lhSmsvSXNaQUVaRmdsemIyeDFkR2x2ZFhNeEV6
17
+ QVJCZ29Ka2lhSmsvSXNaQUVaRmdOagpiMjB3SGhjTk1UTXdNakEyTVRFMU56
18
+ UTFXaGNOTVRRd01qQTJNVEUxTnpRMVdqQkJNUTh3RFFZRFZRUUREQVprClpX
19
+ eGhibTh4R1RBWEJnb0praWFKay9Jc1pBRVpGZ2x6YjJ4MWRHbHZkWE14RXpB
20
+ UkJnb0praWFKay9Jc1pBRVoKRmdOamIyMHdnZ0VpTUEwR0NTcUdTSWIzRFFF
21
+ QkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEZzFoTXRsMFhzTXVVSwpBS1RnWVd2
22
+ M2dqajd2dUVzRTJFalQrdnlCZzgvTHBxVlZ3WnppaWFlYkpUOUlaaVErc0NG
23
+ cWJpYWtqMGI1M3BJCmhnMXlPYUJFbUg2L1cwTDdyd3pxYVJWOXNXMWVKczlK
24
+ eEZZUUNuZDY3elVuemo4bm5SbE9qRytoaElHK1ZzaWoKbnBzR2J0MjhwZWZ1
25
+ TlpKak81cTJjbEFsZlNuaUlJSGZJc1U3L1N0RVl1NkZVR09qbndyeVowcjV5
26
+ SmxyOVJyRQpHcytxMERXOFFuWjlVcEFmdURGUVp1SXFlS1FGRkxFN25NbUNH
27
+ YUErMEJOMW5MbDNmVkhOYkxIcTdBdms4K1orClp1dXZrZHNjYkhsTy9sKzN4
28
+ Q05RNW5Vbkh3cTBBREFiTUxPbG1pWVl6cVhvV0xqbWVJNm1lL2Nsa3RKQ2ZO
29
+ MlIKb1pHM1VRdnZBZ01CQUFHak9UQTNNQWtHQTFVZEV3UUNNQUF3SFFZRFZS
30
+ ME9CQllFRk1TSk9FdEh6RTRsMGF6dgpNMEpLMGtLTlRvSzFNQXNHQTFVZER3
31
+ UUVBd0lFc0RBTkJna3Foa2lHOXcwQkFRVUZBQU9DQVFFQXRPZEU3M3F4Ck9I
32
+ MnlkaTlvVDJoUzVmOUcweTFaNzBUbHdoK1ZHRXh5Znh6VkU5WHdDK2lQcEp4
33
+ TnJhaUhZZ0YvOS9va3k3WloKUjlxMC90Sm5ldWhBZW5aZGlRa1g3b2k0TzN2
34
+ OXdSUzZZSG9XQnhNUEZLVlJMTlR6dlZKc2JtZnBDQWxwNS81ZwpwczR3UUZ5
35
+ NW1pYkVsR1ZsT29iZi9naHFaMjVIUzlKNmtkMC9DL3J5MEFVdFRvZ3NMN1R4
36
+ R3dUNGtiQ3g2M3ViCjN2eXdFRWhzSlV6ZmQ5N0dDQUJtdFFmUlRsZFgvajdG
37
+ MXovNXdkOHAraGZkb3gxaWliZHM5WnRmYVpBM0t6S24Ka2NoV045QjZ6Zzly
38
+ MVhNUThCTTJKejBYb1BhblBlMzU0K2xXd2pwa1JLYkZvdy9aYlFIY0NMQ3Ey
39
+ NCtONmI2ZwpkZ0tmTkR6d2lEcHFDQT09Ci0tLS0tRU5EIENFUlRJRklDQVRF
40
+ LS0tLS0K
41
+ date: 2013-02-06 00:00:00.000000000 Z
14
42
  dependencies:
15
43
  - !ruby/object:Gem::Dependency
16
44
  name: test-unit
17
- requirement: &70335346122740 !ruby/object:Gem::Requirement
45
+ requirement: !ruby/object:Gem::Requirement
18
46
  none: false
19
47
  requirements:
20
48
  - - ! '>='
@@ -22,10 +50,15 @@ dependencies:
22
50
  version: '0'
23
51
  type: :development
24
52
  prerelease: false
25
- version_requirements: *70335346122740
53
+ version_requirements: !ruby/object:Gem::Requirement
54
+ none: false
55
+ requirements:
56
+ - - ! '>='
57
+ - !ruby/object:Gem::Version
58
+ version: '0'
26
59
  - !ruby/object:Gem::Dependency
27
60
  name: mocha
28
- requirement: &70335346119640 !ruby/object:Gem::Requirement
61
+ requirement: !ruby/object:Gem::Requirement
29
62
  none: false
30
63
  requirements:
31
64
  - - ! '>='
@@ -33,26 +66,30 @@ dependencies:
33
66
  version: '0'
34
67
  type: :development
35
68
  prerelease: false
36
- version_requirements: *70335346119640
69
+ version_requirements: !ruby/object:Gem::Requirement
70
+ none: false
71
+ requirements:
72
+ - - ! '>='
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
37
75
  description: ! 'Net::SSH: a pure-Ruby implementation of the SSH2 client protocol.
38
76
  It allows you to write programs that invoke and interact with processes on remote
39
77
  servers, via SSH2.'
40
- email:
41
- - net-ssh@solutious.com
78
+ email: net-ssh@solutious.com
42
79
  executables: []
43
80
  extensions: []
44
81
  extra_rdoc_files:
82
+ - LICENSE.txt
45
83
  - README.rdoc
46
- - THANKS.rdoc
47
- - CHANGELOG.rdoc
48
84
  files:
49
- - CHANGELOG.rdoc
85
+ - CHANGES.txt
86
+ - LICENSE.txt
50
87
  - Manifest
51
88
  - README.rdoc
52
- - LICENSE.rdoc
53
89
  - Rakefile
54
90
  - Rudyfile
55
- - THANKS.rdoc
91
+ - THANKS.txt
92
+ - gem-public_cert.pem
56
93
  - lib/net/ssh.rb
57
94
  - lib/net/ssh/authentication/agent.rb
58
95
  - lib/net/ssh/authentication/agent/java_pageant.rb
@@ -62,6 +99,7 @@ files:
62
99
  - lib/net/ssh/authentication/methods/abstract.rb
63
100
  - lib/net/ssh/authentication/methods/hostbased.rb
64
101
  - lib/net/ssh/authentication/methods/keyboard_interactive.rb
102
+ - lib/net/ssh/authentication/methods/none.rb
65
103
  - lib/net/ssh/authentication/methods/password.rb
66
104
  - lib/net/ssh/authentication/methods/publickey.rb
67
105
  - lib/net/ssh/authentication/pageant.rb
@@ -140,6 +178,7 @@ files:
140
178
  - test/authentication/methods/test_abstract.rb
141
179
  - test/authentication/methods/test_hostbased.rb
142
180
  - test/authentication/methods/test_keyboard_interactive.rb
181
+ - test/authentication/methods/test_none.rb
143
182
  - test/authentication/methods/test_password.rb
144
183
  - test/authentication/methods/test_publickey.rb
145
184
  - test/authentication/test_agent.rb
@@ -155,9 +194,9 @@ files:
155
194
  - test/configs/wild_cards
156
195
  - test/connection/test_channel.rb
157
196
  - test/connection/test_session.rb
197
+ - test/known_hosts/github
158
198
  - test/manual/test_forward.rb
159
199
  - test/start/test_transport.rb
160
- - test/known_hosts/github
161
200
  - test/test_all.rb
162
201
  - test/test_buffer.rb
163
202
  - test/test_buffered_io.rb
@@ -189,15 +228,11 @@ files:
189
228
  - test/transport/test_server_version.rb
190
229
  - test/transport/test_session.rb
191
230
  - test/transport/test_state.rb
192
- homepage: http://github.com/net-ssh/net-ssh
193
- licenses: []
231
+ homepage: https://github.com/net-ssh/net-ssh
232
+ licenses:
233
+ - MIT
194
234
  post_install_message:
195
- rdoc_options:
196
- - --line-numbers
197
- - --title
198
- - ! 'Net::SSH: a pure-Ruby implementation of the SSH2 client protocol.'
199
- - --main
200
- - README.rdoc
235
+ rdoc_options: []
201
236
  require_paths:
202
237
  - lib
203
238
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -214,7 +249,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
214
249
  version: '0'
215
250
  requirements: []
216
251
  rubyforge_project: net-ssh
217
- rubygems_version: 1.8.10
252
+ rubygems_version: 1.8.25
218
253
  signing_key:
219
254
  specification_version: 3
220
255
  summary: ! 'Net::SSH: a pure-Ruby implementation of the SSH2 client protocol.'
Binary file
@@ -1,19 +0,0 @@
1
- Net::SSH was originally written by Jamis Buck <jamis@37signals.com>. In
2
- addition, the following individuals are gratefully acknowledged for their
3
- contributions:
4
-
5
- GOTOU Yuuzou <gotoyuzo@notwork.org>
6
- * help and code related to OpenSSL
7
-
8
- Guillaume Marçais <guillaume.marcais@free.fr>
9
- * support for communicating with the the PuTTY "pageant" process
10
-
11
- Daniel Berger <djberg96@yahoo.com>
12
- * help getting unit tests in earlier Net::SSH versions to pass in Windows
13
- * initial version of Net::SSH::Config provided inspiration and encouragement
14
-
15
- Chris Andrews <chris@nodnol.org> and Lee Jensen <lee@outerim.com>
16
- * support for ssh agent forwarding
17
-
18
- Hiroshi Nakamura
19
- * fixed errors with JRuby tests