[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1068304: lintian: static-pie misdetected as libraries



Package: lintian
Version: 2.117.0
Severity: normal
X-Debbugs-Cc: tg@mirbsd.de

lintian misdetects static-pie binaries such as these which can now
be created by musl, but TTBOMK also from glibc:

W: mksh: mismatched-override statically-linked-binary [bin/lksh] [usr/share/lintian/overrides/mksh:2]

(no longer matches because it’s no longer recognised as statically linked)

W: mksh: shared-library-lacks-prerequisites [bin/lksh]

static-pie executables look like this:

t: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, with debug_info, not stripped
(bullseye file(1))

t: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), static-pie linked, with debug_info, not stripped
(sid file(1))

By contrast, nōn-PIE static executables look like this:

/bin/lksh: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, stripped
(both versions)

And shared libraries look like this:

t.dll: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, with debug_info, not stripped
(both versions)

My guess is that lintian looks at 'dynamically linked' either
from inspecting file(1) output or by doing the same thing that
bullseye’s file(1) did to determine whether an object is shared
or not, without taking into account whether the object is an
executable or not, which the ELF headers have flags for.




-- System Information:
Debian Release: trixie/sid
  APT prefers unstable-debug
  APT policy: (500, 'unstable-debug'), (500, 'unreleased'), (500, 'buildd-unstable'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386, x32

Kernel: Linux 5.10.0-26-amd64 (SMP w/8 CPU threads)
Kernel taint flags: TAINT_FIRMWARE_WORKAROUND
Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/lksh
Init: sysvinit (via /sbin/init)

Versions of packages lintian depends on:
ii  binutils                        2.42-4
ii  bzip2                           1.0.8-5.1
ii  diffstat                        1.66-1
ii  dpkg                            1.22.6
ii  dpkg-dev                        1.22.6
ii  file                            1:5.45-3
ii  gettext                         0.21-14+b1
ii  gpg                             2.2.40-3
ii  intltool-debian                 0.35.0+20060710.6
ii  iso-codes                       4.16.0-1
ii  libapt-pkg-perl                 0.1.40+b5
ii  libarchive-zip-perl             1.68-1
ii  libberkeleydb-perl              0.64-2+b3
ii  libcapture-tiny-perl            0.48-2
ii  libclass-xsaccessor-perl        1.19-4+b3
ii  libclone-perl                   0.46-1+b2
ii  libconfig-tiny-perl             2.30-1
ii  libconst-fast-perl              0.014-2
ii  libcpanel-json-xs-perl          4.37-1+b2
ii  libdata-dpath-perl              0.59-1
ii  libdata-validate-domain-perl    0.10-1.1
ii  libdata-validate-uri-perl       0.07-3
ii  libdevel-size-perl              0.83-2+b3
pn  libdigest-sha-perl              <none>
ii  libdpkg-perl                    1.22.6
ii  libemail-address-xs-perl        1.05-1+b3
ii  libencode-perl                  3.21-1+b1
ii  libfile-basedir-perl            0.09-2
ii  libfile-find-rule-perl          0.34-3
ii  libfont-ttf-perl                1.06-2
ii  libhtml-html5-entities-perl     0.004-3
ii  libhtml-tokeparser-simple-perl  3.16-4
ii  libio-interactive-perl          1.025-1
ii  libipc-run3-perl                0.049-1
ii  libjson-maybexs-perl            1.004005-1
ii  liblist-compare-perl            0.55-2
ii  liblist-someutils-perl          0.59-1
ii  liblist-utilsby-perl            0.12-2
ii  libmldbm-perl                   2.05-4
ii  libmoo-perl                     2.005005-1
ii  libmoox-aliases-perl            0.001006-2
ii  libnamespace-clean-perl         0.27-2
ii  libpath-tiny-perl               0.144-1
ii  libperlio-gzip-perl             0.20-1+b3
ii  libperlio-utf8-strict-perl      0.010-1+b2
ii  libproc-processtable-perl       0.636-1+b2
ii  libregexp-wildcards-perl        1.05-3
ii  libsereal-decoder-perl          5.004+ds-1+b2
ii  libsereal-encoder-perl          5.004+ds-1+b2
ii  libsort-versions-perl           1.62-3
ii  libsyntax-keyword-try-perl      0.29-2
ii  libterm-readkey-perl            2.38-2+b3
ii  libtext-levenshteinxs-perl      0.03-5+b3
ii  libtext-markdown-discount-perl  0.16-1+b2
ii  libtext-xslate-perl             3.5.9-2
ii  libtime-duration-perl           1.21-2
ii  libtime-moment-perl             0.44-2+b3
ii  libtimedate-perl                2.3300-2
ii  libunicode-utf8-perl            0.62-2+b2
ii  liburi-perl                     5.28-1
ii  libwww-mechanize-perl           2.18-1
ii  libwww-perl                     6.77-1
ii  libxml-libxml-perl              2.0207+dfsg+really+2.0134-1+b3
ii  libyaml-libyaml-perl            0.89+ds-1+b1
ii  lzip [lzip-decompressor]        1.24.1-1
ii  lzop                            1.04-2
ii  man-db                          2.12.0-4
ii  patchutils                      0.4.2-1
ii  perl [libencode-perl]           5.38.2-3.2
ii  t1utils                         1.41-4
ii  unzip                           6.0-28
ii  xz-utils                        5.6.1+really5.4.5-1

lintian recommends no packages.

Versions of packages lintian suggests:
pn  binutils-multiarch     <none>
pn  libtext-template-perl  <none>

-- no debconf information

Reply to: