about summary refs log tree commit diff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-08-20 10:46:47 -0700
committerAurelien Jarno <aurelien@aurel32.net>2017-12-02 22:42:31 +0100
commit89bf8ef2dba93e19385bf922fdcee87a97db768f (patch)
treeffb3d185a8f724b534e6df48851f7760d2c10780
parentbea3f92405f705684275bffee954cafe84ffb09d (diff)
downloadglibc-89bf8ef2dba93e19385bf922fdcee87a97db768f.tar.gz
glibc-89bf8ef2dba93e19385bf922fdcee87a97db768f.tar.xz
glibc-89bf8ef2dba93e19385bf922fdcee87a97db768f.zip
i386: Hide __old_glob64 [BZ #18822]
Hide internal __old_glob64 function to allow direct access within
libc.so and libc.a without using GOT nor PLT.

	[BZ #18822]
	* sysdeps/unix/sysv/linux/i386/glob64.c (__old_glob64): Add
	libc_hidden_proto and libc_hidden_def.

(cherry picked from commit 2585d7b839559e665d5723734862fbe62264b25d)
(cherry picked from commit 2b54f16a8a237a1f3e6f8b974cafda09ed75d292)
-rw-r--r--ChangeLog6
-rw-r--r--sysdeps/unix/sysv/linux/i386/glob64.c3
2 files changed, 9 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 9be47cd9ec..e7f1e0feb7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2017-08-20  H.J. Lu  <hongjiu.lu@intel.com>
+
+	[BZ #18822]
+	* sysdeps/unix/sysv/linux/i386/glob64.c (__old_glob64): Add
+	libc_hidden_proto and libc_hidden_def.
+
 2017-10-22  H.J. Lu  <hongjiu.lu@intel.com>
 
 	[BZ #21265]
diff --git a/sysdeps/unix/sysv/linux/i386/glob64.c b/sysdeps/unix/sysv/linux/i386/glob64.c
index 802c957d6c..30470c6ed9 100644
--- a/sysdeps/unix/sysv/linux/i386/glob64.c
+++ b/sysdeps/unix/sysv/linux/i386/glob64.c
@@ -53,6 +53,7 @@ libc_hidden_ver (__glob64, glob64)
 int __old_glob64 (const char *__pattern, int __flags,
 		  int (*__errfunc) (const char *, int),
 		  glob64_t *__pglob);
+libc_hidden_proto (__old_glob64);
 
 #undef dirent
 #define dirent __old_dirent64
@@ -72,5 +73,7 @@ int __old_glob64 (const char *__pattern, int __flags,
 
 #include <posix/glob.c>
 
+libc_hidden_def (__old_glob64);
+
 compat_symbol (libc, __old_glob64, glob64, GLIBC_2_1);
 #endif