aboutsummaryrefslogtreecommitdiffstats
path: root/ext/openssl/ossl_pkey_rsa.c
diff options
context:
space:
mode:
authormichal <michal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-09-12 13:46:48 +0000
committermichal <michal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-09-12 13:46:48 +0000
commitbd96b4c8ccbfbaf68c6996d74515fd603b2aea63 (patch)
tree7585c4dabc044459b4cfb92230bdff20fb882087 /ext/openssl/ossl_pkey_rsa.c
parentecf0c48d5a8308500f2331287fe88c88d6c43b70 (diff)
downloadruby-bd96b4c8ccbfbaf68c6996d74515fd603b2aea63.tar.gz
OpenSSL update
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/openssl/ossl_pkey_rsa.c')
-rw-r--r--ext/openssl/ossl_pkey_rsa.c24
1 files changed, 3 insertions, 21 deletions
diff --git a/ext/openssl/ossl_pkey_rsa.c b/ext/openssl/ossl_pkey_rsa.c
index c3d23666c9..ce53a898e0 100644
--- a/ext/openssl/ossl_pkey_rsa.c
+++ b/ext/openssl/ossl_pkey_rsa.c
@@ -75,30 +75,12 @@ ossl_rsa_new(EVP_PKEY *pkey)
/*
* Private
*/
-/*
- * CB for yielding when generating RSA data
- */
-static void
-ossl_rsa_generate_cb(int p, int n, void *arg)
-{
- VALUE ary;
-
- ary = rb_ary_new2(2);
- rb_ary_store(ary, 0, INT2NUM(p));
- rb_ary_store(ary, 1, INT2NUM(n));
-
- rb_yield(ary);
-}
-
static RSA *
rsa_generate(int size, int exp)
{
- void (*cb)(int, int, void *) = NULL;
-
- if (rb_block_given_p()) {
- cb = ossl_rsa_generate_cb;
- }
- return RSA_generate_key(size, exp, cb, NULL);
+ return RSA_generate_key(size, exp,
+ rb_block_given_p() ? ossl_generate_cb : NULL,
+ NULL);
}
static VALUE