summaryrefslogtreecommitdiff
path: root/src/tls
diff options
context:
space:
mode:
authorEvgeniy Khramtsov <ekhramtsov@process-one.net>2010-08-07 22:04:57 +1000
committerEvgeniy Khramtsov <ekhramtsov@process-one.net>2010-08-07 22:04:57 +1000
commitd2d8a09b4afdb5f77b903411ff16fbb0b739d3e4 (patch)
tree7cc9c6958cb9f055084a60c0bebd79e12e59215d /src/tls
parentMake xml.c correctly compiles on R14A (EJAB-1288) (diff)
Make MD2 autodetected (EJAB-1285)
Diffstat (limited to '')
-rw-r--r--src/tls/Makefile.in5
-rw-r--r--src/tls/sha_drv.c4
2 files changed, 9 insertions, 0 deletions
diff --git a/src/tls/Makefile.in b/src/tls/Makefile.in
index 44587965..ee40f93e 100644
--- a/src/tls/Makefile.in
+++ b/src/tls/Makefile.in
@@ -30,6 +30,11 @@ ifdef debug
EFLAGS+=+debug_info +export_all
endif
+ifeq (@md2@, true)
+ EFLAGS+=-DHAVE_MD2
+ ERLANG_CFLAGS += -DHAVE_MD2
+endif
+
ERLSHLIBS = ../tls_drv.so ../sha_drv.so
OUTDIR = ..
SOURCES = $(wildcard *.erl)
diff --git a/src/tls/sha_drv.c b/src/tls/sha_drv.c
index 13d65803..8e6de320 100644
--- a/src/tls/sha_drv.c
+++ b/src/tls/sha_drv.c
@@ -20,7 +20,9 @@
#include <erl_driver.h>
#include <openssl/sha.h>
+#ifdef HAVE_MD2
#include <openssl/md2.h>
+#endif
static ErlDrvData sha_drv_start(ErlDrvPort port, char *buf)
{
@@ -36,11 +38,13 @@ static int sha_drv_control(ErlDrvData handle,
ErlDrvBinary *b = NULL;
switch (command) {
+#ifdef HAVE_MD2
case 2:
rlen = MD2_DIGEST_LENGTH;
b = driver_alloc_binary(rlen);
if (b) MD2((unsigned char*)buf, len, (unsigned char*)b->orig_bytes);
break;
+#endif
case 224:
rlen = SHA224_DIGEST_LENGTH;
b = driver_alloc_binary(rlen);