summaryrefslogtreecommitdiff
path: root/ext/digest/sha2/sha2ossl.h
diff options
context:
space:
mode:
Diffstat (limited to 'ext/digest/sha2/sha2ossl.h')
-rw-r--r--ext/digest/sha2/sha2ossl.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/ext/digest/sha2/sha2ossl.h b/ext/digest/sha2/sha2ossl.h
index 4229d14cf9c..f7258ee64af 100644
--- a/ext/digest/sha2/sha2ossl.h
+++ b/ext/digest/sha2/sha2ossl.h
@@ -8,10 +8,20 @@
#define SHA384_BLOCK_LENGTH SHA512_CBLOCK
#define SHA512_BLOCK_LENGTH SHA512_CBLOCK
+#ifndef __DragonFly__
+#define SHA384_Final SHA512_Final
+#endif
+
typedef SHA512_CTX SHA384_CTX;
-void SHA256_Finish(SHA256_CTX *ctx, char *buf);
-void SHA384_Finish(SHA384_CTX *ctx, char *buf);
-void SHA512_Finish(SHA512_CTX *ctx, char *buf);
+#undef SHA256_Finish
+#undef SHA384_Finish
+#undef SHA512_Finish
+#define SHA256_Finish rb_digest_SHA256_finish
+#define SHA384_Finish rb_digest_SHA384_finish
+#define SHA512_Finish rb_digest_SHA512_finish
+static DEFINE_FINISH_FUNC_FROM_FINAL(SHA256);
+static DEFINE_FINISH_FUNC_FROM_FINAL(SHA384);
+static DEFINE_FINISH_FUNC_FROM_FINAL(SHA512);
#endif