tech-userlevel archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

does OPENSSL_VERSION_NUMBER lie on netbsd-4?



I've been hacking away on the CVS trunk version of Cyrus IMAPd today and
I've encountered a linker error because of an undefined OpenSSL function:

gcc -L/usr/lib -R/usr/lib -L/usr/pkg/lib -R/usr/pkg/lib  -L/usr/pkg/lib   -o 
imapd \
         ../master/service.o pushstats.o imapd.o proxy.o imap_proxy.o index.o 
version.o mutex_fake.o \
        libimap.a ../lib/libcyrus.a ../lib/libcyrus_min.a  -L/usr/pkg/lib  
-R/usr/pkg/lib -lsasl2   -lresolv -lfl   -L/usr/pkg/lib  -R/usr/pkg/lib -ldb4 
-lssl -lcrypto  ../com_err/et/libcom_err.a 
libimap.a(tls.o): In function `tls_init_serverengine':
/work/woods/m-cyrus-imapd/imap/tls.c:237: undefined reference to 
`get_rfc2409_prime_1024'


Turns out there's some code in imap/tls.c which calls this undefined
function and which is wrapped in the following:

        #if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)

On my netbsd-4 server my OS-supplied OpenSSL headers include the line:

        #define OPENSSL_VERSION_NUMBER  0x0090805fL

However neither /usr/lib/libssl.a nor /usr/lib/libcrypto.a contain
anything even related to the undefined function:

        15:38 [17] $ nm /usr/lib/libssl.a /usr/lib/libcrypto.a | fgrep 2409
        15:38 [18] $ 

What's up here?  Is the OpenSSL included in netbsd-4 not really the full
release its headers claim to be?  A quick search on google gives no
results suggesting anyone else has had this problem on any other
platform (this code has been in the Cyrus repository since the end of
September last year).

-- 
                                                Greg A. Woods

H:+1 416 218-0098 W:+1 416 489-5852 x122 VE3TCP RoboHack 
<woods%robohack.ca@localhost>
Planix, Inc. <woods%planix.com@localhost>       Secrets of the Weird 
<woods%weird.com@localhost>

Attachment: pgprxeuy32w4T.pgp
Description: PGP signature



Home | Main Index | Thread Index | Old Index