Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 219711 - Patch for rpmoffset (app-arch/rpm2targz) which removes rpm file size restriction
Summary: Patch for rpmoffset (app-arch/rpm2targz) which removes rpm file size restriction
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-04-29 11:58 UTC by Cyberjun
Modified: 2008-05-31 21:15 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
rpmoffset patch (rpmoffset_remove_size_restriction.patch,1.30 KB, patch)
2008-04-29 11:58 UTC, Cyberjun
Details | Diff
New patch incorporating suggestions (rpmoffset_remove_size_restriction.patch,1.31 KB, patch)
2008-05-31 17:06 UTC, Cyberjun
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Cyberjun 2008-04-29 11:58:03 UTC
Hi,

At present app-arch/rpm2targz-9.0-r6 cannot handle the new Nessus-3.2.0-es5.i386.rpm file. The newer app-arch/rpm2targz-9.0-r7 though can handle Nessus-3.2.0-es5.i386.rpm, it will probably fail for bigger rpms.

Current rpmoffset implementation looks for the magic bytes in the initial 2 or 3 MB of the input rpm file. This patch looks for the magic numbers in the whole file (unless it finds them early).  

Requesting to kindly include this patch with app-arch/rpm2targz. As preliminary tests, I have checked the following rpms with it:
1. RealPlayer-10.0.9.809-20070726.i586.rpm
2. NessusClient-3.2.0-es5.i386.rpm
3. flash-plugin-9.0.124.0-release.i386.rpm
4. Nessus-3.0.6-suse10.0.i586.rpm
5. Nessus-3.2.0-es5.i386.rpm

Related bug# for nessus-bin: 187219

Thanks,
--cyberjun

Reproducible: Always

Steps to Reproduce:
1. rpm2targz Nessus-3.2.0-es5.i386.rpm
2. 
3.

Actual Results:  
The command fails with error:
Nessus-3.2.0-es5.i386.rpm - no magic compression identifier found - skipping file


Expected Results:  
The file should get converted to .tar.gz format

emerge --info
Portage 2.1.4.4 (default-linux/x86/2007.0/desktop, gcc-4.1.2, glibc-2.6.1-r0, 2.6.24-gentoo-r4 i686)
=================================================================
System uname: 2.6.24-gentoo-r4 i686 Intel(R) Pentium(R) M processor 1.73GHz
Timestamp of tree: Thu, 24 Apr 2008 11:30:01 +0000
app-shells/bash:     3.2_p17-r1
dev-java/java-config: 1.3.7, 2.1.4
dev-lang/python:     2.4.4-r9
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium-m -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -march=pentium-m -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="collision-protect distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_EXTRA_OPTS="--progress"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 acl acpi alsa berkdb bzip2 cairo cdr cli cracklib crypt cups dbus directfb dri dvd dvdr dvdread emboss encode esd evo fam fbcon firefox gdbm gif gnome gpm gstreamer gtk hal iconv isdnlog jpeg kerberos mad midi mikmod mp3 mpeg mudflap ncurses nls nptl nptlonly ogg opengl openmp pam pcmcia pcre pdf perl png pppd python qt3support quicktime readline real reflection sdl session spell spl ssl svg tcpd tiff truetype usb vcd vorbis wifi win32codecs x86 xml xorg xv zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="i810 vesa fbdev"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS
Comment 1 Cyberjun 2008-04-29 11:58:32 UTC
Created attachment 151326 [details, diff]
rpmoffset patch
Comment 2 SpanKY gentoo-dev 2008-05-31 06:46:40 UTC
- "long int i" ... this should be size_t, not random "big" types ... and %zu in the printf format
- the three read calls in the for() init should be 1 read call before the for()
- the check "p + 2 != NULL" will obviously never evaluate to false
- check the return values of read()
Comment 3 Cyberjun 2008-05-31 17:06:39 UTC
Created attachment 154973 [details, diff]
New patch incorporating suggestions

New Patch. Implemented the suggestions.