mirror of
https://github.com/ruby/ruby.git
synced 2025-09-15 16:44:01 +02:00
[ruby/openssl] test/openssl/utils: remove dup_public helper method
It uses deprecated PKey::{RSA,DSA,DH}#set_* methods, which will not
work with OpenSSL 3.0. The same can easily be achieved using
PKey#public_to_der regardless of the key kind.
7b66eaa2db
This commit is contained in:
parent
e353bcd111
commit
37632a0ac6
5 changed files with 44 additions and 51 deletions
|
@ -306,32 +306,6 @@ class OpenSSL::PKeyTestCase < OpenSSL::TestCase
|
|||
assert_equal base.send(comp), test.send(comp)
|
||||
}
|
||||
end
|
||||
|
||||
def dup_public(key)
|
||||
case key
|
||||
when OpenSSL::PKey::RSA
|
||||
rsa = OpenSSL::PKey::RSA.new
|
||||
rsa.set_key(key.n, key.e, nil)
|
||||
rsa
|
||||
when OpenSSL::PKey::DSA
|
||||
dsa = OpenSSL::PKey::DSA.new
|
||||
dsa.set_pqg(key.p, key.q, key.g)
|
||||
dsa.set_key(key.pub_key, nil)
|
||||
dsa
|
||||
when OpenSSL::PKey::DH
|
||||
dh = OpenSSL::PKey::DH.new
|
||||
dh.set_pqg(key.p, nil, key.g)
|
||||
dh
|
||||
else
|
||||
if defined?(OpenSSL::PKey::EC) && OpenSSL::PKey::EC === key
|
||||
ec = OpenSSL::PKey::EC.new(key.group)
|
||||
ec.public_key = key.public_key
|
||||
ec
|
||||
else
|
||||
raise "unknown key type"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
module OpenSSL::Certs
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue