diff options
author | Kazuki Yamaguchi <k@rhe.jp> | 2016-05-05 16:23:38 +0900 |
---|---|---|
committer | Kazuki Yamaguchi <k@rhe.jp> | 2016-05-05 18:43:53 +0900 |
commit | dd778cd0c87586f8b8f774ff9da6fad9df1824c4 (patch) | |
tree | 97d6905fa876489836527b338307b8cd1a3c52b2 /dmyext.c | |
parent | 81b7b8f80e3b423e08bc20e051da050551ff3dee (diff) | |
download | ruby-dd778cd0c87586f8b8f774ff9da6fad9df1824c4.tar.gz |
ext/openssl: EVP_PKEY, DH, DSA, RSA, EC_KEY are made opaque
Use EVP_PKEY_get0_* instead of pkey->pkey.*
Use EVP_PKEY_base_id(pkey) instead of EVP_PKEY_type(pkey->type)
Because of this, we can no longer set the parameters/keys directly, and
the newly added functions as alternative require setting all relevant
values at the same time. So this patch contains incompatibility: the
following code no longer works (if using 1.1.0):
dh = OpenSSL::PKey::DH.new(...)
dh.priv_key = OpenSSL::BN.new(...)
...and we have to write like:
dh = OpenSSL::PKey::DH.new(...)
priv = OpenSSL::BN.new(...)
pub = <calculate (dh.g ** priv) % dh.p>
dh.set_key(pub, priv)
Diffstat (limited to 'dmyext.c')
0 files changed, 0 insertions, 0 deletions