From 26cb830df918614b4d734d187b7b65aba39f4d8e Mon Sep 17 00:00:00 2001 From: emboss Date: Wed, 22 Jun 2011 08:41:08 +0000 Subject: * ext/openssl/ossl.h: Introduced OSSL_BIO_reset macro for PEM/DER fallback scenarios. * ext/openssl/ossl_pkey_dsa.c * ext/openssl/ossl_x509req.c * ext/openssl/ossl_pkey_rsa.c * ext/openssl/ossl_pkey_ec.c * ext/openssl/ossl_ssl_session.c * ext/openssl/ossl_x509crl.c * ext/openssl/ossl_pkey.c * ext/openssl/ossl_pkey_dh.c * ext/openssl/ossl_x509cert.c * ext/openssl/ossl_pkcs7.c: Use OSSL_BIO_reset. * ext/openssl/ossl_ssl.c * ext/openssl/ossl_cipher.c * ext/openssl/ossl_pkey_ec.c * ext/openssl/ossl_pkcs12.c * ext/openssl/ossl_ssl_session.c: Replace rb_raise occurences by ossl_raise. This automatically flushes OpenSSL's error queue. * ext/openssl/ossl_pkcs7.c: Raise error if DER fallback for parsing fails. * test/openssl/test_pkey_ec.rb * test/openssl/test_pkey_dsa.rb * test/openssl/test_pkey_rsa.rb: Add assertions that OpenSSL.errors is empty. * test/openssl/test_pkey_rsa.rb: Remove initial OpenSSL.errors call in test_new. [ Ruby 1.9 - Bug #4885 ] [ruby-core:37134] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/openssl/ossl_x509cert.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'ext/openssl/ossl_x509cert.c') diff --git a/ext/openssl/ossl_x509cert.c b/ext/openssl/ossl_x509cert.c index 58640d135f..3fb19b465f 100644 --- a/ext/openssl/ossl_x509cert.c +++ b/ext/openssl/ossl_x509cert.c @@ -71,6 +71,7 @@ ossl_x509_new_from_file(VALUE filename) * prepare for DER... #if !defined(OPENSSL_NO_FP_API) if (!x509) { + (void)ERR_get_error(); rewind(fp); x509 = d2i_X509_fp(fp, NULL); @@ -146,7 +147,7 @@ ossl_x509_initialize(int argc, VALUE *argv, VALUE self) x509 = PEM_read_bio_X509(in, &x, NULL, NULL); DATA_PTR(self) = x; if (!x509) { - (void)BIO_reset(in); + OSSL_BIO_reset(in); x509 = d2i_X509_bio(in, &x); DATA_PTR(self) = x; } -- cgit v1.2.3