Bug#1003248: E: "binary-with-bad-dynamic-table" and W: "elf-error In ELF header" issued for foreign-arch binaries
Package: lintian
Version: 2.114.0
Severity: normal
I have a package (libopencsd) which has aarch64 elf binaries in some of its test-cases.
e.g https://sources.debian.org/src/libopencsd/1.1.1-2/decoder/tests/snapshots/juno-uname-001/uname.bin/
https://sources.debian.org/src/libopencsd/1.1.1-2/decoder/tests/snapshots/juno-uname-001/vdso.bin/
Lintian gives both an error and a warning about this file:
E: libopencsd source: binary-with-bad-dynamic-table [decoder/tests/snapshots/juno-uname-001/uname.bin]
W: libopencsd source: elf-error In ELF header: Reading 1728 bytes extends past end of file for section headers [decoder/tests/snapshots/juno-uname-001/uname.bin]
It also gives the warning about another file:
W: libopencsd source: elf-error In ELF header: Reading 896 bytes extends past end of file for section headers [decoder/tests/snapshots/juno-uname-001/vdso.bin]
nd then complains some more in a similar vein
W: libopencsd source: elf-error In ELF header: Section headers are not available! [decoder/tests/snapshots/juno-uname-001/uname.bin]
W: libopencsd source: elf-error In ELF header: Section headers are not available! [decoder/tests/snapshots/juno-uname-001/vdso.bin]
W: libopencsd source: elf-error In program headers: the dynamic segment offset + size exceeds the size of the file [decoder/tests/snapshots/juno-uname-001/uname.bin]
For some reason I don't understand it does not complain about the same binaries in other test-cases:
https://sources.debian.org/src/libopencsd/1.1.1-2/decoder/tests/snapshots/juno-uname-002/uname.bin/
https://sources.debian.org/src/libopencsd/1.1.1-2/decoder/tests/snapshots/juno-uname-002/vdso.bin/
https://sources.debian.org/src/libopencsd/1.1.1-2/decoder/tests/snapshots/test-file-mem-offsets/uname.bin/
https://sources.debian.org/src/libopencsd/1.1.1-2/decoder/tests/snapshots/test-file-mem-offsets/vdso.bin/
I presume that if binutils for the foreign arch was installed this
error would not appear. I think that lintian should either install
the right tools for running this test on foreign-arch binaries, or it
should not try to check foregn-arch binaries.
There is a separate issue about whether these files count as
'source-is-missing' binaries, but that's independent of the above
issue, which seems to me to be a lintian bug.
--
Wookey
Reply to: