summaryrefslogtreecommitdiff
path: root/ext/digest/sha2/sha2ossl.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-02-22 02:21:22 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-02-22 02:21:22 +0000
commite6dde8be4d2538464372fd0c7499d625239a3b08 (patch)
tree3e4441f09c6aa5655877a9cb4f6258d6d0d39f4f /ext/digest/sha2/sha2ossl.c
parent034acb5806a718e3ec361af43b902c1ec3591ff3 (diff)
* ext/digest/sha2: Use OpenSSL's SHA1 engine if available.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/digest/sha2/sha2ossl.c')
-rw-r--r--ext/digest/sha2/sha2ossl.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/ext/digest/sha2/sha2ossl.c b/ext/digest/sha2/sha2ossl.c
new file mode 100644
index 0000000000..86824e72f4
--- /dev/null
+++ b/ext/digest/sha2/sha2ossl.c
@@ -0,0 +1,11 @@
+#include "defs.h"
+#include "sha2ossl.h"
+
+#define SHA_Finish(bit) \
+ void SHA##bit##_Finish(SHA##bit##_CTX *ctx, char *buf) \
+ { SHA##bit##_Final((unsigned char *)buf, ctx);}
+#define SHA384_Final SHA512_Final
+
+SHA_Finish(256)
+SHA_Finish(384)
+SHA_Finish(512)