aboutsummaryrefslogtreecommitdiffstats
path: root/sample/smime_read.rb
diff options
context:
space:
mode:
authorKazuki Yamaguchi <k@rhe.jp>2021-02-25 16:49:11 +0900
committerKazuki Yamaguchi <k@rhe.jp>2021-02-25 19:37:10 +0900
commit6a6444984bf2c388b29392e993b2c69401f208e8 (patch)
tree42bd14ff9957cf97affb1175a262d9d8e07c1caf /sample/smime_read.rb
parenta9954bac22ba8d9f9491732f3816bc1316eaa088 (diff)
downloadruby-openssl-6a6444984bf2c388b29392e993b2c69401f208e8.tar.gz
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
Diffstat (limited to 'sample/smime_read.rb')
-rw-r--r--sample/smime_read.rb11
1 files changed, 5 insertions, 6 deletions
diff --git a/sample/smime_read.rb b/sample/smime_read.rb
index a70105fd..b617c6e3 100644
--- a/sample/smime_read.rb
+++ b/sample/smime_read.rb
@@ -1,6 +1,5 @@
require 'optparse'
require 'openssl'
-include OpenSSL
options = ARGV.getopts("c:k:C:")
@@ -10,14 +9,14 @@ ca_path = options["C"]
data = $stdin.read
-cert = X509::Certificate.new(File::read(cert_file))
-key = PKey::read(File::read(key_file))
-p7enc = PKCS7::read_smime(data)
+cert = OpenSSL::X509::Certificate.new(File::read(cert_file))
+key = OpenSSL::PKey::read(File::read(key_file))
+p7enc = OpenSSL::PKCS7::read_smime(data)
data = p7enc.decrypt(key, cert)
-store = X509::Store.new
+store = OpenSSL::X509::Store.new
store.add_path(ca_path)
-p7sig = PKCS7::read_smime(data)
+p7sig = OpenSSL::PKCS7::read_smime(data)
if p7sig.verify([], store)
puts p7sig.data
end