method
new
v1_9_3_392 -
Show latest stable
- Class:
Gem::Security::Signer
new(key, cert_chain)public
No documentation available.
# File lib/rubygems/security.rb, line 791
def initialize(key, cert_chain)
Gem.ensure_ssl_available
@algo = Gem::Security::OPT[:dgst_algo]
@key, @cert_chain = key, cert_chain
# check key, if it's a file, and if it's key, leave it alone
if @key && !@key.kind_of?(OpenSSL::PKey::PKey)
@key = OpenSSL::PKey::RSA.new(File.read(@key))
end
# check cert chain, if it's a file, load it, if it's cert data, convert
# it into a cert object, and if it's a cert object, leave it alone
if @cert_chain
@cert_chain = @cert_chain.map do |cert|
# check cert, if it's a file, load it, if it's cert data, convert it
# into a cert object, and if it's a cert object, leave it alone
if cert && !cert.kind_of?(OpenSSL::X509::Certificate)
cert = File.read(cert) if File::exist?(cert)
cert = OpenSSL::X509::Certificate.new(cert)
end
cert
end
end
end