net-ssh 7.2.1 → 7.2.3
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.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/.github/workflows/ci.yml +1 -1
- data/CHANGES.txt +4 -0
- data/README.md +2 -0
- data/Rakefile +7 -3
- data/lib/net/ssh/authentication/ed25519.rb +2 -4
- data/lib/net/ssh/authentication/pub_key_fingerprint.rb +1 -1
- data/lib/net/ssh/known_hosts.rb +2 -3
- data/lib/net/ssh/version.rb +1 -1
- data/net-ssh-public_cert.pem +19 -18
- data/net-ssh.gemspec +1 -0
- data.tar.gz.sig +0 -0
- metadata +35 -20
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 524dafc8f2460b2e19662e19cb1916dc6b7f57b78b9cdc6ceadf486bc4fc1945
|
4
|
+
data.tar.gz: 1f400ebf2e8622ab81b348c6db7d45d88dfd3c3bd04e61bc60ea8678482f5f11
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 00c33f37023f2cb493b231ee924db6be810fb8d3505d085160c6d790bcd928856081321b5743c2829e773ba506fee8aa3e5a5e9c94ec705199fa77458ad8c17f
|
7
|
+
data.tar.gz: 195425e6e604b3dbe56cfabd2567b292cd40caa8affbd3f624901a2ddbcb024bacc052093722407a62070bfd3bacdce4c60aee6693a29ac20ad140ba2683fcc3
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/.github/workflows/ci.yml
CHANGED
data/CHANGES.txt
CHANGED
data/README.md
CHANGED
data/Rakefile
CHANGED
@@ -61,7 +61,7 @@ def change_version(&block)
|
|
61
61
|
pre = Net::SSH::Version::PRE
|
62
62
|
tiny = Net::SSH::Version::TINY
|
63
63
|
result = block[pre: pre, tiny: Net::SSH::Version::TINY]
|
64
|
-
raise "Version change logic should always return a pre"
|
64
|
+
raise ArgumentError, "Version change logic should always return a pre" unless result.key?(:pre)
|
65
65
|
|
66
66
|
new_pre = result[:pre]
|
67
67
|
new_tiny = result[:tiny] || tiny
|
@@ -112,9 +112,13 @@ namespace :vbump do
|
|
112
112
|
task :final do
|
113
113
|
change_version do |pre:, tiny:|
|
114
114
|
_ = tiny
|
115
|
-
|
115
|
+
if pre.nil?
|
116
|
+
{ tiny: tiny + 1, pre: nil }
|
117
|
+
else
|
118
|
+
raise ArgumentError, "Unexpected pre: #{pre}" if pre.nil?
|
116
119
|
|
117
|
-
|
120
|
+
{ pre: nil }
|
121
|
+
end
|
118
122
|
end
|
119
123
|
end
|
120
124
|
|
@@ -3,8 +3,6 @@ gem 'bcrypt_pbkdf', '~> 1.0' unless RUBY_PLATFORM == "java"
|
|
3
3
|
|
4
4
|
require 'ed25519'
|
5
5
|
|
6
|
-
require 'base64'
|
7
|
-
|
8
6
|
require 'net/ssh/transport/cipher_factory'
|
9
7
|
require 'net/ssh/authentication/pub_key_fingerprint'
|
10
8
|
require 'bcrypt_pbkdf' unless RUBY_PLATFORM == "java"
|
@@ -46,7 +44,7 @@ module Net
|
|
46
44
|
raise ArgumentError.new("Expected #{MEND} at end of private key") unless datafull.end_with?(MEND)
|
47
45
|
|
48
46
|
datab64 = datafull[MBEGIN.size...-MEND.size]
|
49
|
-
data =
|
47
|
+
data = datab64.unpack1("m")
|
50
48
|
raise ArgumentError.new("Expected #{MAGIC} at start of decoded private key") unless data.start_with?(MAGIC)
|
51
49
|
|
52
50
|
buffer = Net::SSH::Buffer.new(data[MAGIC.size + 1..-1])
|
@@ -134,7 +132,7 @@ module Net
|
|
134
132
|
|
135
133
|
def to_pem
|
136
134
|
# TODO this is not pem
|
137
|
-
ssh_type +
|
135
|
+
ssh_type + [@verify_key.to_bytes].pack("m")
|
138
136
|
end
|
139
137
|
end
|
140
138
|
|
@@ -32,7 +32,7 @@ module Net
|
|
32
32
|
when 'MD5'
|
33
33
|
OpenSSL::Digest.hexdigest(algorithm, blob).scan(/../).join(":")
|
34
34
|
when 'SHA256'
|
35
|
-
"SHA256:#{
|
35
|
+
"SHA256:#{[OpenSSL::Digest.digest(algorithm, blob)].pack('m').chomp.gsub(/=+\z/, '')}"
|
36
36
|
else
|
37
37
|
raise OpenSSL::Digest::DigestError, "unsupported ssh key digest #{algorithm}"
|
38
38
|
end
|
data/lib/net/ssh/known_hosts.rb
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
require 'strscan'
|
2
2
|
require 'openssl'
|
3
|
-
require 'base64'
|
4
3
|
require 'delegate'
|
5
4
|
require 'net/ssh/buffer'
|
6
5
|
require 'net/ssh/authentication/ed25519_loader'
|
@@ -241,11 +240,11 @@ module Net
|
|
241
240
|
def known_host_hash?(hostlist, entries)
|
242
241
|
if hostlist.size == 1 && hostlist.first =~ /\A\|1(\|.+){2}\z/
|
243
242
|
chunks = hostlist.first.split(/\|/)
|
244
|
-
salt =
|
243
|
+
salt = chunks[2].unpack1("m")
|
245
244
|
digest = OpenSSL::Digest.new('sha1')
|
246
245
|
entries.each do |entry|
|
247
246
|
hmac = OpenSSL::HMAC.digest(digest, salt, entry)
|
248
|
-
return true if
|
247
|
+
return true if [hmac].pack("m").chomp == chunks[3]
|
249
248
|
end
|
250
249
|
end
|
251
250
|
false
|
data/lib/net/ssh/version.rb
CHANGED
data/net-ssh-public_cert.pem
CHANGED
@@ -1,20 +1,21 @@
|
|
1
1
|
-----BEGIN CERTIFICATE-----
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
2
|
+
MIIDeDCCAmCgAwIBAgIBATANBgkqhkiG9w0BAQsFADBBMQ8wDQYDVQQDDAZuZXRz
|
3
|
+
c2gxGTAXBgoJkiaJk/IsZAEZFglzb2x1dGlvdXMxEzARBgoJkiaJk/IsZAEZFgNj
|
4
|
+
b20wHhcNMjQwNDAxMDk1NjIxWhcNMjUwNDAxMDk1NjIxWjBBMQ8wDQYDVQQDDAZu
|
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
|
+
9w0BAQsFAAOCAQEAfY2WbsBKwRtBep4l+Y2/84H1BKH9UVOsFxqQzYkvM2LFDyup
|
16
|
+
UkjYf8nPSjg3mquhaiA5KSoSVUPpNDfQo+UvY3+mlxRs96ttWiUGwz27fy82rx1B
|
17
|
+
ZnfKjsWOntemNON6asOD0mtv0xsNBfOB2VNIKW/uqHsiPpa0OaVy5uENhX+5OFan
|
18
|
+
2P1Uy+WcMiv38RlRkn4cdEIZUFupDgKFsguYlaJy473/wsae4exUgc5bvi3Splob
|
19
|
+
1uE/LmB/qWBVSNW8e9KDtJynhDDZBlpESyQHFQCZj6UapzxlnC46LaDncPoAtJPc
|
20
|
+
MlWxJ8mKghIcyXc5y4cSyGypNG5BralqnvQUyg==
|
20
21
|
-----END CERTIFICATE-----
|
data/net-ssh.gemspec
CHANGED
@@ -38,6 +38,7 @@ Gem::Specification.new do |spec|
|
|
38
38
|
|
39
39
|
spec.add_development_dependency('rbnacl', '~> 7.1') unless ENV['NET_SSH_NO_RBNACL']
|
40
40
|
|
41
|
+
spec.add_development_dependency "base64"
|
41
42
|
spec.add_development_dependency "bundler", ">= 1.17"
|
42
43
|
spec.add_development_dependency "minitest", "~> 5.19"
|
43
44
|
spec.add_development_dependency "mocha", "~> 2.1.0"
|
data.tar.gz.sig
CHANGED
Binary file
|
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: 7.2.
|
4
|
+
version: 7.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jamis Buck
|
@@ -12,26 +12,27 @@ bindir: exe
|
|
12
12
|
cert_chain:
|
13
13
|
- |
|
14
14
|
-----BEGIN CERTIFICATE-----
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
15
|
+
MIIDeDCCAmCgAwIBAgIBATANBgkqhkiG9w0BAQsFADBBMQ8wDQYDVQQDDAZuZXRz
|
16
|
+
c2gxGTAXBgoJkiaJk/IsZAEZFglzb2x1dGlvdXMxEzARBgoJkiaJk/IsZAEZFgNj
|
17
|
+
b20wHhcNMjQwNDAxMDk1NjIxWhcNMjUwNDAxMDk1NjIxWjBBMQ8wDQYDVQQDDAZu
|
18
|
+
ZXRzc2gxGTAXBgoJkiaJk/IsZAEZFglzb2x1dGlvdXMxEzARBgoJkiaJk/IsZAEZ
|
19
|
+
FgNjb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGJ4TbZ9H+qZ08
|
20
|
+
pQfJhPJTHaDCyQvCsKTFrL5O9z3tllQ7B/zksMMM+qFBpNYu9HCcg4yBATacE/PB
|
21
|
+
qVVyUrpr6lbH/XwoN5ljXm+bdCfmnjZvTCL2FTE6o+bcnaF0IsJyC0Q2B1fbWdXN
|
22
|
+
6Off1ZWoUk6We2BIM1bn6QJLxBpGyYhvOPXsYoqSuzDf2SJDDsWFZ8kV5ON13Ohm
|
23
|
+
JbBzn0oD8HF8FuYOewwsC0C1q4w7E5GtvHcQ5juweS7+RKsyDcVcVrLuNzoGRttS
|
24
|
+
KP4yMn+TzaXijyjRg7gECfJr3TGASaA4bQsILFGG5dAWcwO4OMrZedR7SHj/o0Kf
|
25
|
+
3gL7P0axAgMBAAGjezB5MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQW
|
26
|
+
BBQF8qLA7Z4zg0SJGtUbv3eoQ8tjIzAfBgNVHREEGDAWgRRuZXRzc2hAc29sdXRp
|
27
|
+
b3VzLmNvbTAfBgNVHRIEGDAWgRRuZXRzc2hAc29sdXRpb3VzLmNvbTANBgkqhkiG
|
28
|
+
9w0BAQsFAAOCAQEAfY2WbsBKwRtBep4l+Y2/84H1BKH9UVOsFxqQzYkvM2LFDyup
|
29
|
+
UkjYf8nPSjg3mquhaiA5KSoSVUPpNDfQo+UvY3+mlxRs96ttWiUGwz27fy82rx1B
|
30
|
+
ZnfKjsWOntemNON6asOD0mtv0xsNBfOB2VNIKW/uqHsiPpa0OaVy5uENhX+5OFan
|
31
|
+
2P1Uy+WcMiv38RlRkn4cdEIZUFupDgKFsguYlaJy473/wsae4exUgc5bvi3Splob
|
32
|
+
1uE/LmB/qWBVSNW8e9KDtJynhDDZBlpESyQHFQCZj6UapzxlnC46LaDncPoAtJPc
|
33
|
+
MlWxJ8mKghIcyXc5y4cSyGypNG5BralqnvQUyg==
|
33
34
|
-----END CERTIFICATE-----
|
34
|
-
date:
|
35
|
+
date: 2024-04-02 00:00:00.000000000 Z
|
35
36
|
dependencies:
|
36
37
|
- !ruby/object:Gem::Dependency
|
37
38
|
name: bcrypt_pbkdf
|
@@ -89,6 +90,20 @@ dependencies:
|
|
89
90
|
- - "~>"
|
90
91
|
- !ruby/object:Gem::Version
|
91
92
|
version: '7.1'
|
93
|
+
- !ruby/object:Gem::Dependency
|
94
|
+
name: base64
|
95
|
+
requirement: !ruby/object:Gem::Requirement
|
96
|
+
requirements:
|
97
|
+
- - ">="
|
98
|
+
- !ruby/object:Gem::Version
|
99
|
+
version: '0'
|
100
|
+
type: :development
|
101
|
+
prerelease: false
|
102
|
+
version_requirements: !ruby/object:Gem::Requirement
|
103
|
+
requirements:
|
104
|
+
- - ">="
|
105
|
+
- !ruby/object:Gem::Version
|
106
|
+
version: '0'
|
92
107
|
- !ruby/object:Gem::Dependency
|
93
108
|
name: bundler
|
94
109
|
requirement: !ruby/object:Gem::Requirement
|
metadata.gz.sig
CHANGED
Binary file
|