54 lines
2.4 KiB
Diff
54 lines
2.4 KiB
Diff
|
From 208c0d4810f24e03b4def637ebe130f8777ef3e1 Mon Sep 17 00:00:00 2001
|
||
|
From: Mister X <3520734+Mister-X-@users.noreply.github.com>
|
||
|
Date: Sat, 5 May 2018 00:28:30 +0000
|
||
|
Subject: [PATCH] Fixed compilation with gcrypt on some platforms.
|
||
|
|
||
|
Retrieved from upstream: https://github.com/aircrack-ng/aircrack-ng/commit/208c0d4810f24e03b4def637ebe130f8777ef3e1
|
||
|
|
||
|
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||
|
---
|
||
|
src/gcrypt-openssl-wrapper.h | 13 +++++++++++++
|
||
|
src/md5.h | 6 +++++-
|
||
|
2 files changed, 18 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/src/gcrypt-openssl-wrapper.h b/src/gcrypt-openssl-wrapper.h
|
||
|
index 79a0376e..db3e0462 100644
|
||
|
--- a/src/gcrypt-openssl-wrapper.h
|
||
|
+++ b/src/gcrypt-openssl-wrapper.h
|
||
|
@@ -82,5 +82,18 @@
|
||
|
gcry_md_get_algo_dlen (algo)); \
|
||
|
gcry_md_close(mdh); \
|
||
|
} while (0)
|
||
|
+// MD5
|
||
|
+#define MD5_CTX gcry_md_hd_t
|
||
|
+#define MD5_Init(ctx) gcry_md_open(ctx, GCRY_MD_MD5, 0)
|
||
|
+#define MD5_Update(ctx, data, len) gcry_md_write(*ctx, data, len)
|
||
|
+ // HMAC_Update(ctx, data, len)
|
||
|
+#define MD5_Final(ctx, md) do { \
|
||
|
+ memcpy( md, \
|
||
|
+ gcry_md_read(*(gcry_md_hd_t*)ctx, GCRY_MD_MD5), \
|
||
|
+ gcry_md_get_algo_dlen(gcry_md_get_algo(*(gcry_md_hd_t*)ctx)) \
|
||
|
+ ); \
|
||
|
+ gcry_md_close(*(gcry_md_hd_t*)ctx); \
|
||
|
+ } while (0)
|
||
|
+
|
||
|
// http://tumblr.spantz.org/post/214737529/the-use-of-do-while-0-in-c-macros
|
||
|
#endif // _GCRYPT_OPENSSL_WRAPPER_H
|
||
|
diff --git a/src/md5.h b/src/md5.h
|
||
|
index e9edeb81..d8d3d6b3 100644
|
||
|
--- a/src/md5.h
|
||
|
+++ b/src/md5.h
|
||
|
@@ -61,7 +61,11 @@ typedef unsigned int MD5_u32plus;
|
||
|
|
||
|
#include "arch.h"
|
||
|
#ifdef SIMD_PARA_MD5
|
||
|
-#include <openssl/md5.h>
|
||
|
+ #ifndef USE_GCRYPT
|
||
|
+ #include <openssl/md5.h>
|
||
|
+ #else
|
||
|
+ #include "gcrypt-openssl-wrapper.h"
|
||
|
+ #endif
|
||
|
#endif
|
||
|
|
||
|
#endif /* _MD5_H */
|