Feature #5787


OpenSSL::X509::Name#to_a Improvement (Patch Attached)

Added by reaperhulk (Paul Kehrer) almost 11 years ago. Updated almost 11 years ago.

Target version:


In ruby 1.8/1.9/trunk the OpenSSL::X509::Name#to_a method attempts to map OIDs to short names. If an OID has no associated shortname this causes it to return the string "UNDEF". It would be much more useful if it returned the OID in this situation. I've written a patch and test for the patch and attached it to this bug in unified diff format.

You can also see the change at


name-fix.diff (2.7 KB) name-fix.diff reaperhulk (Paul Kehrer), 12/22/2011 03:30 AM
name-fix-v2.diff (2.6 KB) name-fix-v2.diff reaperhulk (Paul Kehrer), 12/22/2011 05:13 AM

Related issues 1 (0 open1 closed)

Related to Backport193 - Backport #5983: Please backport r34481Closed02/08/2012Actions
Actions #1

Updated by reaperhulk (Paul Kehrer) almost 11 years ago

Updated patch to avoid a probable memory leak. I don't do much in C so if I still have a mistake please let me know! The github diff is at

Updated by MartinBosslet (Martin Bosslet) almost 11 years ago

  • Status changed from Open to Assigned
  • Assignee set to MartinBosslet (Martin Bosslet)
  • Target version set to 2.0.0

That's a good idea, Paul, thanks. It's also in line with RFC 4514 (the former 2253).
I'll have to check whether this causes problems when again parsing such a string
representation and probably fix that, too. But once that's done I'm going to apply
your patch.

Actions #3

Updated by reaperhulk (Paul Kehrer) almost 11 years ago

Great news, let me know if there's anything I can do to help.

Actions #4

Updated by Anonymous almost 11 years ago

  • Status changed from Assigned to Closed
  • % Done changed from 0 to 100

This issue was solved with changeset r34481.
Paul, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.

  • ext/openssl/ossl_x509name.c: Use the numerical representation of
    unrecognized OIDs instead of the sn "UNDEF".

  • test/openssl/test_x509name.rb: Add tests for the fixed behavior.

    Patch provided by Paul Kehrer, thanḱ you!
    [ruby-core:41769] [Feature #5787]


Also available in: Atom PDF