summary refs log tree commit diff
path: root/include/sys
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-10-01 15:53:52 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-10-01 15:54:10 -0700
commitd6daff12617290d4dfb499ed8425d33a48d844ba (patch)
tree8cc815db5ac1558ecd139ec7c9cece391865b48c /include/sys
parentb68f8620561d7658b475eb512978d3c33d8a4547 (diff)
downloadglibc-d6daff12617290d4dfb499ed8425d33a48d844ba.tar.gz
glibc-d6daff12617290d4dfb499ed8425d33a48d844ba.tar.xz
glibc-d6daff12617290d4dfb499ed8425d33a48d844ba.zip
Hide __readv and __writev [BZ #18822]
Hide internal __readv and __writev functions to allow direct access
within libc.so and libc.a without using GOT nor PLT.

	[BZ #18822]
	* include/sys/uio.h (__readv): Add libc_hidden_proto.
	(__writev): Likewise.
	* misc/readv.c (__readv): Add libc_hidden_def.
	* misc/writev.c (__writev): Likewise.
	* sysdeps/posix/readv.c (__readv): Likewise.
	* sysdeps/posix/writev.c (__writev): Likewise.
	* sysdeps/unix/sysv/linux/readv.c: Include <sys/uio.h>.
	(__readv): Likewise.
	* sysdeps/unix/sysv/linux/writev.c: Include <sys/uio.h>.
	(__writev): Likewise.
Diffstat (limited to 'include/sys')
-rw-r--r--include/sys/uio.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/sys/uio.h b/include/sys/uio.h
index 20860bfd82..204c4b906d 100644
--- a/include/sys/uio.h
+++ b/include/sys/uio.h
@@ -5,8 +5,10 @@
 /* Now define the internal interfaces.  */
 extern ssize_t __readv (int __fd, const struct iovec *__iovec,
 			int __count);
+libc_hidden_proto (__readv)
 extern ssize_t __writev (int __fd, const struct iovec *__iovec,
 			 int __count);
+libc_hidden_proto (__writev)
 
 /* Used for p{read,write}{v64}v2 implementation.  */
 libc_hidden_proto (preadv)