vendored/puppet/lib/puppet/ssl/oids.rb in bolt-0.15.0 vs vendored/puppet/lib/puppet/ssl/oids.rb in bolt-0.16.0

- old
+ new

@@ -68,15 +68,21 @@ ["1.3.6.1.4.1.34380.1.3.1", 'pp_authorization', 'Certificate Extension Authorization'], ["1.3.6.1.4.1.34380.1.3.13", 'pp_auth_role', 'Puppet Node Role Name for Authorization'], ] + @did_register_puppet_oids = false + # Register our custom Puppet OIDs with OpenSSL so they can be used as CSR # extensions. Without registering these OIDs, OpenSSL will fail when it # encounters such an extension in a CSR. def self.register_puppet_oids() - PUPPET_OIDS.each do |oid_defn| - OpenSSL::ASN1::ObjectId.register(*oid_defn) + if !@did_register_puppet_oids + PUPPET_OIDS.each do |oid_defn| + OpenSSL::ASN1::ObjectId.register(*oid_defn) + end + + @did_register_puppet_oids = true end end # Parse custom OID mapping file that enables custom OIDs to be resolved # into user-friendly names.