Bug 165080

Summary: libbeecrypt.so requires libstdc++
Product: [Fedora] Fedora Reporter: Ralf Corsepius <rc040203>
Component: beecryptAssignee: Tomas Mraz <tmraz>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: pmatilai
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-08-22 10:46:45 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 165012    

Description Ralf Corsepius 2005-08-04 07:42:04 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.10) Gecko/20050719 Fedora/1.7.10-1.5.1

Description of problem:
Dispite beecrypt in FC is being configured with c++ disabled, beecrypt's code pulls in dependencies on c++ rsp. libstdc++.

This dependency causes all C-applications linked againt libbeecrypt.so to depend on libstdc++.

One of these applications is /bin/rpm, where this beecrypt design flaw causes severe problems:
* libbeecrypt.so introduces unneccessarily nasty dependencies for the rpm package.
* According to the FHS, /bin/rpm must not be linked against any library below /usr (The fact that /bin/rpm is using /usr/lib/libbeecrypt.so.* is a different problem).


Version-Release number of selected component (if applicable):
beecrypt-4.1.2-8

How reproducible:
Always

Steps to Reproduce:
ldd /usr/lib/libbeecrypt.so


Actual Results:  # ldd /usr/lib/libbeecrypt.so
        linux-gate.so.1 =>  (0x00f99000)
        librt.so.1 => /lib/librt.so.1 (0x00367000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00150000)
        libdl.so.2 => /lib/libdl.so.2 (0x008f5000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00e4d000)
        libm.so.6 => /lib/libm.so.6 (0x00aaa000)
        libc.so.6 => /lib/libc.so.6 (0x00162000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00c0d000)
        /lib/ld-linux.so.2 (0x008fb000)


Expected Results:  libbeecrypt should be a pure c-library.

Additional info:

IMO, the only solution is to _remove_ cppglue.cxx from the Makefile.am, rsp. upstream to completely split C from C++.

AM_CONDITIONAL'ising this will not help, because this would still will trigger libtool to (correctly) use the c++ linker instead of the c-linker and will still pull in libstdc++.

Comment 1 Christian Iseli 2007-01-22 10:59:53 UTC
This report targets the FC3 or FC4 products, which have now been EOL'd.

Could you please check that it still applies to a current Fedora release, and
either update the target product or close it ?

Thanks.

Comment 2 Ralf Corsepius 2007-08-07 05:34:06 UTC
Panu, may I draw your attention to this bug having been ignored way too long. 

It prevents being able to ship a dynamically linked rpm, because it would add a
dependency of rpm*-programs in /bin or /sbin on /usr/lib/*.


Comment 3 Panu Matilainen 2007-08-07 08:39:31 UTC
Right, we don't want rpm pulling in libstdc++ directly or indirectly. Will handle...


Comment 4 Panu Matilainen 2007-08-21 06:27:58 UTC
Well, would handle if acl's were not in the way. And over to the new owner...

Tomas, I'll send you the patches for this and some other accumulated work. BTW
I'd be willing to co-maintain beecrypt for Fedora if you don't have objections,
rpm is pretty much the only thing using beecrypt anyway.

Comment 5 Panu Matilainen 2007-08-22 10:46:45 UTC
Fixed in beecrypt-4.1.2-13 in tomorrows rawhide push.