summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorshyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-06-18 09:53:29 +0000
committershyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-06-18 09:53:29 +0000
commitd761c9b178d8a2b7757ca5ea41135c7ea37c70b2 (patch)
tree2fa288d6bfe10f3c961d9914e7c547666cfe52f3
parentef73b34c87f52be6a87e0f7ab8d5a03bfcaa983f (diff)
merge revision(s) 32605:32610:
* backport r32609 from trunk. * ext/openssl/ossl_hmac.c: Revert checking return type of HMAC_Init_ex as it is not compatible with OpenSSL < 1.0.0. * backport r32606 from trunk. * ext/openssl/ossl_digest.c: Check return value of EVP_DigestInit_ex. * ext/openssl/ossl_hmac.c: Check return value of HMAC_Init_ex. Thanks, Jared Jennings, for the patch. [ Ruby 1.9 - Bug #4944 ] [ruby-core:37670] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@36126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog16
-rw-r--r--ext/openssl/ossl_digest.c12
-rw-r--r--version.h8
3 files changed, 29 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 9637df1aad..e7445fa688 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+Mon Jun 18 18:32:43 2012 Martin Bosslet <Martin.Bosslet@googlemail.com>
+
+ * backport r32609 from trunk.
+
+ * ext/openssl/ossl_hmac.c: Revert checking return type of
+ HMAC_Init_ex as it is not compatible with OpenSSL < 1.0.0.
+
+Mon Jun 18 18:32:43 2012 Martin Bosslet <Martin.Bosslet@googlemail.com>
+
+ * backport r32606 from trunk.
+
+ * ext/openssl/ossl_digest.c: Check return value of EVP_DigestInit_ex.
+ * ext/openssl/ossl_hmac.c: Check return value of HMAC_Init_ex.
+ Thanks, Jared Jennings, for the patch.
+ [ Ruby 1.9 - Bug #4944 ] [ruby-core:37670]
+
Sun Jun 10 03:00:21 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (ruby_setjmp): need to save the stack after r2 (the Table
diff --git a/ext/openssl/ossl_digest.c b/ext/openssl/ossl_digest.c
index 879d399fe7..13111ce631 100644
--- a/ext/openssl/ossl_digest.c
+++ b/ext/openssl/ossl_digest.c
@@ -62,7 +62,9 @@ ossl_digest_new(const EVP_MD *md)
ret = ossl_digest_alloc(cDigest);
GetDigest(ret, ctx);
- EVP_DigestInit_ex(ctx, md, NULL);
+ if (EVP_DigestInit_ex(ctx, md, NULL) != 1) {
+ ossl_raise(eDigestError, "Digest initialization failed.");
+ }
return ret;
}
@@ -104,7 +106,9 @@ ossl_digest_initialize(int argc, VALUE *argv, VALUE self)
if (!NIL_P(data)) StringValue(data);
GetDigest(self, ctx);
- EVP_DigestInit_ex(ctx, md, NULL);
+ if (EVP_DigestInit_ex(ctx, md, NULL) != 1) {
+ ossl_raise(eDigestError, "Digest initialization failed.");
+ }
if (!NIL_P(data)) return ossl_digest_update(self, data);
return self;
@@ -138,7 +142,9 @@ ossl_digest_reset(VALUE self)
EVP_MD_CTX *ctx;
GetDigest(self, ctx);
- EVP_DigestInit_ex(ctx, EVP_MD_CTX_md(ctx), NULL);
+ if (EVP_DigestInit_ex(ctx, EVP_MD_CTX_md(ctx), NULL) != 1) {
+ ossl_raise(eDigestError, "Digest initialization failed.");
+ }
return self;
}
diff --git a/version.h b/version.h
index 6341599f01..7b2f01ae2b 100644
--- a/version.h
+++ b/version.h
@@ -1,15 +1,15 @@
#define RUBY_VERSION "1.8.7"
-#define RUBY_RELEASE_DATE "2012-06-10"
+#define RUBY_RELEASE_DATE "2012-06-18"
#define RUBY_VERSION_CODE 187
-#define RUBY_RELEASE_CODE 20120610
-#define RUBY_PATCHLEVEL 368
+#define RUBY_RELEASE_CODE 20120618
+#define RUBY_PATCHLEVEL 369
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 8
#define RUBY_VERSION_TEENY 7
#define RUBY_RELEASE_YEAR 2012
#define RUBY_RELEASE_MONTH 6
-#define RUBY_RELEASE_DAY 10
+#define RUBY_RELEASE_DAY 18
#ifdef RUBY_EXTERN
RUBY_EXTERN const char ruby_version[];