Bug#249435: [dan@debian.org: Re: ELF expert's help/advice/opinion wanted for two bugs]
> ----- Forwarded message from Daniel Jacobowitz <dan@debian.org> -----
> Date: Tue, 29 Jun 2004 16:56:14 -0400
> From: Daniel Jacobowitz <dan@debian.org>
> To: debian-devel@lists.debian.org
> Subject: Re: ELF expert's help/advice/opinion wanted for two bugs
>
> On Tue, Jun 29, 2004 at 10:42:10PM +0200, Jeroen van Wolffelaar wrote:
> > objdump -T gives "Invalid operation" on some ELF files in
> > /usr/lib/debug. Is this objdump at fault? On files without a dynamic
> > section, usually objdump simply doesn't display the dynamic symbols,
> > so why does it error out here?
> >
> > Example:
> >
> > $ file /usr/lib/debug/usr/lib/gconv/ISO8859-1.so
> > ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), not
> > stripped
> > $ objdump -T /usr/lib/debug/usr/lib/gconv/ISO8859-1.so
> > (...)
> > objdump: ISO8859-1.so: Invalid operation
> > $
>
> Because that fail has a dynamic section - but it's empty. This
> confuses objdump terribly.
>
> I don't know if it's an objdump bug or not but my inclination is not.
> Files in /usr/lib/debug/ are normal libraries, but files in
> subdirectories of /usr/lib/debug generally won't be now that
> objcopy --only-keep-debug has been implemented.
So, lintian should handle the non-zero exitstatus of objdump gracefully,
introducing a 'ELF file isn't actually a sane ELF object file' lintian
error for if it occurs, but surpressing it for /usr/lib/debug/<one or
more subdirs>/*.so, since those actually are expected to not be sane ELF
objects...
I still think objdump needs to simply report the lack/emtyness of the
dynamic section though, and exit 0 on it. Nevertheless, lintian should
IMHO behave as I described here, since it's not lintian's business to
complain to unreleated packages about this. Someone who agrees objdump
should be fixed/changed, should file a bug...
--Jeroen
--
Jeroen van Wolffelaar
Jeroen@wolffelaar.nl (also for Jabber & MSN; ICQ: 33944357)
http://Jeroen.A-Eskwadraat.nl
Reply to: