From 3af2635f117f8da563d180bc1c58702aecb16e0c Mon Sep 17 00:00:00 2001 From: Kazuki Yamaguchi Date: Thu, 6 Jul 2017 09:21:36 +0900 Subject: bio: prevent possible GC issue in ossl_obj2bio() Prevent the new object created by StringValue() from being GCed. Luckily, as none of the callers of ossl_obj2bio() reads from the returned BIO after possible triggering GC, this has not been a real problem. As a bonus, ossl_protect_obj2bio() function which is no longer used anywhere is removed. --- ext/openssl/ossl_bio.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'ext/openssl/ossl_bio.h') diff --git a/ext/openssl/ossl_bio.h b/ext/openssl/ossl_bio.h index 1705d0ac..2c3d952b 100644 --- a/ext/openssl/ossl_bio.h +++ b/ext/openssl/ossl_bio.h @@ -10,8 +10,7 @@ #if !defined(_OSSL_BIO_H_) #define _OSSL_BIO_H_ -BIO *ossl_obj2bio(VALUE); -BIO *ossl_protect_obj2bio(VALUE,int*); +BIO *ossl_obj2bio(volatile VALUE *); VALUE ossl_membio2str0(BIO*); VALUE ossl_membio2str(BIO*); VALUE ossl_protect_membio2str(BIO*,int*); -- cgit v1.2.3