mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-21 12:30:06 +00:00
Update.
2002-02-01 Jakub Jelinek <jakub@redhat.com> * Versions.def (libc): Add GLIBC_PRIVATE. (libdb, libnss_db, libdb1): Remove. (libnss_compat, libnss_dns, libnss_files, libnss_hesiod, libnss_nis, libnss_nisplus): Move all symbols to GLIBC_PRIVATE. (libpthread): Add GLIBC_PRIVATE. (libresolv): Likewise, remove GLIBC_2.1. (ld): Add GLIBC_PRIVATE, remove GLIBC_2.1.1, GLIBC_2.2, GLIBC_2.2.1, GLIBC_2.2.3, GLIBC_2.3. * catgets/Versions (__open_catalog): Move to GLIBC_PRIVATE. * elf/Versions (_dl_open, _dl_close, _dl_addr, _dl_init_first, _dl_sym, _dl_vsym): Likewise. (__libc_enable_secure, __libc_stack_end, _dl_argv, _dl_catch_error, _dl_check_all_versions, _dl_check_map_versions, _dl_debug_initialize, _dl_debug_printf, _dl_debug_state, _dl_dst_count, _dl_dst_substitute, _dl_init, _dl_lookup_symbol, _dl_lookup_symbol_skip, _dl_lookup_versioned_symbol, _dl_lookup_versioned_symbol_skip, _dl_map_object, _dl_map_object_deps, _dl_out_of_memory, _dl_relocate_object, _dl_signal_error, _dl_start_profile, _dl_starting_up, _dl_sysdep_start, _dl_unload_cache, _rtld_global): Likewise. (_dl_object_relocation_scope): Remove. * hesiod/Versions: Move all symbols to GLIBC_PRIVATE. * iconv/Versions (__gconv_alias_db, __gconv_modules_db, __gconv_cache): Move to GLIBC_PRIVATE. * inet/Versions (__internal_endnetgrent, __internal_getnetgrent_r, __internal_setnetgrent): Likewise. * io/Versions (__libc_open, __libc_close, __libc_read, __libc_write, __libc_lseek, __libc_fcntl, __libc_open64, __libc_lseek64): Likewise. * locale/Versions (__collate_element_hash, __collate_element_strings, __collate_symbol_classes, __collate_symbol_hash, __collate_symbol_strings, _nl_current_LC_COLLATE, _nl_current_LC_CTYPE): Likewise. * misc/Versions (__libc_fsync, __libc_msync): Likewise. * nis/Versions (libnss_compat): Move all symbols to GLIBC_PRIVATE. (libnss_nis, libnss_nisplus): Likewise. * nss/Versions (_nss_files_parse_grent, _nss_files_parse_pwent, _nss_files_parse_spent): Move to GLIBC_PRIVATE. (libnss_files): Move all symbols to GLIBC_PRIVATE. * posix/Versions (__libc_wait, __libc_waitpid, __libc_pause, __libc_nanosleep, __libc_fork, __libc_pread, __libc_pread64, __libc_pwrite, __libc_pwrite64): Move to GLIBC_PRIVATE. * resolv/Versions (__gai_sigqueue, __ns_name_unpack, __ns_name_ntop, __ns_get16, __ns_samename): Likewise. (libnss_dns): Move all symbols to GLIBC_PRIVATE. * setjmp/Versions (__libc_longjmp, __libc_siglongjmp): Move to GLIBC_PRIVATE. * socket/Versions (__libc_accept, __libc_send, __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv, __libc_sendto, __libc_connect): Likewise. * stdio-common/Versions (_itoa_lower_digits, _itoa_upper_digits): Likewise. * stdlib/Versions (__libc_system): Likewise. * sunrpc/Versions (__rpc_thread_destroy): Likewise. * sysdeps/hppa/Versions: Move all symbols to GLIBC_PRIVATE. * sysdeps/ia64/fpu/Versions: Likewise. * sysdeps/ia64/Versions: Likewise. * sysdeps/unix/sysv/linux/ia64/Versions: Likewise. * sysdeps/unix/sysv/linux/i386/Versions (__modify_ldt): Move to GLIBC_PRIVATE. * sysdeps/unix/sysv/linux/x86_64/Versions (__modify_ldt): Likewise. * sysdeps/unix/sysv/linux/Versions (__syscall_rt_sigqueueinfo, __libc_sigaction): Likewise. * termios/Versions (__libc_tcdrain): Likewise. * misc/sys/cdefs (__attribute_noinline__): Define. * elf/dl-lookup.c (_dl_do_lookup, _dl_do_lookup_versioned): Add __attribute_noinline__. * elf/Makefile (rtld-routines): Add dl-xstat64, dl-fxstat64. * elf/dl-xstat64.c: New file. * elf/dl-fxstat64.c: New file. * sysdeps/unix/sysv/linux/fxstat64.c: If RTLD_STAT64 is defined, don't export __fxstat64 at multiple versions. * sysdeps/unix/sysv/linux/lxstat64.c: Similarly. * sysdeps/unix/sysv/linux/xstat64.c: Similarly.
This commit is contained in:
parent
9c1084a380
commit
fb23eb252f
78
ChangeLog
78
ChangeLog
@ -1,3 +1,81 @@
|
|||||||
|
2002-02-01 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
|
* Versions.def (libc): Add GLIBC_PRIVATE.
|
||||||
|
(libdb, libnss_db, libdb1): Remove.
|
||||||
|
(libnss_compat, libnss_dns, libnss_files, libnss_hesiod, libnss_nis,
|
||||||
|
libnss_nisplus): Move all symbols to GLIBC_PRIVATE.
|
||||||
|
(libpthread): Add GLIBC_PRIVATE.
|
||||||
|
(libresolv): Likewise, remove GLIBC_2.1.
|
||||||
|
(ld): Add GLIBC_PRIVATE, remove GLIBC_2.1.1, GLIBC_2.2, GLIBC_2.2.1,
|
||||||
|
GLIBC_2.2.3, GLIBC_2.3.
|
||||||
|
* catgets/Versions (__open_catalog): Move to GLIBC_PRIVATE.
|
||||||
|
* elf/Versions (_dl_open, _dl_close, _dl_addr, _dl_init_first,
|
||||||
|
_dl_sym, _dl_vsym): Likewise.
|
||||||
|
(__libc_enable_secure, __libc_stack_end, _dl_argv, _dl_catch_error,
|
||||||
|
_dl_check_all_versions, _dl_check_map_versions, _dl_debug_initialize,
|
||||||
|
_dl_debug_printf, _dl_debug_state, _dl_dst_count, _dl_dst_substitute,
|
||||||
|
_dl_init, _dl_lookup_symbol, _dl_lookup_symbol_skip,
|
||||||
|
_dl_lookup_versioned_symbol, _dl_lookup_versioned_symbol_skip,
|
||||||
|
_dl_map_object, _dl_map_object_deps, _dl_out_of_memory,
|
||||||
|
_dl_relocate_object, _dl_signal_error, _dl_start_profile,
|
||||||
|
_dl_starting_up, _dl_sysdep_start, _dl_unload_cache, _rtld_global):
|
||||||
|
Likewise.
|
||||||
|
(_dl_object_relocation_scope): Remove.
|
||||||
|
* hesiod/Versions: Move all symbols to GLIBC_PRIVATE.
|
||||||
|
* iconv/Versions (__gconv_alias_db, __gconv_modules_db,
|
||||||
|
__gconv_cache): Move to GLIBC_PRIVATE.
|
||||||
|
* inet/Versions (__internal_endnetgrent, __internal_getnetgrent_r,
|
||||||
|
__internal_setnetgrent): Likewise.
|
||||||
|
* io/Versions (__libc_open, __libc_close, __libc_read, __libc_write,
|
||||||
|
__libc_lseek, __libc_fcntl, __libc_open64, __libc_lseek64): Likewise.
|
||||||
|
* locale/Versions (__collate_element_hash, __collate_element_strings,
|
||||||
|
__collate_symbol_classes, __collate_symbol_hash,
|
||||||
|
__collate_symbol_strings, _nl_current_LC_COLLATE,
|
||||||
|
_nl_current_LC_CTYPE): Likewise.
|
||||||
|
* misc/Versions (__libc_fsync, __libc_msync): Likewise.
|
||||||
|
* nis/Versions (libnss_compat): Move all symbols to GLIBC_PRIVATE.
|
||||||
|
(libnss_nis, libnss_nisplus): Likewise.
|
||||||
|
* nss/Versions (_nss_files_parse_grent, _nss_files_parse_pwent,
|
||||||
|
_nss_files_parse_spent): Move to GLIBC_PRIVATE.
|
||||||
|
(libnss_files): Move all symbols to GLIBC_PRIVATE.
|
||||||
|
* posix/Versions (__libc_wait, __libc_waitpid, __libc_pause,
|
||||||
|
__libc_nanosleep, __libc_fork, __libc_pread, __libc_pread64,
|
||||||
|
__libc_pwrite, __libc_pwrite64): Move to GLIBC_PRIVATE.
|
||||||
|
* resolv/Versions (__gai_sigqueue, __ns_name_unpack, __ns_name_ntop,
|
||||||
|
__ns_get16, __ns_samename): Likewise.
|
||||||
|
(libnss_dns): Move all symbols to GLIBC_PRIVATE.
|
||||||
|
* setjmp/Versions (__libc_longjmp, __libc_siglongjmp): Move to
|
||||||
|
GLIBC_PRIVATE.
|
||||||
|
* socket/Versions (__libc_accept, __libc_send, __libc_recvfrom,
|
||||||
|
__libc_recvmsg, __libc_sendmsg, __libc_recv, __libc_sendto,
|
||||||
|
__libc_connect): Likewise.
|
||||||
|
* stdio-common/Versions (_itoa_lower_digits, _itoa_upper_digits):
|
||||||
|
Likewise.
|
||||||
|
* stdlib/Versions (__libc_system): Likewise.
|
||||||
|
* sunrpc/Versions (__rpc_thread_destroy): Likewise.
|
||||||
|
* sysdeps/hppa/Versions: Move all symbols to GLIBC_PRIVATE.
|
||||||
|
* sysdeps/ia64/fpu/Versions: Likewise.
|
||||||
|
* sysdeps/ia64/Versions: Likewise.
|
||||||
|
* sysdeps/unix/sysv/linux/ia64/Versions: Likewise.
|
||||||
|
* sysdeps/unix/sysv/linux/i386/Versions (__modify_ldt): Move
|
||||||
|
to GLIBC_PRIVATE.
|
||||||
|
* sysdeps/unix/sysv/linux/x86_64/Versions (__modify_ldt): Likewise.
|
||||||
|
* sysdeps/unix/sysv/linux/Versions (__syscall_rt_sigqueueinfo,
|
||||||
|
__libc_sigaction): Likewise.
|
||||||
|
* termios/Versions (__libc_tcdrain): Likewise.
|
||||||
|
|
||||||
|
* misc/sys/cdefs (__attribute_noinline__): Define.
|
||||||
|
* elf/dl-lookup.c (_dl_do_lookup, _dl_do_lookup_versioned): Add
|
||||||
|
__attribute_noinline__.
|
||||||
|
|
||||||
|
* elf/Makefile (rtld-routines): Add dl-xstat64, dl-fxstat64.
|
||||||
|
* elf/dl-xstat64.c: New file.
|
||||||
|
* elf/dl-fxstat64.c: New file.
|
||||||
|
* sysdeps/unix/sysv/linux/fxstat64.c: If RTLD_STAT64 is defined,
|
||||||
|
don't export __fxstat64 at multiple versions.
|
||||||
|
* sysdeps/unix/sysv/linux/lxstat64.c: Similarly.
|
||||||
|
* sysdeps/unix/sysv/linux/xstat64.c: Similarly.
|
||||||
|
|
||||||
2002-01-18 Isamu Hasegawa <isamu@yamato.ibm.com>
|
2002-01-18 Isamu Hasegawa <isamu@yamato.ibm.com>
|
||||||
|
|
||||||
* locale/program/ld-collate.c (collate_finish): Assign a wide
|
* locale/program/ld-collate.c (collate_finish): Assign a wide
|
||||||
|
35
Versions.def
35
Versions.def
@ -20,15 +20,11 @@ libc {
|
|||||||
%ifdef EXPORT_UNWIND_FIND_FDE
|
%ifdef EXPORT_UNWIND_FIND_FDE
|
||||||
GCC_3.0
|
GCC_3.0
|
||||||
%endif
|
%endif
|
||||||
|
GLIBC_PRIVATE
|
||||||
}
|
}
|
||||||
libcrypt {
|
libcrypt {
|
||||||
GLIBC_2.0
|
GLIBC_2.0
|
||||||
}
|
}
|
||||||
libdb {
|
|
||||||
GLIBC_2.0
|
|
||||||
GLIBC_2.1
|
|
||||||
GLIBC_2.2
|
|
||||||
}
|
|
||||||
libdl {
|
libdl {
|
||||||
GLIBC_2.0
|
GLIBC_2.0
|
||||||
GLIBC_2.1
|
GLIBC_2.1
|
||||||
@ -45,27 +41,22 @@ libnsl {
|
|||||||
GLIBC_2.2
|
GLIBC_2.2
|
||||||
}
|
}
|
||||||
libnss_compat {
|
libnss_compat {
|
||||||
GLIBC_2.0
|
GLIBC_PRIVATE
|
||||||
}
|
|
||||||
libnss_db {
|
|
||||||
GLIBC_2.0
|
|
||||||
}
|
}
|
||||||
libnss_dns {
|
libnss_dns {
|
||||||
GLIBC_2.0
|
GLIBC_PRIVATE
|
||||||
}
|
}
|
||||||
libnss_files {
|
libnss_files {
|
||||||
GLIBC_2.0
|
GLIBC_PRIVATE
|
||||||
GLIBC_2.1
|
|
||||||
}
|
}
|
||||||
libnss_hesiod {
|
libnss_hesiod {
|
||||||
GLIBC_2.1
|
GLIBC_PRIVATE
|
||||||
GLIBC_2.2
|
|
||||||
}
|
}
|
||||||
libnss_nis {
|
libnss_nis {
|
||||||
GLIBC_2.0
|
GLIBC_PRIVATE
|
||||||
}
|
}
|
||||||
libnss_nisplus {
|
libnss_nisplus {
|
||||||
GLIBC_2.0
|
GLIBC_PRIVATE
|
||||||
}
|
}
|
||||||
libpthread {
|
libpthread {
|
||||||
GLIBC_2.0
|
GLIBC_2.0
|
||||||
@ -74,11 +65,12 @@ libpthread {
|
|||||||
GLIBC_2.1.2
|
GLIBC_2.1.2
|
||||||
GLIBC_2.2
|
GLIBC_2.2
|
||||||
GLIBC_2.2.3
|
GLIBC_2.2.3
|
||||||
|
GLIBC_PRIVATE
|
||||||
}
|
}
|
||||||
libresolv {
|
libresolv {
|
||||||
GLIBC_2.0
|
GLIBC_2.0
|
||||||
GLIBC_2.1
|
|
||||||
GLIBC_2.2
|
GLIBC_2.2
|
||||||
|
GLIBC_PRIVATE
|
||||||
}
|
}
|
||||||
librt {
|
librt {
|
||||||
GLIBC_2.1
|
GLIBC_2.1
|
||||||
@ -87,17 +79,10 @@ librt {
|
|||||||
libutil {
|
libutil {
|
||||||
GLIBC_2.0
|
GLIBC_2.0
|
||||||
}
|
}
|
||||||
libdb1 {
|
|
||||||
GLIBC_2.0
|
|
||||||
}
|
|
||||||
ld {
|
ld {
|
||||||
GLIBC_2.0
|
GLIBC_2.0
|
||||||
GLIBC_2.1
|
GLIBC_2.1
|
||||||
GLIBC_2.1.1
|
GLIBC_PRIVATE
|
||||||
GLIBC_2.2
|
|
||||||
GLIBC_2.2.1
|
|
||||||
GLIBC_2.2.3
|
|
||||||
GLIBC_2.3
|
|
||||||
}
|
}
|
||||||
libthread_db {
|
libthread_db {
|
||||||
GLIBC_2.1.3
|
GLIBC_2.1.3
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
libc {
|
libc {
|
||||||
GLIBC_2.0 {
|
GLIBC_2.0 {
|
||||||
# functions with required interface outside normal name space
|
|
||||||
__open_catalog;
|
|
||||||
|
|
||||||
# c*
|
# c*
|
||||||
catclose; catgets; catopen;
|
catclose; catgets; catopen;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# functions with required interface outside normal name space
|
||||||
|
__open_catalog;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -37,7 +37,8 @@ elide-routines.os = $(all-dl-routines) dl-support enbl-secure \
|
|||||||
|
|
||||||
# ld.so uses those routines, plus some special stuff for being the program
|
# ld.so uses those routines, plus some special stuff for being the program
|
||||||
# interpreter and operating independent of libc.
|
# interpreter and operating independent of libc.
|
||||||
rtld-routines := rtld $(dl-routines) dl-sysdep dl-environ dl-minimal
|
rtld-routines := rtld $(dl-routines) dl-sysdep dl-environ dl-minimal \
|
||||||
|
dl-xstat64 dl-fxstat64
|
||||||
all-rtld-routines = $(rtld-routines) $(sysdep-rtld-routines)
|
all-rtld-routines = $(rtld-routines) $(sysdep-rtld-routines)
|
||||||
|
|
||||||
distribute := $(rtld-routines:=.c) dynamic-link.h do-rel.h dl-machine.h \
|
distribute := $(rtld-routines:=.c) dynamic-link.h do-rel.h dl-machine.h \
|
||||||
|
55
elf/Versions
55
elf/Versions
@ -1,7 +1,5 @@
|
|||||||
libc {
|
libc {
|
||||||
GLIBC_2.0 {
|
GLIBC_2.0 {
|
||||||
# functions used in other libraries
|
|
||||||
_dl_open; _dl_close; _dl_addr;
|
|
||||||
%ifdef EXPORT_UNWIND_FIND_FDE
|
%ifdef EXPORT_UNWIND_FIND_FDE
|
||||||
__register_frame_info; __deregister_frame_info;
|
__register_frame_info; __deregister_frame_info;
|
||||||
%endif
|
%endif
|
||||||
@ -10,13 +8,6 @@ libc {
|
|||||||
# functions used in other libraries
|
# functions used in other libraries
|
||||||
_dl_mcount_wrapper; _dl_mcount_wrapper_check;
|
_dl_mcount_wrapper; _dl_mcount_wrapper_check;
|
||||||
}
|
}
|
||||||
GLIBC_2.2 {
|
|
||||||
# this is defined in ld.so and overridden by libc
|
|
||||||
_dl_init_first;
|
|
||||||
|
|
||||||
# functions used in other libraries
|
|
||||||
_dl_sym; _dl_vsym;
|
|
||||||
}
|
|
||||||
GLIBC_2.2.4 {
|
GLIBC_2.2.4 {
|
||||||
dl_iterate_phdr;
|
dl_iterate_phdr;
|
||||||
}
|
}
|
||||||
@ -26,44 +17,34 @@ libc {
|
|||||||
__register_frame_info_table_bases; _Unwind_Find_FDE;
|
__register_frame_info_table_bases; _Unwind_Find_FDE;
|
||||||
}
|
}
|
||||||
%endif
|
%endif
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# functions used in other libraries
|
||||||
|
_dl_open; _dl_close; _dl_addr;
|
||||||
|
_dl_sym; _dl_vsym; _dl_init_first;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ld {
|
ld {
|
||||||
GLIBC_2.0 {
|
GLIBC_2.0 {
|
||||||
# Those are in the dynamic linker, but used by libc.so.
|
|
||||||
__libc_enable_secure; _dl_catch_error; _dl_check_all_versions;
|
|
||||||
_dl_debug_initialize; _dl_debug_state;
|
|
||||||
_dl_lookup_symbol;
|
|
||||||
_dl_map_object; _dl_map_object_deps; _dl_object_relocation_scope;
|
|
||||||
_dl_relocate_object; _dl_signal_error; _dl_starting_up;
|
|
||||||
_dl_sysdep_start; _r_debug;
|
|
||||||
_dl_lookup_symbol_skip;
|
|
||||||
_dl_lookup_versioned_symbol; _dl_lookup_versioned_symbol_skip;
|
|
||||||
|
|
||||||
# Function from libc.so which must be shared with libc.
|
# Function from libc.so which must be shared with libc.
|
||||||
calloc; free; malloc; realloc;
|
calloc; free; malloc; realloc;
|
||||||
|
|
||||||
|
_r_debug;
|
||||||
}
|
}
|
||||||
GLIBC_2.1 {
|
GLIBC_2.1 {
|
||||||
# global variables
|
|
||||||
__libc_stack_end;
|
|
||||||
|
|
||||||
# functions used in other libraries
|
# functions used in other libraries
|
||||||
_dl_start_profile; _dl_mcount; _dl_unload_cache;
|
_dl_mcount;
|
||||||
}
|
}
|
||||||
GLIBC_2.1.1 {
|
GLIBC_PRIVATE {
|
||||||
# functions used in other libraries
|
# Those are in the dynamic linker, but used by libc.so.
|
||||||
_dl_dst_count; _dl_dst_substitute;
|
__libc_enable_secure; __libc_stack_end;
|
||||||
}
|
_dl_argv; _dl_catch_error; _dl_check_all_versions; _dl_check_map_versions;
|
||||||
GLIBC_2.2 {
|
_dl_debug_initialize; _dl_debug_printf; _dl_debug_state; _dl_dst_count;
|
||||||
_dl_init; _dl_argv; _dl_check_map_versions;
|
_dl_dst_substitute; _dl_init; _dl_lookup_symbol; _dl_lookup_symbol_skip;
|
||||||
|
_dl_lookup_versioned_symbol; _dl_lookup_versioned_symbol_skip;
|
||||||
# variables used elsewhere
|
_dl_map_object; _dl_map_object_deps; _dl_out_of_memory;
|
||||||
_dl_out_of_memory;
|
_dl_relocate_object; _dl_signal_error; _dl_start_profile; _dl_starting_up;
|
||||||
}
|
_dl_sysdep_start; _dl_unload_cache;
|
||||||
GLIBC_2.2.3 {
|
|
||||||
_dl_debug_printf;
|
|
||||||
}
|
|
||||||
GLIBC_2.3 {
|
|
||||||
_rtld_global;
|
_rtld_global;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
25
elf/dl-fxstat64.c
Normal file
25
elf/dl-fxstat64.c
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
/* Dynamic linker's private version of __fxstat64.
|
||||||
|
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, write to the Free
|
||||||
|
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||||
|
02111-1307 USA. */
|
||||||
|
|
||||||
|
/* This special file is needed because some fxstat64.c implementations
|
||||||
|
use versioning for __fxstat64 and we need to keep it local to
|
||||||
|
the dynamic linker. */
|
||||||
|
|
||||||
|
#define RTLD_STAT64
|
||||||
|
#include <fxstat64.c>
|
@ -661,7 +661,7 @@ _dl_debug_bindings (const char *undef_name, struct link_map *undef_map,
|
|||||||
|
|
||||||
/* These are here so that we only inline do_lookup{,_versioned} in the common
|
/* These are here so that we only inline do_lookup{,_versioned} in the common
|
||||||
case, not everywhere. */
|
case, not everywhere. */
|
||||||
static int
|
static int __attribute_noinline__
|
||||||
internal_function
|
internal_function
|
||||||
_dl_do_lookup (const char *undef_name, unsigned long int hash,
|
_dl_do_lookup (const char *undef_name, unsigned long int hash,
|
||||||
const ElfW(Sym) *ref, struct sym_val *result,
|
const ElfW(Sym) *ref, struct sym_val *result,
|
||||||
@ -672,7 +672,7 @@ _dl_do_lookup (const char *undef_name, unsigned long int hash,
|
|||||||
type_class);
|
type_class);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int __attribute_noinline__
|
||||||
internal_function
|
internal_function
|
||||||
_dl_do_lookup_versioned (const char *undef_name, unsigned long int hash,
|
_dl_do_lookup_versioned (const char *undef_name, unsigned long int hash,
|
||||||
const ElfW(Sym) *ref, struct sym_val *result,
|
const ElfW(Sym) *ref, struct sym_val *result,
|
||||||
|
25
elf/dl-xstat64.c
Normal file
25
elf/dl-xstat64.c
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
/* Dynamic linker's private version of __xstat64.
|
||||||
|
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, write to the Free
|
||||||
|
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||||
|
02111-1307 USA. */
|
||||||
|
|
||||||
|
/* This special file is needed because some xstat64.c implementations
|
||||||
|
use versioning for __xstat64 and we need to keep it local to
|
||||||
|
the dynamic linker. */
|
||||||
|
|
||||||
|
#define RTLD_STAT64
|
||||||
|
#include <xstat64.c>
|
@ -1,13 +1,11 @@
|
|||||||
libnss_hesiod {
|
libnss_hesiod {
|
||||||
GLIBC_2.1 {
|
GLIBC_PRIVATE {
|
||||||
_nss_hesiod_setpwent; _nss_hesiod_endpwent;
|
_nss_hesiod_setpwent; _nss_hesiod_endpwent;
|
||||||
_nss_hesiod_getpwnam_r; _nss_hesiod_getpwuid_r;
|
_nss_hesiod_getpwnam_r; _nss_hesiod_getpwuid_r;
|
||||||
_nss_hesiod_setgrent; _nss_hesiod_endgrent;
|
_nss_hesiod_setgrent; _nss_hesiod_endgrent;
|
||||||
_nss_hesiod_getgrnam_r; _nss_hesiod_getgrgid_r;
|
_nss_hesiod_getgrnam_r; _nss_hesiod_getgrgid_r;
|
||||||
_nss_hesiod_setservent; _nss_hesiod_endservent;
|
_nss_hesiod_setservent; _nss_hesiod_endservent;
|
||||||
_nss_hesiod_getservbyname_r;
|
_nss_hesiod_getservbyname_r;
|
||||||
}
|
|
||||||
GLIBC_2.2 {
|
|
||||||
_nss_hesiod_initgroups_dyn;
|
_nss_hesiod_initgroups_dyn;
|
||||||
_nss_hesiod_getservbyport_r;
|
_nss_hesiod_getservbyport_r;
|
||||||
_nss_hesiod_setprotoent; _nss_hesiod_endprotoent;
|
_nss_hesiod_setprotoent; _nss_hesiod_endprotoent;
|
||||||
|
@ -1,13 +1,10 @@
|
|||||||
libc {
|
libc {
|
||||||
GLIBC_2.1 {
|
GLIBC_2.1 {
|
||||||
# global variables
|
|
||||||
__gconv_alias_db; __gconv_modules_db;
|
|
||||||
|
|
||||||
# i*
|
# i*
|
||||||
iconv_open; iconv; iconv_close;
|
iconv_open; iconv; iconv_close;
|
||||||
}
|
}
|
||||||
GLIBC_2.2.5 {
|
GLIBC_PRIVATE {
|
||||||
# variable shared with iconv program
|
# variables shared with iconv program
|
||||||
__gconv_cache;
|
__gconv_alias_db; __gconv_modules_db; __gconv_cache;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,10 +3,6 @@ libc {
|
|||||||
# functions with required interface outside normal name space
|
# functions with required interface outside normal name space
|
||||||
__ivaliduser; __check_rhosts_file; __rcmd_errstr;
|
__ivaliduser; __check_rhosts_file; __rcmd_errstr;
|
||||||
|
|
||||||
# functions used in other libraries
|
|
||||||
__internal_endnetgrent; __internal_getnetgrent_r;
|
|
||||||
__internal_setnetgrent;
|
|
||||||
|
|
||||||
# variables in normal name space
|
# variables in normal name space
|
||||||
rexecoptions;
|
rexecoptions;
|
||||||
|
|
||||||
@ -68,4 +64,9 @@ libc {
|
|||||||
# r*
|
# r*
|
||||||
rcmd_af; rexec_af; rresvport_af; ruserok_af;
|
rcmd_af; rexec_af; rresvport_af; ruserok_af;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# functions used in other libraries
|
||||||
|
__internal_endnetgrent; __internal_getnetgrent_r;
|
||||||
|
__internal_setnetgrent;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
15
io/Versions
15
io/Versions
@ -1,10 +1,5 @@
|
|||||||
libc {
|
libc {
|
||||||
GLIBC_2.0 {
|
GLIBC_2.0 {
|
||||||
# functions which have an additional interface since they are
|
|
||||||
# are cancelable.
|
|
||||||
__libc_open; __libc_close; __libc_read; __libc_write;
|
|
||||||
__libc_lseek; __libc_fcntl;
|
|
||||||
|
|
||||||
# functions used in inline functions or macros
|
# functions used in inline functions or macros
|
||||||
__xstat; __fxstat; __lxstat; __xmknod; __write; __close; __fcntl;
|
__xstat; __fxstat; __lxstat; __xmknod; __write; __close; __fcntl;
|
||||||
__lseek; __open; __read;
|
__lseek; __open; __read;
|
||||||
@ -83,14 +78,16 @@ libc {
|
|||||||
# s*
|
# s*
|
||||||
statfs64; statvfs; statvfs64;
|
statfs64; statvfs; statvfs64;
|
||||||
}
|
}
|
||||||
GLIBC_2.1.3 {
|
|
||||||
# For the cancelation wrappers.
|
|
||||||
__libc_open64; __libc_lseek64;
|
|
||||||
}
|
|
||||||
GLIBC_2.2 {
|
GLIBC_2.2 {
|
||||||
# p*
|
# p*
|
||||||
posix_fadvise; posix_fadvise64; posix_fallocate; posix_fallocate64;
|
posix_fadvise; posix_fadvise64; posix_fallocate; posix_fallocate64;
|
||||||
|
|
||||||
__open64;
|
__open64;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# functions which have an additional interface since they are
|
||||||
|
# cancelable.
|
||||||
|
__libc_open; __libc_close; __libc_read; __libc_write;
|
||||||
|
__libc_lseek; __libc_fcntl; __libc_open64; __libc_lseek64;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,3 +1,13 @@
|
|||||||
|
2002-02-01 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
|
* Versions (__libc_internal_tsd_get, __libc_internal_tsd_set,
|
||||||
|
__pthread_kill_other_threads_np): Move to GLIBC_PRIVATE.
|
||||||
|
* sysdeps/i386/i586/Versions: Move all symbols to GLIBC_PRIVATE.
|
||||||
|
* sysdeps/i386/i686/Versions: Move all symbols to GLIBC_PRIVATE.
|
||||||
|
* sysdeps/sparc/sparc32/sparcv9/Versions: New file.
|
||||||
|
* sysdeps/sparc/sparc64/Versions: New file.
|
||||||
|
* sysdeps/ia64/Versions: Move all symbols to GLIBC_PRIVATE.
|
||||||
|
|
||||||
2002-01-31 Ulrich Drepper <drepper@redhat.com>
|
2002-01-31 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
* pthread.c: _dl_cpuclock_offset is not any longer a global variable
|
* pthread.c: _dl_cpuclock_offset is not any longer a global variable
|
||||||
|
@ -13,17 +13,18 @@ libc {
|
|||||||
pthread_mutexattr_getkind_np; pthread_mutexattr_setkind_np;
|
pthread_mutexattr_getkind_np; pthread_mutexattr_setkind_np;
|
||||||
pthread_self; pthread_setcancelstate; pthread_setcanceltype;
|
pthread_self; pthread_setcancelstate; pthread_setcanceltype;
|
||||||
pthread_setschedparam;
|
pthread_setschedparam;
|
||||||
|
|
||||||
# Internal libc interface to libpthread
|
|
||||||
__libc_internal_tsd_get; __libc_internal_tsd_set;
|
|
||||||
}
|
}
|
||||||
GLIBC_2.1 {
|
GLIBC_2.1 {
|
||||||
pthread_attr_init;
|
pthread_attr_init;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# Internal libc interface to libpthread
|
||||||
|
__libc_internal_tsd_get; __libc_internal_tsd_set;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ld {
|
ld {
|
||||||
GLIBC_2.0 {
|
GLIBC_PRIVATE {
|
||||||
# Internal libc interface to libpthread
|
# Internal libc interface to libpthread
|
||||||
__libc_internal_tsd_get; __libc_internal_tsd_set;
|
__libc_internal_tsd_get; __libc_internal_tsd_set;
|
||||||
}
|
}
|
||||||
@ -35,9 +36,6 @@ libpthread {
|
|||||||
_pthread_cleanup_pop; _pthread_cleanup_pop_restore; _pthread_cleanup_push;
|
_pthread_cleanup_pop; _pthread_cleanup_pop_restore; _pthread_cleanup_push;
|
||||||
_pthread_cleanup_push_defer;
|
_pthread_cleanup_push_defer;
|
||||||
|
|
||||||
# Internal libc interface to libpthread
|
|
||||||
__libc_internal_tsd_get; __libc_internal_tsd_set;
|
|
||||||
|
|
||||||
# Overwritten libc functions.
|
# Overwritten libc functions.
|
||||||
accept; close; connect; fcntl; fork; fsync; longjmp; lseek; msync;
|
accept; close; connect; fcntl; fork; fsync; longjmp; lseek; msync;
|
||||||
nanosleep; open; pause; raise; read; recv; recvfrom; recvmsg; send;
|
nanosleep; open; pause; raise; read; recv; recvfrom; recvmsg; send;
|
||||||
@ -118,7 +116,6 @@ libpthread {
|
|||||||
sem_close; sem_open; sem_unlink;
|
sem_close; sem_open; sem_unlink;
|
||||||
}
|
}
|
||||||
GLIBC_2.1.2 {
|
GLIBC_2.1.2 {
|
||||||
__pthread_kill_other_threads_np;
|
|
||||||
__vfork;
|
__vfork;
|
||||||
}
|
}
|
||||||
GLIBC_2.2 {
|
GLIBC_2.2 {
|
||||||
@ -156,4 +153,9 @@ libpthread {
|
|||||||
# Extensions.
|
# Extensions.
|
||||||
pthread_getattr_np;
|
pthread_getattr_np;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# Internal libc interface to libpthread
|
||||||
|
__libc_internal_tsd_get; __libc_internal_tsd_set;
|
||||||
|
__pthread_kill_other_threads_np;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
libpthread {
|
libpthread {
|
||||||
GLIBC_2.2.3 {
|
GLIBC_PRIVATE {
|
||||||
__pthread_clock_gettime; __pthread_clock_settime;
|
__pthread_clock_gettime; __pthread_clock_settime;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
libpthread {
|
libpthread {
|
||||||
GLIBC_2.2.3 {
|
GLIBC_PRIVATE {
|
||||||
__pthread_clock_gettime; __pthread_clock_settime;
|
__pthread_clock_gettime; __pthread_clock_settime;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
libpthread {
|
libpthread {
|
||||||
GLIBC_2.2.3 {
|
GLIBC_PRIVATE {
|
||||||
__pthread_clock_gettime; __pthread_clock_settime;
|
__pthread_clock_gettime; __pthread_clock_settime;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
5
linuxthreads/sysdeps/sparc/sparc32/sparcv9/Versions
Normal file
5
linuxthreads/sysdeps/sparc/sparc32/sparcv9/Versions
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
libpthread {
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
__pthread_clock_gettime; __pthread_clock_settime;
|
||||||
|
}
|
||||||
|
}
|
5
linuxthreads/sysdeps/sparc/sparc64/Versions
Normal file
5
linuxthreads/sysdeps/sparc/sparc64/Versions
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
libpthread {
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
__pthread_clock_gettime; __pthread_clock_settime;
|
||||||
|
}
|
||||||
|
}
|
@ -7,9 +7,7 @@ libBrokenLocale {
|
|||||||
libc {
|
libc {
|
||||||
GLIBC_2.0 {
|
GLIBC_2.0 {
|
||||||
# global variables
|
# global variables
|
||||||
__collate_element_hash; __collate_element_strings;
|
_libc_intl_domainname;
|
||||||
__collate_symbol_classes; __collate_symbol_hash; __collate_symbol_strings;
|
|
||||||
_libc_intl_domainname; _nl_current_LC_COLLATE; _nl_current_LC_CTYPE;
|
|
||||||
|
|
||||||
# functions used in inline functions or macros
|
# functions used in inline functions or macros
|
||||||
__ctype_get_mb_cur_max;
|
__ctype_get_mb_cur_max;
|
||||||
@ -48,4 +46,10 @@ libc {
|
|||||||
# missing function from the experimental locale implementation
|
# missing function from the experimental locale implementation
|
||||||
__nl_langinfo_l;
|
__nl_langinfo_l;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# global variables
|
||||||
|
__collate_element_hash; __collate_element_strings;
|
||||||
|
__collate_symbol_classes; __collate_symbol_hash; __collate_symbol_strings;
|
||||||
|
_nl_current_LC_COLLATE; _nl_current_LC_CTYPE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,10 +3,6 @@ libc {
|
|||||||
# global variables
|
# global variables
|
||||||
___brk_addr; __curbrk; __progname; __progname_full;
|
___brk_addr; __curbrk; __progname; __progname_full;
|
||||||
|
|
||||||
# functions which have an additional interface since they are
|
|
||||||
# are cancelable.
|
|
||||||
__libc_fsync; __libc_msync;
|
|
||||||
|
|
||||||
# interface of malloc functions
|
# interface of malloc functions
|
||||||
__sbrk; __getpagesize;
|
__sbrk; __getpagesize;
|
||||||
|
|
||||||
@ -112,4 +108,9 @@ libc {
|
|||||||
# p*
|
# p*
|
||||||
posix_madvise;
|
posix_madvise;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# functions which have an additional interface since they are
|
||||||
|
# cancelable.
|
||||||
|
__libc_fsync; __libc_msync;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -165,8 +165,10 @@
|
|||||||
(although this would be possible) since it generates warnings. */
|
(although this would be possible) since it generates warnings. */
|
||||||
#if __GNUC_PREREQ (3,1)
|
#if __GNUC_PREREQ (3,1)
|
||||||
# define __attribute_used__ __attribute__ ((__used__))
|
# define __attribute_used__ __attribute__ ((__used__))
|
||||||
|
# define __attribute_noinline__ __attribute__ ((__noinline__))
|
||||||
#else
|
#else
|
||||||
# define __attribute_used__ __attribute__ ((__unused__))
|
# define __attribute_used__ __attribute__ ((__unused__))
|
||||||
|
# define __attribute_noinline__ /* Ignore */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* At some point during the gcc 2.8 development the `format_arg' attribute
|
/* At some point during the gcc 2.8 development the `format_arg' attribute
|
||||||
|
10
nis/Versions
10
nis/Versions
@ -60,20 +60,18 @@ libnsl {
|
|||||||
}
|
}
|
||||||
|
|
||||||
libnss_compat {
|
libnss_compat {
|
||||||
GLIBC_2.0 {
|
GLIBC_PRIVATE {
|
||||||
_nss_compat_endgrent; _nss_compat_endpwent; _nss_compat_endspent;
|
_nss_compat_endgrent; _nss_compat_endpwent; _nss_compat_endspent;
|
||||||
_nss_compat_getgrent_r; _nss_compat_getgrgid_r; _nss_compat_getgrnam_r;
|
_nss_compat_getgrent_r; _nss_compat_getgrgid_r; _nss_compat_getgrnam_r;
|
||||||
_nss_compat_getpwent_r; _nss_compat_getpwnam_r; _nss_compat_getpwuid_r;
|
_nss_compat_getpwent_r; _nss_compat_getpwnam_r; _nss_compat_getpwuid_r;
|
||||||
_nss_compat_getspent_r; _nss_compat_getspnam_r;
|
_nss_compat_getspent_r; _nss_compat_getspnam_r;
|
||||||
_nss_compat_setgrent; _nss_compat_setpwent; _nss_compat_setspent;
|
_nss_compat_setgrent; _nss_compat_setpwent; _nss_compat_setspent;
|
||||||
}
|
|
||||||
GLIBC_2.2 {
|
|
||||||
_nss_compat_initgroups_dyn;
|
_nss_compat_initgroups_dyn;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
libnss_nis {
|
libnss_nis {
|
||||||
GLIBC_2.0 {
|
GLIBC_PRIVATE {
|
||||||
_nss_nis_endaliasent; _nss_nis_endetherent; _nss_nis_endgrent;
|
_nss_nis_endaliasent; _nss_nis_endetherent; _nss_nis_endgrent;
|
||||||
_nss_nis_endhostent; _nss_nis_endnetent; _nss_nis_endnetgrent;
|
_nss_nis_endhostent; _nss_nis_endnetent; _nss_nis_endnetgrent;
|
||||||
_nss_nis_endprotoent; _nss_nis_endpwent; _nss_nis_endrpcent;
|
_nss_nis_endprotoent; _nss_nis_endpwent; _nss_nis_endrpcent;
|
||||||
@ -93,14 +91,12 @@ libnss_nis {
|
|||||||
_nss_nis_setgrent; _nss_nis_sethostent; _nss_nis_setnetent;
|
_nss_nis_setgrent; _nss_nis_sethostent; _nss_nis_setnetent;
|
||||||
_nss_nis_setnetgrent; _nss_nis_setprotoent; _nss_nis_setpwent;
|
_nss_nis_setnetgrent; _nss_nis_setprotoent; _nss_nis_setpwent;
|
||||||
_nss_nis_setrpcent; _nss_nis_setservent; _nss_nis_setspent;
|
_nss_nis_setrpcent; _nss_nis_setservent; _nss_nis_setspent;
|
||||||
}
|
|
||||||
GLIBC_2.2 {
|
|
||||||
_nss_nis_initgroups_dyn;
|
_nss_nis_initgroups_dyn;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
libnss_nisplus {
|
libnss_nisplus {
|
||||||
GLIBC_2.1 {
|
GLIBC_PRIVATE {
|
||||||
_nss_nisplus_endaliasent; _nss_nisplus_endetherent; _nss_nisplus_endgrent;
|
_nss_nisplus_endaliasent; _nss_nisplus_endetherent; _nss_nisplus_endgrent;
|
||||||
_nss_nisplus_endhostent; _nss_nisplus_endnetent; _nss_nisplus_endnetgrent;
|
_nss_nisplus_endhostent; _nss_nisplus_endnetent; _nss_nisplus_endnetgrent;
|
||||||
_nss_nisplus_endprotoent; _nss_nisplus_endpwent; _nss_nisplus_endrpcent;
|
_nss_nisplus_endprotoent; _nss_nisplus_endpwent; _nss_nisplus_endrpcent;
|
||||||
|
@ -2,16 +2,18 @@ libc {
|
|||||||
GLIBC_2.0 {
|
GLIBC_2.0 {
|
||||||
# functions used in other libraries
|
# functions used in other libraries
|
||||||
__nss_passwd_lookup; __nss_group_lookup; __nss_hosts_lookup; __nss_next;
|
__nss_passwd_lookup; __nss_group_lookup; __nss_hosts_lookup; __nss_next;
|
||||||
_nss_files_parse_grent; _nss_files_parse_pwent; _nss_files_parse_spent;
|
|
||||||
__nss_database_lookup; __nss_configure_lookup;
|
__nss_database_lookup; __nss_configure_lookup;
|
||||||
}
|
}
|
||||||
GLIBC_2.2.2 {
|
GLIBC_2.2.2 {
|
||||||
__nss_hostname_digits_dots;
|
__nss_hostname_digits_dots;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
_nss_files_parse_grent; _nss_files_parse_pwent; _nss_files_parse_spent;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
libnss_files {
|
libnss_files {
|
||||||
GLIBC_2.0 {
|
GLIBC_PRIVATE {
|
||||||
_nss_files_setaliasent;
|
_nss_files_setaliasent;
|
||||||
_nss_files_endaliasent;
|
_nss_files_endaliasent;
|
||||||
_nss_files_getaliasbyname_r;
|
_nss_files_getaliasbyname_r;
|
||||||
@ -81,8 +83,6 @@ libnss_files {
|
|||||||
_nss_files_getspnam_r;
|
_nss_files_getspnam_r;
|
||||||
|
|
||||||
_nss_netgroup_parseline;
|
_nss_netgroup_parseline;
|
||||||
}
|
|
||||||
GLIBC_2.1 {
|
|
||||||
_nss_files_getpublickey;
|
_nss_files_getpublickey;
|
||||||
_nss_files_getsecretkey;
|
_nss_files_getsecretkey;
|
||||||
}
|
}
|
||||||
|
@ -3,10 +3,6 @@ libc {
|
|||||||
# functions with special/multiple interfaces
|
# functions with special/multiple interfaces
|
||||||
__bsd_getpgrp; __setpgid; __getpgid;
|
__bsd_getpgrp; __setpgid; __getpgid;
|
||||||
|
|
||||||
# functions which have an additional interface since they are
|
|
||||||
# are cancelable.
|
|
||||||
__libc_wait; __libc_waitpid; __libc_pause; __libc_nanosleep;
|
|
||||||
|
|
||||||
# functions with required interface outside normal name space
|
# functions with required interface outside normal name space
|
||||||
_exit;
|
_exit;
|
||||||
|
|
||||||
@ -86,11 +82,7 @@ libc {
|
|||||||
}
|
}
|
||||||
GLIBC_2.1.2 {
|
GLIBC_2.1.2 {
|
||||||
# functions used in other libraries
|
# functions used in other libraries
|
||||||
__libc_fork; __vfork;
|
__vfork;
|
||||||
}
|
|
||||||
GLIBC_2.1.3 {
|
|
||||||
# For the cancelation wrappers.
|
|
||||||
__libc_pread; __libc_pread64; __libc_pwrite; __libc_pwrite64;
|
|
||||||
}
|
}
|
||||||
GLIBC_2.2 {
|
GLIBC_2.2 {
|
||||||
# p*
|
# p*
|
||||||
@ -113,4 +105,10 @@ libc {
|
|||||||
# Extended Interface.
|
# Extended Interface.
|
||||||
fnmatch;
|
fnmatch;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# functions which have an additional interface since they are
|
||||||
|
# are cancelable.
|
||||||
|
__libc_wait; __libc_waitpid; __libc_pause; __libc_nanosleep; __libc_fork;
|
||||||
|
__libc_pread; __libc_pread64; __libc_pwrite; __libc_pwrite64;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -22,7 +22,7 @@ libc {
|
|||||||
# r*
|
# r*
|
||||||
__res_state; __res_init; __res_nclose; __res_ninit; _res_hconf;
|
__res_state; __res_init; __res_nclose; __res_ninit; _res_hconf;
|
||||||
}
|
}
|
||||||
GLIBC_2.2.3 {
|
GLIBC_PRIVATE {
|
||||||
__gai_sigqueue;
|
__gai_sigqueue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -49,21 +49,21 @@ libresolv {
|
|||||||
__res_send;
|
__res_send;
|
||||||
__sym_ntop; __sym_ntos; __sym_ston;
|
__sym_ntop; __sym_ntos; __sym_ston;
|
||||||
}
|
}
|
||||||
GLIBC_2.1 {
|
|
||||||
# Needed in libnss_dns.
|
|
||||||
__ns_name_unpack; __ns_name_ntop;
|
|
||||||
}
|
|
||||||
GLIBC_2.2 {
|
GLIBC_2.2 {
|
||||||
__dn_expand;
|
__dn_expand;
|
||||||
__ns_get16; __ns_samename;
|
|
||||||
__res_hostalias; __res_mkquery; __res_nmkquery; __res_nquery;
|
__res_hostalias; __res_mkquery; __res_nmkquery; __res_nquery;
|
||||||
__res_nquerydomain; __res_nsearch; __res_nsend; __res_query;
|
__res_nquerydomain; __res_nsearch; __res_nsend; __res_query;
|
||||||
__res_querydomain; __res_search;
|
__res_querydomain; __res_search;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# Needed in libnss_dns.
|
||||||
|
__ns_name_unpack; __ns_name_ntop;
|
||||||
|
__ns_get16; __ns_samename;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
libnss_dns {
|
libnss_dns {
|
||||||
GLIBC_2.0 {
|
GLIBC_PRIVATE {
|
||||||
_nss_dns_gethostbyaddr_r; _nss_dns_gethostbyname2_r;
|
_nss_dns_gethostbyaddr_r; _nss_dns_gethostbyname2_r;
|
||||||
_nss_dns_gethostbyname_r; _nss_dns_getnetbyaddr_r;
|
_nss_dns_gethostbyname_r; _nss_dns_getnetbyaddr_r;
|
||||||
_nss_dns_getnetbyname_r;
|
_nss_dns_getnetbyname_r;
|
||||||
|
@ -9,7 +9,7 @@ libc {
|
|||||||
# s*
|
# s*
|
||||||
setjmp;
|
setjmp;
|
||||||
}
|
}
|
||||||
GLIBC_2.1 {
|
GLIBC_PRIVATE {
|
||||||
# helper functions
|
# helper functions
|
||||||
__libc_longjmp; __libc_siglongjmp;
|
__libc_longjmp; __libc_siglongjmp;
|
||||||
}
|
}
|
||||||
|
@ -1,10 +1,5 @@
|
|||||||
libc {
|
libc {
|
||||||
GLIBC_2.0 {
|
GLIBC_2.0 {
|
||||||
# functions which have an additional interface since they are
|
|
||||||
# are cancelable.
|
|
||||||
__libc_accept; __libc_send; __libc_recvfrom;
|
|
||||||
__libc_recvmsg; __libc_sendmsg; __libc_recv; __libc_sendto; __libc_connect;
|
|
||||||
|
|
||||||
# functions used in other libraries
|
# functions used in other libraries
|
||||||
__connect; __send;
|
__connect; __send;
|
||||||
|
|
||||||
@ -36,4 +31,10 @@ libc {
|
|||||||
# Addition from P1003.1-200x
|
# Addition from P1003.1-200x
|
||||||
sockatmark;
|
sockatmark;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# functions which have an additional interface since they are
|
||||||
|
# cancelable.
|
||||||
|
__libc_accept; __libc_send; __libc_recvfrom;
|
||||||
|
__libc_recvmsg; __libc_sendmsg; __libc_recv; __libc_sendto; __libc_connect;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,7 @@
|
|||||||
libc {
|
libc {
|
||||||
GLIBC_2.0 {
|
GLIBC_2.0 {
|
||||||
# global variables
|
# global variables
|
||||||
_itoa_lower_digits; _itoa_upper_digits; _sys_errlist; _sys_nerr;
|
_sys_errlist; _sys_nerr; _sys_siglist;
|
||||||
_sys_siglist;
|
|
||||||
|
|
||||||
# functions used in other libraries
|
# functions used in other libraries
|
||||||
__printf_fp; __vfscanf;
|
__printf_fp; __vfscanf;
|
||||||
@ -47,4 +46,7 @@ libc {
|
|||||||
# t*
|
# t*
|
||||||
tmpfile; tmpfile64;
|
tmpfile; tmpfile64;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# global variables
|
||||||
|
_itoa_lower_digits; _itoa_upper_digits;
|
||||||
}
|
}
|
||||||
|
@ -1,9 +1,5 @@
|
|||||||
libc {
|
libc {
|
||||||
GLIBC_2.0 {
|
GLIBC_2.0 {
|
||||||
# functions which have an additional interface since they are
|
|
||||||
# are cancelable.
|
|
||||||
__libc_system;
|
|
||||||
|
|
||||||
# functions with required interface outside normal name space
|
# functions with required interface outside normal name space
|
||||||
__xpg_basename;
|
__xpg_basename;
|
||||||
|
|
||||||
@ -94,4 +90,9 @@ libc {
|
|||||||
# used by new G++ ABI
|
# used by new G++ ABI
|
||||||
__cxa_atexit; __cxa_finalize;
|
__cxa_atexit; __cxa_finalize;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# functions which have an additional interface since they are
|
||||||
|
# are cancelable.
|
||||||
|
__libc_system;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -110,7 +110,11 @@ libc {
|
|||||||
svc_getreq_common; svc_getreq_poll; svc_max_pollfd; svc_pollfd;
|
svc_getreq_common; svc_getreq_poll; svc_max_pollfd; svc_pollfd;
|
||||||
}
|
}
|
||||||
GLIBC_2.2.3 {
|
GLIBC_2.2.3 {
|
||||||
__rpc_thread_destroy; __rpc_thread_svc_fdset; __rpc_thread_createerr;
|
__rpc_thread_svc_fdset; __rpc_thread_createerr;
|
||||||
__rpc_thread_svc_pollfd; __rpc_thread_svc_max_pollfd;
|
__rpc_thread_svc_pollfd; __rpc_thread_svc_max_pollfd;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# needed by libpthread.
|
||||||
|
__rpc_thread_destroy;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
ld {
|
ld {
|
||||||
GLIBC_2.2 {
|
GLIBC_PRIVATE {
|
||||||
# hppa specific functions in the dynamic linker, but used by libc.so.
|
# hppa specific functions in the dynamic linker, but used by libc.so.
|
||||||
_dl_symbol_address; _dl_unmap; _dl_lookup_address;
|
_dl_symbol_address; _dl_unmap; _dl_lookup_address;
|
||||||
_dl_function_address;
|
_dl_function_address;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
ld {
|
ld {
|
||||||
GLIBC_2.2 {
|
GLIBC_PRIVATE {
|
||||||
# ia64 specific functions in the dynamic linker, but used by libc.so.
|
# ia64 specific functions in the dynamic linker, but used by libc.so.
|
||||||
_dl_symbol_address; _dl_unmap; _dl_lookup_address;
|
_dl_symbol_address; _dl_unmap; _dl_lookup_address;
|
||||||
_dl_function_address;
|
_dl_function_address;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
libc {
|
libc {
|
||||||
GLIBC_2.2.3 {
|
GLIBC_PRIVATE {
|
||||||
__libm_frexp_4; __libm_frexp_4f; __libm_frexp_4l; __libm_error_support;
|
__libm_frexp_4; __libm_frexp_4f; __libm_frexp_4l; __libm_error_support;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -55,9 +55,6 @@ libc {
|
|||||||
# functions used in inline functions or macros
|
# functions used in inline functions or macros
|
||||||
__libc_sa_len;
|
__libc_sa_len;
|
||||||
|
|
||||||
# functions used in other libraries
|
|
||||||
__syscall_rt_sigqueueinfo;
|
|
||||||
|
|
||||||
# Since we have new signals this structure changed.
|
# Since we have new signals this structure changed.
|
||||||
_sys_siglist; sys_siglist; sys_sigabbrev;
|
_sys_siglist; sys_siglist; sys_sigabbrev;
|
||||||
|
|
||||||
@ -84,8 +81,7 @@ libc {
|
|||||||
}
|
}
|
||||||
GLIBC_2.2 {
|
GLIBC_2.2 {
|
||||||
# needed in other libraries.
|
# needed in other libraries.
|
||||||
__endmntent; __getmntent_r; __setmntent; __statfs; __libc_sigaction;
|
__endmntent; __getmntent_r; __setmntent; __statfs; __sysctl;
|
||||||
__sysctl;
|
|
||||||
|
|
||||||
# ipc ctl interface change.
|
# ipc ctl interface change.
|
||||||
semctl; shmctl; msgctl;
|
semctl; shmctl; msgctl;
|
||||||
@ -94,4 +90,11 @@ libc {
|
|||||||
# p*
|
# p*
|
||||||
pivot_root;
|
pivot_root;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# needed by libpthread.
|
||||||
|
__libc_sigaction;
|
||||||
|
|
||||||
|
# functions used in other libraries
|
||||||
|
__syscall_rt_sigqueueinfo;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/* fxstat64 using old-style Unix fstat system call.
|
/* fxstat64 using old-style Unix fstat system call.
|
||||||
Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
|
Copyright (C) 1997,1998,1999,2000,2001,2002 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
@ -85,11 +85,16 @@ ___fxstat64 (int vers, int fd, struct stat64 *buf)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#include <shlib-compat.h>
|
#ifndef RTLD_STAT64
|
||||||
|
# include <shlib-compat.h>
|
||||||
|
|
||||||
versioned_symbol (libc, ___fxstat64, __fxstat64, GLIBC_2_2);
|
versioned_symbol (libc, ___fxstat64, __fxstat64, GLIBC_2_2);
|
||||||
|
|
||||||
#if SHLIB_COMPAT(libc, GLIBC_2_1, GLIBC_2_2)
|
# if SHLIB_COMPAT(libc, GLIBC_2_1, GLIBC_2_2)
|
||||||
strong_alias (___fxstat64, __old__fxstat64)
|
strong_alias (___fxstat64, __old__fxstat64)
|
||||||
compat_symbol (libc, __old__fxstat64, __fxstat64, GLIBC_2_1);
|
compat_symbol (libc, __old__fxstat64, __fxstat64, GLIBC_2_1);
|
||||||
|
# endif
|
||||||
|
|
||||||
|
#else
|
||||||
|
strong_alias (___fxstat64, __fxstat64);
|
||||||
#endif
|
#endif
|
||||||
|
@ -9,7 +9,7 @@ libc {
|
|||||||
vm86;
|
vm86;
|
||||||
}
|
}
|
||||||
GLIBC_2.1 {
|
GLIBC_2.1 {
|
||||||
__modify_ldt; modify_ldt;
|
modify_ldt;
|
||||||
}
|
}
|
||||||
GLIBC_2.2 {
|
GLIBC_2.2 {
|
||||||
# functions used in other libraries
|
# functions used in other libraries
|
||||||
@ -33,4 +33,7 @@ libc {
|
|||||||
# v*
|
# v*
|
||||||
versionsort64;
|
versionsort64;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
__modify_ldt;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,9 +1,5 @@
|
|||||||
ld {
|
ld {
|
||||||
GLIBC_2.2 {
|
GLIBC_PRIVATE {
|
||||||
# global variables needed in the libc.
|
|
||||||
_dl_pagesize;
|
|
||||||
}
|
|
||||||
GLIBC_2.2.1 {
|
|
||||||
_dl_var_init;
|
_dl_var_init;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/* lxstat64 using old-style Unix lstat system call.
|
/* lxstat64 using old-style Unix lstat system call.
|
||||||
Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
|
Copyright (C) 1997,1998,1999,2000,2001,2002 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
@ -87,11 +87,16 @@ ___lxstat64 (int vers, const char *name, struct stat64 *buf)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#include <shlib-compat.h>
|
#ifndef RTLD_STAT64
|
||||||
|
# include <shlib-compat.h>
|
||||||
|
|
||||||
versioned_symbol (libc, ___lxstat64, __lxstat64, GLIBC_2_2);
|
versioned_symbol (libc, ___lxstat64, __lxstat64, GLIBC_2_2);
|
||||||
|
|
||||||
#if SHLIB_COMPAT(libc, GLIBC_2_1, GLIBC_2_2)
|
# if SHLIB_COMPAT(libc, GLIBC_2_1, GLIBC_2_2)
|
||||||
strong_alias (___lxstat64, __old__lxstat64)
|
strong_alias (___lxstat64, __old__lxstat64)
|
||||||
compat_symbol (libc, __old__lxstat64, __lxstat64, GLIBC_2_1);
|
compat_symbol (libc, __old__lxstat64, __lxstat64, GLIBC_2_1);
|
||||||
|
# endif
|
||||||
|
|
||||||
|
#else
|
||||||
|
strong_alias (___lxstat64, __lxstat64);
|
||||||
#endif
|
#endif
|
||||||
|
@ -4,6 +4,9 @@ libc {
|
|||||||
|
|
||||||
ioperm; iopl;
|
ioperm; iopl;
|
||||||
|
|
||||||
__modify_ldt; modify_ldt;
|
modify_ldt;
|
||||||
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
__modify_ldt;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/* xstat64 using old-style Unix stat system call.
|
/* xstat64 using old-style Unix stat system call.
|
||||||
Copyright (C) 1991,95,96,97,98,99,2000,2001 Free Software Foundation, Inc.
|
Copyright (C) 1991,95,96,97,98,99,2000,01,02 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
@ -91,11 +91,16 @@ ___xstat64 (int vers, const char *name, struct stat64 *buf)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#include <shlib-compat.h>
|
#ifndef RTLD_STAT64
|
||||||
|
# include <shlib-compat.h>
|
||||||
|
|
||||||
versioned_symbol (libc, ___xstat64, __xstat64, GLIBC_2_2);
|
versioned_symbol (libc, ___xstat64, __xstat64, GLIBC_2_2);
|
||||||
|
|
||||||
#if SHLIB_COMPAT(libc, GLIBC_2_1, GLIBC_2_2)
|
# if SHLIB_COMPAT(libc, GLIBC_2_1, GLIBC_2_2)
|
||||||
strong_alias (___xstat64, __old__xstat64)
|
strong_alias (___xstat64, __old__xstat64)
|
||||||
compat_symbol (libc, __old__xstat64, __xstat64, GLIBC_2_1);
|
compat_symbol (libc, __old__xstat64, __xstat64, GLIBC_2_1);
|
||||||
|
# endif
|
||||||
|
|
||||||
|
#else
|
||||||
|
strong_alias (___xstat64, __xstat64);
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,9 +1,5 @@
|
|||||||
libc {
|
libc {
|
||||||
GLIBC_2.0 {
|
GLIBC_2.0 {
|
||||||
# functions which have an additional interface since they are
|
|
||||||
# are cancelable.
|
|
||||||
__libc_tcdrain;
|
|
||||||
|
|
||||||
# c*
|
# c*
|
||||||
cfgetispeed; cfgetospeed; cfmakeraw; cfsetispeed; cfsetospeed; cfsetspeed;
|
cfgetispeed; cfgetospeed; cfmakeraw; cfsetispeed; cfsetospeed; cfsetspeed;
|
||||||
|
|
||||||
@ -15,4 +11,9 @@ libc {
|
|||||||
# t*
|
# t*
|
||||||
tcgetsid;
|
tcgetsid;
|
||||||
}
|
}
|
||||||
|
GLIBC_PRIVATE {
|
||||||
|
# functions which have an additional interface since they are
|
||||||
|
# are cancelable.
|
||||||
|
__libc_tcdrain;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user