public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
* [PATCH 0/4] Avoid malloc symbol interposition in the dynamic loader [BZ #25486]
@ 2020-02-08 19:01 Florian Weimer
  2020-02-08 19:01 ` [PATCH 2/4] elf: Extract _dl_sym_post, _dl_sym_find_caller_map from elf/dl-sym.c Florian Weimer
                   ` (5 more replies)
  0 siblings, 6 replies; 12+ messages in thread
From: Florian Weimer @ 2020-02-08 19:01 UTC (permalink / raw)
  To: libc-alpha

I initially wanted to close this bug, but Carlos suggested to treat it
as an RFE.  The changes seem a net improvement to me.

This does not completely resolve the issue because we use symbol
interposition for other, more obscure things.

Florian Weimer (4):
  elf: Introduce the rtld-stubbed-symbols makefile variable
  elf: Extract _dl_sym_post, _dl_sym_find_caller_map from elf/dl-sym.c
  Remove weak declaration of free from <inline-hashtab.h>
  ld.so: Do not export free/calloc/malloc/realloc functions [BZ #25486]

 elf/Makefile                                  |  26 +++--
 elf/Versions                                  |   3 -
 elf/dl-lookup.c                               |   4 +-
 elf/dl-minimal.c                              |  96 +++++++++++++---
 elf/dl-sym-post.h                             | 106 ++++++++++++++++++
 elf/dl-sym.c                                  |  86 +-------------
 elf/rtld.c                                    |  12 ++
 include/inline-hashtab.h                      |  15 +--
 include/libc-symbols.h                        |   9 +-
 include/malloc.h                              |   2 +
 include/rtld-malloc.h                         |  85 ++++++++++++++
 include/stdlib.h                              |   2 +
 sysdeps/generic/localplt.data                 |   6 -
 sysdeps/mach/hurd/i386/ld.abilist             |   4 -
 sysdeps/mach/hurd/i386/localplt.data          |   6 -
 sysdeps/unix/sysv/linux/aarch64/ld.abilist    |   4 -
 sysdeps/unix/sysv/linux/aarch64/localplt.data |   6 -
 sysdeps/unix/sysv/linux/alpha/ld.abilist      |   4 -
 sysdeps/unix/sysv/linux/alpha/localplt.data   |   6 -
 sysdeps/unix/sysv/linux/arm/be/ld.abilist     |   4 -
 sysdeps/unix/sysv/linux/arm/le/ld.abilist     |   4 -
 sysdeps/unix/sysv/linux/arm/localplt.data     |   6 -
 sysdeps/unix/sysv/linux/csky/ld.abilist       |   4 -
 sysdeps/unix/sysv/linux/csky/localplt.data    |   6 -
 sysdeps/unix/sysv/linux/hppa/ld.abilist       |   4 -
 sysdeps/unix/sysv/linux/hppa/localplt.data    |   6 -
 sysdeps/unix/sysv/linux/i386/ld.abilist       |   4 -
 sysdeps/unix/sysv/linux/i386/localplt.data    |   6 -
 sysdeps/unix/sysv/linux/ia64/ld.abilist       |   4 -
 sysdeps/unix/sysv/linux/ia64/localplt.data    |   6 -
 .../unix/sysv/linux/m68k/coldfire/ld.abilist  |   4 -
 .../sysv/linux/m68k/coldfire/localplt.data    |   6 -
 .../unix/sysv/linux/m68k/m680x0/ld.abilist    |   4 -
 .../unix/sysv/linux/m68k/m680x0/localplt.data |   6 -
 sysdeps/unix/sysv/linux/microblaze/ld.abilist |   4 -
 .../unix/sysv/linux/microblaze/localplt.data  |   6 -
 .../unix/sysv/linux/mips/mips32/ld.abilist    |   4 -
 .../sysv/linux/mips/mips64/n32/ld.abilist     |   4 -
 .../sysv/linux/mips/mips64/n64/ld.abilist     |   4 -
 sysdeps/unix/sysv/linux/nios2/ld.abilist      |   4 -
 sysdeps/unix/sysv/linux/nios2/localplt.data   |   6 -
 .../linux/powerpc/powerpc32/fpu/localplt.data |   6 -
 .../sysv/linux/powerpc/powerpc32/ld.abilist   |   4 -
 .../powerpc/powerpc32/nofpu/localplt.data     |   6 -
 .../linux/powerpc/powerpc64/be/ld.abilist     |   4 -
 .../linux/powerpc/powerpc64/le/ld.abilist     |   4 -
 .../linux/powerpc/powerpc64/localplt.data     |   6 -
 sysdeps/unix/sysv/linux/riscv/localplt.data   |   6 -
 sysdeps/unix/sysv/linux/riscv/rv64/ld.abilist |   4 -
 sysdeps/unix/sysv/linux/s390/localplt.data    |   6 -
 .../unix/sysv/linux/s390/s390-32/ld.abilist   |   4 -
 .../unix/sysv/linux/s390/s390-64/ld.abilist   |   4 -
 sysdeps/unix/sysv/linux/sh/be/ld.abilist      |   4 -
 sysdeps/unix/sysv/linux/sh/le/ld.abilist      |   4 -
 sysdeps/unix/sysv/linux/sh/localplt.data      |   6 -
 .../unix/sysv/linux/sparc/sparc32/ld.abilist  |   4 -
 .../sysv/linux/sparc/sparc32/localplt.data    |   6 -
 .../unix/sysv/linux/sparc/sparc64/ld.abilist  |   4 -
 .../sysv/linux/sparc/sparc64/localplt.data    |   6 -
 sysdeps/unix/sysv/linux/x86_64/64/ld.abilist  |   4 -
 sysdeps/unix/sysv/linux/x86_64/x32/ld.abilist |   4 -
 sysdeps/x86_64/localplt.data                  |   6 -
 62 files changed, 326 insertions(+), 364 deletions(-)
 create mode 100644 elf/dl-sym-post.h
 create mode 100644 include/rtld-malloc.h

-- 
2.24.1

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2020-02-24 11:53 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-08 19:01 [PATCH 0/4] Avoid malloc symbol interposition in the dynamic loader [BZ #25486] Florian Weimer
2020-02-08 19:01 ` [PATCH 2/4] elf: Extract _dl_sym_post, _dl_sym_find_caller_map from elf/dl-sym.c Florian Weimer
2020-02-14 22:36   ` Carlos O'Donell
2020-02-08 19:01 ` [PATCH 3/4] Remove weak declaration of free from <inline-hashtab.h> Florian Weimer
2020-02-14 22:36   ` Carlos O'Donell
2020-02-08 19:01 ` [PATCH 1/4] elf: Introduce the rtld-stubbed-symbols makefile variable Florian Weimer
2020-02-14 22:36   ` Carlos O'Donell
2020-02-08 19:02 ` [PATCH 4/4] ld.so: Do not export free/calloc/malloc/realloc functions [BZ #25486] Florian Weimer
2020-02-14 22:36   ` Carlos O'Donell
2020-02-24 11:53   ` Florian Weimer
2020-02-14 22:36 ` [PATCH 0/4] Avoid malloc symbol interposition in the dynamic loader " Carlos O'Donell
2020-02-17 12:26 ` Lucas A. M. Magalhaes

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).