Skip to content

Incompatibility with OpenSSL 3.4 and later #124

Description

@jcharaoui

When running the testsuite in an environment using OpenSSL 3.4.0, many errors like the one below are raised:

  1) Puppetserver::Ca::Action::Generate downloading logs success and returns zero if downloaded                                                                                                                      
     Failure/Error: csr.version = 2                                                                                                                                                                                  
                                                                                                                                                                                                                     
     OpenSSL::X509::RequestError:                                                                                                                                                                                    
       X509_REQ_set_version: passed invalid argument                                                                                                                                                                 
     # ./lib/puppetserver/ca/host.rb:83:in `version='                                                                                                                                                                
     # ./lib/puppetserver/ca/host.rb:83:in `create_csr'                                                                                                                                                              
     # ./lib/puppetserver/ca/action/generate.rb:275:in `generate_key_csr'                                                                                                                                            
     # ./lib/puppetserver/ca/action/generate.rb:246:in `submit_csr'                                                                                                                                                  
     # ./lib/puppetserver/ca/action/generate.rb:222:in `block in generate_certs'                                                                                                                                     
     # ./lib/puppetserver/ca/action/generate.rb:216:in `map'                                                                                                                                                         
     # ./lib/puppetserver/ca/action/generate.rb:216:in `generate_certs'                                                                                                                                              
     # ./lib/puppetserver/ca/action/generate.rb:163:in `run'                                                                                                                                                         
     # ./spec/puppetserver/ca/action/generate_spec.rb:99:in `block (5 levels) in <top (required)>'                                                                                                                   
     # ./spec/utils/ssl.rb:91:in `with_temp_dirs'                                                                                                                                                                    
     # ./spec/puppetserver/ca/action/generate_spec.rb:98:in `block (4 levels) in <top (required)>'                                                                                                                   
     # ./spec/puppetserver/ca/action/generate_spec.rb:97:in `block (3 levels) in <top (required)>'                                                                                                                   

This occurs because the gem attempts to set a CSR version of 2, but this is no longer valid as of OpenSSL 3.4.0 and later, see commit openssl/openssl@397051a

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions