From 1915a913ecee168610f17d6b9c9e2d20d2a219d8 Mon Sep 17 00:00:00 2001 From: emboss Date: Wed, 11 May 2011 21:51:52 +0000 Subject: Thu May 12 07:27:31 2011 Martin Bosslet * ext/openssl/ossl_pkey_rsa.c: Use generic X.509 SubjectPublicKeyInfo format for encoding RSA public keys. [ruby-core:35327] [Bug #4421] Previous revision: 31507 M ChangeLog M ext/openssl/ossl_pkey_rsa.c git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/openssl/ossl_pkey_rsa.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'ext') diff --git a/ext/openssl/ossl_pkey_rsa.c b/ext/openssl/ossl_pkey_rsa.c index 15c1d6934d..d57e5b5270 100644 --- a/ext/openssl/ossl_pkey_rsa.c +++ b/ext/openssl/ossl_pkey_rsa.c @@ -159,27 +159,27 @@ ossl_rsa_initialize(int argc, VALUE *argv, VALUE self) if (!rsa) { (void)BIO_reset(in); (void)ERR_get_error(); - rsa = PEM_read_bio_RSAPublicKey(in, NULL, NULL, NULL); + rsa = PEM_read_bio_RSA_PUBKEY(in, NULL, NULL, NULL); } if (!rsa) { (void)BIO_reset(in); (void)ERR_get_error(); - rsa = PEM_read_bio_RSA_PUBKEY(in, NULL, NULL, NULL); + rsa = d2i_RSAPrivateKey_bio(in, NULL); } if (!rsa) { (void)BIO_reset(in); (void)ERR_get_error(); - rsa = d2i_RSAPrivateKey_bio(in, NULL); + rsa = d2i_RSA_PUBKEY_bio(in, NULL); } if (!rsa) { (void)BIO_reset(in); (void)ERR_get_error(); - rsa = d2i_RSAPublicKey_bio(in, NULL); + rsa = PEM_read_bio_RSAPublicKey(in, NULL, NULL, NULL); } if (!rsa) { (void)BIO_reset(in); (void)ERR_get_error(); - rsa = d2i_RSA_PUBKEY_bio(in, NULL); + rsa = d2i_RSAPublicKey_bio(in, NULL); } BIO_free(in); if (!rsa) { @@ -268,7 +268,7 @@ ossl_rsa_export(int argc, VALUE *argv, VALUE self) ossl_raise(eRSAError, NULL); } } else { - if (!PEM_write_bio_RSAPublicKey(out, pkey->pkey.rsa)) { + if (!PEM_write_bio_RSA_PUBKEY(out, pkey->pkey.rsa)) { BIO_free(out); ossl_raise(eRSAError, NULL); } @@ -297,7 +297,7 @@ ossl_rsa_to_der(VALUE self) if(RSA_HAS_PRIVATE(pkey->pkey.rsa)) i2d_func = i2d_RSAPrivateKey; else - i2d_func = i2d_RSAPublicKey; + i2d_func = (int (*)(const RSA*, unsigned char**))i2d_RSA_PUBKEY; if((len = i2d_func(pkey->pkey.rsa, NULL)) <= 0) ossl_raise(eRSAError, NULL); str = rb_str_new(0, len); -- cgit v1.2.3