Skip to content
  • Kazuki Yamaguchi's avatar
    8ebf5978
    [ruby/openssl] pkey: deprecate PKey#set_* methods · 8ebf5978
    Kazuki Yamaguchi authored
    OpenSSL 3.0 made EVP_PKEY immutable. This means we can only have a const
    pointer of the low level struct and the following methods can no longer
    be provided when linked against OpenSSL 3.0:
    
     - OpenSSL::PKey::RSA#set_key
     - OpenSSL::PKey::RSA#set_factors
     - OpenSSL::PKey::RSA#set_crt_params
     - OpenSSL::PKey::DSA#set_pqg
     - OpenSSL::PKey::DSA#set_key
     - OpenSSL::PKey::DH#set_pqg
     - OpenSSL::PKey::DH#set_key
     - OpenSSL::PKey::EC#group=
     - OpenSSL::PKey::EC#private_key=
     - OpenSSL::PKey::EC#public_key=
    
    There is no direct replacement for this functionality at the moment.
    I plan to introduce a wrapper around EVP_PKEY_fromdata(), which takes
    all key components at once to construct an EVP_PKEY.
    
    https://github.com/ruby/openssl/commit/6848d2d969
    8ebf5978
    [ruby/openssl] pkey: deprecate PKey#set_* methods
    Kazuki Yamaguchi authored
    OpenSSL 3.0 made EVP_PKEY immutable. This means we can only have a const
    pointer of the low level struct and the following methods can no longer
    be provided when linked against OpenSSL 3.0:
    
     - OpenSSL::PKey::RSA#set_key
     - OpenSSL::PKey::RSA#set_factors
     - OpenSSL::PKey::RSA#set_crt_params
     - OpenSSL::PKey::DSA#set_pqg
     - OpenSSL::PKey::DSA#set_key
     - OpenSSL::PKey::DH#set_pqg
     - OpenSSL::PKey::DH#set_key
     - OpenSSL::PKey::EC#group=
     - OpenSSL::PKey::EC#private_key=
     - OpenSSL::PKey::EC#public_key=
    
    There is no direct replacement for this functionality at the moment.
    I plan to introduce a wrapper around EVP_PKEY_fromdata(), which takes
    all key components at once to construct an EVP_PKEY.
    
    https://github.com/ruby/openssl/commit/6848d2d969
Loading