From 3bd87ab0bd3e3ef1a11a95ce5a56ff2647d4ce89 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se>
Date: Thu, 18 Jul 2002 17:59:21 +0200
Subject: [PATCH] Extra name-mangling, to avoid collisions in case a program
 links with both nettle and libcrypto (the nettle-benchmark program does).

Rev: src/nettle/des-compat.h:1.8
---
 des-compat.h | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/des-compat.h b/des-compat.h
index b7d1a704..1ec9a202 100644
--- a/des-compat.h
+++ b/des-compat.h
@@ -35,10 +35,22 @@
 
 #include "des.h"
 
-/* Some names collides with nettle, so we'll need some ugly symbol
- * munging */
-
-#define des_set_key des_key_sched
+/* We use some name mangling, to avoid collisions with either other
+ * nettle functions or with libcrypto. */
+
+#define des_ecb3_encrypt nettle_openssl_des_ecb3_encrypt
+#define des_cbc_cksum nettle_openssl_des_cbc_cksum
+#define des_ncbc_encrypt nettle_openssl_des_ncbc_encrypt
+#define des_cbc_encrypt nettle_openssl_des_cbc_encrypt
+#define des_ecb_encrypt nettle_openssl_des_ecb_encrypt
+#define des_ede3_cbc_encrypt nettle_openssl_des_ede3_cbc_encrypt
+#define des_set_odd_parity nettle_openssl_des_set_odd_parity
+#define des_check_key nettle_openssl_des_check_key
+#define des_key_sched nettle_openssl_des_key_sched
+#define des_is_weak_key nettle_openssl_des_is_weak_key
+
+/* An extra alias */
+#define des_set_key nettle_openssl_des_key_sched
 
 enum { DES_DECRYPT = 0, DES_ENCRYPT = 1 };
 
-- 
GitLab