[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Problems running tarsnap-keygen
On 10 Oct 2009, at 00:04, Colin Percival wrote:
James Montgomerie wrote:
There's a version of openssl in /usr/sfw which is
what was being linked to.  I manually edited the post-cofigure  
Makefile
to use /usr/local in place of /usr/sfw everywhere, recompiled, and
tarsnap-keygen ran successfully.
I'm no autoconf expoert, so I'm not quite sure where /usr/sfw is  
being
picked up from. [...]
I'm afraid to say that /usr/sfw is being used because I told  
autoconf to
use it -- until recently OpenSSL was installed on opensolaris into / 
usr/sfw
and Tarsnap had the opposite problem... it was looking in /usr/local  
and
not finding OpenSSL.
I'll see if I can figure out how to make Tarsnap use the right  
version of
OpenSSL if two are installed while not breaking the case of OpenSSL  
installed
into /usr/sfw (but not anywhere else).  Can you give me a list of  
the exact
paths of the OpenSSL files (both those in /usr/sfw and those  
elsewhere)?
It's possible that my host (Joyent) is installing a local copy of  
OpenSSL in /usr/local/, and that the one in /usr/sfw/ is the Sun- 
provided one.  From my standpoint (which is not one that's  
particularly familiar with OpenSSL /or/ Sloaris), I'd say it look like  
Sun supplied the software in /usr/sfw/ and that that copy has been  
replaced with one installed into /usr/local/, but for the libraries  
in /usr/sfw/ which have been left to allow Sun-supplied software that  
links to them to continue to run.
As I say, I'm not familiar with OpenSSL's files, so I've tried to find  
out what's installed, but if there's something you're looking for that  
I haven't mentioned, the chance is quite high that it's there and I  
just didn't find it.  Having said that:
There's an openssl binary in /usr/local/bin, but not one in /usr/sfw/ 
bin.
There's what looks like a full compliment of openssl headers in /usr/ 
local:
[:~] things$ ls /usr/local/include/openssl/
aes.h           des.h           idea.h          pem2.h          ssl2.h
asn1_mac.h      dh.h            krb5_asn.h      pkcs12.h        ssl23.h
asn1.h          dsa.h           kssl.h          pkcs7.h         ssl3.h
asn1t.h         dso.h           lhash.h         pq_compat.h     stack.h
bio.h           dtls1.h         md2.h           pqueue.h        store.h
blowfish.h      e_os2.h         md4.h           rand.h           
symhacks.h
bn.h            ebcdic.h        md5.h           rc2.h           tls1.h
buffer.h        ec.h            obj_mac.h       rc4.h           tmdiff.h
cast.h          ecdh.h          objects.h       rc5.h           txt_db.h
comp.h          ecdsa.h         ocsp.h          ripemd.h         
ui_compat.h
conf_api.h      engine.h        opensslconf.h   rsa.h           ui.h
conf.h          err.h           opensslv.h      safestack.h      
x509_vfy.h
crypto.h        evp.h           ossl_typ.h      sha.h           x509.h
des_old.h       hmac.h          pem.h           ssl.h           x509v3.h
Interestingly, there appear to be no headers in /usr/sfw for openssl  
(I guess they were being picked up from /usr/local/include when I was  
compiling Tarsnap and it was linking against the /usr/sfw libraries):
[:~] things$ ls /usr/sfw/include/
ansidecl.h   bfd.h        bfdlink.h    c++/         dis-asm.h     
symcat.h     tcpd.h
I don't know which libraries come with OpenSSL, so I very  
unscientifically used grep to find references in the lib dirs:
[:/usr/local/lib] things$ grep openssl  *
Binary file libc-client_pic.a matches
Binary file libc-client.a matches
Binary file libc-client.so matches
Binary file libc-client.so.5 matches
Binary file libc-client.so.5.0.0 matches
Binary file libcrypto.a matches
Binary file libcrypto.so matches
Binary file libcrypto.so.0.9.7 matches
Binary file libcrypto.so.0.9.8 matches
Binary file libct.a matches
Binary file libct.so matches
Binary file libct.so.4 matches
Binary file libct.so.4.0.0 matches
Binary file libneon.a matches
Binary file libneon.so matches
Binary file libneon.so.26 matches
Binary file libneon.so.26.0.3 matches
Binary file libnetsnmpmibs.a matches
Binary file libnetsnmpmibs.so matches
Binary file libnetsnmpmibs.so.15 matches
Binary file libnetsnmpmibs.so.15.1.0 matches
Binary file libnetsnmpmibs.so.15.1.2 matches
Binary file libssh2.a matches
Binary file libssh2.so matches
Binary file libssh2.so.1 matches
Binary file libssh2.so.1.0.0 matches
Binary file libsybdb.a matches
Binary file libsybdb.so matches
Binary file libsybdb.so.5 matches
Binary file libsybdb.so.5.0.0 matches
[:/usr/sfw/lib] things$ grep openssl *
Binary file libcrypto.so matches
Binary file libcrypto.so.0.9.8 matches
Binary file libssl.so matches
Binary file libssl.so.0.9.8 matches
Binary file llib-lcrypto.ln matches
Binary file llib-lssl.ln matches
Similarly named files as above were also in /usr/sfw/lib/amd64 (to my  
knowledge though, this server is running 32-bit).
There were also a lot of hits in /usr/sfw/lib/llib-lcrypto, which  
appears to be a C header file #including headers for all the OpenSSL  
components, and /usr/sfw/lib/llib-lssl, which is the same, but only  
#includes the ssl*.h headers.  Comments in these files look like they  
were created by Sun, or a Sun-provided system (they look auto- 
generated, and are "Copyright 2005 Sun Microsystems, Inc").
Let me know if you need more information, I'm happy to provide  
anything I can.
Jamie