Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 739014

Summary: app-misc/pax-utils does not support ld.so.cache format of sys-libs/glibc-2.32
Product: Gentoo Linux Reporter: Sergei Trofimovich (RETIRED) <slyfox>
Component: Current packagesAssignee: SpanKY <vapier>
Status: RESOLVED FIXED    
Severity: normal CC: bertrand, herrtimson, polynomial-c, sam, toolchain, whissi
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://sourceware.org/bugzilla/show_bug.cgi?id=23668
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 736174    

Description Sergei Trofimovich (RETIRED) gentoo-dev 2020-08-25 22:50:22 UTC
Noticed by Whissi:

$ scanelf -L -n -q -F '%n #F' /bin/bash
libreadline.so.8,libtinfo.so.6,libc.so.6

These should report absolute paths. glibc-2.32 enabled new ld.so.cache format. 

We'll need to add support for it around https://gitweb.gentoo.org/proj/pax-utils.git/tree/paxldso.c#n179
Comment 1 tt_1 2020-11-08 07:07:00 UTC
does this have any real consequences? glibc-2.32-r2 is stable now, can user upgrade or rather wait for pax-utils update?
Comment 2 Sergei Trofimovich (RETIRED) gentoo-dev 2020-11-08 11:28:00 UTC
I'm not aware of any code that uses it for critical purposes.
Comment 3 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2020-11-08 11:28:36 UTC
(In reply to Sergei Trofimovich from comment #2)
> I'm not aware of any code that uses it for critical purposes.

Yeah, the only issue is for developers. We use it for some of our reverse dependency scripts.
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-01-27 15:22:16 UTC
Manually generating the cache with the legacy/compat format works for now:
$ ldconfig -c compat

$ ~/bin/rdeps.sh /usr/bin/install
sys-apps/acl:0: /lib64/libacl.so.1.1.2253
sys-apps/attr:0: /lib64/libattr.so.1.1.2448
sys-libs/glibc:2.2: /lib64/libc-2.32.so
Comment 5 Larry the Git Cow gentoo-dev 2021-04-16 19:03:35 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/proj/pax-utils.git/commit/?id=c68cfa4e47d59e9903509a1d90da178a982eb27e

commit c68cfa4e47d59e9903509a1d90da178a982eb27e
Author:     Mike Frysinger <vapier@chromium.org>
AuthorDate: 2021-04-16 18:59:55 +0000
Commit:     Mike Frysinger <vapier@gentoo.org>
CommitDate: 2021-04-16 18:59:55 +0000

    paxldso: add support for "new" glibc cache format
    
    Glibc has supported a "new" cache format for a while now (almost 20
    years), but since it generated both, we didn't bother to implement
    it, only relying on the old cache format.  With glibc-2.32+ though,
    it now only outputs the new format.
    
    Rework the code so we support the old, new, and compat cache formats
    (where the new format is appended to the old one).
    
    Bug: https://bugs.gentoo.org/739014
    Signed-off-by: Mike Frysinger <vapier@gentoo.org>

 paxldso.c | 235 +++++++++++++++++++++++++++++++++++++++++++++++---------------
 1 file changed, 179 insertions(+), 56 deletions(-)

https://gitweb.gentoo.org/proj/pax-utils.git/commit/?id=1f3572f01249e929feb26309fed5c2ce7d932a86

commit 1f3572f01249e929feb26309fed5c2ce7d932a86
Author:     Mike Frysinger <vapier@chromium.org>
AuthorDate: 2021-04-16 17:00:01 +0000
Commit:     Mike Frysinger <vapier@gentoo.org>
CommitDate: 2021-04-16 17:00:01 +0000

    build: support debugging/testing object internals
    
    Add a hack so we can build individual objects as standalone programs.
    This way we can more easily poke internal static funcs to aid in the
    overall debugging/development process.
    
    Bug: https://bugs.gentoo.org/739014
    Signed-off-by: Mike Frysinger <vapier@gentoo.org>

 .gitignore |  3 +++
 Makefile   | 20 +++++++++++++++-----
 paxldso.c  | 18 ++++++++++++++++++
 3 files changed, 36 insertions(+), 5 deletions(-)