Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 4 May 2001 18:59:46 -0500
From:      Steve Price <steve@havk.org>
To:        ports@freebsd.org
Subject:   libmcrypt port
Message-ID:  <20010504185946.A850@bsd.havk.org>

next in thread | raw e-mail | index | archive | help

--XsQoSWH+UP9D9v3l
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Has anyone been able to get src/ciphertest to run (and actually
list algorithms/modes) with the current version (2.4.10) of the
security/libmcrypt port?  I've cooked up a horrendous hack (see
attached patch) that makes it work for me, but I'm wondering how
it could ever work the way it stands for anyone using any OS.

From lib/mcrypt_extras.c:

        _version = lt_dlsym(_handle, "_mcrypt_algorithm_version");

Basically when listing the available modules it looks for this
symbol to see if it is a valid module.  The problem is this though
from modules/algorithms/xtea.c:

#define _mcrypt_algorithm_version xtea_LTX__mcrypt_algorithm_version

Unless I'm missing the totally obvious the first simple above will
never be in the resultant object file because it is being defined
as something else.  Sure enough if I "remove" these defines (see
attached patch) everything works as expected.

Unless someone has a better way of fixing this I'll commit this
shortly so I won't have to keep installing version 2.2.7 of this
port and hacking up the mod_php4 port everytime I want mcrypt
support that works.

Anyone care to explain how this could ever work, for anyone?

Thanks.

-steve

--XsQoSWH+UP9D9v3l
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename=patch-ab

--- modules/algorithms/3-way.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/3-way.c	Fri May  4 18:34:19 2001
@@ -19,7 +19,7 @@
 #define   STRT_D   0xb1b1	/* round constant of first decryption round */
 #define     NMBR       11	/* number of rounds is 11                   */
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key threeway_LTX__mcrypt_set_key
 #define _mcrypt_encrypt threeway_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt threeway_LTX__mcrypt_decrypt
--- modules/algorithms/arcfour.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/arcfour.c	Fri May  4 18:34:07 2001
@@ -22,7 +22,7 @@
 #include <stdlib.h>
 #include "arcfour.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key arcfour_LTX__mcrypt_set_key
 #define _mcrypt_encrypt arcfour_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt arcfour_LTX__mcrypt_decrypt
--- modules/algorithms/blowfish-compat.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/blowfish-compat.c	Fri May  4 18:33:53 2001
@@ -15,7 +15,7 @@
 
 #define WORDS_BIGENDIAN
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key blowfish_compat_LTX__mcrypt_set_key
 #define _mcrypt_encrypt blowfish_compat_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt blowfish_compat_LTX__mcrypt_decrypt
--- modules/algorithms/blowfish.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/blowfish.c	Fri May  4 18:33:39 2001
@@ -13,7 +13,7 @@
 #include "../../lib/mcrypt_modules.h"
 #include "blowfish.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key blowfish_LTX__mcrypt_set_key
 #define _mcrypt_encrypt blowfish_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt blowfish_LTX__mcrypt_decrypt
--- modules/algorithms/cast-128.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/cast-128.c	Fri May  4 18:33:28 2001
@@ -19,7 +19,7 @@
 #include "../../lib/mcrypt_modules.h"
 #include "cast-128.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key cast_128_LTX__mcrypt_set_key
 #define _mcrypt_encrypt cast_128_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt cast_128_LTX__mcrypt_decrypt
--- modules/algorithms/cast-256.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/cast-256.c	Fri May  4 18:33:15 2001
@@ -68,7 +68,7 @@
 #include "../../lib/mcrypt_modules.h"
 #include "cast-256.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key cast_256_LTX__mcrypt_set_key
 #define _mcrypt_encrypt cast_256_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt cast_256_LTX__mcrypt_decrypt
--- modules/algorithms/des.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/des.c	Fri May  4 18:33:02 2001
@@ -20,7 +20,7 @@
 #include "../../lib/mcrypt_modules.h"
 #include "des.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key des_LTX__mcrypt_set_key
 #define _mcrypt_encrypt des_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt des_LTX__mcrypt_decrypt
--- modules/algorithms/enigma.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/enigma.c	Fri May  4 18:32:32 2001
@@ -19,7 +19,7 @@
 #include "../../lib/mcrypt_modules.h"
 #include "enigma.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key enigma_LTX__mcrypt_set_key
 #define _mcrypt_encrypt enigma_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt enigma_LTX__mcrypt_decrypt
--- modules/algorithms/gost.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/gost.c	Fri May  4 18:32:20 2001
@@ -40,7 +40,7 @@
 #include "../../lib/libdefs.h"
 #include "../../lib/mcrypt_modules.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key gost_LTX__mcrypt_set_key
 #define _mcrypt_encrypt gost_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt gost_LTX__mcrypt_decrypt
--- modules/algorithms/loki97.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/loki97.c	Fri May  4 18:32:07 2001
@@ -66,7 +66,7 @@
 #include "../../lib/libdefs.h"
 #include "../../lib/mcrypt_modules.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key loki97_LTX__mcrypt_set_key
 #define _mcrypt_encrypt loki97_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt loki97_LTX__mcrypt_decrypt
--- modules/algorithms/panama.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/panama.c	Fri May  4 18:31:50 2001
@@ -41,7 +41,7 @@
 #include "panama.h"
 
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key panama_LTX__mcrypt_set_key
 #define _mcrypt_encrypt panama_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt panama_LTX__mcrypt_decrypt
--- modules/algorithms/rc2.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/rc2.c	Fri May  4 18:31:36 2001
@@ -20,7 +20,7 @@
 /* #include <assert.h> */
 #include "rc2.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key rc2_LTX__mcrypt_set_key
 #define _mcrypt_encrypt rc2_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt rc2_LTX__mcrypt_decrypt
--- modules/algorithms/rijndael-128.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/rijndael-128.c	Fri May  4 18:31:21 2001
@@ -25,7 +25,7 @@
 #include "../../lib/mcrypt_modules.h"
 #include "rijndael.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key rijndael_128_LTX__mcrypt_set_key
 #define _mcrypt_encrypt rijndael_128_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt rijndael_128_LTX__mcrypt_decrypt
--- modules/algorithms/rijndael-192.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/rijndael-192.c	Fri May  4 18:31:05 2001
@@ -26,7 +26,7 @@
 #include "../../lib/mcrypt_modules.h"
 #include "rijndael.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key rijndael_192_LTX__mcrypt_set_key
 #define _mcrypt_encrypt rijndael_192_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt rijndael_192_LTX__mcrypt_decrypt
--- modules/algorithms/rijndael-256.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/rijndael-256.c	Fri May  4 18:30:52 2001
@@ -25,7 +25,7 @@
 #include "../../lib/mcrypt_modules.h"
 #include "rijndael.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key rijndael_256_LTX__mcrypt_set_key
 #define _mcrypt_encrypt rijndael_256_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt rijndael_256_LTX__mcrypt_decrypt
--- modules/algorithms/safer128.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/safer128.c	Fri May  4 18:30:36 2001
@@ -31,7 +31,7 @@
 #include "../../lib/mcrypt_modules.h"
 #include "safer.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key safer_sk128_LTX__mcrypt_set_key
 #define _mcrypt_encrypt safer_sk128_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt safer_sk128_LTX__mcrypt_decrypt
--- modules/algorithms/safer64.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/safer64.c	Fri May  4 18:30:22 2001
@@ -31,7 +31,7 @@
 #include "safer.h"
 
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key safer_sk64_LTX__mcrypt_set_key
 #define _mcrypt_encrypt safer_sk64_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt safer_sk64_LTX__mcrypt_decrypt
--- modules/algorithms/saferplus.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/saferplus.c	Fri May  4 18:30:07 2001
@@ -68,7 +68,7 @@
 #include "saferplus.h"
 #include <stdlib.h>
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key saferplus_LTX__mcrypt_set_key
 #define _mcrypt_encrypt saferplus_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt saferplus_LTX__mcrypt_decrypt
--- modules/algorithms/serpent.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/serpent.c	Fri May  4 18:29:51 2001
@@ -43,7 +43,7 @@
 #include "../../lib/mcrypt_modules.h"
 #include "serpent.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key serpent_LTX__mcrypt_set_key
 #define _mcrypt_encrypt serpent_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt serpent_LTX__mcrypt_decrypt
--- modules/algorithms/tripledes.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/tripledes.c	Fri May  4 18:29:35 2001
@@ -22,7 +22,7 @@
 #include "../../lib/mcrypt_modules.h"
 #include "tripledes.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key tripledes_LTX__mcrypt_set_key
 #define _mcrypt_encrypt tripledes_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt tripledes_LTX__mcrypt_decrypt
--- modules/algorithms/twofish.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/twofish.c	Fri May  4 18:29:01 2001
@@ -48,7 +48,7 @@
 #include "../../lib/mcrypt_modules.h"
 #include "twofish.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key twofish_LTX__mcrypt_set_key
 #define _mcrypt_encrypt twofish_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt twofish_LTX__mcrypt_decrypt
--- modules/algorithms/wake.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/wake.c	Fri May  4 18:28:45 2001
@@ -21,7 +21,7 @@
 #include "../../lib/mcrypt_modules.h"
 #include "wake.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key wake_LTX__mcrypt_set_key
 #define _mcrypt_encrypt wake_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt wake_LTX__mcrypt_decrypt
--- modules/algorithms/xtea.c.orig	Fri May  4 18:28:02 2001
+++ modules/algorithms/xtea.c	Fri May  4 18:28:27 2001
@@ -13,7 +13,7 @@
 #include "../../lib/libdefs.h"
 #include "../../lib/mcrypt_modules.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _mcrypt_set_key xtea_LTX__mcrypt_set_key
 #define _mcrypt_encrypt xtea_LTX__mcrypt_encrypt
 #define _mcrypt_decrypt xtea_LTX__mcrypt_decrypt
--- modules/modes/cbc.c.orig	Fri May  4 18:37:39 2001
+++ modules/modes/cbc.c	Fri May  4 18:39:30 2001
@@ -20,7 +20,7 @@
 #include "../../lib/libdefs.h"
 #include "../../lib/mcrypt_modules.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _init_mcrypt cbc_LTX__init_mcrypt
 #define _mcrypt_set_state cbc_LTX__mcrypt_set_state
 #define _end_mcrypt cbc_LTX__end_mcrypt
--- modules/modes/cfb.c.orig	Fri May  4 18:37:39 2001
+++ modules/modes/cfb.c	Fri May  4 18:39:18 2001
@@ -20,7 +20,7 @@
 #include "../../lib/libdefs.h"
 #include "../../lib/mcrypt_modules.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _init_mcrypt cfb_LTX__init_mcrypt
 #define _mcrypt_set_state cfb_LTX__mcrypt_set_state
 #define _end_mcrypt cfb_LTX__end_mcrypt
--- modules/modes/ecb.c.orig	Fri May  4 18:37:39 2001
+++ modules/modes/ecb.c	Fri May  4 18:39:04 2001
@@ -22,7 +22,7 @@
 
 /* EBC MODE */
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _init_mcrypt ecb_LTX__init_mcrypt
 #define _end_mcrypt ecb_LTX__end_mcrypt
 #define _mcrypt ecb_LTX__mcrypt
--- modules/modes/nofb.c.orig	Fri May  4 18:37:39 2001
+++ modules/modes/nofb.c	Fri May  4 18:38:45 2001
@@ -20,7 +20,7 @@
 #include "../../lib/libdefs.h"
 #include "../../lib/mcrypt_modules.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _init_mcrypt nofb_LTX__init_mcrypt
 #define _mcrypt_set_state nofb_LTX__mcrypt_set_state
 #define _end_mcrypt nofb_LTX__end_mcrypt
--- modules/modes/ofb.c.orig	Fri May  4 18:37:39 2001
+++ modules/modes/ofb.c	Fri May  4 18:38:25 2001
@@ -20,7 +20,7 @@
 #include "../../lib/libdefs.h"
 #include "../../lib/mcrypt_modules.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _init_mcrypt ofb_LTX__init_mcrypt
 #define _mcrypt_set_state cfb_LTX__mcrypt_set_state
 #define _end_mcrypt ofb_LTX__end_mcrypt
--- modules/modes/stream.c.orig	Fri May  4 18:37:39 2001
+++ modules/modes/stream.c	Fri May  4 18:38:09 2001
@@ -20,7 +20,7 @@
 #include "../../lib/libdefs.h"
 #include "../../lib/mcrypt_modules.h"
 
-#ifdef USE_LTDL
+#if defined(USE_LTDL) && !defined(__FreeBSD__)
 #define _init_mcrypt stream_LTX__init_mcrypt
 #define _mcrypt_set_state stream_LTX__mcrypt_set_state
 #define _end_mcrypt stream_LTX__end_mcrypt

--XsQoSWH+UP9D9v3l--

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010504185946.A850>