aboutsummaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2018-01-04 18:46:17 +0100
committerFlorian Weimer <fweimer@redhat.com>2018-01-04 18:46:24 +0100
commit82eef55f8fad3e00c53050de5d6ebea08df488b3 (patch)
treee0e1ed86b2296703182789d7f5ea607bf066ffe4 /ChangeLog
parent7abf02f3ee7627d617def77d0d6e7bea2da8d98c (diff)
downloadglibc-82eef55f8fad3e00c53050de5d6ebea08df488b3.zip
glibc-82eef55f8fad3e00c53050de5d6ebea08df488b3.tar.gz
glibc-82eef55f8fad3e00c53050de5d6ebea08df488b3.tar.bz2
elf: Support dlvsym within libc.so
This commit adds a new _dl_open_hook entry for dlvsym and implements the function using the existing dl_lookup_symbol_x function supplied by the dynamic loader. A new hook variable, _dl_open_hook2, is introduced, which should make this change suitable for backporting: For old statically linked binaries, __libc_dlvsym will always return NULL.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog25
1 files changed, 25 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 878a738..7f0c2eb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,28 @@
+2018-01-04 Florian Weimer <fweimer@redhat.com>
+
+ Add support for calling dlvsym from libc.so.
+ * include/dlfcn.h (__libc_dlvsym): Declare.
+ * elf/Makefile (tests-static-internal): Add
+ tst-libc_dlvsym-static.
+ (tests-internal): Add tst-libc_dlvsym.
+ (modules-names): Add tst-libc_dlvsym-dso.
+ (tst-libc_dlvsym, tst-libc_dlvsym-static): Link with libdl.
+ (tst-libc_dlvsym-dso.so): Link with libdl, libsupport.
+ (tst-libc_dlvsym.out, tst-libc_dlvsym-static.out): The shared
+ object tst-libc_dlvsym-dso.so needs to be built before running
+ these tests.
+ (tst-libc_dlvsym-static-ENV): Set LD_LIBRARY_PATH.
+ * elf/Versions: Export __libc_dlvsym.
+ * elf/dl-libc.c (struct do_dlvsym_args): New.
+ (do_dlvsym, __libc_dlvsym): New functions.
+ (struct dl_open_hook, _dl_open_hook): Add dlvsym member.
+ (_dl_open_hook2): New variable.
+ (__libc_register_dl_open_hook): Set it.
+ * elf/tst-libc_dlvsym-dso.c: New file.
+ * elf/tst-libc_dlvsym-static.c: Likewise.
+ * elf/tst-libc_dlvsym.c: Likewise.
+ * elf/tst-libc_dlvsym.h: Likewise.
+
2018-01-03 Samuel Thibault <samuel.thibault@ens-lyon.org>
* support/support_enter_mount_namespace.c [!CLONE_NEWNS]: Do not