[cl-plus-ssl-devel] cl-plus-ssl-devel Digest, Vol 43, Issue 2

Mark Evenson evenson at panix.com
Sat Jun 2 07:24:18 UTC 2012


[…]

> Message: 1
> Date: Thu, 31 May 2012 00:52:21 +0400
> From: Anton Vodonosov<avodonosov at yandex.ru>
> To: Mark Evenson<evenson at panix.com>
> Cc: "cl-plus-ssl-devel at common-lisp.net"
> 	<cl-plus-ssl-devel at common-lisp.net>
> Subject: Re: [cl-plus-ssl-devel] cl+ssl patch for Solaris oi-151a
> Message-ID:<281001338411141 at web3e.yandex.ru>
> Content-Type: text/plain; charset=koi8-r
>
> Hello Mark, I've commited the patch.
> One follow up question: why it includes entry with absolute path - "/lib/64/libssl.so"?

In one of its better distinctions from Linux, for IA32 and its 64bit 
successors, Solaris was engineered to be a single version that when 
running on 64bit (aka x86-64) hardware would run 32bit software in a 
compatibility mode by exporting the full, unchanged Solaris IA32 32bit 
ABI from the kernel.  In practical terms for packaging software, the 
OpenSolaris distribution creates symbolic link farms that separate both 
versions of the binaries into '/lib/64/' and '/lib/32/' sub-hierarchies 
of the root filesystem.  These version should be referenced by various 
libssl-0.8.9.so type symlinks that appear in /usr/lib, /usr/sfw/lib, 
/usr/local/lib, etc. with a fair amount of variance.

Since everyone is more than likely running x86-64 architectures over 
32bit IA32 these days. I picked '/lib/64/libssl.so' as the first choice 
for finding the OpenSSL binary.  I do not have access to SPARC Solaris 
to test whether this path would work, which is why I stuffed the default 
choices after the :SOLARIS part of the conditional, meaning it should 
work "at least as well as before" for the scenarios I was unable to 
test.  Well, that will be true as long as the :solaris clause is kept in 
sync with the :unix clause.  A better mechanism to future-proof this 
changes would be to somehow allow scoped specialization with fallback 
that would fallback to using the generic strategies for :unix after 
unsuccessfully trying those specified for :solaris, but that already 
seems too complicated to be worth it.









More information about the cl-plus-ssl-devel mailing list