diff options
-rw-r--r-- | lib/rubygems/security.rb | 7 | ||||
-rw-r--r-- | test/rubygems/test_gem_security.rb | 2 |
2 files changed, 5 insertions, 4 deletions
diff --git a/lib/rubygems/security.rb b/lib/rubygems/security.rb index 8240a1a059..2275997207 100644 --- a/lib/rubygems/security.rb +++ b/lib/rubygems/security.rb @@ -510,9 +510,10 @@ module Gem::Security dcs = dcs.split '.' - name = "CN=#{cn}/#{dcs.map {|dc| "DC=#{dc}" }.join '/'}" - - OpenSSL::X509::Name.parse name + OpenSSL::X509::Name.new([ + ["CN", cn], + *dcs.map {|dc| ["DC", dc] }, + ]) end ## diff --git a/test/rubygems/test_gem_security.rb b/test/rubygems/test_gem_security.rb index d04bd4a8bd..415ec2b5f6 100644 --- a/test/rubygems/test_gem_security.rb +++ b/test/rubygems/test_gem_security.rb @@ -196,7 +196,7 @@ class TestGemSecurity < Gem::TestCase def test_class_sign issuer = PUBLIC_CERT.subject - signee = OpenSSL::X509::Name.parse "/CN=signee/DC=example" + signee = OpenSSL::X509::Name.new([["CN", "signee"], ["DC", "example"]]) key = PRIVATE_KEY cert = OpenSSL::X509::Certificate.new |