about summary refs log tree commit diff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-10-01 16:09:20 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-10-01 16:09:38 -0700
commita0aef7830eb0698f72129b647be8c00cdf0c7938 (patch)
treef649980f9d20665da5916e17915bd31414a24471
parent3ee8209be761210dc6a8f121fd79231e7f364a9b (diff)
downloadglibc-a0aef7830eb0698f72129b647be8c00cdf0c7938.tar.gz
glibc-a0aef7830eb0698f72129b647be8c00cdf0c7938.tar.xz
glibc-a0aef7830eb0698f72129b647be8c00cdf0c7938.zip
Move hidden_proto (__dl_iterate_phdr) to include/link.h [BZ #18822]
__dl_iterate_phdr is hidden and should be accessed directly within
libc.so and libc.a without using GOT nor PLT.

	[BZ #18822]
	* elf/dl-iteratephdr.c (hidden_proto (__dl_iterate_phdr)): Moved
	to ...
	* include/link.h (hidden_proto (__dl_iterate_phdr)): Here.
-rw-r--r--ChangeLog7
-rw-r--r--elf/dl-iteratephdr.c1
-rw-r--r--include/link.h1
3 files changed, 8 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 396cf74ef8..33177f2cee 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,13 @@
 2017-10-01  H.J. Lu  <hongjiu.lu@intel.com>
 
 	[BZ #18822]
+	* elf/dl-iteratephdr.c (hidden_proto (__dl_iterate_phdr)): Moved
+	to ...
+	* include/link.h (hidden_proto (__dl_iterate_phdr)): Here.
+
+2017-10-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+	[BZ #18822]
 	* sysdeps/unix/sysv/linux/getpt.c (__bsd_getpt): Add
 	attribute_hidden.
 
diff --git a/elf/dl-iteratephdr.c b/elf/dl-iteratephdr.c
index ddd5bde831..88473e790b 100644
--- a/elf/dl-iteratephdr.c
+++ b/elf/dl-iteratephdr.c
@@ -28,7 +28,6 @@ cancel_handler (void *arg __attribute__((unused)))
   __rtld_lock_unlock_recursive (GL(dl_load_write_lock));
 }
 
-hidden_proto (__dl_iterate_phdr)
 int
 __dl_iterate_phdr (int (*callback) (struct dl_phdr_info *info,
 				    size_t size, void *data), void *data)
diff --git a/include/link.h b/include/link.h
index eeb5f4d53b..3e1b2aefb7 100644
--- a/include/link.h
+++ b/include/link.h
@@ -341,6 +341,7 @@ struct link_map
 extern int __dl_iterate_phdr (int (*callback) (struct dl_phdr_info *info,
 					       size_t size, void *data),
 			      void *data);
+hidden_proto (__dl_iterate_phdr)
 
 /* We use this macro to refer to ELF macros independent of the native
    wordsize.  `ELFW(R_TYPE)' is used in place of `ELF32_R_TYPE' or