Bug 187695

Summary: rpm2cpio linked against fewer libraries
Product: [Fedora] Fedora Reporter: Ed Avis <ed>
Component: rpmAssignee: Paul Nasrat <nobody+pnasrat>
Status: CLOSED WONTFIX QA Contact: Mike McLean <mikem>
Severity: low Docs Contact:
Priority: medium    
Version: 5   
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: 2006-04-04 11:11:50 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:

Description Ed Avis 2006-04-02 20:11:11 UTC
The rpm2cpio binary included in Fedora's rpm package is linked against openssl
and neon among other libraries.  But it doesn't really need them.  (eg if you
replace these libraries with dummy symlinks to some unrelated library, rpm2cpio
will work and extract the contents of a package.)

Because rpm2cpio is an important rescue tool in the event the normal rpm program
stops working, it should not be linked against extraneous libraries.  Can you
change the build process to not use -lopenssl, etc. when linking rpm2cpio?

Comment 1 Jeff Johnson 2006-04-04 11:11:50 UTC
Use /usr/lib/rpm/rpm2cpio.sh instead.

Comment 2 Ed Avis 2006-04-04 14:03:11 UTC
>Use /usr/lib/rpm/rpm2cpio.sh instead.

Cool, didn't know about that.

Shouldn't it be installed in bin instead of lib?

Comment 3 James Olin Oden 2006-04-04 14:24:24 UTC
There are a lot of binaries/executables that are installed in /usr/lib/rpm.  
Its been this way forever.  One could argue they are misplaced, but historicaly 
they have always been there, so its kind of moot point (or maybe it not).

Also, I have a perl implementation of the same thing if you would like it.  
Pretty, much its pure perl except for the cpio part (no libcpio out there that 
was usuable that I could find; and there is now Archieve::CPIO module for perl 
either).