1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/sample/openssl/cert2text.rb
Kazuki Yamaguchi e35d3623de [ruby/openssl] sample: avoid "include OpenSSL"
It is not a common practice and should not be done since it causes name
clash: for example, Digest and Random are provided by other standard
libraries of Ruby.

Fixes: https://github.com/ruby/openssl/issues/419

https://github.com/ruby/openssl/commit/6a6444984b
2021-03-16 19:37:06 +09:00

26 lines
416 B
Ruby

#!/usr/bin/env ruby
require 'openssl'
def cert2text(cert_str)
[
OpenSSL::X509::Certificate,
OpenSSL::X509::CRL,
OpenSSL::X509::Request,
].each do |klass|
begin
puts klass.new(cert_str).to_text
return
rescue
end
end
raise ArgumentError.new('Unknown format.')
end
if ARGV.empty?
cert2text(STDIN.read)
else
ARGV.each do |file|
cert2text(File.read(file))
end
end