net-ssh 8.0.4 → 8.1.0

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.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/CHANGES.txt +10 -0
  4. data/lib/net/ssh/authentication/certificate.rb +2 -2
  5. data/lib/net/ssh/authentication/methods/abstract.rb +4 -0
  6. data/lib/net/ssh/authentication/methods/hostbased.rb +3 -3
  7. data/lib/net/ssh/authentication/methods/publickey.rb +50 -38
  8. data/lib/net/ssh/authentication/session.rb +2 -1
  9. data/lib/net/ssh/buffer.rb +2 -2
  10. data/lib/net/ssh/config.rb +95 -38
  11. data/lib/net/ssh/multiplex.rb +3 -2
  12. data/lib/net/ssh/prompt.rb +41 -3
  13. data/lib/net/ssh/transport/algorithms.rb +4 -1
  14. data/lib/net/ssh/transport/session.rb +20 -2
  15. data/lib/net/ssh/version.rb +2 -2
  16. data/lib/net/ssh.rb +17 -5
  17. data.tar.gz.sig +0 -0
  18. metadata +3 -31
  19. metadata.gz.sig +1 -1
  20. data/.dockerignore +0 -9
  21. data/.github/FUNDING.yml +0 -1
  22. data/.github/config/rubocop_linter_action.yml +0 -4
  23. data/.github/pull_request_template.md +0 -1
  24. data/.github/workflows/changelog.yml +0 -18
  25. data/.github/workflows/ci-with-docker.yml +0 -55
  26. data/.github/workflows/ci.yml +0 -84
  27. data/.github/workflows/rubocop.yml +0 -18
  28. data/.gitignore +0 -15
  29. data/.rubocop.yml +0 -26
  30. data/.rubocop_todo.yml +0 -1077
  31. data/CONTRIBUTING.md +0 -34
  32. data/DEVELOPMENT.md +0 -23
  33. data/Dockerfile +0 -32
  34. data/Dockerfile.openssl3 +0 -17
  35. data/Dockerfile.zlib_ng +0 -29
  36. data/Gemfile +0 -15
  37. data/ISSUE_TEMPLATE.md +0 -30
  38. data/Manifest +0 -132
  39. data/Rakefile +0 -214
  40. data/SECURITY.md +0 -4
  41. data/THANKS.txt +0 -110
  42. data/appveyor.yml +0 -46
  43. data/changelog.d/README.md +0 -1
  44. data/docker-compose.yml +0 -17
  45. data/net-ssh-public_cert.pem +0 -21
  46. data/net-ssh.gemspec +0 -45
  47. data/support/ssh_tunnel_bug.rb +0 -65
data/appveyor.yml DELETED
@@ -1,46 +0,0 @@
1
- version: '{build}'
2
-
3
- skip_tags: true
4
-
5
- environment:
6
- matrix:
7
- - ruby_version: "31-x64"
8
- - ruby_version: "30-x64"
9
- - ruby_version: "27-x64"
10
-
11
- #init:
12
- # - ps: iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
13
-
14
- #on_finish:
15
- # - ps: $blockRdp = $true; iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
16
-
17
-
18
- platform:
19
- - x86
20
-
21
- install:
22
- - SET PATH=C:\Ruby%ruby_version%\bin;%PATH%
23
- - ruby --version
24
- - gem install bundler --no-document --user-install -v 2.4.22
25
- - bundle install --retry=3
26
- - cinst freesshd
27
- - cinst putty --allow-empty-checksums
28
- - ps: |
29
- if ($env:Processor_Architecture -eq "x86")
30
- {
31
- dir 'C:\Program Files\'
32
- dir 'C:\Program Files\freeSSHd'
33
- cp 'test\win_integration\FreeSSHDService.ini' 'C:\Program Files\freeSSHd\FreeSSHDService.ini'
34
- & 'C:\Program Files\freeSSHd\FreeSSHDService.exe'
35
- } else {
36
- dir 'C:\Program Files (x86)\'
37
- dir 'C:\Program Files (x86)\freeSSHd'
38
- cp 'test\win_integration\FreeSSHDService32.ini' 'C:\Program Files (x86)\freeSSHd\FreeSSHDService.ini'
39
- & 'C:\Program Files (x86)\freeSSHd\FreeSSHDService.exe'
40
- }
41
-
42
- test_script:
43
- - SET NET_SSH_RUN_WIN_INTEGRATION_TESTS=YES
44
- - bundle exec rake test
45
-
46
- build: off
@@ -1 +0,0 @@
1
- Changelog fragments: one `<PR number>.<type>.txt` file per user-visible change, assembled into `CHANGES.txt` when the version is bumped. See [CONTRIBUTING.md](../CONTRIBUTING.md#changelog).
data/docker-compose.yml DELETED
@@ -1,17 +0,0 @@
1
- services:
2
- ruby-3.1:
3
- build:
4
- context: .
5
- args:
6
- RUBY_VERSION: 3.1
7
- ruby-3.0:
8
- build:
9
- context: .
10
- args:
11
- RUBY_VERSION: 3.0
12
- ruby-2.7:
13
- build:
14
- context: .
15
- args:
16
- RUBY_VERSION: 2.7.8
17
- BUNDLERV: "-v 2.2.28"
@@ -1,21 +0,0 @@
1
- -----BEGIN CERTIFICATE-----
2
- MIIDeDCCAmCgAwIBAgIBATANBgkqhkiG9w0BAQsFADBBMQ8wDQYDVQQDDAZuZXRz
3
- c2gxGTAXBgoJkiaJk/IsZAEZFglzb2x1dGlvdXMxEzARBgoJkiaJk/IsZAEZFgNj
4
- b20wHhcNMjYwMjE1MTAxNzUyWhcNMjcwMjE1MTAxNzUyWjBBMQ8wDQYDVQQDDAZu
5
- ZXRzc2gxGTAXBgoJkiaJk/IsZAEZFglzb2x1dGlvdXMxEzARBgoJkiaJk/IsZAEZ
6
- FgNjb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGJ4TbZ9H+qZ08
7
- pQfJhPJTHaDCyQvCsKTFrL5O9z3tllQ7B/zksMMM+qFBpNYu9HCcg4yBATacE/PB
8
- qVVyUrpr6lbH/XwoN5ljXm+bdCfmnjZvTCL2FTE6o+bcnaF0IsJyC0Q2B1fbWdXN
9
- 6Off1ZWoUk6We2BIM1bn6QJLxBpGyYhvOPXsYoqSuzDf2SJDDsWFZ8kV5ON13Ohm
10
- JbBzn0oD8HF8FuYOewwsC0C1q4w7E5GtvHcQ5juweS7+RKsyDcVcVrLuNzoGRttS
11
- KP4yMn+TzaXijyjRg7gECfJr3TGASaA4bQsILFGG5dAWcwO4OMrZedR7SHj/o0Kf
12
- 3gL7P0axAgMBAAGjezB5MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQW
13
- BBQF8qLA7Z4zg0SJGtUbv3eoQ8tjIzAfBgNVHREEGDAWgRRuZXRzc2hAc29sdXRp
14
- b3VzLmNvbTAfBgNVHRIEGDAWgRRuZXRzc2hAc29sdXRpb3VzLmNvbTANBgkqhkiG
15
- 9w0BAQsFAAOCAQEASsiVybehJLRPztFeFV8+SKa2BwbBSNJoAkhARVJKhpJxCfeY
16
- gO7Kqb7JCykzb0anb1s6xTrzD03cWRNGE2YaoBLqnzeUqW1LPqVwmcySmnSIGH9F
17
- DlFYlHaAn3oSqglyDxQx9bLngKatetx+tSfB3bLAb7Tr9PO8/lhBENbjlD4+UUwD
18
- gApoZuD9pknWDH3KsITgzphswETBdo0hd9aLnRNR3EifD0lUIEit/0Yx6euSxWtI
19
- ufHf4AX2UIkJbh7zCPkiNCqIr7MSWLNFG/9lOlHYsEJM8XujT1ofPobYx6YSFx/C
20
- 7HBrI7UX7awt6UvBZebhcHzyMHxg/B5PVQllPA==
21
- -----END CERTIFICATE-----
data/net-ssh.gemspec DELETED
@@ -1,45 +0,0 @@
1
- require_relative 'lib/net/ssh/version'
2
-
3
- Gem::Specification.new do |spec|
4
- spec.name = "net-ssh"
5
- spec.version = Net::SSH::Version::STRING
6
- spec.authors = ["Jamis Buck", "Delano Mandelbaum", "Mikl\u{f3}s Fazekas"]
7
- spec.email = ["net-ssh@solutious.com"]
8
-
9
- if ENV['NET_SSH_BUILDGEM_SIGNED']
10
- spec.cert_chain = ["net-ssh-public_cert.pem"]
11
- spec.signing_key = "/mnt/gem/net-ssh-private_key.pem"
12
- end
13
-
14
- spec.summary = %q{Net::SSH: a pure-Ruby implementation of the SSH2 client protocol.}
15
- spec.description = %q{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.}
16
- spec.homepage = "https://github.com/net-ssh/net-ssh"
17
- spec.license = "MIT"
18
- spec.required_ruby_version = Gem::Requirement.new(">= 2.7")
19
- spec.metadata = {
20
- "changelog_uri" => "https://github.com/net-ssh/net-ssh/blob/master/CHANGES.txt"
21
- }
22
-
23
- spec.extra_rdoc_files = [
24
- "LICENSE.txt",
25
- "README.md"
26
- ]
27
-
28
- spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
29
- spec.bindir = "exe"
30
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
31
- spec.require_paths = ["lib"]
32
-
33
- spec.add_dependency("logger")
34
- spec.add_dependency("openssl", ">= 3.2.0")
35
-
36
- spec.add_development_dependency("bcrypt_pbkdf", "~> 1.0") unless RUBY_PLATFORM == "java"
37
-
38
- spec.add_development_dependency "base64"
39
- spec.add_development_dependency "bundler", ">= 1.17"
40
- spec.add_development_dependency "minitest", "~> 5.19"
41
- spec.add_development_dependency "mocha", ">= 2.1", "< 4"
42
- spec.add_development_dependency "ostruct"
43
- spec.add_development_dependency "rake", "~> 12.0"
44
- spec.add_development_dependency "rubocop", "~> 1.28.0"
45
- end
@@ -1,65 +0,0 @@
1
- #!/usr/bin/ruby
2
-
3
- # SSH TUNNEL CONNECTION BUG
4
- # from: http://net-ssh.lighthouseapp.com/projects/36253/tickets/7-an-existing-connection-was-forcibly-closed-by-the-remote-host#ticket-7-3
5
- #
6
- # Steps to reproduce:
7
- #
8
- # * Start HTTP Proxy
9
- # * If running debian in EC2:
10
- # * apt-get install squid
11
- # * Add the following to /etc/squid/squid.conf:
12
- # acl localnet src 1.2.3.0/255.255.255.0
13
- # http_access allow localnet
14
- # icp_access allow localnet
15
- # visible_hostname netsshtest
16
- # * Start squid squid -N -d 1 -D
17
- # * Run this script
18
- # * Configure browser proxy to use localhost with LOCAL_PORT.
19
- # * Load any page, wait for it to load fully. If the page loads
20
- # correctly, move on. If not, something needs to be corrected.
21
- # * Refresh the page several times. This should cause this
22
- # script to failed with the error: "closed stream". You may
23
- # need to try a few times.
24
- #
25
-
26
- require 'highline/import'
27
- require 'net/ssh'
28
-
29
- LOCAL_PORT = 8080
30
- PROXY_PORT = 3128
31
-
32
- host, user = *ARGV
33
- abort "Usage: #{$0} host user" unless ARGV.size == 2
34
-
35
- puts "Connecting to #{user}@#{host}..."
36
- pass = ask("Password: ") { |q| q.echo = "*" }
37
- puts "Configure your browser proxy to localhost:#{LOCAL_PORT}"
38
-
39
- begin
40
- session = Net::SSH.start(host, user, password: pass)
41
- session.forward.local(LOCAL_PORT, host, PROXY_PORT)
42
- session.loop {true}
43
- rescue StandardError => e
44
- puts e.message
45
- puts e.backtrace
46
- end
47
-
48
-
49
- __END__
50
-
51
- $ ruby support/ssh_tunnel.rb host user
52
- Connecting to user@host...
53
- Password: ******
54
- Configure your browser proxy to localhost:8080
55
- closed stream
56
- /usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/buffered_io.rb:99:in `send'
57
- /usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/buffered_io.rb:99:in `send_pending'
58
- /usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:236:in `block in postprocess'
59
- /usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:235:in `each'
60
- /usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:235:in `postprocess'
61
- /usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:203:in `process'
62
- /usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:161:in `block in loop'
63
- /usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:161:in `loop'
64
- /usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:161:in `loop'
65
-