[Rpm-maint] apparently broken 'rpm2cpio' in rpm-4.9.*

Panu Matilainen pmatilai at laiskiainen.org
Tue Sep 6 08:14:34 UTC 2011


On 08/22/2011 12:14 AM, Sergei Steshenko wrote:
> Hello,
>
> I've built rpm-4.9.0, rpm-4.9.1, rpm-4.9.1.1 and using
> 'rpm2cpio' from them running a command line like this:
>
> /mnt/sdb8/sergei/AFSWD_debug/20110601/rpm-4.9.0/binsh/rpm2cpio ../java-1_6_0-sun-1.6.0.u26-0.2.1.i586.rpm | /home/sergei/junk/cpio-2.11/src/cpio -ivd 2>&1 | less
>
> I'm getting a lot of error messages like these:
>
> /home/sergei/junk/cpio-2.11/src/cpio: Malformed number
> /home/sergei/junk/cpio-2.11/src/cpio: warning: skipped 7892 bytes of junk
> .
>
> The messages are followed gibberish on some lines.
>
>
> Using 'rpm2cpio' of (apparently) version 4.4.2.3 does not cause
> these messages and the command line works as expected. So the Java RPM
> I'm using a tes t case is apaprently OK.
>
> This 'rpm2cpio' version 4.4.2.3 is a stock one on my machine.
>
>
> Since I'm not hacking the source most likely it's a problem
> with 'rpm' source.

More likely your self-built rpm is lacking XZ/LZMA support, which the 
distro's rpm (AFAICT the java package in question comes from OpenSUSE) 
does have:

[pmatilai at localhost tmp]$ rpm -qp --nosignature --qf 
"%{payloadcompressor}\n" java-1_6_0-sun-1.6.0.u26-0.2.1.i586.rpm
lzma

rpm2cpio makes no attempt at verifying whether the payload compression 
is supported by it (and yes that can be considered a bug), hence you get 
garbage.

	- Panu -


More information about the Rpm-maint mailing list