about summary refs log tree commit diff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2015-08-19 04:40:35 -0700
committerH.J. Lu <hjl.tools@gmail.com>2015-08-19 04:41:06 -0700
commit33c898d1607c1b8dac69c76eec289980292ebfc2 (patch)
tree69ddfc938a0120556c4bede38d9c611179e1da26
parent7e58ab243de4a89c49eec1521970c2a05c9e4adc (diff)
downloadglibc-33c898d1607c1b8dac69c76eec289980292ebfc2.tar.gz
glibc-33c898d1607c1b8dac69c76eec289980292ebfc2.tar.xz
glibc-33c898d1607c1b8dac69c76eec289980292ebfc2.zip
Mark __xstatXX_conv as hidden
__xstat_conv, __xstat64_conv and __xstat32_conv are internal to glibc.
They should be marked as hidden so that they can't be called without
PLT.

	[BZ #18822]
	* sysdeps/unix/sysv/linux/xstatconv.h (__xstat_conv): Add
	attribute_hidden.
	(__xstat64_conv): Likewise.
	(__xstat32_conv): Likewise.
-rw-r--r--ChangeLog8
-rw-r--r--sysdeps/unix/sysv/linux/xstatconv.h9
2 files changed, 14 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 592575b932..83fef46af2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,14 @@
 2015-08-19  H.J. Lu  <hongjiu.lu@intel.com>
 
 	[BZ #18822]
+	* sysdeps/unix/sysv/linux/xstatconv.h (__xstat_conv): Add
+	attribute_hidden.
+	(__xstat64_conv): Likewise.
+	(__xstat32_conv): Likewise.
+
+2015-08-19  H.J. Lu  <hongjiu.lu@intel.com>
+
+	[BZ #18822]
 	* sysdeps/unix/sysv/linux/i386/makecontext.S (__makecontext):
 	Don't load %ebx when calling __setcontext.  Call __setcontext
 	with HIDDEN_JUMPTARGET.
diff --git a/sysdeps/unix/sysv/linux/xstatconv.h b/sysdeps/unix/sysv/linux/xstatconv.h
index 229e24cbe3..d21d9a0ad4 100644
--- a/sysdeps/unix/sysv/linux/xstatconv.h
+++ b/sysdeps/unix/sysv/linux/xstatconv.h
@@ -17,7 +17,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #ifndef STAT_IS_KERNEL_STAT
-extern int __xstat_conv (int vers, struct kernel_stat *kbuf, void *ubuf);
-extern int __xstat64_conv (int vers, struct kernel_stat *kbuf, void *ubuf);
+extern int __xstat_conv (int vers, struct kernel_stat *kbuf, void *ubuf)
+  attribute_hidden;
+extern int __xstat64_conv (int vers, struct kernel_stat *kbuf, void *ubuf)
+  attribute_hidden;
 #endif
-extern int __xstat32_conv (int vers, struct stat64 *kbuf, struct stat *buf);
+extern int __xstat32_conv (int vers, struct stat64 *kbuf, struct stat *buf)
+  attribute_hidden;