hurd: Fix some ld.so symbol override from libc

ld.so symbols to be overriden by libc need to be extern to really get
overriden.

	* sysdeps/mach/hurd/dl-unistd.h (__access, __brk, __lseek, __read,
	__sbrk): Do not set attribute_hidden.
	* sysdeps/mach/hurd/i386/ld.abilist: Update accordingly.
	* sysdeps/mach/hurd/i386/localplt.data: Update accordingly.
This commit is contained in:
Samuel Thibault 2018-07-28 14:57:10 +02:00
parent bcb1c4afd8
commit 99bc624136
4 changed files with 15 additions and 12 deletions

View File

@ -1,3 +1,10 @@
2018-07-28 Samuel Thibault <samuel.thibault@ens-lyon.org>
* sysdeps/mach/hurd/dl-unistd.h (__access, __brk, __lseek, __read,
__sbrk): Do not set attribute_hidden.
* sysdeps/mach/hurd/i386/ld.abilist: Update accordingly.
* sysdeps/mach/hurd/i386/localplt.data: Update accordingly.
2018-07-27 Carlos O'Donell <carlos@redhat.com> 2018-07-27 Carlos O'Donell <carlos@redhat.com>
* po/uk.po: Update translations. * po/uk.po: Update translations.

View File

@ -17,12 +17,6 @@
License along with the GNU C Library; if not, see License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */ <http://www.gnu.org/licenses/>. */
/* __close, __getcwd, __getpid, __libc_read and __libc_write can't be /* Most stubs mustn't be hidden in ld.so on Hurd since they need to be preempted
hidden in ld.so on Hurd since they will be preempted by the ones in by functions from libc.so after bootstrap. */
libc.so after bootstrap. */
extern __typeof (__access) __access attribute_hidden;
extern __typeof (__brk) __brk attribute_hidden;
extern __typeof (__lseek) __lseek attribute_hidden;
extern __typeof (__profil) __profil attribute_hidden; extern __typeof (__profil) __profil attribute_hidden;
extern __typeof (__read) __read attribute_hidden;
extern __typeof (__sbrk) __sbrk attribute_hidden;

View File

@ -6,6 +6,8 @@ GLIBC_2.2.6 __libc_stack_end D 0x4
GLIBC_2.2.6 __mmap F GLIBC_2.2.6 __mmap F
GLIBC_2.2.6 __open F GLIBC_2.2.6 __open F
GLIBC_2.2.6 __open64 F GLIBC_2.2.6 __open64 F
GLIBC_2.2.6 __read F
GLIBC_2.2.6 __sbrk F
GLIBC_2.2.6 __strtoul_internal F GLIBC_2.2.6 __strtoul_internal F
GLIBC_2.2.6 __write F GLIBC_2.2.6 __write F
GLIBC_2.2.6 __writev F GLIBC_2.2.6 __writev F

View File

@ -23,10 +23,10 @@ ld.so: _dl_catch_exception + REL R_386_GLOB_DAT
# The dynamic linker has its own versions of basic functions for initial loading # The dynamic linker has its own versions of basic functions for initial loading
# of shared libraries. These need to be overriden by libc once loaded. # of shared libraries. These need to be overriden by libc once loaded.
ld.so: __open ? ld.so: __open ?
ld.so: __open64 ? ld.so: __open64
ld.so: __close ld.so: __close
ld.so: __read ? ld.so: __read
ld.so: __write ? ld.so: __write
ld.so: __writev ld.so: __writev
ld.so: __libc_lseek64 ld.so: __libc_lseek64
ld.so: __mmap ld.so: __mmap
@ -36,7 +36,7 @@ ld.so: __xstat64
#ld.so: __access_noerrno #ld.so: __access_noerrno
ld.so: __getpid ld.so: __getpid
#ld.so: __getcwd #ld.so: __getcwd
#ld.so: __sbrk ld.so: __sbrk
ld.so: __strtoul_internal ld.so: __strtoul_internal
#ld.so: _exit #ld.so: _exit
ld.so: abort ld.so: abort