Control: tags -1 + patch On 2015-06-05 19:17:07 [+0200], Guillem Jover wrote: > it should not. So I think that, to avoid false-positives, only undefined > symbols should be considered.
Added a patch for this. Another limition could be to look for symbols from GLIBC. With what you suggested inetutils-ftpd gets off the list. > Thanks, > Guillem Sebastian
>From b5d7e4af568f87d22b62faa2b7f7f3a58837d389 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior <sebast...@breakpoint.cc> Date: Wed, 22 Jul 2015 13:06:28 +0200 Subject: [PATCH] binaries: limit LFS symbol checks to unresolved symbols Guillem reported in BTS [0] that inetutils-ftpd is marked as binary-file-built-without-LFS-support while it has LFS support. The false-positive comes from a local symbol. This patch limits the symbol checks to symbols which are unresolved (i.e. not local, come from an external libary) as suggested by Guillem. Another (additional) limitation could be to limit the version to ^GLIBC_ as all the symbols for the LFS check come from GLIBC. With this patch the inetutils-ftpd package is no longer marked with binary-file-built-without-LFS-support while havp is still marked. [0] https://bugs.debian.org/787853 Signed-off-by: Sebastian Andrzej Siewior <sebast...@breakpoint.cc> --- checks/binaries.pm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/checks/binaries.pm b/checks/binaries.pm index 4b068dcd5c36..c22ed4bd1392 100644 --- a/checks/binaries.pm +++ b/checks/binaries.pm @@ -152,9 +152,10 @@ sub run { my ($foo, $sec, $sym) = @{$symbol}; unless (defined $has_lfs) { - if ($LFS_SYMBOLS->known($sym)) { + if ($foo =~ /^UND$/ and $LFS_SYMBOLS->known($sym)) { # Using a 32bit only interface call, some parts of the - # binary are built without LFS. + # binary are built without LFS. If the symbol is defined + # within the binary then we ignore it $has_lfs = 0; } } -- 2.1.4