Subject: lib/12964: libcrypto_{idea,rc5} not useful if application calls EVP_idea_*
To: None <gnats-bugs@gnats.netbsd.org>
From: None <itojun@itojun.org>
List: netbsd-bugs
Date: 05/17/2001 11:03:45
>Number: 12964
>Category: lib
>Synopsis: libcrypto_{idea,rc5} not useful if application calls EVP_idea_*
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: lib-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Wed May 16 19:16:00 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator: Jun-ichiro itojun Hagino
>Release: 1.5V, and 1.5.[0-9]
>Organization:
itojun.org
>Environment:
System: NetBSD starfruit.itojun.org 1.5V NetBSD 1.5V (STARFRUIT) #477: Sat May 12 05:32:45 JST 2001 itojun@starfruit.itojun.org:/usr/home/itojun/NetBSD/src/sys/arch/i386/compile/STARFRUIT i386
Architecture: i386
Machine: i386
>Description:
src/lib/libcrypto_{idea,rc5} are supplied so that people can use
IDEA/RC5 applications, if they are okay with licensing twists.
however, due to library dependency issues, it is not possible when
application calls EVP_idea_* and such. if the application links
against e_idea.o (in libcrypto) idea_* functions will get resolved
inside libcrypto, and libcrypto_idea will not be visited.
>How-To-Repeat:
% nm e_idea.o
e_idea.o:
U EVP_CIPHER_get_asn1_iv
U EVP_CIPHER_set_asn1_iv
000000c8 T EVP_idea_cbc
000000d4 T EVP_idea_cfb
000000ec T EVP_idea_ecb
000000e0 T EVP_idea_ofb
U idea_cbc_encrypt
U idea_cfb64_encrypt
U idea_ecb_encrypt
U idea_ofb64_encrypt
U idea_set_decrypt_key
U idea_set_encrypt_key
>Fix:
not sure.
(1) remove all idea_* function from libcrypto, and bump libcrypto
major again. programs with idea/rc5 will never link successfully
if the user do not specify libcrypto_{idea,rc5} in his compilation
command line.
(2) have idea_* functions that would dynamically load
/usr/lib/libcrypto_idea.so if certain conditions are satisfied.
>Release-Note:
>Audit-Trail:
>Unformatted: