[56/58] Hide internal __glob64 function [BZ #18822]

Message ID CAMe9rOpe=0D2iJ-1VdhuA=V6rB3mdMS-JJADM0_7RnyAbbERtw@mail.gmail.com
State New, archived
Headers

Commit Message

H.J. Lu Oct. 2, 2017, 1:01 a.m. UTC
  On 9/1/17, H.J. Lu <hjl.tools@gmail.com> wrote:
> Hide internal __glob64 function to allow direct access within libc.so
> and libc.a without using GOT nor PLT.
>
> 	[BZ #18822]
> 	* include/glob.h (__glob64): Add libc_hidden_proto.
> 	* sysdeps/unix/sysv/linux/i386/glob64.c (__glob64): Add
> 	libc_hidden_def.
> ---

This is the patch I am checking in.  Tested with build-many-glibcs.py.
  

Patch

From 36756b2e9f73e77d2e65488080f61494eca65bc0 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
Date: Thu, 31 Aug 2017 05:38:44 -0700
Subject: [PATCH 54/56] Hide internal __glob64 function [BZ #18822]

Hide internal __glob64 function to allow direct access within libc.so
and libc.a without using GOT nor PLT.

	[BZ #18822]
	* include/glob.h (__glob64): Add libc_hidden_proto.
	* sysdeps/unix/sysv/linux/glob64.c (__glob64): Add
	libc_hidden_def.
---
 include/glob.h                   | 1 +
 sysdeps/unix/sysv/linux/glob64.c | 1 +
 2 files changed, 2 insertions(+)

diff --git a/include/glob.h b/include/glob.h
index 228fe30ca8..1d2f78793e 100644
--- a/include/glob.h
+++ b/include/glob.h
@@ -12,6 +12,7 @@  extern int __glob_pattern_p (const char *__pattern, int __quote);
 extern int __glob64 (const char *__pattern, int __flags,
 		     int (*__errfunc) (const char *, int),
 		     glob64_t *__pglob);
+libc_hidden_proto (__glob64)
 #endif
 
 #endif
diff --git a/sysdeps/unix/sysv/linux/glob64.c b/sysdeps/unix/sysv/linux/glob64.c
index 0189d1c77d..0239425e10 100644
--- a/sysdeps/unix/sysv/linux/glob64.c
+++ b/sysdeps/unix/sysv/linux/glob64.c
@@ -44,6 +44,7 @@ 
 strong_alias (__glob64, glob64)
 libc_hidden_def (glob64)
 # else
+libc_hidden_def (__glob64)
 versioned_symbol (libc, __glob64, glob64, GLIBC_2_27);
 libc_hidden_ver (__glob64, glob64)
 # endif
-- 
2.13.6