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

Re: why are there /bin and /usr/bin...



On Tue, Aug 10, 2010 at 11:53:10PM +0200, Goswin von Brederlow wrote:
> Bruce Sass <bmsass@shaw.ca> writes:
> 
> > I was curious so...
> > $ for f in /bin/* /sbin/*; do if [ "`file $f | grep ELF`" != "" ] ; then 
> > if [ "`ldd $f | grep /usr`" != "" ] ; then echo `dpkg -S $f`; ldd $f; 
> > fi; fi; done
> > iputils-ping: /bin/ping6
> >         linux-gate.so.1 =>  (0xb770d000)
> >         libresolv.so.2 => /lib/i686/cmov/libresolv.so.2 (0x472dc000)
> >         libcrypto.so.0.9.8 => /usr/lib/i686/cmov/libcrypto.so.0.9.8 
> > (0x4882b000)
> 
> Note that there is /lib/libcrypt* (at least here). This is just the more
> optimized flavour the ld.so picks when the cpu supports it. But ping6
> will run fine with the basic library if /usr is missing.

libcrypt is the library that provides crypt(3).  libcrypto is the part
of OpenSSL that provides the cryptographic primitives.  They are very
different.  On my amd64 machine, libcrypto.so.0.9.8 is definitely in
/usr/lib, and that's not just the optimized version (since such a
version doesn't exist for amd64).

The code it uses from libcrypto is only MD5.  There are several
interface-compatible versions out there if it's decided that ping6
shouldn't link to libcrypto.  Colin Plumb wrote a public domain one, for
example.

-- 
brian m. carlson / brian with sandals: Houston, Texas, US
+1 832 623 2791 | http://www.crustytoothpaste.net/~bmc | My opinion only
OpenPGP: RSA v4 4096b: 88AC E9B2 9196 305B A994 7552 F1BA 225C 0223 B187

Attachment: signature.asc
Description: Digital signature


Reply to: