Commit Graph

951 Commits

Author SHA1 Message Date
Roland McGrath
a162642d80 * sysdeps/generic/libc-tls.c (__libc_setup_tls): Make the phdr loop
actually iterate over the elements.  Fix typo p_type -> p_vaddr.

	* include/pthread.h: Don't declare __pthread_initialize_minimal as
	weak here; we declare it weak or strong in the one place we use it.
	* sysdeps/generic/libc-start.c: ... which is here.
	Don't make the decl weak if [USE_TLS], since static programs need TLS
	setup even when single-threaded.
2002-08-05 06:38:00 +00:00
Roland McGrath
a4dda453b8 * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Allocate the
TCB with __libc_memalign instead of mmap.
	(_dl_deallocate_tls): Free it with free instad of munmap.
2002-08-05 01:28:17 +00:00
Roland McGrath
a816b435dd * Makerules (cpp-srcs-left): When setting this to run
cppflags-iterator.mk, must append .c to $(tests) and $(xtests)
	words.  Combine the two loops into one on the concatenated list,
	including those as well as $(test-srcs).

	* elf/dl-minimal.c (__libc_memalign): Guts of malloc moved here,
	since we align here with optimally minimal waste anyway.
	(malloc): Just call that.

	* sysdeps/generic/libc-tls.c (__libc_setup_tls): Set l_tls_offset to
	the right variable.

	* elf/dl-load.c (_dl_map_object_from_fd): Use p_vaddr, not p_offset,
	to compute memory location for l_tls_initimage.
	* elf/rtld.c (_dl_start): Likewise.
	* sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.

	* libio/oldiopopen.c: Move #include's before #if SHLIB_COMPAT,
	because the .d file is generated in the non-shared case and
	so fails to catch them otherwise.

	* sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): New function,
	split out of _dl_allocate_tls.
	(_dl_allocate_tls_init): Likewise.
	(_dl_allocate_tls): Call those.
	* sysdeps/generic/ldsodefs.h: Declare them with attribute_hidden.
	* elf/rtld.c (dl_main): Call them separately instead of calling
	_dl_allocate_tls.  Delay _dl_allocate_tls_init until after relocation
	is finished, so that the initializer data has been relocated before we
	copy it into the main thread's TLS block.

	* sysdeps/generic/dl-tls.c (_dl_allocate_tls): Fix off-by-one error in
	loop conditions, prevented the last used module from being initialized.
2002-08-05 01:21:25 +00:00
Roland McGrath
581dc54b74 2002-08-04 Roland McGrath <roland@redhat.com>
* sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): New function,
	split out of _dl_allocate_tls.
	(_dl_allocate_tls_init): Likewise.
	(_dl_allocate_tls): Call those.
	* sysdeps/generic/ldsodefs.h: Declare them with attribute_hidden.
	* elf/rtld.c (dl_main): Call them separately instead of calling
	_dl_allocate_tls.  Delay _dl_allocate_tls_init until after relocation
	is finished, so that the initializer data has been relocated before we
	copy it into the main thread's TLS block.
	* sysdeps/generic/dl-tls.c (_dl_allocate_tls): Fix off-by-one error in
	loop conditions, prevented the last used module from being initialized.
2002-08-05 01:20:52 +00:00
Ulrich Drepper
855efb5f6f Update.
2002-08-04  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/glob.c (glob, globfree): Only use libc_hidden_def
	if glob resp. globfree are not macros.
	* sysdeps/gnu/glob64.c (globfree64): Add libc_hidden_def.
	* sysdeps/unix/sysv/linux/alpha/glob.c (glob, globfree, globfree64):
	Add libc_hidden_ver.
	* sysdeps/unix/sysv/linux/i386/glob64.c (globfree64): Add
	libc_hidden_def.
	* sysdeps/wordsize-64/glob.c (globfree64): Use libc_hidden_ver
	instead of libc_hidden_weak.
	* sysdeps/wordsize-64/strtol.c (__strtoll_internal): Use
	libc_hidden_ver instead of libc_hidden_def.
	* sysdeps/wordsize-64/wcstol.c (__wcstoll_internal): Use
	libc_hidden_ver instead of libc_hidden_def.
	(wcstoll, wcstoq): Remove libc_hidden_weak.
	* sysdeps/wordsize-64/strtol_l.c (____strtoll_l_internal): Add
	libc_hidden_ver.
	* sysdeps/wordsize-64/strtoul.c (__strtoull_internal): Add
	libc_hidden_ver.
	* sysdeps/wordsize-64/strtoul_l.c (____strtoull_l_internal): Add
	libc_hidden_ver.
	* sysdeps/wordsize-64/wcstoul.c (__wcstoull_internal): Add
	libc_hidden_ver.
2002-08-05 00:43:00 +00:00
Ulrich Drepper
230491f02c Update.
2002-08-04  Ulrich Drepper  <drepper@redhat.com>

	* stdio-common/psignal.c: Declare _sys_siglist_internal.  Use USEINT
	to access _sys_siglist.
	* string/strsignal.c: Likewise.
	* sysdeps/generic/siglist.c: Add _sys_siglist_internal alias.
	* sysdeps/gnu/siglist.c: Likewise.
	* sysdeps/unix/siglist.c: Likewise.
	* sysdeps/unix/sysv/linux/arm/siglist.c: Likewise.

	* libio/fileops.c: Add missing INTUSEs for _IO_file_jumps.

	* libio/wfileops.c: Add missing INTUSE for _IO_file_close.

	* intl/dcigettext.c: Define _nl_default_dirname_internal as hidden
	alias and use it.
	* intl/bindtextdom.c: Use _nl_default_dirname_internal.

	* include/netinet/in.h: Add declaration of in6addr_loopback_internal.
	* inet/in6_addr.c: Add INTVARDEF for in6addr_loopback.
	* sysdeps/posix/getaddrinfo.c: Use INTUSE for in6addr_loopback access.

	* include/time.h: Add libc_hidden_proto for __gmtime_r.
	* time/gmtime.c (__gmtime_r): Add libc_hidden_def.

	* iconv/Versions: Replace __gconv_alias_db, __gconv_modules_db,
	and __gconv_cache with __gconv_get_alias_db, __gconv_get_modules_db,
	and __gconv_get_cache respectively.
	* iconv/gconv_cache.c (gconv_cache): Renamed for __gconv_cache and
	defined static.  Change all users.
	(__gconv_get_cache): New function.
	* iconv/gconv_db.c (__gconv_get_modules_db): New function.
	(__gconv_get_alias_db): New function.
	* iconv/gconv_int.h (__gconv_alias_db): Declare as hidden.
	(__conv_modules_db): Likewise.
	Add prototypes for __gconv_get_cache, __gconv_get_modules_db,
	and __gconv_get_alias_db.
	* iconv/iconv_prog.c: Use the new functions instead of accessing the
	variables.

	* include/stdlib.h: Add prototype and libc_hidden_proto for
	__default_morecore.
	* sysdeps/generic/morecore.c: Include <stdlib.h>.

	* malloc/obstack.c: Remove fputs macro.

	* malloc/mtrace.c: Remove fopen macro.
2002-08-04 23:32:14 +00:00
Ulrich Drepper
a20d8dbee7 Update.
2002-08-04  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-addr.c (_dl_addr): Add libc_hidden_def.
	* elf/dl-close.c (_dl_close): Add libc_hidden_def.
	* elf/dl-open.c (_dl_open): Add libc_hidden_def.
	* include/dlfcn.h: Add libc_hidden_proto for _dl_addr, _dl_open,
	_dl_close.

	* include/libio.h: Add libc_hidden_proto for __underflow, __wuflow,
	__wunderflow.
	* libio/genops.c (__underflow): Add libc_hidden_def.
	* libio/wgenops.c (__wuflow): Likewise.
	(__wunderflow): Likewise.

	* include/obstack.h: Add libc_hidden_proto for _obstack_newchunk.
	* malloc/obstack.c (_obstack_newchunk): Add libc_hidden_def.

	* include/stdio.h: Add libc_hidden_proto for __vfscanf.
	* stdio-common/vfscanf.c (__vfscanf): Add libc_hidden_def.

	* include/string.h: Add libc_hidden_proto for __strverscmp.
	* string/strverscmp.c (__strverscmp): Add libc_hidden_def.

	* include/unistd.h: Add libc_hidden_proto for __sysconf.
	* sysdeps/generic/sysconf.c (__sysconf): Add libc_hidden_def.
	* sysdeps/posix/sysconf.c: Likewise.
	* sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
	* sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.

	* include/wctype.h: Use libc_hidden_proto for __iswctype, __iswalnum_l,
	__iswalpha_l, __iswblank_l, __iswcntrl_l, __iswdigit_l, __iswlower_l,
	__iswgraph_l, __iswprint_l, __iswpunct_l, __iswspace_l, __iswupper_l,
	__iswxdigit_l, __towlower_l, __towupper_l.
	* wcsmbs/wcstype.c (__iswctype): Use libc_hidden_def.
	* wcsmbs/wcfuncs_l.c: Use libc_hidden_def for all functions.

	* include/sys/wait.h: Add libc_hidden_proto for __xmknod.
	* sysdeps/generic/xmknod.c (__xmknod): Add libc_hidden_def.
	* sysdeps/mach/hurd/xmknod.c: Likewise.
	* sysdeps/unix/xmknod.c: Likewise.
	* sysdeps/unix/sysv/linux/xmknod.c: Likewise.
	* sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.

	* sunrpc/svc.c: Add missing INTUSE for _authenticate.
2002-08-04 09:27:27 +00:00
Roland McGrath
a14f26ef69 * include/sys/resource.h: Use libc_hidden_proto for getpriority,
setpriority.
	* sysdeps/unix/sysv/linux/getpriority.c: Add libc_hidden_def.
	* sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
	* sysdeps/mach/hurd/setpriority.c: Likewise.
	* sysdeps/mach/hurd/getpriority.c: Likewise.
	* sysdeps/generic/setpriority.c: Likewise.
	* sysdeps/generic/getpriority.c: Likewise.

	* include/mcheck.h: Use libc_hidden_proto for mcheck_check_all.
	* malloc/mcheck.c: Add libc_hidden_def.

	* include/search.h: Use libc_hidden_proto for hcreate_r, hdestroy_r.
	* misc/hsearch_r.c: Add libc_hidden_def.

	* include/fnmatch.h: Use libc_hidden_proto for fnmatch.
	* posix/fnmatch.c: Add libc_hidden_weak.
2002-08-04 03:50:21 +00:00
Roland McGrath
c41f555e0c * include/unistd.h: Use libc_hidden_proto for _exit, alarm, confstr,
execl, execle, execlp, execvp, getpid, getsid.
	* sysdeps/generic/alarm.c: Add libc_hidden_def.
	* sysdeps/unix/alarm.c: Likewise.
	* posix/confstr.c: Likewise.
	* posix/execvp.c: Likewise.
	* posix/execlp.c: Likewise.
	* posix/execle.c: Likewise.
	* posix/execl.c: Likewise.
	* sysdeps/generic/getsid.c: Likewise.
	* sysdeps/mach/hurd/getsid.c: Likewise.
	* sysdeps/generic/getpid.c: Add libc_hidden_weak.
	* sysdeps/mach/hurd/getpid.c: Likewise.

	* include/stdlib.h: Use libc_hidden_proto for ecvt_r, fcvt_r,
	qecvt_r, qfcvt_r, lrand48_r.
	* misc/efgcvt_r.c: Add libc_hidden_def.

	* include/wordexp.h: Use libc_hidden_proto for wordfree.
	* sysdeps/generic/wordexp.c: Add libc_hidden_def.

	* include/langinfo.h: Use libc_hidden_proto for nl_langinfo.
	* locale/nl_langinfo.c: Add libc_hidden_def.

	* include/glob.h: Use libc_hidden_proto for glob, globfree, globfree64.
	* sysdeps/generic/glob.c: Add libc_hidden_def.
	* sysdeps/generic/glob64.c: Likewise.
	* sysdeps/wordsize-64/glob.c (globfree64): Add libc_hidden_weak.
2002-08-04 03:30:56 +00:00
Roland McGrath
509d1b6842 * include/search.h: Use libc_hidden_proto for hsearch_r, lfind.
* misc/hsearch_r.c: Add libc_hidden_def.
	* misc/lsearch.c: Likewise.

	* include/ttyent.h: Use libc_hidden_proto for getttyent, setttyent,
	endttyent.
	* misc/getttyent.c: Add libc_hidden_def.

	* include/mcheck.h: Use libc_hidden_proto for mcheck.
	* malloc/mcheck.c: Add libc_hidden_def.

	* include/envz.h: Use libc_hidden_proto for envz_entry, enz_remove.
	* include/argz.h: Use libc_hidden_proto for argz_delete.
	* string/argz-delete.c: Add libc_hidden_def.
	* string/envz.c: Likewise.  Use <envz.h>, not "envz.h".

	* sysdeps/unix/sysv/linux/x86_64/clone.S (thread_start): Use
	HIDDEN_JUMPTARGET for _exit.
	* sysdeps/unix/sysv/linux/m68k/clone.S (thread_start): Likewise.
	* sysdeps/unix/sysv/linux/i386/clone.S (thread_start): Likewise.
	* sysdeps/unix/sysv/linux/powerpc/clone.S: Likewise.
	* sysdeps/unix/_exit.S (_exit): Add libc_hidden_def.

	* include/libc-symbols.h: Fix [__ASSEMBLY__] -> [__ASSEMBLER__].
	[__ASSEMBLER__] (hidden_weak): Define using hidden_def, or to empty.
	[__ASSEMBLER__] (HIDDEN_JUMPTARGET): New macro.
	* sysdeps/unix/sysv/linux/i386/makecontext.S: Use it for exit.

	* include/stdlib.h: Use libc_hidden_proto for abort,
	__strtof_internal, __strtod_internal, __strtold_internal,
	__strtol_internal, __strtoll_internal, __strtoul_internal,
	__strtoull_internal. __strtof_l_internal, __strtod_l_internal,
	__strtold_l_internal, __strtol_l_internal, __strtoll_l_internal,
	__strtoul_l_internal, __strtoull_l_internal.
	* include/wchar.h: Use libc_hidden_proto for __wcstof_internal,
	__wcstod_internal, __wcstold_internal, __wcstol_internal,
	__wcstoll_internal, __wcstoul_internal, ____wcstof_l_internal,
	____wcstod_l_internal, ____wcstold_l_internal, ____wcstol_l_internal,
	____wcstoll_l_internal, ____wcstoul_l_internal, __wcscasecmp_l,
	__wcsncasecmp_l.
	* sysdeps/generic/abort.c: Add libc_hidden_def.
	* stdlib/strtod.c: Likewise.
	* sysdeps/generic/strtol.c: Likewise.
	* sysdeps/wordsize-64/strtol.c: Likewise.
	* sysdeps/wordsize-64/wcstol.c: Likewise.
	* sysdeps/wordsize-64/wcstol_l.c: Likewise.
2002-08-04 01:29:29 +00:00
Ulrich Drepper
6111cd0e8a (__stpcpy): Add libc_hidden_def. 2002-08-04 01:22:11 +00:00
Roland McGrath
02926a63a1 * sysdeps/posix/raise.c: Likewise.
* sysdeps/generic/raise.c: Likewise.
2002-08-03 22:46:42 +00:00
Roland McGrath
284128f68f * include/stdlib.h: Use libc_hidden_proto for qsort.
* stdlib/msort.c: Add libc_hidden_def.

	* include/utime.h: Use libc_hidden_proto for utime.
	* sysdeps/generic/utime.c: Add libc_hidden_def.
	* sysdeps/unix/utime.c: Likewise.

	* sysdeps/generic/utmp_file.c (LOCK_FILE): sigemptyset -> __sigemptyset
	* sysdeps/posix/profil.c (__profil): sigfillset -> __sigfillset
	* sysdeps/posix/sprofil.c (__sprofil): Likewise.
	* shadow/lckpwdf.c (__lckpwdf): Likewise (both).
	* sysdeps/posix/spawni.c (__spawni): sigismember -> __sigismember

	* include/signal.h: Use libc_hidden_proto for raise, sigemptyset,
	sigfillset, sigismember, __sigpause, __libc_current_sigrtmin,
	and __libc_current_sigrtmax.
	* signal/sigismem.c: Add libc_hidden_def.
	* signal/sigfillset.c: Likewise.
	* signal/sigempty.c: Likewise.
	* sysdeps/generic/sigpause.c (__sigpause): Likewise.
	* sysdeps/posix/sigpause.c (__sigpause): Likewise.
	* sysdeps/unix/bsd/osf/alpha/sigpause.S: Likewise.
2002-08-03 22:26:33 +00:00
Roland McGrath
5841dad9e3 2002-08-03 Roland McGrath <roland@redhat.com>
* include/signal.h: Use libc_hidden_proto for raise, sigemptyset,
	sigfillset, sigismember, __sigpause, __libc_current_sigrtmin,
	and __libc_current_sigrtmax.
	* signal/sigismem.c: Add libc_hidden_def.
	* signal/sigfillset.c: Likewise.
	* signal/sigempty.c: Likewise.
	* sysdeps/generic/sigpause.c (__sigpause): Likewise.
	* sysdeps/posix/sigpause.c (__sigpause): Likewise.
	* sysdeps/unix/bsd/osf/alpha/sigpause.S: Likewise.
2002-08-03 22:26:02 +00:00
Ulrich Drepper
5b070c7513 Update.
2002-08-03  Ulrich Drepper  <drepper@redhat.com>

	* include/string.h: Use libc_hidden_proto for __strcasecmp_l,
	__strncasecmp_l, __strdup, __strndup, __strerror_r.
	* sysdeps/generic/strcasecmp_l.c (__strcasecmp_l): Add
	libc_hidden_def.
	* string/strdup.c (__strdup): Likewise.
	* string/strndup.c (__strndup): Likewise.
	* sysdeps/generic/_strerror.c (__strerror_r): Likewise.
	* sysdeps/generic/strncase_l.c (__strncasecmp_l): Likewise.
2002-08-03 21:19:56 +00:00
Ulrich Drepper
602d9786f1 Update.
* include/libio.h: New file.
	* libio/libioP.h (__overflow, __woverflow): Remove libc_hidden_proto.
	* libio/iolibio.h: #include <libio.h>, not "libio.h".
	* sysdeps/generic/morecore.c (__sbrk): Add libc_hidden_proto.
	* sysdeps/unix/bsd/syscalls.list: Remove all __GI_* aliases.
	* sysdeps/unix/common/syscalls.list: Likewise.
	* sysdeps/unix/inet/syscalls.list: Likewise.
	* sysdeps/unix/sysv/irix4/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/syscalls.list: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/syscalls.list: Likewise.
	* sysdeps/unix/syscalls.list: Likewise.

2002-08-03  Jakub Jelinek  <jakub@redhat.com>
	the arguments is big enough to cause an overflow.
2002-08-03 19:46:32 +00:00
Roland McGrath
a757607d82 * include/sys/syslog.h: Use libc_hidden_proto for syslog, vsyslog.
* include/err.h: Use libc_hidden_proto for warn, warnx, vwarn, vwarn,
	verr, verrx.
	* include/stdlib.h: Use libc_hidden_proto for exit, getenv, bsearch.
	* misc/syslog.c: Add libc_hidden_def.
	* misc/err.c: Likewise.
	* stdlib/exit.c: Likewise.
	* stdlib/bsearch.c: Likewise.
	* sysdeps/generic/getenv.c: Likewise.
2002-08-03 12:59:33 +00:00
Roland McGrath
c5598d4721 * include/libc-symbols.h (hidden_weak): Define it for [__ASSEMBLER__].
* sysdeps/unix/make-syscalls.sh: Generate libc_hidden_def or
	libc_hidden_weak for every system call symbol defined.

	* include/time.h: Use libc_hidden_proto for time, asctime, mktime,
	timelocal, localtime, strftime.
	* time/asctime.c: Add libc_hidden_def.
	* time/mktime.c: Likewise.
	* time/localtime.c: Likewise.
	* time/strftime.c: Likewise.
	* time/strptime.c: Likewise.
	* sysdeps/generic/time.c: Likewise.
	* sysdeps/unix/time.c: Likewise.
	* sysdeps/unix/sysv/i386/time.S: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/time.S: Likewise.

	* include/arpa/inet.h: Use libc_hidden_proto for inet_ntop, inet_pton.
	inet_makeaddr, inet_netof, inet_addr, __inet_addr.
	* resolv/inet_ntop.c: Likewise.
	* resolv/inet_pton.c: Likewise.
	* inet/inet_mkadr.c: Add libc_hidden_def.
	* inet/inet_netof.c: Likewise.
	* resolv/inet_addr.c: Likewise.

	* include/libc-symbols.h: Remove `defined HAVE_BROKEN_ALIAS_ATTRIBUTE'
	clauses from conditionals for now.  Will have to be fixed later
	for older compilers.
2002-08-03 12:09:37 +00:00
Roland McGrath
95e2a50e9b 2002-08-03 Roland McGrath <roland@redhat.com>
* sysdeps/generic/mempcpy.c (__mempcpy): #undef it before defn.
2002-08-03 08:42:02 +00:00
Ulrich Drepper
37ba7d6663 Update.
2002-08-02  Ulrich Drepper  <drepper@redhat.com>

	* configure.in (HAVE_BROKEN_ALIAS_ATTRIBUTE): Add check for
	broken alias attribute handling.
	* config.h.in (HAVE_BROKEN_ALIAS_ATTRIBUTE): Add.

	* assert/assert.c (__assert_fail): Fix typo in comment.

	* include/rpc/rpc.h: Declare __libc_tsd_RPC_VARS if USE_TLS &&
	HAVE___THREAD.
	* sunrpc/rpc_thread.c: Don't define __libc_tsd_RPC_VARS as static
	if USE_TLS && HAVE___THREAD.
	* sunrpc/Versions [libc] (GLIBC_PRIVATE): Export __libc_tsd_RPC_VARS.

2002-08-02  Jakub Jelinek  <jakub@redhat.com>

	* assert/assert.c (__assert_fail): Remove undef.
	Replace INTDEF with libc_hidden_def.
	* assert/__assert.c (__assert): Remove INTUSE.
	* elf/dl-minimal.c (__assert_fail): Replace INTDEF with
	libc_hidden_weak.
	* include/libc-symbols.h (hidden_proto, hidden_def, hidden_weak,
	hidden_ver, libc_hidden_proto, libc_hidden_def, libc_hidden_weak,
	libc_hidden_ver, rtld_hidden_proto, rtld_hidden_def, rtld_hidden_weak,
	rltd_hidden_ver, libm_hidden_proto, libm_hidden_def, libm_hidden_weak,
	libm_hiden_ver): Define.
	* include/assert.h (__assert_fail_internal): Remove.
	(__assert_fail): Add prototype.  Add hidden_proto.
	* include/libc-internal.h (__libc_freeres, __profile_frequency): Add
	libc_hidden_proto.
	* include/wchar.h (__mbrtowc_internal, __mbrlen_internal): Remove.
	(__mbrtowc, __mbrlen): Use libc_hidden_proto.  Remove macros.
	* include/string.h (__mempcpy, __stpncpy, __rawmemchr, __strcasecmp):
	Add libc_hidden_proto.
	* include/fcntl.h (__open64, __libc_open, __libc_fcntl, __open,
	__fcntl): Add libc_hidden_proto.  Remove macros.
	(__open_internal, __fcntl_internal): Remove.
	* libio/iofdopen.c (_IO_fcntl): Remove INTUSE from __fcntl.
	* malloc/set-freeres.c (__libc_freeres): Add libc_hidden_def.
	* nss/nsswitch.h (__nss_database_lookup, __nss_next): Add
	libc_hiden_proto.
	* nss/nsswitch.c (__nss_database_lookup, __nss_next): Add
	libc_hidden_def.
	* sysdeps/generic/mempcpy.c (__mempcpy): Remove undef.
	Add libc_hidden_def.
	* sysdeps/generic/open64.c (__open64): Add libc_hidden_def.
	* sysdeps/generic/open.c (__open): Remove undef.
	Add libc_hidden_def.  Remove INTDEF.
	* sysdeps/generic/fcntl.c (__fcntl): Remove undef.
	Add libc_hidden_def.
	* sysdeps/mach/hurd/fcntl.c (__fcntl): Likewise.
	* sysdeps/i386/i586/mempcpy.S (__mempcpy): Add libc_hidden_def.
	* sysdeps/i386/i686/mempcpy.S (__mempcpy): Likewise.
	* sysdeps/mach/hurd/fcntl.c (__libc_fcntl, __fcntl): Remove undef.
	(__fcntl): Remove INTDEF2.  Add libc_hidden_weak.
	(__libc_fcntl): Add libc_hidden_def.
	* sysdeps/mach/hurd/open.c (__libc_open, __open): Remove undef.
	(__open): Remove INTDEF2.  Add libc_hidden_weak.
	(__libc_open): Add libc_hidden_def.
	* sysdeps/posix/open64.c (__open64): Add libc_hidden_weak.
	* sysdeps/standalone/open.c (__open): Add libc_hidden_def.
	* sysdeps/unix/sysv/aix/fcntl.c (__libc_fcntl, __fcntl): Remove undef.
	Add libc_hidden_def.
	* sysdeps/unix/sysv/aix/open.c (__libc_open, __open): Remove undef.
	Add libc_hidden_def.
	* sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl, __fcntl): Remove
	undef.
	(__fcntl): Remove INTDEF2.  Add libc_hidden_weak.
	(__libc_fcntl): Add libc_hidden_def.
	* sysdeps/unix/sysv/linux/syscalls.list (__fcntl_internal,
	__getpgid_internal, __chown_internal): Remove.
	(__GI___fcntl, __GI___libc_fcntl, __GI___getpgid, __GI___pipe,
	__GI___sched_setscheduler, __GI___select, __GI___setpgid,
	__GI___chown): Add.
	* sysdeps/unix/syscalls.list (__close_internal, __dup2_internal,
	__getpid_internal, __open_internal, __write_internal): Remove.
	(__GI___fcntl, __GI___libc_fcntl, __GI___open, __GI___libc_open,
	__GI___chown, __GI___close, __GI___dup2, __GI___getpid,
	__GI___libc_open, __GI___open, __GI___read, __GI___libc_read,
	__GI___select, __GI___statfs, __GI___write, __GI___libc_write): Add.
	* wcsmbs/mbrlen.c (__mbrlen): Remove undef.
	Replace INTDEF with libc_hidden_def.
	* wcsmbs/mbrtowc.c (__mbrtowc): Likewise.
	* catgets/catgetsinfo.h (__open_catalog): Add libc_hidden_proto.
	* catgets/open_catalog.c (__open_catalog): Add libc_hidden_def.
	* elf/dl-profile.c (__profile_frequency): Add libc_hidden_proto.
	* include/rpc/rpc.h (__rpc_thread_svc_fdset, __rpc_thread_createerr):
	Add libc_hidden_proto.
	* include/sys/poll.h (__poll): Add libc_hidden_proto.
	* include/sys/select.h (__select): Likewise.
	* include/sys/socket.h (__send): Likewise.
	* include/sys/statfs.h (__statfs): Likewise.
	* include/unistd.h (__pwrite64, __libc_read, __pipe, __chown, __dup2,
	__getpid, __getpgid, __setpgid, __close, __read, __write,
	__getpagesize, __sbrk): Likewise.
	(__chown_internal, __dup2_internal, __getpid_internal,
	__getpgid_internal, __close_internal, __write_internal,
	__getpagesize_internal): Remove.
	(__close, __dup2, __getpagesize, __getpgid, __getpid, __libc_write):
	Remove macros.
	* include/printf.h (__printf_fp): Add libc_hidden_proto.
	* include/sched.h (__sched_setscheduler): Likewise.
	* include/resolv.h (__res_ninit, __res_randomid): Likewise.
	* include/stdlib.h (__secure_getenv): Likewise.
	* include/signal.h (__sigaction, __sigsuspend): Likewise.
	* inet/getaliasent_r.c (NSS_attribute_hidden): Remove.
	* inet/getaliasname_r.c (NSS_attribute_hidden): Remove.
	* inet/getnetbyad_r.c (NSS_attribute_hidden): Remove.
	* inet/getnetbynm_r.c (NSS_attribute_hidden): Remove.
	* inet/getnetent_r.c (NSS_attribute_hidden): Remove.
	* inet/getproto_r.c (NSS_attribute_hidden): Remove.
	* inet/getprtent_r.c (NSS_attribute_hidden): Remove.
	* inet/getprtname_r.c (NSS_attribute_hidden): Remove.
	* inet/getrpcbyname_r.c (NSS_attribute_hidden): Remove.
	* inet/getrpcbynumber_r.c (NSS_attribute_hidden): Remove.
	* inet/getrpcent_r.c (NSS_attribute_hidden): Remove.
	* inet/getservent_r.c (NSS_attribute_hidden): Remove.
	* inet/getsrvbynm_r.c (NSS_attribute_hidden): Remove.
	* inet/getsrvbypt_r.c (NSS_attribute_hidden): Remove.
	* inet/gethstbyad_r.c (DB_LOOKUP_FCT): Remove INTUSE.
	* inet/gethstbynm2_r.c (DB_LOOKUP_FCT): Likewise.
	* inet/gethstbynm_r.c (DB_LOOKUP_FCT): Likewise.
	* inet/gethstent_r.c (DB_LOOKUP_FCT): Likewise.
	* libio/genops.c (__overflow): Add libc_hidden_def.
	* libio/iovdprintf.c: Remove libio.h include.
	* libio/libioP.h (libc_hidden_proto, libc_hidden_def,
	libc_hidden_weak): Define to nothing if not defined.
	(__overflow, __woverflow): Add libc_hidden_proto.
	* libio/wgenops.c (__woverflow): Add libc_hidden_def.
	* nss/getXXent_r.c (NSS_attribute_hidden): Remove.
	(DB_LOOKUP_FCT): Add libc_hidden_proto.
	* nss/getXXbyYY_r.c (NSS_attribute_hidden): Remove.
	(DB_LOOKUP_FCT): Add libc_hidden_proto.
	* nss/XXX-lookup.c (DB_LOOKUP_FCT): Add libc_hidden_proto
	and libc_hidden_def.
	* nss/hosts-lookup.c (__nss_hosts_lookup): Remove INTDEF.
	* posix/bsd-getpgrp.c (__getpgid_internal): Remove.
	(__getpgid): Add libc_hidden_proto.
	(__bsd_getpgrp): Remove INTUSE.
	* resolv/res_init.c (__res_ninit, __res_randomid): Add
	libc_hidden_def.
	* shadow/getspent_r.c (NSS_attribute_hidden): Remove.
	* shadow/getspnam_r.c (NSS_attribute_hidden): Remove.
	* stdio-common/printf_fp.c (__printf_fp): Add libc_hidden_def.
	* stdlib/strfmon.c (__printf_fp): Add libc_hidden_proto.
	* stdlib/secure-getenv.c (__secure_getenv): Add libc_hidden_def.
	* sunrpc/rpc_thread.c (__rpc_thread_svc_fdset,
	__rpc_thread_createerr): Add libc_hidden_def.
	* sysdeps/alpha/alphaev67/rawmemchr.S (__rawmemchr): Add
	libc_hidden_def.
	* sysdeps/alpha/alphaev67/stpncpy.S (__stpncpy): Likewise.
	* sysdeps/alpha/rawmemchr.S (__rawmemchr): Likewise.
	* sysdeps/alpha/stpncpy.S (__stpncpy): Likewise.
	* sysdeps/generic/chown.c (__chown): Likewise.
	* sysdeps/generic/close.c (__close): Likewise.
	* sysdeps/generic/dup2.c (__dup2): Likewise.
	* sysdeps/generic/pipe.c (__pipe): Likewise.
	* sysdeps/generic/prof-freq.c (__profile_frequency): Likewise.
	* sysdeps/generic/pwrite64.c (__pwrite64): Likewise.
	* sysdeps/generic/rawmemchr.c (__rawmemchr): Likewise.
	* sysdeps/generic/read.c (__libc_read): Likewise.
	(__read): Add libc_hidden_weak.
	* sysdeps/generic/sbrk.c (__sbrk): Add libc_hidden_def.
	* sysdeps/generic/sched_sets.c (__sched_setscheduler): Likewise.
	* sysdeps/generic/select.c (__select): Likewise.
	* sysdeps/generic/send.c (__send): Likewise.
	* sysdeps/generic/setpgid.c (__setpgid): Likewise.
	* sysdeps/generic/sigaction.c (__sigaction): Likewise.
	* sysdeps/generic/sigsuspend.c (__sigsuspend): Likewise.
	* sysdeps/generic/statfs.c (__statfs): Likewise.
	* sysdeps/generic/stpncpy.c (__stpncpy): Likewise.
	* sysdeps/generic/strcasecmp.c (__strcasecmp): Likewise.
	* sysdeps/generic/getpagesize.c (__getpagesize): Likewise.
	Remove undef and INTDEF.
	* sysdeps/generic/getpgid.c (__getpgid): Likewise.
	* sysdeps/generic/getpid.c (__getpid): Likewise.
	* sysdeps/generic/write.c (__libc_write): Likewise.
	(__write): Add libc_hidden_weak.  Remove undef and INTDEF.
	* sysdeps/i386/rawmemchr.S (__rawmemchr): Add libc_hidden_def.
	* sysdeps/i386/stpncpy.S (__stpncpy): Likewise.
	* sysdeps/m68k/rawmemchr.S (__rawmemchr): Likewise.
	* sysdeps/mach/hurd/chown.c (__chown): Likewise.  Remove INTDEF.
	* sysdeps/mach/hurd/close.c (__close): Add libc_hidden_def.
	Remove undef and INTDEF.
	* sysdeps/mach/hurd/dup2.c (__dup2): Likewise.
	* sysdeps/mach/hurd/getpgid.c (__getpgid): Likewise.
	* sysdeps/mach/hurd/getpid.c (__getpid): Likewise.
	* sysdeps/mach/getpagesize.c (__getpagesize): Likewise.
	* sysdeps/mach/hurd/write.c (__libc_write): Likewise.
	(__write): Add libc_hidden_weak.  Remove undef and INTDEF.
	* sysdeps/mach/hurd/pipe.c: Include unistd.h.
	(__pipe): Add libc_hidden_def.
	* sysdeps/mach/hurd/dl-sysdep.c (__libc_read, __libc_write): Add
	libc_hidden_weak.
	* sysdeps/mach/hurd/poll.c (__poll): Add libc_hidden_def.
	* sysdeps/mach/hurd/profil.c (__profile_frequency): Likewise.
	* sysdeps/mach/hurd/read.c (__libc_read): Likewise.
	(__read): Add libc_hidden_weak.
	* sysdeps/mach/hurd/pwrite64.c (__pwrite64): Likewise.
	(__libc_pwrite64): Add libc_hidden_def.
	* sysdeps/mach/hurd/sbrk.c (__sbrk): Likewise.
	* sysdeps/mach/hurd/select.c (__select): Likewise.
	* sysdeps/mach/hurd/send.c (__send): Likewise.
	* sysdeps/mach/hurd/setpgid.c (__setpgid): Likewise.
	* sysdeps/mach/hurd/sigaction.c (__sigaction): Likewise.
	* sysdeps/mach/hurd/sigsuspend.c (__sigsuspend): Likewise.
	* sysdeps/mach/hurd/statfs.c (__statfs): Likewise.
	* sysdeps/posix/dup2.c: Likewise.
	Remove undef and INTDEF.
	* sysdeps/posix/getpagesize.c (__getpagesize): Likewise.
	* sysdeps/posix/pwrite64.c (__libc_pwrite64): Add libc_hidden_def.
	(__pwrite64): Add libc_hidden_weak.
	* sysdeps/posix/sigsuspend.c (__sigsuspend): Add libc_hidden_def.
	* sysdeps/sparc/sparc64/rawmemchr.S (__rawmemchr): Likewise.
	* sysdeps/sparc/sparc64/stpncpy.S (__stpncpy): Likewise.
	* sysdeps/standalone/close.c (__close): Likewise.
	* sysdeps/standalone/write.c (__libc_write): Likewise.
	(__write): Add libc_hidden_weak.
	* sysdeps/standalone/read.c (__read): Likewise.
	(__libc_read): Add libc_hidden_def.
	* sysdeps/unix/grantpt.c (grantpt): Remove INTUSE.
	* sysdeps/unix/bsd/m68k/pipe.S (__pipe): Add libc_hidden_def.
	* sysdeps/unix/bsd/osf/alpha/pipe.S (__pipe): Likewise.
	* sysdeps/unix/bsd/vax/pipe.S (__pipe): Likewise.
	* sysdeps/unix/bsd/syscalls.list (__GI___getpagesize): Likewise.
	* sysdeps/unix/bsd/poll.c (__poll): Likewise.
	* sysdeps/unix/bsd/sigaction.c (__sigaction): Likewise.
	* sysdeps/unix/bsd/sigsuspend.c (__sigsuspend): Likewise.
	* sysdeps/unix/common/syscalls.list (__GI___getpgid, __GI___setpgid,
	__GI___sigaction): Add.
	* sysdeps/unix/i386/pipe.S (__pipe): Add libc_hidden_def.
	* sysdeps/unix/inet/syscalls.list (__GI___send): Add.
	* sysdeps/unix/mips/pipe.S (__pipe): Add libc_hidden_def.
	* sysdeps/unix/sparc/pipe.S (__pipe): Likewise.
	* sysdeps/unix/sysv/irix4/syscalls.list (__GI___getpgid,
	__GI___setpgid): Add.
	* sysdeps/unix/sysv/aix/chown.c (__chown): Add libc_hidden_def.
	Remove undef and INTDEF.
	* sysdeps/unix/sysv/aix/getpgid.c (__getpgid): Likewise.
	* sysdeps/unix/sysv/aix/write.c (__write, __libc_write): Likewise.
	* sysdeps/unix/sysv/aix/close.c (__close): Add libc_hidden_def.
	* sysdeps/unix/sysv/aix/getpid.c (__getpid): Likewise.
	* sysdeps/unix/sysv/aix/pipe.c (__pipe): Likewise.
	* sysdeps/unix/sysv/aix/read.c (__read, __libc_read): Likewise.
	* sysdeps/unix/sysv/aix/poll.c (__poll): Likewise.
	* sysdeps/unix/sysv/aix/sbrk.c (__sbrk): Likewise.
	* sysdeps/unix/sysv/aix/sigaction.c (__sigaction): Likewise.
	* sysdeps/unix/sysv/aix/sigsuspend.c (__sigsuspend): Likewise.
	* sysdeps/unix/sysv/aix/statfs.c (__statfs): Likewise.
	* sysdeps/unix/sysv/aix/select.c (__select): Likewise.
	* sysdeps/unix/sysv/aix/setpgid.c (__setpgid): Likewise.
	* sysdeps/unix/sysv/linux/alpha/pipe.S (__pipe): Likewise.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI___pwrite64,
	__GI___statfs, __GI___send): Add.
	* sysdeps/unix/sysv/linux/alpha/select.S (__select): Add
	libc_hidden_ver resp. libc_hidden_def.
	* sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__sigsuspend): Add
	libc_hidden_def.
	* sysdeps/unix/sysv/linux/ia64/getpagesize.c (__getpagesize):
	Likewise.  Remove undef and INTDEF.
	* sysdeps/unix/sysv/linux/ia64/pipe.S (__pipe): Add libc_hidden_def.
	* sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___pwrite64,
	__GI___statfs, __GI___send): Add.
	* sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction): Add
	libc_hidden_def.
	* sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend):
	Likewise.
	* sysdeps/unix/sysv/linux/sh/pipe.S (__pipe): Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__chown): Add
	libc_hidden_ver resp. libc_hidden_def.
	* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___pwrite64,
	__GI___send): Add.
	* sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction):
	Add libc_hidden_weak.
	* sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c (__sigsuspend):
	Add libc_hidden_def.
	* sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI___send): Add.
	* sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction): Add
	libc_hidden_weak.
	* sysdeps/unix/sysv/linux/i386/chown.c (__chown): Add libc_hidden_ver
	resp. libc_hidden_def.
	* sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction): Add
	libc_hidden_weak.
	* sysdeps/unix/sysv/linux/m68k/chown.c (__chown): Likewise.  Remove
	INTDEF.
	* sysdeps/unix/sysv/linux/m68k/getpagesize.c (__getpagesize):
	Likewise.  Remove undef.
	* sysdeps/unix/sysv/linux/mips/pwrite64.c (__pwrite64): Add
	libc_hidden_weak.
	* sysdeps/unix/sysv/linux/mips/syscalls.list (__GI___send): Add.
	* sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction): Add
	libc_hidden_weak.
	* sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): Add
	libc_hidden_def.
	* sysdeps/unix/sysv/linux/powerpc/pwrite64.c (__pwrite64): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c (__getpagesize):
	Likewise.  Remove undef and INTDEF.
	* sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__pipe): Add
	libc_hidden_def.
	* sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction): Add
	libc_hidden_weak.
	* sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__pipe): Add
	libc_hidden_def.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
	(__GI___pwrite64, __GI___statfs, __GI___select, __GI___send): Add.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction): Add
	libc_hidden_weak.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c (__sigsuspend):
	Add libc_hidden_def.
	* sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI___pwrite64,
	__GI___statfs): Add.
	* sysdeps/unix/sysv/linux/x86_64/send.c (__send): Add
	libc_hidden_weak.
	* sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction): Likewise.
	* sysdeps/unix/sysv/linux/getpagesize.c: Add libc_hidden_def.
	Remove undef and INTDEF.
	* sysdeps/unix/sysv/linux/poll.c (__poll): Add libc_hidden_def.
	* sysdeps/unix/sysv/linux/pwrite64.c (__pwrite64): Add
	libc_hidden_def.
	* sysdeps/unix/sysv/linux/send.S (__send): Likewise.
	* sysdeps/unix/sysv/linux/sigaction.c (__sigaction): Add
	libc_hidden_weak.
	* sysdeps/unix/sysv/linux/sigsuspend.c (__sigsuspend): Add
	libc_hidden_def.
	* sysdeps/unix/sysv/sco3.2.4/__setpgid.c (__setpgid): Likewise.
	* sysdeps/unix/sysv/sco3.2.4/sigaction.S (__sigaction): Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/syscalls.list (__GI___sigaction):
	Add.
	* sysdeps/unix/sysv/sysv4/__getpgid.c (__getpgid): Add
	libc_hidden_def.  Remove undef and INTDEF.
	* sysdeps/unix/sysv/sysv4/getpgid.c (__getpgid): Likewise.
	* sysdeps/unix/sysv/sysv4/__setpgid.c (__setpgid): Add
	libc_hidden_def.
	* sysdeps/unix/sysv/sysv4/setpgid.c (__setpgid): Likewise.
	* sysdeps/unix/sysv/sysv4/sigaction.c (__sigaction): Likewise.
	* sysdeps/unix/sysv/sigaction.c (__sigaction): Likewise.
	* sysdeps/unix/getpagesize.c (__getpagesize): Add libc_hidden_def.
	Remove undef and INTDEF.
	* configure.in (HAVE_BROKEN_VISIBILITY_ATTRIBUTE): Add check for
	broken visibility attribute handling.
	* config.h.in (HAVE_BROKEN_VISIBILITY_ATTRIBUTE): Add.

2002-08-02  Ulrich Drepper  <drepper@redhat.com>
2002-08-03 07:02:10 +00:00
Roland McGrath
c2afe83352 * sysdeps/pthread/bits/libc-tsd.h: Include <tls.h>.
[USE_TLS && HAVE___THREAD]: Just include the sysdeps/generic file,
	which does the right thing when __thread support is available.
	* descr.h (struct _pthread_descr_struct) [USE_TLS && HAVE___THREAD]:
	Omit `p_libc_specific', `p_errnop', `p_errno', `p_h_errnop',
	`p_h_errno', `p_resp', and `p_res' members.
	* pthread.c (__pthread_initialize_minimal) [USE_TLS && HAVE___THREAD]:
	Don't initialize `p_errnop' and `p_h_errnop' members.
	(__pthread_reset_main_thread): Likewise.
	(__pthread_initialize_manager): Likewise.
	* manager.c (__pthread_manager, pthread_handle_create): Likewise.
	* pthread.c (pthread_initialize) [USE_TLS && HAVE___THREAD]:
	Don't initialize `p_resp' member.
	(__pthread_reset_main_thread): Likewise.
	* manager.c (pthread_handle_create): Likewise.
	* specific.c (libc_internal_tsd_set, libc_internal_tsd_get):
	Conditionalize these on [!(USE_TLS && HAVE___THREAD)].
	* errno.c [USE_TLS && HAVE___THREAD]
	(__h_errno_location, __res_state): Don't define these at all.

	* sysdeps/i386/tls.h (INSTALL_DTV): Add parens around arguments!
	(INSTALL_NEW_DTV, GET_DTV): Likewise.
	* sysdeps/sh/tls.h (INSTALL_DTV, INSTALL_NEW_DTV, GET_DTV): Likewise.

	* weaks.c: Don't include <errno.h> here.

2002-08-01  Roland McGrath  <roland@redhat.com>

	* sysdeps/i386/tls.h (TLS_DO_MODIFY_LDT): New macro, broken out of
	TLS_INIT_TP.
	(TLS_DO_SET_THREAD_AREA): New macro, uses thread_set_area syscall.
	(TLS_SETUP_GS_SEGMENT): New macro, try one or the other or both.
	(TLS_INIT_TP): Use that.
2002-08-02 03:32:24 +00:00
Roland McGrath
b264e1d19a 2002-07-31 Jeff Bailey <jbailey@gnu.org>
* libio/stdio.h (sys_errlist, sys_nerr, _sys_errlist, _sys_nerr):
	Declarations moved to <bits/sys_errlist.h>.  Include that file.
        * libio/Makefile (headers): Add bits/sys_errlist.h to the list.
        * sysdeps/generic/bits/sys_errlist.h: New file.  This does *not*
        declare sys_errlist and sys_nerr.
        * sysdeps/unix/sysv/linux/bits/sys_errlist.h: New file.  Does
	provide declarations.
2002-07-31 23:30:24 +00:00
Roland McGrath
7f1deee65e Added <ifaddrs.h> interface with functions getifaddrs', freeifaddrs'.
This implementation supports only IPv4.
	* inet/ifaddrs.h: New file.
	* sysdeps/generic/ifaddrs.c: New file.
	* sysdeps/gnu/ifaddrs.c: New file.
	* inet/test-ifaddrs.c: New file.
	* inet/Makefile (routines): Add ifaddrs.
	(headers): Add ifaddrs.h here.
	(tests): Add test-ifaddrs.
	* inet/Versions (GLIBC_2.3): New set, add getifaddrs and freeifaddrs.

	* resolv/res_hconf.c (_res_hconf_reorder_addrs): Use an explicit
	socket call to get an AF_INET socket, instead of using __opensock.
	The SIOCGIFNETMASK ioctl will work only with a PF_INET socket.

	* sysdeps/generic/ifreq.h (__ifreq): Take third argument SOCKFD,
	if not -1 use it instead of calling __opensock.
	* sysdeps/unix/sysv/linux/ifreq.h (__ifreq): Likewise.
	* sysdeps/mach/hurd/ifreq.h (__ifreq): Take new argument and ignore it.
	* resolv/res_hconf.c (_res_hconf_reorder_addrs): Pass new argument.

	* sysdeps/mach/hurd/ifreq.h: New file.
	* sysdeps/generic/ifreq.h (__if_freereq): Take second argument NUM_IFS.
	* sysdeps/unix/sysv/linux/ifreq.h (__if_freereq): Likewise.
	* resolv/res_hconf.c (_res_hconf_reorder_addrs): Update caller.
2002-07-24 22:56:44 +00:00
Ulrich Drepper
8a30f00fe8 Update.
2002-07-23  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/libc-tls.c: New file.
	* csu/Makefile (routines): Add libc-tls.
	(static-only-routines): Add libc-tls.
	* elf/dl-support.c (_dl_phdr): New variable.
	(_dl_phnum): New variable.
	(_dl_aux_init): Initialize _dl_phdr and _dl_phnum from aux vector.
	* sysdeps/generic/libc-start.c (__libc_start_main): Reorganize code
	for !SHARED.  First look through auxiliary vector.  If TLS always
	call __pthread_initialize_minimal.

	* sysdeps/generic/dl-tls.c (_dl_allocate_tls): Make sure size argument
	in mmap call is never zero.
2002-07-23 23:12:01 +00:00
Ulrich Drepper
846c6907d0 Update.
* sysdeps/unix/sysv/linux/ldsodefs.h (HAVE_AUX_XID): Define if
	__ASSUME_AT_XID is defined.
	* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_AT_XID): Define
	for 2.4.1 and up.
	* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Optimize handling
	of AT_UID, AT_EUID, AT_GID, and AT_EGID.
2002-07-20 17:31:30 +00:00
Ulrich Drepper
739d440d2a Update.
2002-07-19  Ulrich Drepper  <drepper@redhat.com>

	* configure.in: Add test for __thread support in compiler.
	* config.h.in: Add HAVE___THREAD.
	* Makefile (headers): Remove errno.h, sys/errno.h, and bits/errno.h.
	* include/sys/errno.h: Moved to...
	* stdlib/sys/errno.h: ...here.  New file.
	* stdlib/errno.h: New file.  Moved from...
	* include/errno.h: ...here.  Changed into an internal header defining
	libc-local things like __set_errno.
	* stdlib/Makefile (headers): Add errno.h, sys/errno.h, and
	bits/errno.h.
	* elf/dl-minimal.c: Include <tls.h>.  Define errno as thread-local
	variable if USE_TLS && HAVE___THREAD.  Don't define __errno_location
	either.
	* elf/rtld.c (_dl_start): Add code to initialize TLS for ld.so
	from...
	(_dl_start_final): ...here.  Add code to initialize tls elements from
	bootstrap_map.
	* sysdeps/generic/errno-loc.c: Define errno as thread-local variable
	if USE_TLS && HAVE___THREAD.
	* sysdeps/generic/bits/errno.h: Remove __set_errno definition.
	* sysdeps/mach/hurd/bits/errno.h: Likewise.
	* sysdeps/standalone/arm/bits/errno.h: Likewise.
	* sysdeps/standalone/bits/errno.h: Likewise.
	* sysdeps/unix/bsd/bsd4.4/bits/errno.h: Likewise.
	* sysdeps/unix/sysv/aix/bits/errno.h: Likewise.
	* sysdeps/unix/sysv/hpux/bits/errno.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/errno.h: Likewise.
	* sysdeps/unix/sysv/linux/hppa/bits/errno.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/errno.h: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/bits/errno.h: Likewise.
	* sysdeps/i386/dl-machine.c (elf_machine_rel) [RTLD_BOOTSTRAP]: Don't
	use GL(dl_rtld_map), use map parameter.
	* sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/unix/sysv/linux/i386/sysdep.S: Define errno in .tbss if
	USE_TLS && HAVE___THREAD.
	* sysdeps/unix/sysv/linux/i386/sysdep.h: Unify SETUP_PIC_REG
	definitions.  If USE_TLS && HAVE___THREAD store errooor value using
	TLS code sequence.
	* sysdeps/unix/sysv/linux/i386/i686/sysdep.h: Likewise.

	* sysdeps/unix/sysv/linux/getcwd.c: No real need to restore errno.
	* sysdeps/unix/sysv/linux/grantpt.c: Likewise.
	* sysdeps/unix/sysv/linux/internal_statvfs.c: Likewise.
	* sysdeps/unix/sysv/linux/msgctl.c: Likewise.
	* sysdeps/unix/sysv/linux/readv.c: Likewise.
	* sysdeps/unix/sysv/linux/writev.c: Likewise.
2002-07-20 01:14:41 +00:00
Ulrich Drepper
c3da4f0cba Update.
2002-07-12  Philip Blundell  <philb@gnu.org>

	* sysdeps/generic/backtrace.c (FIRST_FRAME_POINTER): New macro.
	(__backtrace): Use it.
	* sysdeps/arm/frame.h (FIRST_FRAME_POINTER): Define.  [PR libc/2632]

2002-07-12  Philip Blundell  <philb@gnu.org>

	* sysdeps/arm/dl-machine.h (elf_machine_rel): Don't handle
	R_ARM_RELATIVE if RTLD_BOOTSTRAP and HAVE_Z_COMBRELOC.  Only check
	for rtld map if neither RTLD_BOOTSTRAP nor HAVE_Z_COMBRELOC is defined.
	(elf_machine_rela): Remove unused variable.

	* sysdeps/unix/sysv/linux/arm/Makefile [subdir=elf]
	(sysdep-rtld-routines, sysdep_routines, sysdep-dl-routines): Don't
	define.

2002-07-12  Ulrich Drepper  <drepper@redhat.com>

	* iconvdata/gconv-modules: Add aliases for ISO-8859-11.
2002-07-15 03:58:49 +00:00
Andreas Jaeger
09c81ddfd8 Update.
2002-07-06  Bruno Haible  <bruno@clisp.org>

	* sysdeps/i386/fpu/libm-test-ulps: Add some ulps for AMD K7.

	* rt/Makefile (tests): Don't add tst-aio* in a single-threaded build.

	* sysdeps/unix/bsd/sun/sunos4/bits/utsname.h: Test for _SYS_UTSNAME_H,
	not _UTSNAME_H.
	* sysdeps/unix/bsd/ultrix4/bits/utsname.h: Likewise.

	* sysdeps/generic/bits/stropts.h: Protect against direct inclusion.
	* sysdeps/generic/bits/ustat.h: Likewise.

	* sysdeps/unix/sysv/linux/bits/statvfs.h (ST_NODIRATIME): Set to
	2048.
2002-07-08 17:15:20 +00:00
Roland McGrath
3b9b82ec5e * sysdeps/unix/sysv/linux/bits/ustat.h: Moved to ...
* sysdeps/generic/bits/ustat.h: ... here (was almost identical).
2002-06-15 22:05:19 +00:00
Roland McGrath
650f6700d2 * sysdeps/generic/tmpfile.c [USE_IN_LIBIO] (tmpfile): Don't #define
if already defined.
	[USE_IN_LIBIO]: Conditionalize versioned_symbol use on
	[GEN_THIS == __GT_FILE] so that tmpfile64.c's inclusion doesn't get it.
2002-06-12 20:36:22 +00:00
Roland McGrath
337738b771 * sysdeps/mach/hurd/xstat64.c: Conditionalize entire contents of the
file on [!RTLD_STAT64].
	* sysdeps/mach/hurd/fxstat64.c: Likewise.

	* sysdeps/mach/hurd/tmpfile.c (tmpfile64): Define as alias of tmpfile.
	(__fdopen): Use INTUSE.
	* sysdeps/mach/hurd/tmpfile64.c: New file, empty placeholder.

	* stdio-common/tmpfile64.c: File removed.
	* sysdeps/generic/tmpfile64.c: New file.
	* sysdeps/generic/tmpfile.c (GEN_THIS): New macro, define to __GT_FILE
	if not already defined.
	(tmpfile): Use it in place of __GT_FILE.

	* include/unistd.h: Declare __chown_internal.

	* sysdeps/mach/hurd/sendfile64.c (sendfile64): Do real work here.
	* sysdeps/mach/hurd/sendfile.c (sendfile): Call that.

2002-06-09  Roland McGrath  <roland@frob.com>

	Update to new Hurd RPC interfaces supporting 64-bit file sizes.
	* sysdeps/mach/hurd/configure.in: Check for <hurd/version.h> with
	value of HURD_INTERFACE_VERSION >= 20020609.
	* sysdeps/mach/hurd/configure: Regenerated.
	* shlib-versions (.*-.*-gnu-gnu.*): Set libhurduser=0.3.
	* sysdeps/mach/hurd/xstatconv.c (xstat64_conv): Rewritten to
	convert a struct stat64 into a struct stat and return 0 or -1
	with errno set to EOVERFLOW.
	* sysdeps/mach/hurd/statfsconv.c (statfs64_conv): Likewise
	for struct statfs64 to struct statfs.
	* sysdeps/mach/hurd/xstat.c (__xstat): Use converter and call ...
	* sysdeps/mach/hurd/xstat64.c (__xstat64): ... this, real work here.
	* sysdeps/mach/hurd/fxstat.c (__fxstat): Likewise.
	* sysdeps/mach/hurd/fxstat64.c (__fxstat64): Likewise.
	* sysdeps/mach/hurd/lxstat.c (__lxstat): Likewise.
	* sysdeps/mach/hurd/lxstat64.c (__lxstat64): Likewise.
	* sysdeps/mach/hurd/statfs.c (__statfs): Likewise.
	* sysdeps/mach/hurd/statfs64.c (__statfs64): Likewise.
	* sysdeps/mach/hurd/fstatfs.c (__fstatfs): Likewise.
	* sysdeps/mach/hurd/fstatfs64.c (__fstatfs64): Likewise.
	* sysdeps/mach/hurd/pwrite64.c (__libc_pwrite64): Do real work here.
	* sysdeps/mach/hurd/pwrite.c (__libc_pwrite): Call that.
	* sysdeps/mach/hurd/pread64.c (__libc_pread64): Do real work here.
	* sysdeps/mach/hurd/pread.c (__libc_pread): Call that.
	* sysdeps/mach/hurd/lseek64.c (__libc_lseek64): Do real work here.
	* sysdeps/mach/hurd/lseek.c (__libc_lseek): Call that.
	* sysdeps/mach/hurd/readdir64.c (__readdir64): Do real work here.
	* sysdeps/mach/hurd/readdir.c (__readdir): Call that.
	* sysdeps/mach/hurd/readdir64_r.c (__readdir64_r): Do real work here.
	* sysdeps/mach/hurd/readdir_r.c (__readdir64_r): Call that.
	* hurd/lookup-retry.c (__hurd_file_name_lookup_retry):
	Use struct stat64 for io_stat argument.
	* sysdeps/mach/hurd/readlink.c (__readlink): Likewise.
	* hurd/fopenport.c (seekio): Remove EOVERFLOW check, pass POS directly
	to io_seek.
	* hurd/fd-read.c (_hurd_fd_read): Use loff_t for OFFSET argument.
	* hurd/fd-write.c (_hurd_fd_write): Likewise.
	* hurd/hurd/fd.h: Update decls.
	* sysdeps/mach/hurd/getcwd.c
	(_hurd_canonicalize_directory_name_internal): Use ino64_t
	and struct dirent64.
	* sysdeps/mach/hurd/dl-sysdep.c (open_file): Use struct stat64.
	(__xstat): Renamed to __xstat64, use struct stat64 for argument.
	(__fxstat): Renamed to __fxstat64, use struct stat64 for argument.
	(__lseek): Renamed to __libc_lseek64, use off64_t for argument.

2002-06-08  Roland McGrath  <roland@frob.com>

	* sysdeps/mach/hurd/dirstream.h (struct __dirstream): Use size_t
	instead of unsigned long int for __allocation and __size members.

2002-05-19  Ulrich Drepper  <drepper@redhat.com>
2002-06-11 23:04:51 +00:00
Roland McGrath
e6dd9633db * sysdeps/generic/sendfile.c: Include <errno.h>.
* sysdeps/generic/sendfile64.c: Likewise.
2002-06-05 20:38:48 +00:00
Roland McGrath
7db20e36c8 * io/Makefile (routines): Add sendfile and sendfile64.
(headers): Add sys/sendfile.h to the list.
	* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Don't add it here.
	* sysdeps/unix/sysv/linux/sys/sendfile.h: Moved to ...
	* io/sys/sendfile.h: ... here.
	* sysdeps/generic/sendfile.c: New file.
	* sysdeps/generic/sendfile64.c: New file.
	* sysdeps/unix/sysv/linux/Versions (GLIBC_2.1, GLIBC_2.3):
	Move sendfile, sendfile64 to ...
	* io/Versions (GLIBC_2.1, GLIBC_2.3): ... here.
	* sysdeps/mach/hurd/sendfile.c: New file.
	* sysdeps/mach/hurd/sendfile64.c: New file.

	* sysdeps/mach/nanosleep.c: New file.
2002-06-05 08:56:41 +00:00
Ulrich Drepper
63fb40b32a Update.
* po/sk.po: Update from translation team.

2002-05-28  Andreas Schwab  <schwab@suse.de>

	* sysdeps/generic/readelflib.c (process_elf_file): Give correct
	message when finding object of wrong class.

2002-05-28  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/wordsize-32/divdi3.c (__moddi3): Fix pasto.
	Patch by <radu@netsoft.ro>.

2002-05-30  Ulrich Drepper  <drepper@redhat.com>
2002-05-31 00:36:57 +00:00
Ulrich Drepper
b2bffca2e3 Update.
2002-05-11  Jakub Jelinek  <jakub@redhat.com>

	* include/netinet/in.h (bindresvport_internal): Add prototype.
	* include/rpc/auth.h  (authunix_create_internal,
	authunix_create_default_internal, authnone_create_internal,
	authdes_pk_create_internal): Add prototypes.
	* include/rpc/clnt.h (clnt_create_internal, clnttcp_create_internal,
	clntudp_create_internal, clntudp_bufcreate_internal,
	clntunix_create_internal): Add prototypes.
	* include/rpc/svc.h (svc_sendreply_internal, svcerr_decode_internal,
	svc_getreq_internal, svc_getreq_common_internal,
	svc_getreqset_internal, svc_getreq_poll_internal,
	svc_register_internal, svc_unregister_internal,
	svcudp_create_internal, svcudp_bufcreate_internal): Add prototypes.
	* include/rpc/svc_auth.h (_authenticate_internal): Add prototype.
	* include/sys/socket.h (__sendto, __recvfrom, __sendmsg, __recvmsg,
	__setsockopt, __getsockname, __bind, __listen): Add prototypes.
	* inet/rexec.c (rexec_af): Use __listen and __getsockname.
	* inet/rcmd.c (rcmd_af): Use __listen.
	(rresvport_af): Use __bind.
	* sunrpc/clnt_udp.c: Use INTUSE calls to bindresvport,
	authunix_create, authunix_create_default, authnone_create,
	authdes_pk_create, clnt_create, clnttcp_create, clntudp_create,
	clntudp_bufcreate, clntunix_create svc_sendreply, svcerr_decode,
	svc_getreq, svc_getreq_common, svc_getreqset, svc_getreq_poll,
	svc_register, svc_unregister, svcudp_create, svcudp_bufcreate,
	_authenticate, add INTDEF after such function definitions.
	Use __listen, __bind, __sendto, __recvfrom, __sendmsg, __recvmsg,
	__setsockopt, __getsockname instead of non-__ variants.
	* sunrpc/pmap_rmt.c: Likewise.
	* sunrpc/rtime.c: Likewise.
	* sunrpc/svc_udp.c: Likewise.
	* sunrpc/clnt_unix.c: Likewise.
	* sunrpc/svc_unix.c: Likewise.
	* sunrpc/bindrsvprt.c: Likewise.
	* sunrpc/svc_tcp.c: Likewise.
	* sunrpc/auth_none.c: Likewise.
	* sunrpc/clnt_raw.c: Likewise.
	* sunrpc/clnt_tcp.c: Likewise.
	* sunrpc/auth_unix.c: Likewise.
	* sunrpc/key_call.c: Likewise.
	* sunrpc/clnt_gen.c: Likewise.
	* sunrpc/pm_getmaps.c: Likewise.
	* sunrpc/clnt_simp.c: Likewise.
	* sunrpc/pmap_clnt.c: Likewise.
	* sunrpc/svc_run.c: Likewise.
	* sunrpc/svc.c: Likewise.
	* sunrpc/svc_simple.c: Likewise.
	* sunrpc/pm_getport.c: Likewise.
	* sunrpc/auth_des.c: Likewise.
	* sunrpc/svc_auth.c: Likewise.
	* sysdeps/generic/unwind-dw2-fde.c (__register_frame_info_bases,
	__register_frame_info_table_bases, __deregister_frame_info_bases):
	Add INTDEF.
	(__register_frame_info_bases_internal,
	__register_frame_info_table_bases_internal,
	__deregister_frame_info_bases_internal): Add prototypes.
	(__register_frame_info, __register_frame): Use INTUSE in call to
	__register_frame_info_bases.
	(__register_frame_info_table): Similarly.
	(__deregister_frame_info, __deregister_frame): Similarly.
	* sysdeps/generic/sendto.c (__sendto): Renamed from sendto, add
	sendto as weak alias.
	* sysdeps/mach/hurd/sendto.c: Likewise.
	* sysdeps/generic/recvfrom.c (__recvfrom): Renamed from recvfrom, add
	recvfrom as weak alias.
	* sysdeps/mach/hurd/recvfrom.c: Likewise.
	* sysdeps/unix/sysv/aix/recvfrom.c: Likewise.
	* sysdeps/generic/recvmsg.c (__recvmsg): Renamed from recvmsg, add
	recvmsg as weak alias.
	* sysdeps/unix/sysv/aix/recvmsg.c: Likewise.
	* sysdeps/generic/sendmsg.c (__sendmsg): Renamed from sendmsg, add
	sendmsg as weak alias.
	* sysdeps/unix/sysv/aix/sendmsg.c: Likewise.
	* sysdeps/generic/setsockopt.c (__setsockopt): Renamed from
	setsockopt, add setsockopt as weak alias.
	* sysdeps/mach/hurd/setsockopt.c: Likewise.
	* sysdeps/generic/bind.c (__bind): Renamed from bind, add bind as
	weak alias.
	* sysdeps/mach/hurd/bind.c: Likewise.
	* sysdeps/generic/listen.c (__listen): Renamed from listen, add listen
	as weak alias.
	* sysdeps/mach/hurd/listen.c: Likewise.
	* sysdeps/generic/getsockname.c (__getsockname): Renamed from
	getsockname, add getsockname as weak alias.
	* sysdeps/mach/hurd/getsockname.c: Likewise.
	* sysdeps/unix/sysv/aix/getsockname.c: Likewise.
	* sysdeps/mach/hurd/recvmsg.c (__recvmsg): Add weak alias.
	* sysdeps/mach/hurd/sendmsg.c (__sendmsg): Add weak alias.
	* sysdeps/unix/inet/syscalls.list (__bind, __listen, __recvmsg,
	__recvfrom, __sendmsg, __sendto, __setsockopt): Add aliases.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list (__recvmsg, __sendmsg):
	Add aliases.
	* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/recvfrom.S (__recvfrom): Add weak alias.
	* sysdeps/unix/sysv/linux/recvmsg.S (__recvmsg): Likewise.
	* sysdeps/unix/sysv/linux/sendmsg.S (__sendmsg): Likewise.
	* sysdeps/unix/sysv/linux/sendto.S (__sendto): Likewise.
	* sysdeps/unix/sysv/linux/setsockopt.S (__setsockopt): Likewise.
	* sysdeps/unix/sysv/linux/bind.S (__bind): Likewise.
	* sysdeps/unix/sysv/linux/listen.S (__listen): Likewise.
	* sysdeps/unix/sysv/linux/getsockname.S (__getsockname): Likewise.

2002-05-10  Jakub Jelinek  <jakub@redhat.com>

	* locale/programs/localedef.h (show_archive_content): Add verbose
	argument.
	* locale/programs/localedef.c (main): Adjust caller.
	* locale/programs/locarchive.c (struct nameent, struct dataent): New.
	(nameentcmp, dataentcmp): New functions.
	(xstrcmp): Remove.
	(show_archive_content): Print verbose listing with --list-archive -v.

	* locale/programs/locarchive.c (open_archive): Take extra argument
	readonly.  If true open file with O_RDONLY and don't create the
	archive if it doesn't exist.
	Adapt all callers.
	(close_archive): Don't do anything if fd element is -1.
	* locale/programs/localedef.h (open_archive): Adjust prototype.
	* locale/programs/locfile.c (write_all_categories): Adjust open_archive
	call.

	* malloc/malloc.c (__posix_memalign): Correct check for size of
	alignment value [PR libc/3444].
2002-05-15 00:22:23 +00:00
Ulrich Drepper
38a7d8baf4 Update.
2002-05-02  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/ia64/Makefile: Add ia64libgcc in csu subdir.
	* sysdeps/ia64/Versions (__divtf3, __divdf3, __divsf3, __divdi3,
	__moddi3, __udivdi3, __umoddi3, __multi3): Export at GLIBC_2.0.
	* sysdeps/ia64/ia64libgcc.S: New file.

2002-05-02  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/dl-tls.c (oom): Implement using _dl_fatal_printf.

	* malloc/memusage.c: Distinguish anonymous mmap.
2002-05-03 07:39:22 +00:00
Roland McGrath
a8c0177677 2002-04-30 Roland McGrath <roland@frob.com>
Removed old GNU stdio implementation; GNU libio is now the only option.
	* configure.in: Removed --enable-libio option and @stdio@ subst var.
	Define USE_IN_LIBIO unconditionally.
	* configure: Regenerated.
	* Makeconfig (stdio): Set to libio by default.
	* config.make.in (stdio): Variable removed.
	* sysdeps/unix/sysv/linux/configure.in: Don't set $stdio.
	* sysdeps/unix/sysv/linux/configure: Regenerated.
	* sysdeps/mach/hurd/configure.in: Don't test $stdio.
	* sysdeps/mach/hurd/configure: Regenerated.
	* stdio/.cvsignore: File removed.
	* stdio/Makefile: File removed.
	* stdio/Versions: File removed.
	* stdio/__fbufsize.c: File removed.
	* stdio/__flbf.c: File removed.
	* stdio/__fpending.c: File removed.
	* stdio/__fpurge.c: File removed.
	* stdio/__freadable.c: File removed.
	* stdio/__freading.c: File removed.
	* stdio/__fsetlocking.c: File removed.
	* stdio/__fwritable.c: File removed.
	* stdio/__fwriting.c: File removed.
	* stdio/clearerr.c: File removed.
	* stdio/fclose.c: File removed.
	* stdio/fcloseall.c: File removed.
	* stdio/feof.c: File removed.
	* stdio/ferror.c: File removed.
	* stdio/fflush.c: File removed.
	* stdio/fgetc.c: File removed.
	* stdio/fgetpos.c: File removed.
	* stdio/fgets.c: File removed.
	* stdio/fileno.c: File removed.
	* stdio/fmemopen.c: File removed.
	* stdio/fopen.c: File removed.
	* stdio/fopncook.c: File removed.
	* stdio/fputc.c: File removed.
	* stdio/fputs.c: File removed.
	* stdio/fread.c: File removed.
	* stdio/freopen.c: File removed.
	* stdio/fseek.c: File removed.
	* stdio/fsetpos.c: File removed.
	* stdio/ftell.c: File removed.
	* stdio/fwrite.c: File removed.
	* stdio/getc.c: File removed.
	* stdio/getchar.c: File removed.
	* stdio/getdelim.c: File removed.
	* stdio/gets.c: File removed.
	* stdio/glue.c: File removed.
	* stdio/internals.c: File removed.
	* stdio/linewrap.c: File removed.
	* stdio/linewrap.h: File removed.
	* stdio/memstream.c: File removed.
	* stdio/newstream.c: File removed.
	* stdio/obstream.c: File removed.
	* stdio/putc.c: File removed.
	* stdio/putchar.c: File removed.
	* stdio/puts.c: File removed.
	* stdio/rewind.c: File removed.
	* stdio/setbuf.c: File removed.
	* stdio/setbuffer.c: File removed.
	* stdio/setlinebuf.c: File removed.
	* stdio/setvbuf.c: File removed.
	* stdio/stdio.h: File removed.
	* stdio/ungetc.c: File removed.
	* stdio/vasprintf.c: File removed.
	* stdio/vscanf.c: File removed.
	* stdio/vsnprintf.c: File removed.
	* stdio/vsprintf.c: File removed.
	* stdio/vsscanf.c: File removed.
	* sysdeps/generic/defs.c: File removed.
	* sysdeps/generic/fdopen.c: File removed.
	* sysdeps/generic/pipestream.c: File removed.
	* sysdeps/generic/stdio_init.c: File removed.
	* sysdeps/generic/sysd-stdio.c: File removed.
	* sysdeps/generic/vdprintf.c: File removed.
	* sysdeps/mach/hurd/defs.c: File removed.
	* sysdeps/mach/hurd/fdopen.c: File removed.
	* sysdeps/mach/hurd/pipestream.c: File removed.
	* sysdeps/mach/hurd/stdio_init.c: File removed.
	* sysdeps/mach/hurd/sysd-stdio.c: File removed.
	* sysdeps/mach/hurd/vdprintf.c: File removed.
	* sysdeps/posix/defs.c: File removed.
	* sysdeps/posix/fdopen.c: File removed.
	* sysdeps/posix/pipestream.c: File removed.
	* sysdeps/posix/stdio_init.c: File removed.
	* sysdeps/posix/vdprintf.c: File removed.
	* sysdeps/unix/pipestream.c: File removed.
	* sysdeps/unix/sysv/sysd-stdio.c: File removed.
	* sysdeps/unix/sysv/sco3.2.4/pipestream.c: File removed.
	* sysdeps/unix/sysv/sysv4/pipestream.c: File removed.
2002-04-30 22:00:59 +00:00
Ulrich Drepper
b74ea861cb Update.
* sysdeps/generic/tls.h: Describe would must be defined.
2002-04-29 05:00:43 +00:00
Ulrich Drepper
add09583da Update.
* sysdeps/generic/glob.c (glob): Don't pass GLOB_NOMAGIC flag to
	glob_in_dir [PR libc/3385].
	* posix/globtest.sh: Add test case.
2002-04-29 04:32:06 +00:00
Ulrich Drepper
fab656f5a7 Update.
* include/sys/stat.h: Add prototypes for __lxstat_internal and
	__lxstat64_internal.  Add macros __lxstat and __lxstat64 if not
	NOT_IN_libc.
	* sysdeps/generic/lxstat.c: Use INTDEF for __lxstat.
	* sysdeps/mach/hurd/lxstat.c: Likewise.
	* sysdeps/unix/common/lxstat.c: Likewise.
	* sysdeps/unix/sysv/aix/lxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/lxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Likewise.
	* sysdeps/generic/lxstat64.c: Use INTDEF for __lxstat64.
	* sysdeps/mach/hurd/lxstat64.c: Likewise.
	* sysdeps/unix/sysv/aix/lxstat64.c: Likewise.
	* sysdeps/unix/sysv/linuxx/lxstat64.c: Likewise.

	* include/wchar.h: Declare __mbrtowc_internal and __mbrlen_internal
	prototypes.  Add __mbrlen and __mbrtowc macros.
	* wcsmbs/mbrlen.c: Use INTDEF for __mbrlen.
	* wcsmbs/mbrtowc.c: Use INTDEF for __mbrtowc.

	* include/unistd.h: Add prototype for __write_internal and add
	__libc_write macro is SHARED.
	* sysdeps/generic/write.c: Use INTDEF for __write.
	* sysdeps/mach/hurd/write.c: Likewise.
	* sysdeps/unix/sysv/aix/write.c: Likewise.
	* sysdeps/unix/syscalls.list: Add __libc_write alias.

	* assert/assert.c: Replace STR_N_SIZE with something usable in
	macro arguments.
	* assert/assert-perr.c: Likewise.
2002-04-15 05:35:10 +00:00
Ulrich Drepper
08f600749e Update.
* include/sys/socket.h: Declare __libc_sa_len_internal and define
	SA_LEN macro to use it if not NOT_IN_libc.
	* sysdeps/unix/sysv/linux/sa_len.c: Use INTDEF for __libc_sa_len.

	* include/fcntl.h: Declare __open_internal and define __open and
	__libc_open macros if not NOT_IN_libc.
	* sysdeps/generic/open.c: Use INTDEF for __open.
	* sysdeps/mach/hurd/open.c: Likewise.
	* sysdeps/unix/sysv/aix/open.c: Likewise.
	* sysdeps/unix/syscalls.list: Add __open_internal alias.

	* sysdeps/generic/check_fds.c: Make sure newly opened file descriptor
	has correct number.

	* include/fcntl.h: Define __libc_fcntl macro if not NOT_IN_libc.
	* sysdeps/mach/hurd/fcntl.c: Undefine __libc_fcntl as well.
	* sysdeps/unix/sysv/aix/fcntl.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.

	* include/wctype.h: Declare __iswalpha_l_internal,
	__iswdigit_l_internal, __iswspace_l_internal,
	__iswxdigit_l_internal, and __iswctype_internal.  Define
	__iswalpha_l, __iswctype, __iswdigit_l, __iswspace_l, and
	__iswxdigit_l macros if not NOT_IN_libc.
	* wctype/iswctype.c: Use INTDEF for __iswctype.
	* wctype/wcfuncs_l.c: Use INTDEF for all __iswXXX_l.
2002-04-14 20:15:40 +00:00
Ulrich Drepper
f83af095b6 Update.
* include/math.h: Declare __isinf_internal, __isinfl_internal,
	__isnan_internal, and __isnanl_internal.
	* stdio-common/printf_fp.c: Use INTUSE for calls to __isinf, __isinfl,
	__isnan, and __isnanl.
	* stdio-common/printf_size.c: Likewise.
	* sysdeps/generic/printf_fphex.c: Likewise.
	* sysdeps/i386/fpu/s_isinfl.c: Also define _internal alias.
	* sysdeps/i386/fpu/s_isnanl.c: Likewise.
	* sysdeps/ia64/fpu/s_isinf.S: Likewise.
	* sysdeps/ia64/fpu/s_isnan.S: Likewise.
	* sysdeps/ieee754/dbl-64/s_isinf.c: Likewise.
	* sysdeps/ieee754/dbl-64/s_isnan.c: Likewise.
	* sysdeps/ieee754/flt-32/s_isinff.c: Likewise.
	* sysdeps/ieee754/flt-32/s_isnanf.c: Likewise.
	* sysdeps/ieee754/ldbl-128/s_isinfl.c: Likewise.
	* sysdeps/ieee754/ldbl-128/s_isnanl.c: Likewise.
	* sysdeps/ieee754/ldbl-96/s_isinfl.c: Likewise.
	* sysdeps/m68k/s_isinfl.c: Likewise.
	* sysdeps/m68k/fpu/s_isinf.c: Likewise.
	* sysdeps/powerpc/fpu/s_isnan.c: Likewise.
2002-04-14 17:55:43 +00:00
Ulrich Drepper
29886719b5 Update.
* include/sys/time.h: Declare __gettimeofday_internal and define
	__gettimeofday macro if not NOT_IN_libc.
	* sysdeps/generic/gettimeofday.c: Use INTEDEF for __gettimeofday.
	* sysdeps/mach/gettimeofday.c: Likewise.
	* sysdeps/posix/gettimeofday.c: Likewise.
	* sysdeps/unix/sysv/aix/gettimeofday.c: Likewise.
	* sysdeps/unix/common/syscalls.list: Define __gettimeofday alias.
	* sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Likewise.
2002-04-14 09:14:45 +00:00
Ulrich Drepper
d060e318a7 Update.
2002-04-14  Ulrich Drepper  <drepper@redhat.com>

	* include/sys/stat.h: Declare __fxstat_internal and __fxstat64_internal
	and define __fxstate and __fxstat64 macros if not NOT_IN_libc.
	Remove __lstat and __fstat inline functions.
	* sysdeps/generic/fxstat.c: Use INTDEF for __fxstat.
	* sysdeps/mach/hurd/fxstat.c: Likewise.
	* sysdeps/unix/fxstat.c: Likewise.
	* sysdeps/unix/sysv/aix/fxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/fxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/ia64/fxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Likewise.
	* sysdeps/generic/fxstat64.c: Use INTDEF for __fxstat64.
	* sysdeps/mach/hurd/fxstat64.c: Likewise.
	* sysdeps/unix/sysv/aix/fxstat64.c: Likewise.
	* sysdeps/unix/sysv/linux/fxstat64.c: Likewise.

	* include/unistd.h: Declare __getpid_internal and define
	__getpid macro if not NOT_IN_libc.
	* sysdeps/mach/hurd/getpid.c: Use INTDEF for __getpid.
	* sysdeps/generic/getpid.c: Likewise.
	* sysdeps/unix/syscalls.list: Add __getpid_internal alias.

	* include/unistd.h: Declare __getpgid_internal and define
	__getpgid macro if not NOT_IN_libc.
	* sysdeps/generic/getpgid.c: Use INTDEF for __getpgid.
	* sysdeps/mach/hurd/getpgid.c: Likewise.
	* sysdeps/unix/sysv/aix/getpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
	* sysdeps/unix/sysv/linux/syscalls.list: Add _getpgid_internal alias.

	* include/unistd.h: Declare __getpagesize_internal and define
	__getpagesize macro if not NOT_IN_libc.
	* sysdeps/unix/sysv/linux/shmat.c: Include <unistd.h> for
	__getpagesize.
	* sysdeps/generic/getpagesize.c: Use INTDEF for __getpagesize.
	* sysdeps/mach/getpagesize.c: Likewise.
	* sysdeps/posix/getpagesize.c: Likewise.
	* sysdeps/unix/getpagesize.c: Likewise.
	* sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
	* sysdeps/unix/sysv/linux/ia64/getpagesize.c: Likewise.
	* sysdeps/unix/sysv/linux/m68k/getpagesize.c: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c: Likewise.
2002-04-14 08:47:01 +00:00
Ulrich Drepper
f9f2a150e8 Update.
2002-04-13  Ulrich Drepper  <drepper@redhat.com>

	* elf/do-lookup.h [!VERSIONED]: Add new parameter flags.  Use it to
	check whether the caller prefers getting the most recent version of
	a symbol of the earliest version.
	* elf/dl-lookup.c: Adjust all callers of do_lookup.  Change
	_dl_do_lookup to also take the new parameter and pass it on.
	Change 'explicit' parameter of _dl_lookup_symbol and
	_dl_lookup_versioned_symbol to flags.  Adjust tests.
	* sysdeps/generic/ldsodefs.h: Adjust prototypes.
	* elf/dl-libc.c: Adjust all callers of _dl_lookup_symbol and
	_dl_lookup_versioned_symbol.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-runtime.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* sysdeps/mips/dl-machine.h: Likewise.
2002-04-13 07:55:02 +00:00
Ulrich Drepper
6b87a5642c Update.
* sysdeps/mach/hurd/chown.c: Use INTDEF for __chown.
	* sysdeps/unix/sysv/aix/chown.c: Likewise.
	* sysdeps/unix/grantpt.c: Use INTUSE for __chown calls.
	* sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/chown.c: Use INTDEF2 to define
	__chown_internal.
	* sysdeps/unix/sysv/linux/s390/s390-32//chown.c: Likewise.

	* intl/dcngettext.c [_LIBC]: Use INTUSE for __dcngettext.
	* intl/dngettext.c [_LIBC] (DCNGETTEXT): Use INTUSE.
	* intl/ngettext.c: Likewise.

	* include/sys/socket.h: Declare __connect_internal and define
	__connect macro if not NOT_IN_libc.
	* sysdeps/mach/hurd/connect.c: Use INTDEF for __connect.
	* sysdeps/unix/sysv/aix/connect.c: Likewise.
	* sysdeps/unix/sysv/linux/connect.S: Add __connect_internal alias.

	* include/unistd.h: Declare __close_internal and define __close macro
	if not NOT_IN_libc.
	* libio/libioP.h (JUMO0, JUMP1, JUMP2, JUMP3, WJUMP0, WJUMP1, WJUMP2,
	WJUMP3): Add extra parenthesis to avoid expanding element names with
	macors like __close.
	* sysdeps/unix/syscalls.list: Add __close_internal alias.

	* include/unistd.h: Declare __dup2_internal and define __dup2 macro
	if not NOT_IN_libc.
	* sysdeps/mach/hurd/dup2.c: Use INTDEF for __dup2.
	* sysdeps/posix/dup2.c: Use INTDEF for __dup2.
	* sysdeps/unix/syscalls.list: Add __dup2_internal alias.

	* include/unistd.h: Declare __fork_internal and define __fork macro
	if not NOT_IN_libc.
	* sysdeps/mach/hurd/fork.c: Use INTDEF for __fork.
	* sysdeps/unix/sysv/aix/fork.c: Likewise.
	* sysdeps/unix/sysv/linux/syscalls.list: Add __fork_internal alias.

	* include/stdio_ext.h: Declare __fsetlocking_internal and define
	__fsetlocking macro to use it if not NOT_IN_libc.
	* libio/__fsetlocking.c: Use INTDEF for __fsetlocking.

	* libio/__fbufsize.c: Correct copyright.
	* libio/__flbf.c: Likewise.
	* libio/__fpending.c: Likewise.
	* libio/__fpurge.c: Likewise.
	* libio/__freadable.c: Likewise.
	* libio/__freading.c: Likewise.
	* libio/__fsetlocking.c: Likewise.
	* libio/__fwritable.c: Likewise.
	* libio/__fwriting.c: Likewise.

	* include/stdio.h: Declare __asprintf_internal and define __asprintf
	macro to use it if not NOT_IN_libc.
	* stdio-common/asprintf.c: Use INTDEF for __asprintf.

	* include/mntent.h: Declare __setmntent_internal,
	__getmntent_r_internal, __endmntent_internal.  Define __setmntent,
	__getmntent_r, and __endmntent macros to use these functions if not
	NOT_IN_libc.
	* misc/mntent_r.c: Use INTDEF for __setmntent, __getmntent_r, and
	__endmntent.

	* include/math.h: Declare __finite_internal, __finitef_internal, and
	__finitel_internal.  Redefine isfinite macro if in libc or libm using
	these functions.
	* sysdeps/generic/s_ldexp.c: Use INTUSE for __finite calls.
	* sysdeps/generic/s_ldexpf.c: Use INTUSE for __finitef calls.
	* sysdeps/generic/s_ldexpl.c: Use INTUSE for __finitel calls.
	* sysdeps/i386/fpu/s_finite.S: Define _internal alias.
	* sysdeps/i386/fpu/s_finitef.S: Likewise.
	* sysdeps/i386/fpu/s_finitel.S: Likewise.
	* sysdeps/ieee754/dbl-64/s_finite.c: Likewise.
	* sysdeps/ieee754/flt-32/s_finitef.c: Likewise.
	* sysdeps/ieee754/ldbl-128/s_finitel.c: Likewise.
	* sysdeps/ieee754/ldbl-96/s_finitel.c: Likewise.

	* include/fcntl.h: Declare __fcntl_internal.  Define __fcntl macro
	to use this function if not NOT_IN_libc.
	* libio/iofdopen.c (_IO_fcntl): Use INTUSE.
	* sysdeps/generic/fcntl.c: Use INTDEF for __fcntl.
	* sysdeps/mach/hurd/fcntl.c: Likewise.
	* sysdeps/unix/sysv/aix/fcntl.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.

	* include/argz.h: Declare __argz_count_internal and
	__argz_stringify_internal.
	* intl/l10nflist.c [_LIBC]: Use INTUSE for __argz_count and
	__argz_stringify.
	* string/argz-count.c: Use INTDEF for __argz_count.
	* string/argz-stringify.c: Use INTDEF for __argz_stringify.

	* include/stdlib.h: Declare __cxa_atexit_internal and define
	__cxa_atexit macro if not NOT_IN_libc.
	* stdlib/cxa_atexit.c: Use INTDEF for __cxa_atexit.
	* dlfcn/Makefile: Define NOT_IN_libc when compiling modcxaatexit.c.

	* assert/assert.c: Use INTDEF for __assert_fail.
	* assert/__assert.c: Use INTUSE for call to __assert_fail.
	* include/assert.h: Declare __assert_fail_internal.
2002-04-09 20:36:24 +00:00
Ulrich Drepper
3632a26020 Update.
2002-04-08  kaz Kojima  <kkojima@rr.iij4u.or.jp>

	* elf/elf.h: Define R_SH_TLS_xxx macros.
	* elf/rtld.c: Remove an extra parenthesis.
	* elf/tls-macros.h: Define SH version TLS_LE, TLS_IE, TLS_LD and
	TLS_GD macros.
	* sysdeps/generic/dl-tls.c: Add a missing semi-colon.
	* sysdeps/sh/dl-lookupcfg.h: New file.
	* sysdeps/sh/dl-tls.h: New file.
	* sysdeps/sh/dl-machine.h (elf_machine_type_class): Set
	ELF_RTYPE_CLASS_PLT also for the three TLS relocations.
	(elf_machine_rela): Handle R_SH_TLS_DTPMOD32, R_SH_TLS_DTPOFF32 and
	R_SH_TLS_TPOFF32 relocations.
2002-04-08 21:05:48 +00:00
Ulrich Drepper
403e0597cd Update.
2002-04-08  Ulrich Drepper  <drepper@redhat.com>

	* cppflags-iterator.mk (cpp-srcs-left): Define NOT_IN_libc instead
	of NOT_IN_LIBC.
	* include/libintl.h: Test for NOT_IN_libc not NOT_IN_LIBC.
	* include/stdlib.h: Likewise.

2002-04-08  Jakub Jelinek  <jakub@redhat.com>

	* elf/Makefile (CFLAGS-.os): Define NOT_IN_libc and IS_IN_rtld
	instead of _RTLD_LOCAL.
	* elf/dl-dst.h: Use IS_IN_rtld instead of _RTLD_LOCAL.
	* include/unistd.h: Likewise.
	* sysdeps/generic/ldsodefs.h: Likewise.

	* stdio-common/_itoa.h (_itoa_word): Only use internal digit arrays
	if in libc or ld.so.

	* include/stdlib.h: For libc itself replace MB_CUR_MAX definition
	with one accessing the locale data structures directly.
	* stdio-common/printf-prs.c: Include localeinfo.h for new
	MB_CUR_MAX definition.
2002-04-08 18:50:41 +00:00
Ulrich Drepper
6736e93bab Update.
2002-03-23  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/brk.c (__curbrk): Declare.
	* sysdeps/generic/dl-brk.c: Add attribute_hidden to __curbrk.
	* sysdeps/generic/dl-sbrk.c: Likewise.
	* sysdeps/unix/arm/dl-brk.S: New file.
	* sysdeps/unix/bsd/hp/m68k/dl-brk.S: New file.
	* sysdeps/unix/bsd/osf/alpha/dl-brk.S: New file.
	* sysdeps/unix/bsd/sun/m68k/dl-brk.S: New file.
	* sysdeps/unix/bsd/vax/dl-brk.S: New file.
	* sysdeps/unix/i386/dl-brk.S: New file.
	* sysdeps/unix/mips/dl-brk.S: New file.
	* sysdeps/unix/sparc/dl-brk.S: New file.
	* sysdeps/unix/sysv/linux/alpha/dl-brk.S: New file.
	* sysdeps/unix/sysv/linux/ia64/dl-brk.S: New file.
	* sysdeps/unix/sysv/linux/powerpc/dl-brk.S: New file.
	* sysdeps/unix/sysv/linux/sparc/sparc64/dl-brk.S: New file.
	* sysdeps/unix/sysv/linux/i386/dl-brk.c: Remove.
	* sysdeps/unix/sysv/linux/i386/dl-sbrk.c: Remove.

2002-04-03  Andreas Schwab  <schwab@suse.de>

	* Makefile (headers): Add gnu/lib-names.h here instead of
	install-others.
	($(inst_includedir)/gnu/lib-names.h): Remove explicit
	installation rule.
	(install-headers): Add dependency on install-headers-nosubdir.
	* stdio-common/Makefile (headers): Add bits/stdio_lim.h here
	instead of install-others.
	($(inst_includedir)/bits/stdio_lim.h): Remove explicit
	installation rule.

2002-04-05  Ulrich Drepper  <drepper@redhat.com>

	* manual/users.tex (Enable/Disable Setuid): Fix typo in example.
	Reported by Sam Roberts <sroberts@uniserve.com>.

2002-04-03  Jakub Jelinek  <jakub@redhat.com>

	* elf/do-rel.h (elf_dynamic_do_rel): Skip relative relocs if
	l_addr == 0 and ELF_MACHINE_REL_RELATIVE.
	* sysdeps/alpha/dl-machine.h (ELF_MACHINE_REL_RELATIVE): Define.
	* sysdeps/ia64/dl-machine.h (ELF_MACHINE_REL_RELATIVE): Define.

2002-04-03  David Mosberger  <davidm@hpl.hp.com>

	* sysdeps/ia64/dl-machine.h (TRAMPOLINE_TEMPLATE): Add unwind info.
	(RTLD_START): Ditto.
	(__ia64_init_bootstrap_fdesc_table): Insert stop bit to avoid RAW
	dependency violation.
2002-04-06 01:45:15 +00:00
Ulrich Drepper
4a10c7fec7 Update.
2002-04-03  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/charmap.c (charmap_read): If the charmap doesn't
	define a code_set_name provide one based on the filename.

	* malloc/hooks.c: Define weak_variable correctly for _LIBC.

2001-12-28  Andreas Jaeger  <aj@suse.de>

	* time/mktime.c (__mktime_internal): Check for year < 70
	[PR libc/2738].

	* sysdeps/generic/w_lgamma.c: Initialized local_signgam.
	* sysdeps/generic/w_lgammaf.c: Likewise.
	* sysdeps/generic/w_lgammal.c: Likewise [PR libc/2854].

	* debug/catchsegv.sh (exval): Quote [ in pattern [PR libc/2902].
	Adjust for new output format of the backtrace functions.

	* misc/syslog.c (vsyslog): Only use cleanup handler if
	_LIBC_REENTRANT is defined [PR libc/2924].

	* sysdeps/s390/s390-64/bits/byteswap.h: Likewise [PR libc/2757].
2002-04-04 05:10:14 +00:00
Roland McGrath
971174429d 2002-03-23 Roland McGrath <roland@frob.com>
* sysdeps/mach/hurd/i386/Makefile
	(sysdep_routines, shared-only-routines): Don't add framestate,
	reverting 2001-10-02 change.
	* sysdeps/unix/sysv/linux/arm/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/alpha/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/mips/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/sparc/Makefile: Likewise.
	* sysdeps/generic/Makefile (sysdep_routines, shared-only-routines):
	Do it here instead, only if [$(unwind-find-fde) = yes].
2002-03-24 01:55:18 +00:00
Andreas Jaeger
7f0244deed Update.
2002-03-17  Andreas Jaeger  <aj@suse.de>

	* sysdeps/mips/fpu/fraiseexcpt.c (__feraiseexcept): Set cause bits.

	* sysdeps/mips/fpu/fgetexcptflg.c (__fegetexceptflag): Add comment.

	* sysdeps/mips/fpu/fclrexcpt.c (__feclearexcept): Clear also cause
	bits.

	* sysdeps/mips/fpu/fenv_libc.h (CAUSE_MASK): New.
	(CAUSE_SHIFT): New.
	Patch by Hartvig Ekner <hartvige@mips.com>.

        * sysdeps/generic/unwind-dw2-fde-glibc.c: Add prototypes.
        * sysdeps/generic/unwind-pe.h: Likewise.

        * libio/iofdopen.c (_IO_new_fdopen): Pass parameter of correct
        type to _IO_setb.

	* libio/stdio.c (AL2): Define variant when visibility attribute is
	not supported.

	* include/libc-symbols.h (_INTVARDEF): Define variant when
	visibility attribute is not supported.
2002-03-17 12:09:12 +00:00
Ulrich Drepper
dff07c4bd4 Update.
2002-03-15  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/i386-mcount.S: Just call __mcount_internal, it is an
	internal function.  Adjust for internal_function calling convention.
	* sysdeps/i386/machine-gmon.h: Declare and define __mcount_internal
	as internal_function.

	* sysdeps/generic/framestate.c: Declare fallback_frame_state_for as
	hidden.

	* nss/XXX-lookup.c (DB_LOOKUP_FCT): Add internal_function to
	declaration and definition.
	* nss/getXXbyYY_r.c (DB_LOOKUP_FCT): Add internal_function to
	declaration.
	* nss/getXXent_r.c: Likewise.
	* nss/nsswitch.h (db_lookup_function): Add internal_function to
	definition.

	* include/time.h: Declare __localtime_r as hidden.

	* include/grp.h: Declare __getgrent_r as hidden.
	* include/netdb.h: Declare __gethostent_r, __getnetent_r,
	__getservent_r, and __getprotoent_r as hidden.
	* include/pwd.h: Declare __getpwent_r as hidden.
	* include/shadow.h: Declare __getspent_r as hidden.
	* include/rpc/netdb.h: Declare __getrpcent_r as hidden.

	* iconv/gconv_int.h: Declare __gconv_read_conf, __gconv_alias_compare,
	and __gconv_transliterate as hidden.
	Add internal_function to __gconv_get_path declaration.
	* iconv/gconv_int.h: Add internal_function to __gconv_get_path
	definition.  Add attribute_hidden to __gconv_read_conf definition.
2002-03-15 09:30:44 +00:00
Ulrich Drepper
9360906d42 Update.
* elf/rtld.c: Declare _environ as hidden.
	* sysdeps/generic/dl-environ.c: Likewise.
	* sysdeps/generic/dl-sysdep.c: Likewise.

	* sysdeps/generic/ldsodefs.h: Declare _dl_debug_state_internal and
	_dl_mcount_internal as hidden.

	* elf/Makefile (rtld-routines): Add dl-sbrk and dl-brk.
	* sysdeps/generic/dl-brk.c: New file.
	* sysdeps/generic/dl-sbrk.c: New file.
	* sysdeps/unix/sysv/linux/i386/dl-brk.c: New file.
	* sysdeps/unix/sysv/linux/i386/dl-sbrk.c: New file.
2002-03-15 05:20:35 +00:00
Ulrich Drepper
5c82e15e86 Update.
2002-03-14  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-minimal.c (malloc): Declare _end as hidden.
	(__errno_location): New function.  Declare errno as hidden.
	* elf/rtld.c (_dl_argc): Define as hidden.
	(_dl_skip_args): Define as hidden.
	(_begin, _end): Declare as hidden.
	* sysdeps/generic/dl-sysdep.c (_end): Declare as hidden.
	* sysdeps/generic/entry.h (_start): Declare as hidden.
	* sysdeps/generic/ldsodefs.h (_dl_argc): Declare as hidden.
	* sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Declare
	_dl_runtime_resolve and _dl_runtime_profile as hidden.
	(RTLD_START): Use GOTOFF to access _dl_skip_args and _dl_fini.
2002-03-15 03:16:52 +00:00
Ulrich Drepper
ba737b94fd Update.
2002-03-14  Jakub Jelinek  <jakub@redhat.com>

	* locale/broken_cur_max.c (__ctype_get_mb_cur_max): Use nl_langinfo.
	* locale/Versions (_nl_current_LC_COLLATE, _nl_current_LC_CTYPE):
	Remove.

2002-03-14  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/mp_clz_tab.c: New file.
	* sysdeps/i386/mp_clz_tab.c: New file.
	* sysdeps/hppa/mp_clz_tab.c: New file.
	* sysdeps/powerpc/mp_clz_tab.c: New file.
	* stdlib/Makefile (aux): Revert last patch.
	* math/Makefile (gmp-objs): Likewise.

2002-03-13  Paul Eggert  <eggert@twinsun.com>

	* time/strftime.c: Comment fixes for references to obsolescent
	standards, In most cases the simplest fix is to remove the
	confusing comments.  Cross-referencing all the standards properly
	is a bit of a pain, and it should be enough to put that info in
	the documentation as I did in my recent time.texi patch.

2002-03-13  Paul Eggert  <eggert@twinsun.com>

	* manual/time.texi (Formatting Calendar Time):
	ISO C99 also specifies the E and O modifiers.
	%P is a GNU extension, and is not in ISO C99.
	Mention that %r is equivalent to %I:%M:%S %p in the POSIX locale.
	%T is also in ISO C99.
	The RFC 822 example is not valid in arbitrary locales.
	Reword the POSIX.2 wording slightly, to make it a bit clearer
	that POSIX.2 formats are also supported by later POSIX versions.
	If a format was introduced in ISO C99 it is also required by
	POSIX.1-2001.
2002-03-14 20:48:50 +00:00
Ulrich Drepper
ab26a24a17 Update.
* ctype/ctype-info.c: Declare _nl_C_LC_CTYPE_class,
	_nl_C_LC_CTYPE_class32, _nl_C_LC_CTYPE_toupper, _nl_C_LC_CTYPE_tolower,
	_nl_C_LC_CTYPE_class_upper, _nl_C_LC_CTYPE_class_lower,
	_nl_C_LC_CTYPE_class_alpha, _nl_C_LC_CTYPE_class_digit,
	_nl_C_LC_CTYPE_class_xdigit, _nl_C_LC_CTYPE_class_space,
	_nl_C_LC_CTYPE_class_print, _nl_C_LC_CTYPE_class_graph,
	_nl_C_LC_CTYPE_class_blank, _nl_C_LC_CTYPE_class_cntrl,
	_nl_C_LC_CTYPE_class_punct, _nl_C_LC_CTYPE_class_alnum,
	_nl_C_LC_CTYPE_map_toupper, _nl_C_LC_CTYPE_map_tolower, and
	_nl_C_LC_CTYPE_width: Declare as hidden.
	* include/locale.h: Declare _nl_locale_file_list.
	* locale/C-address.c: Define _nl_C_LC_ADDRESS as hidden.
	* locale/C-collate.c: Define _nl_C_LC_COLLATE as hidden.
	* locale/C-identification.c: Define _nl_C_LC_IDENTIFICATION as hidden.
	* locale/C-measurement.c: Define _nl_C_LC_MEASUREMENT as hidden.
	* locale/C-messages.c: Define _nl_C_LC_MESSAGES as hidden.
	* locale/C-monetary.c: Define _nl_C_LC_MONETARY as hidden.
	* locale/C-name.c: Define _nl_C_LC_NAME as hidden.
	* locale/C-numeric.c: Define _nl_C_LC_NUMERIC as hidden.
	* locale/C-paper.c: Define _nl_C_LC_PAPER as hidden.
	* locale/C-telephone.c: Define _nl_C_LC_TELEPHONE as hidden.
	* locale/C-time.c: Define _nl_C_LC_TIME as hidden.
	* locale/C-ctype.c: Define _nl_C_LC_CTYPE_class,
	_nl_C_LC_CTYPE_class32, _nl_C_LC_CTYPE_toupper, _nl_C_LC_CTYPE_tolower,
	_nl_C_LC_CTYPE_class_upper, _nl_C_LC_CTYPE_class_lower,
	_nl_C_LC_CTYPE_class_alpha, _nl_C_LC_CTYPE_class_digit,
	_nl_C_LC_CTYPE_class_xdigit, _nl_C_LC_CTYPE_class_space,
	_nl_C_LC_CTYPE_class_print, _nl_C_LC_CTYPE_class_graph,
	_nl_C_LC_CTYPE_class_blank, _nl_C_LC_CTYPE_class_cntrl,
	_nl_C_LC_CTYPE_class_punct, _nl_C_LC_CTYPE_class_alnum,
	_nl_C_LC_CTYPE_map_toupper, _nl_C_LC_CTYPE_map_tolower,
	_nl_C_LC_CTYPE_width, and as hidden.
	* locale/findlocale.c: Declare _nl_C as hidden.
	* locale/newlocale.c: Likewise.
	* locale/setlocale.c: Define _nl_C as hidden.  Remove declaration of
	_nl_locale_file_list.
	* locale/xlocale.c: Declare _nl_C_LC_CTYPE_class,
	_nl_C_LC_CTYPE_toupper, and _nl_C_LC_CTYPE_tolower as hidden.
	Define _nl_C_locobj as hidden.

	* malloc/mtrace.c (_mtrace_file): Define as hidden.
	(_mtrace_line): Likewise.

	* include/time.h: Declare __mon_yday as hidden.
	* time/strptime.c [_LIBC] (__mon_yday): Remove declaration.

	* libio/libioP.h: Declare __libio_codecvt as hidden.
	* libio/fileops.c: Declare __libio_translit as hidden.
	* libio/iofwide.c: Define __libio_translit as hidden.

	* login/getutent_r.c: Define __libc_utmp_lock as hidden.
	* login/getutid_r.c: Declare __libc_utmp_lock as hidden.
	* login/getutline_r.c: Likewise.
	* login/utmpname.c: Likewise.

	* login/utmp-private.h: Declare __libc_utmp_file_functions,
	__libc_utmp_unknown_functions, __libc_utmp_jump_table, and
	__libc_utmp_file_name as hidden.

	* locale/setlocale.c (__libc_setlocale_lock): Define as hidden.
	* locale/duplocale.c (__libc_setlocale_lock): Declare as hidden.
	* locale/freelocale.c: Likewise.
	* locale/lc-time.c: Likewise.

	* sysdeps/unix/bsd/getpt.c (__libc_ptyname1): Define as hidden.
	(__libc_ptyname2): Likewise.
	* sysdeps/unix/sysv/linux/ptsname.c (__libc_ptyname1): Declare as
	hidden.
	(__libc_ptyname2): Likewise.

	* sysdeps/generic/sbrk.c: Declare __libc_multiple_libcs as hidden.
	* sysdeps/arm/init-first.c (__libc_multiple_libcs): Define as hidden.
	* sysdeps/generic/init-first.c: Likewise.
	* sysdeps/i386/init-first.c: Likewise.
	* sysdeps/mach/hurd/i386/init-first.c: Likewise.
	* sysdeps/mach/hurd/mips/init-first.c: Likewise.
	* sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
	* sysdeps/sh/init-first.c: Likewise.
	* sysdeps/unix/sysv/aix/init-first.c: Likewise.
	* sysdeps/unix/sysv/linux/init-first.c: Likewise.
2002-03-13 06:33:52 +00:00
Ulrich Drepper
100351c3e1 Update.
* stdio-common/itowa-digits.c (_itowa_lower_digits): Define as hidden.
	(_itowa_upper_digits): Likewise.

	* libio/stdio.c (_IO_stdin, _IO_stdout, _IO_stderr): Define as hidden.
	* libio/libio.h [_LIBC] (_IO_stdin, _IO_stdout, _IO_stderr): Declare
	as hidden.

	* libio/libioP.h: Declare _IO_file_jumps_mmap, _IO_wfile_jumps,
	_IO_wfile_jumps_mmap, _IO_proc_jumps, _IO_old_proc_jumps,
	_IO_str_jumps, _IO_wstr_jumps, _IO_file_jumps_internal,
	_IO_wfile_jumps_internal, and _IO_list_all_internal as hidden.

	* gmon/gmon.c (__bb_head): Define as hidden.
	* gmon/bb_exit_func.c (__bb_head): Declare as hidden.

	* argp/argp-parse.c (_argp_hang): Define as static.

	* include/libc-symbols.h (_INTVARDEF): Adjust for visibility
	handling in latest compilers.

	* inet/in6_addr.c (in6addr_any): Use INTVARDEF not INTDEF to
	define alias.
	* libio/fileops.c (_IO_file_jumps): Likewise.
	* libio/stdfiles.c (_IO_list_all): Likewise.
	* libio/wfileops.c (_IO_wfile_jumps): Likewise.

	* malloc/malloc.h: Move __libc_malloc_initialized declaration to
	include/malloc.h.
	* include/malloc.h: Add __libc_malloc_initialized declaration
	here.  Mark variable hidden.
	* malloc/malloc.c: Include <malloc.h> not "malloc.h".

	* elf/dl-open.c (__libc_argc): Declare as hidden.
	(__libc_argv): Likewise.
	* sysdeps/generic/wordexp.c (__libc_argc): Declare as hidden.
	(__libc_argv): Likewise.
	* sysdeps/mach/hurd/i386/init-first.c: Define __libc_argc and
	__libc_argv as hidden.
	* sysdeps/mach/hurd/mips/init-first.c: Likewise.
	* sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
	* sysdeps/unix/sysv/aix/init-first.c: Likewise.
	* sysdeps/unix/sysv/linux/init-first.c: Likewise.
2002-03-13 02:17:12 +00:00
Ulrich Drepper
0e25633a77 Update.
* sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Fix creation
	of .str elements in the returned data structure.
2002-03-02 10:32:19 +00:00
Ulrich Drepper
e6caf4e12e Update.
2002-03-01  Ulrich Drepper  <drepper@redhat.com>

	* elf/Makefile (dl-routines): Add dl-origin.
	(elide-routines.os): Add dl-origin.
	* elf/Versions [ld] (GLIBC_PRIVATE): Add _dl_get_origin.
	* elf/dl-debug.c (_dl_debug_initialize): Add missing INTUSE around
	_dl_debug_state.
	* include/libc-symbols.c: Define attribute_hidden depending on
	HAVE_VISIBILITY_ATTRIBUTE.  Add definition of INTVARDEF.

	* elf/dl-deps.c: Use INTUSE with __libc_enable_secure.
	* elf/dl-load.c: Likewise.
	* elf/rtld.c: Likewise.
	* include/unistd.h: Declare __libc_enable_secure_internal.
	* sysdeps/generic/dl-sysdep.c: Use INTVARDEF with __libc_enable_secure.
	Use INTUSE with __libc_enable_secure.
	* sysdeps/mach/hurd/dl-sysdep.c: Likewise.

	* elf/dl-deps.c: Use INTUSE with _dl_out_of_memory.
	* elf/dl-error.c: Likewise,
	* sysdeps/generic/ldsodefs.h: Declare _dl_out_of_memory_internal.

	* elf/dl-dst.h [_RTLD_GLOBAL]: Define _dl_get_origin to use INTUSE.
	* sysdeps/generic/dl-origin.c: Undefine _dl_get_origin macro before
	function definition.  Use INTDEF with _dl_get_origin.
	* sysdeps/unix/sysv/linux/dl-origin.c: Likewise.

	* elf/dl-init.c: Use INTUSE with _dl_starting_up.
	* elf/rtld.c: Likewise.  Use INTVARDEF for _dl_starting_up.

	* elf/dl-profile.c: Use INTDEF for _dl_mcount.
	* elf/dl-runtime.c: Use INTUSE with _dl_mcount.
	* sysdeps/generic/ldsodefs.h: Declare _dl_mcount_internal.

	* elf/dl-conflict.c: Use rtld_progrname instead of _dl_argv[0].
	* elf/dl-deps.c: Likewise.
	* elf/dl-error.c: Likewise.
	* elf/dl-fini.c: Likewise.
	* elf/dl-init.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-version.c: Likewise.
	* elf/do-lookup.h: Likewise.
	* sysdeps/arm/dl-machine.h: Likewise.
	* sysdeps/cris/dl-machine.h: Likewise.
	* sysdeps/hppa/dl-machine.h: Likewise.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/m68k/dl-machine.h: Likewise.
	* sysdeps/powerpc/dl-machine.h: Likewise.
	* sysdeps/s390/s390-32/dl-machine.h: Likewise.
	* sysdeps/s390/s390-64/dl-machine.h: Likewise.
	* sysdeps/sh/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc-32/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc-64/dl-machine.h: Likewise.
	* sysdeps/x86_64/dl-machine.h: Likewise.
	* elf/rtld.c: Use INTDEF for _dl_argv.  Use rtld_progrname instead of
	_dl_argv[0].  Use INTUSE with _dl_argv.
	* sysdeps/generic/dl-sysdep.c: Use INTUSE with _dl_argv.
	* sysdeps/generic/ldsodefs.h: Define rtld_progname macro.
2002-03-01 09:44:29 +00:00
Ulrich Drepper
0d01dace55 Update.
2002-02-28  Jakub Jelinek  <jakub@redhat.com>

	* elf/rtld.c (_rtld_global): Remove .protected.
	(_rtld_local): Strong alias to _rtld_global.
	* elf/Makefile (CFLAGS-.os): Add -D_RTLD_LOCAL if compiling rtld
	only .os object.
	* sysdeps/generic/ldsodefs.h (GL): If SHARED and _RTLD_LOCAL, use
	_rtld_local instead of _rtld_global.
	(_rtld_local): Add hidden extern, possibly in .sdata section.
	* configure.in: Add tests for visibility attribute and .sdata.
	* config.h.in: Add HAVE_VISIBILITY_ATTRIBUTE and HAVE_SDATA_SECTION.
	* sysdeps/alpha/dl-machine.h: Use _rtld_local instead of _rtld_global.
	* sysdeps/arm/dl-machine.h: Likewise.
	* sysdeps/generic/ldsodefs.h: Likewise.
	* sysdeps/hppa/dl-machine.h: Likewise.
	* sysdeps/cris/dl-machine.h: Likewise.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/ia64/dl-machine.h: Likewise.
	* sysdeps/m68k/dl-machine.h: Likewise.
	* sysdeps/mips/mips64/dl-machine.h: Likewise.
	* sysdeps/mips/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc32/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc64/dl-machine.h: Likewise.
	* sysdeps/sh/dl-machine.h: Likewise.
	* sysdeps/s390/s390-32/dl-machine.h: Likewise.
	* sysdeps/s390/s390-64/dl-machine.h: Likewise.
	* sysdeps/x86_64/dl-machine.h: Likewise.
2002-02-28 22:38:00 +00:00
Ulrich Drepper
77fe0b9cd8 Update.
2002-02-25  Ulrich Drepper  <drepper@redhat.com>

	* assert/assert-perr.c: Use INTUSE to reference functions and variables
	inside libc itself.  Ise INTDEF and INTDEF2 to define appropriate
	aliases.  Add prototypes for the new aliases.
	* assert/assert.c: Likewise.
	* include/libc-symbols.h: Likewise.
	* include/stdio.h: Likewise.
	* include/netinet/in.h: Likewise.
	* include/rpc/auth.h: Likewise.
	* include/rpc/auth_unix.h: Likewise.
	* include/rpc/key_prot.h: Likewise.
	* include/rpc/pmap_prot.h: Likewise.
	* include/rpc/pmap_rmt.h: Likewise.
	* include/rpc/rpc_msg.h: Likewise.
	* include/rpc/xdr.h: Likewise.
	* inet/gethstbyad_r.c: Likewise.
	* inet/gethstbynm2_r.c: Likewise.
	* inet/gethstbynm_r.c: Likewise.
	* inet/gethstent_r.c: Likewise.
	* inet/in6_addr.c: Likewise.
	* libio/__fpurge.c: Likewise.
	* libio/filedoalloc.c: Likewise.
	* libio/fileops.c: Likewise.
	* libio/ftello.c: Likewise.
	* libio/ftello64.c: Likewise.
	* libio/genops.c: Likewise.
	* libio/iofclose.c: Likewise.
	* libio/iofdopen.c: Likewise.
	* libio/iofflush.c: Likewise.
	* libio/iofflush_u.c: Likewise.
	* libio/iofgetpos.c: Likewise.
	* libio/iofgetpos64.c: Likewise.
	* libio/iofgets.c: Likewise.
	* libio/iofgets_u.c: Likewise.
	* libio/iofopen.c: Likewise.
	* libio/iofopncook.c: Likewise.
	* libio/iofputs.c: Likewise.
	* libio/iofread.c: Likewise.
	* libio/iofread_u.c: Likewise.
	* libio/iofsetpos.c: Likewise.
	* libio/iofsetpos64.c: Likewise.
	* libio/ioftell.c: Likewise.
	* libio/iofwrite.c: Likewise.
	* libio/iogetline.c: Likewise.
	* libio/iogets.c: Likewise.
	* libio/iogetwline.c: Likewise.
	* libio/iolibio.h: Likewise.
	* libio/iopadn.c: Likewise.
	* libio/iopopen.c: Likewise.
	* libio/ioseekoff.c: Likewise.
	* libio/ioseekpos.c: Likewise.
	* libio/iosetbuffer.c: Likewise.
	* libio/iosetvbuf.c: Likewise.
	* libio/ioungetc.c: Likewise.
	* libio/ioungetwc.c: Likewise.
	* libio/iovdprintf.c: Likewise.
	* libio/iovsprintf.c: Likewise.
	* libio/iovsscanf.c: Likewise.
	* libio/libioP.h: Likewise.
	* libio/memstream.c: Likewise.
	* libio/obprintf.c: Likewise.
	* libio/oldfileops.c: Likewise.
	* libio/oldiofclose.c: Likewise.
	* libio/oldiofdopen.c: Likewise.
	* libio/oldiofgetpos.c: Likewise.
	* libio/oldiofgetpos64.c: Likewise.
	* libio/oldiofopen.c: Likewise.
	* libio/oldiofsetpos.c: Likewise.
	* libio/oldiofsetpos64.c: Likewise.
	* libio/oldiopopen.c: Likewise.
	* libio/oldstdfiles.c: Likewise.
	* libio/putc.c: Likewise.
	* libio/setbuf.c: Likewise.
	* libio/setlinebuf.c: Likewise.
	* libio/stdfiles.c: Likewise.
	* libio/stdio.c: Likewise.
	* libio/strops.c: Likewise.
	* libio/vasprintf.c: Likewise.
	* libio/vscanf.c: Likewise.
	* libio/vsnprintf.c: Likewise.
	* libio/vswprintf.c: Likewise.
	* libio/wfiledoalloc.c: Likewise.
	* libio/wfileops.c: Likewise.
	* libio/wgenops.c: Likewise.
	* libio/wstrops.c: Likewise.
	* malloc/mtrace.c: Likewise.
	* misc/error.c: Likewise.
	* misc/syslog.c: Likewise.
	* nss/getXXbyYY_r.c: Likewise.
	* nss/getXXent_r.c: Likewise.
	* nss/hosts-lookup.c: Likewise.
	* stdio-common/getw.c
	* stdio-common/printf-prs.c: Likewise.
	* stdio-common/printf_fp.c: Likewise.
	* stdio-common/printf_size.c: Likewise.
	* stdio-common/putw.c: Likewise.
	* stdio-common/scanf.c: Likewise.
	* stdio-common/sprintf.c: Likewise.
	* stdio-common/tmpfile64.c: Likewise.
	* stdio-common/vfprintf.c: Likewise.
	* stdio-common/vfscanf.c: Likewise.
	* stdlib/strfmon.c: Likewise.
	* sunrpc/auth_des.c: Likewise.
	* sunrpc/auth_none.c: Likewise.
	* sunrpc/auth_unix.c: Likewise.
	* sunrpc/authdes_prot.c: Likewise.
	* sunrpc/authuxprot.c: Likewise.
	* sunrpc/clnt_perr.c: Likewise.
	* sunrpc/clnt_raw.c: Likewise.
	* sunrpc/clnt_tcp.c: Likewise.
	* sunrpc/clnt_udp.c: Likewise.
	* sunrpc/clnt_unix.c: Likewise.
	* sunrpc/key_call.c: Likewise.
	* sunrpc/key_prot.c: Likewise.
	* sunrpc/openchild.c: Likewise.
	* sunrpc/pm_getmaps.c: Likewise.
	* sunrpc/pm_getport.c: Likewise.
	* sunrpc/pmap_clnt.c: Likewise.
	* sunrpc/pmap_prot.c: Likewise.
	* sunrpc/pmap_prot2.c: Likewise.
	* sunrpc/pmap_rmt.c: Likewise.
	* sunrpc/rpc_cmsg.c: Likewise.
	* sunrpc/rpc_prot.c: Likewise.
	* sunrpc/svc_authux.c: Likewise.
	* sunrpc/svc_raw.c: Likewise.
	* sunrpc/svc_simple.c: Likewise.
	* sunrpc/svc_tcp.c: Likewise.
	* sunrpc/svc_udp.c: Likewise.
	* sunrpc/svc_unix.c: Likewise.
	* sunrpc/xdr.c: Likewise.
	* sunrpc/xdr_array.c: Likewise.
	* sunrpc/xdr_mem.c: Likewise.
	* sunrpc/xdr_rec.c: Likewise.
	* sunrpc/xdr_ref.c: Likewise.
	* sunrpc/xdr_stdio.c: Likewise.
	* sysdeps/generic/_strerror.c: Likewise.
	* sysdeps/generic/printf_fphex.c: Likewise.
	* sysdeps/generic/tmpfile.c: Likewise.
	* sysdeps/gnu/errlist.awk: Likewise.
	* sysdeps/gnu/errlist.c: Likewise.

	* libio/Makefile (routines): Remove iosprint.
	* libio/iosprintf.c: Removed
2002-02-26 01:45:59 +00:00
Ulrich Drepper
e413826144 Update.
2002-02-22  Ulrich Drepper  <drepper@redhat.com>

	* elf/Versions: Add _dl_allocate_tls and _dl_deallocate_tls.
	* elf/rtld.c (dl_main): Use _dl_allocate_tls with INTUSE.
	* sysdeps/generic/dl-tls.c: Add INTDEF for _dl_allocate_tls.
	(_dl_deallocate_tls): New function.
	* sysdeps/generic/ldsodefs.h: Declare _dl_allocate_tls_internal and
	_dl_deallocate_tls.
2002-02-23 07:59:56 +00:00
Roland McGrath
3a2832a07f * sysdeps/mach/hurd/times.c: Fix typo in last change.
* sysdeps/mach/hurd/setpriority.c [POLICY_TIMESHARE_BASE_COUNT]:
	Use task_policy in place of task_priority.

	* sysdeps/generic/bits/mman.h
	(MS_ASYNC, MS_SYNC, MS_INVALIDATE): New macros.
	* sysdeps/mach/msync.c: New file.

	* sysdeps/mach/powerpc/syscall.S: New file.

	* mach/msg.c [MACH_MSG_OVERWRITE]
	(__mach_msg_trap, __mach_msg_overwrite): New functions.
	* mach/Versions (libc: GLIBC_2.0): Add mach_msg_overwrite and __ name.

	* sysdeps/mach/configure.in: Check for clock.defs to put into
	mach_interface_list.
	* sysdeps/mach/configure: Regenerated.

	* mach/Makefile (mach-machine): New variable, set from $(base-machine).
	($(objpfx)mach-syscalls.mk): Use it in place of $(base-machine).
	($(mach-syscalls:%=$(objpfx)%.S) static pattern rule):
	Use <mach/machine/syscall_sw.h> instead of <sysdep.h>.
	(mach-shortcuts): Add device_read_overwrite_request,
	device_read_overwrite, vm_read_overwrite, thread_switch.

	* configure.in (base_machine): Set to $machine by default.
	* configure: Regenerated.
2002-02-19 00:22:30 +00:00
Ulrich Drepper
fc093be160 Update.
* elf/dl-close.c (remove_slotinfo): New function.  Handles everything
	for removing reference of module in slotinfo list.
	(_dl_close): Use remove_slotinfo.
	* sysdeps/generic/dl-tls.c: General pretty printing.
	(oom): Define only if SHARED.
	(_dl_next_tls_modid): Correct starting point for the case we assume
	there is a gap.  Add missing instruction grouping (doh!).  Correct
	tests for reaching maximum index.
	* elf/Makefile: Add rules to build and run tst-tls7.
	* elf/tst-tls7.c: New file.
	* elf/tst-tlsmod3.c: New file.

	* elf/tst-tlsmod1.c: Move #include "tls-macros.h" instead #ifdef
	USE_TLS.
	* elf/tst-tlsmod2.c: Likewise.
2002-02-14 07:57:19 +00:00
Ulrich Drepper
aed283dd45 Update.
2002-02-12  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/dl-tls.c (TLS_DTV_UNALLOCATED): Renamed from
	TLS_DTV_UNALLOCATE.
	(oom): New function.
	(_dl_next_tls_modid): Rewrite to handle dl_tls_dtv_slotinfo_list.
	(_dl_determine_tlsoffset): Likewise.
	(_dl_allocate_tls): Likewise.
	(__TLS_GET_ADDR): Define if not already defined.
	(_dl_tls_symaddr): New function.
	(allocate_and_init): New function.
	(__tls_get_addr): Actually implement handling of generation counter
	and deferred allocation.
	* sysdeps/generic/ldsodefs.h (_rtld_global): Remove _dl_initimage_list,
	add _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
	_dl_tls_generation.
	Define TLS_SLOTINFO_SURPLUS and DTV_SURPLUS.
	Declare _dl_tls_symaddr.
	* sysdeps/i386/dl-tls.h: Disable __tls_get_addr handling unless
	SHARED.
	* include/link.h (struct link_map):  Remove l_tls_nextimage and
	l_tls_previmage.
	* elf/dl-sym.c (_dl_sym): After successful lookup call _dl_tls_symaddr
	instead of DL_SYMBOL_ADDRESS for STT_TLS symbols.
	(_dl_vsym): Likewise.
	* elf/rtld.c (_dl_start_final): Adjust initdtv initialization for new
	layout.
	(dl_main): Allow PT_TLS be present for empty segment.  Remove
	nextimage list handling.  Instead add all modules using TLS to
	dl_tls_dtv_slotinfo_list.
	* elf/dl-open.c (dl_open_worker): After successfully loading all
	objects add those with TLS to the dl_tls_dtv_slotinfo_list list.
	* elf/dl-load.c (_dl_map_object_from_fd): If PT_TLS entry is for an
	empty segment don't do anything.  Remove handling of initimage list.
	* elf/Versions [ld] (GLIBC_2.0): Add __libc_memalign.
	(GLIBC_PRIVATE): Add _dl_tls_symaddr.
	* elf/dl-minimal.c: Define __libc_memalign.
	* elf/dl-support.c: Remove _dl_initimage_list.  Add
	_dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
	_dl_tls_generation.
	* include/stdlib.h: Declare __libc_memalign.

	* elf/Makefile: Add rules to build and run tst-tls4 and tst-tls5.
	* elf/tst-tls4.c: New file.
	* elf/tst-tls5.c: New file.
	* elf/tst-tlsmod2.c: New file.

	* elf/tls-macros.h: asms using ___tls_get_addr destroy %ecx and %edx.

	* elf/tst-tlsmod1.c: Don't define variables unles USE_TLS.

	* elf/tst-tls1.c: Use test-skeleton.c.
	* elf/tst-tls2.c: Likewise.
	* elf/tst-tls3.c: Likewise.

	* elf/dl-conflict.c (RESOLVE_MAP): Return NULL not 0.

	* sysdeps/mips/machine-gmon.h: Update MCOUNT for current GCC behavior.
2002-02-13 08:03:56 +00:00
Ulrich Drepper
a330abe2cd Update.
* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): More changes
	required by passing pointer to last element of the list.

	* elf/dl-load.c (_dl_map_object_from_fd): Move adjustment of
	l_tls_initimage to a place where it actually is performed.

	* elf/tls-macros.h: ...here.  New file.
2002-02-11 00:57:37 +00:00
Ulrich Drepper
03af57939c Update.
* sysdeps/generic/glob.c (glob): Explicitly set gl_pathc to zero
	after globfree() calls.
2002-02-10 23:36:05 +00:00
Ulrich Drepper
87837aace9 Update.
* elf/dl-deps.c (struct openaux_args): Add open_mode element.
	(openaux): Pass open_mode as new last argument to _dl_map_object.
	(_dl_map_object_deps): Add new argument open_mode.  Initialize
	open_mode element of args variable with it.
	* elf/dl-open.c (dl_open_worker): Pass __RTLD_DLOPEN flag is set to
	_dl_map_object_deps.
	* elf/rtld.c (dl_main): Add zero as last parameter to
	_dl_map_object_deps call.
	* sysdeps/generic/ldsodefs.h: Adjust prototype of _dl_map_object_deps.
	* elf/nodlopen2.c: New file.
	* elf/nodlopenmod2.c: New file.
	* elf/Makefile: Add rules to build and run nodlopen2.

	* elf/tls-macros.hgg: ...here.  New file.
2002-02-08  Richard Henderson  <rth@redhat.com>
2002-02-10 22:40:17 +00:00
Ulrich Drepper
b123d06e21 Update.
* elf/Makefile (tests): Add tst-tls1.
	* elf/tst-tls1.c: New file.

	* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Don't handle
	alignment of TCB for now.

	* elf/rtld.c (dl_main): Use p_vaddr as address of TLS
	initialization image for the application itself.

	loop to initialize TLS block.
2002-02-10 07:44:36 +00:00
Ulrich Drepper
3065b0c799 Update.
2002-02-09  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/dl-tls.c (_dl_allocate_tls): Correctly terminate
	loop to initial TLS block.

	* csu/version.c (banner): If TLS support is available say so.
2002-02-09 19:02:31 +00:00
Ulrich Drepper
67eb7235ce Update.
2002-02-09  Richard Henderson  <rth@twiddle.net>

	* sysdeps/generic/ldsodefs.h (struct rtld_global): Also include
	_dl_cpuclock_offset if HP_SMALL_TIMING_AVAIL.

2002-02-09  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/dl-environ.c (unsetenv): Clear cnt before use.

	* po/ca.po: Update from translation team.
	* po/sk.po: Likewise.
2002-02-09 01:54:57 +00:00
Ulrich Drepper
a52d15621f Update.
2002-02-08  Ulrich Drepper  <drepper@redhat.com>

	* elf/rtld.c (_dl_start_final): Install DTV explicitly.
	(dl_main): Move dtv/static TLS handling before relocation.
	Unconditionally call _dl_tlsoffset.  Call _dl_allocate_tls and
	TLS_INIT_TP to allocate and install the dtv/static TLS block.
	* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): If no object
	so far uses TLS initialize GL(dl_tls_static_size) and
	GL(dl_tls_static_align) to account for the TCB.
	(_dl_allocate_tls): New function.
	* sysdeps/generic/ldsodefs.h (rtld_global): Add
	_dl_initial_dtv_malloced.

	* configure.in: Test for __builtin_memset more realistically.

	* csu/version.c (banner): If TLS support available say so.
2002-02-09 01:41:44 +00:00
Ulrich Drepper
d555194cb3 Update.
2002-02-07  Andreas Schwab  <schwab@suse.de>

	* configure.in: Fix check for -zcombreloc.

2002-02-06  H.J. Lu  <hjl@gnu.org>

	* config.h.in (HAVE_BUILTIN_MEMSET): New.
	* configure.in: Check if __builtin_memset really works.
	* elf/rtld.c (_dl_start): Check HAVE_BUILTIN_MEMSET instead of
	__GNUC_PREREQ (2, 96) before using __builtin_memset.

2002-02-06  Jakub Jelinek  <jakub@redhat.com>

	* io/bug-ftw3.c (main): Don't try the test if root.

2002-02-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>

	* sysdeps/unix/sysv/linux/s390/brk.c (__brk): Correct inline assembly
	constraints.
	* sysdeps/unix/sysv/linux/s390/s390-32/bits/resource.h (RLIMIT_LOCKS):
	Add RLIMIT_LOCKS and adjust RLIMIT_NLIMITS.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/resource.h (RLIMIT_LOCKS):
	Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/clone.S (clone): Make clone
	a weak alias for __clone.
	* sysdeps/unix/sysv/linux/s390/s390-64/clone.S (clone): Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: Fix typo.
	* sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Add framestate.
	* sysdeps/unix/sysv/linux/s390/s390-64/Versions: New file.
	* sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap64): Make __mmap
	a weak alias for __mmap64.

	* sysdeps/mips/atomicity.h (exchange_and_add): Not use branch likely.
	* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
	* sysdeps/generic/dl-tls.c: Don't read TLS header if TLS is not needed.
2002-02-07 17:54:45 +00:00
Ulrich Drepper
d4468ab788 Don't read TLS header if TLS is not needed. 2002-02-07 17:29:14 +00:00
Ulrich Drepper
cd30b01ee9 Update.
2002-02-07  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Account for
	alignment of the TCB and store total size and alignment of static
	TLS block in _dl_tls_static_size and _dl_tls_static_align.
	tls_index is a typedef.
	* sysdeps/generic/ldsodefs.h: Declare _dl_tls_static_size and
	_dl_tls_static_align.
	* sysdeps/i386/dl-tls.h: tls_index is a typedef.
	* elf/dl-support.c: Define _dl_tls_static_size and
	_dl_tls_static_align.
2002-02-07 08:44:37 +00:00
Ulrich Drepper
8d4b5a8a50 Update.
2002-02-06  Ulrich Drepper  <drepper@redhat.com>

	* configure.in: Add --without-tls option.
	* sysdeps/i386/elf/configure.in: Don't check for TLS support if
	--without-tls is given.

	* sysdeps/generic/dl-tls.c: Include <tls.h>.

	* sysdeps/i386/dl-tls.h: Don't define anything if !USE_TLS.
2002-02-07 06:38:57 +00:00
Ulrich Drepper
3fb558781f Update.
2002-02-06  Ulrich Drepper  <drepper@redhat.com>

	* Versions.def [ld]: Add GLIBC_2.3.
	* elf/Versions [ld]: Add __tls_get_addr to GLIBC_2.3.
	* elf/Makefile (dl-routines): Add dl-tls.
	(distribute): Add dl-tls.h.
	* sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
	_dl_tls_module_cnt, add _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps.
	Add prototypes for _dl_next_tls_modid and _dl_determine_tlsoffset.
	* elf/dl-load.c (_dl_map_object_from_fd): Store alignment requirement
	along with the other info in the link map.  Change queueing of init
	images for double linked list.  Use _dl_next_tls_modid to compute
	l_tls_modid.
	* elf/rtld.c (_dl_start_final): Store alignment requirement
	along with the other info in rtld map and executable map.
	(dl_main): Add ld.so to the init image list if necessary.  Compute
	final module ID with _dl_next_tls_modid.
	* include/link.h (struct link_map): Add l_tls_previmage and
	l_tls_align.
	* eld/dl-support.c: Define _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps.
	* sysdeps/i386/elf/Versions: New file.
	* sysdeps/generic/dl-tls.c: New file.
	* sysdeps/generic/dl-tls.h: New file.
	* sysdeps/i386/dl-tls.h: New file.

	attribute((packed)) to counter stupid people misusing gcc options.
2002-02-07 04:08:19 +00:00
Roland McGrath
bcef95d89c 2002-02-06 Roland McGrath <roland@frob.com>
* sysdeps/unix/sysv/linux/netinet/ip.h: Moved to ...
	* sysdeps/generic/netinet/ip.h: ... here, replacing old file.
2002-02-07 03:49:18 +00:00
Andreas Jaeger
cff26a3ed5 Update.
2002-02-06  Andreas Jaeger  <aj@suse.de>

	* include/libc-symbols.h (INTUSE): Renamed from INT.
	* elf/dl-deps.c: Change users.
	* sysdeps/generic/dl-sysdep.c: Likewise.
	* sysdeps/generic/dl-cache.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/rtld.c: Likewise.
	* elf/dl-version.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-dst.h: Likewise.
	* elf/dl-init.c: Likewise.
2002-02-06 14:14:51 +00:00
Ulrich Drepper
a2f1f5cb89 Update.
2002-02-05  Ulrich Drepper  <drepper@redhat.com>

	* elf/rtld.c (dl_main): Read PT_TLS entry of the executable.
	* sysdeps/generic/ldsodefs.h (struct rtld_global): Add
	_dl_tls_module_cnt.
2002-02-05 08:25:04 +00:00
Ulrich Drepper
5d6feea8f5 Update.
* elf/rtld.c (_dl_start): Fill TLS values in link map for rtld.
	* include/link.h (struct link_map): Add various members for TLS
	information.
	* sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
	_rtld_tlsoffset, add _dl_initimage_list.
	* sysdeps/i386/dl-lookupcfg.h: New file.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Implement missing
	TLS relocation.  When using TLS we now use RESOLVE_MAP.
	(elf_machine_rela): Use RESOLVE_MAP instead of RESOLVE_MAP if TLS
	is used.

	* sysdeps/generic/dl-cache.c (_dl_cache_libcmp): Mark as possibly
	unused.
2002-02-05 08:02:04 +00:00
Ulrich Drepper
535b764df5 Update.
* elf/rtld.c (_dl_start_final): Allocate TLS and initialize
	thread-pointer as soon as possible.
	* sysdeps/generic/ldsodefs.h: Include <tls.h>.  Define first TLS
	elements in rtld_global.
	* sysdeps/generic/tls.h: New file.
	* elf/Makefile (distribute): Add tls.h.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Add support for TLS
	relocations.  Not complete yet.

	* resolv/resolv.h: Allow user to define __need_res_state and only
	define __res_start structure then.
	* include/resolv.h: Only declare functions if _RESOLV_H_ is defined.
2002-02-05 00:57:29 +00:00
Ulrich Drepper
67ddea9254 Update.
2002-02-04  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Move
	dl_cpuclock_offset initialization to _dl_start_final.
	(_dl_show_auxv): Avoid unnecessary sign extension.
	* elf/rtld.c (_dl_start_final): Initialize dl_cpuclock_offset.
2002-02-04 08:38:52 +00:00
Ulrich Drepper
9710f75d4a Update.
2002-02-03  Andreas Schwab  <schwab@suse.de>

	* sysdeps/posix/readv.c: Use ssize_t for bytes_read.
	* sysdeps/posix/writev.c: Use ssize_t for bytes_written.  Fix comment.

2002-02-03  Thorsten Kukuk  <kukuk@suse.de>

	* sysdeps/posix/writev.c: Check for ssize_t overflow, don't use
	alloca if the memory reqirements are too high.

2002-02-03  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-load.c (decompose_rpath): Avoid using strstr.
	* elf/dl-minimal.c (_strerror_r): Use _itoa instead of _itoa_word since
	the former is available anyway and speed isn't important here.
	* elf/dl-misc.c (_dl_debug_vdprintf): Likewise.
	* elf/dl-version.c (match_symbol): Likewise.
	(_dl_check_map_versions): Likewise.
	* elf/rtld.c (process_envvars): Likewise.
	(print_statistics): Likewise.
	* sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Likewise.
	* elf/dl-minimal.c (_itoa): Always define it.  Make it work for all
	bases.  Add assert to catch uses of unimplemented features.
	(__strsep): Add assert to catch uses of unimplemented features.
	* elf/dl-object.c (_dl_new_object): Don't use rawmemchr.  Use strchr
	and avoid inline optimization.
	* elf/rtld.c (process_envvars): Likewise.
	* elf/dl-open.c: Don't include <stdio-common/_itoa.h>.
	* elf/dl-profile.c (_dl_start_profile): Help compiler to avoid ffs.
	* elf/rtld.c (dl_main): Avoid strsep inline optimization.

	* stdio-common/_itoa.h: Minor simplifications of the code.
	* stdio-common/_itoa.c: Likewise.

	* elf/dl-reloc.c (_dl_relocate_object): Use _dl_debug_printf
	instead of _dl_printf for debugging info output.

	* sysdeps/mips/atomicity.h (exchange_and_add): Use branch likely.
2002-02-03 19:39:52 +00:00
Ulrich Drepper
7969407a01 Update.
Change ld.so to not use functions which are exported.  One cannot
	interpose them anyway.  Use INT() to mark uses, INTDEF() to mark
	definitions.
	* include/libc-symbols.h: Define INT and INTDEF.
	* sysdeps/generic/ldsodefs.h: Declare _dl_debug_printf_internal,
	_dl_signal_error_internal, _dl_map_object_internal,
	_dl_map_object_deps_internal, _dl_lookup_symbol_internal,
	_dl_lookup_versioned_symbol_internal,
	_dl_relocate_object_internal, _dl_debug_state_internal,
	_dl_start_profile_internal, and _dl_unload_cache_internal.
	* include/dlfcn.h: Declare _dl_catch_error_internal.
	* elf/rtld.c: Use INT for calls to any of the *_internal functions
	above.  Add INTDEF to function definitions.
	* elf/dl-debug.c: Likewise.
	* elf/dl-deps.c: Likewise.
	* elf/dl-dst.h: Likewise.
	* elf/dl-error.c: Likewise.
	* elf/dl-fini.c: Likewise.
	* elf/dl-init.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-misc.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-profile.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-runtime.c: Likewise.
	* elf/dl-version.c: Likewise.
	* elf/do-lookup.h: Likewise.
	* sysdeps/generic/dl-cache.c: Likewise.
	* sysdeps/generic/dl-sysdep.c: Likewise.
	* sysdeps/alpha/dl-machine.h (RTLD_START): Call _dl_init_internal
	instead of _dl_init.
	* sysdeps/arm/dl-machine.h: Likewise.
	* sysdeps/cris/dl-machine.h: Likewise.
	* sysdeps/hppa/dl-machine.h: Likewise.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/ia64/dl-machine.h: Likewise.
	* sysdeps/m68k/dl-machine.h: Likewise.
	* sysdeps/mips/dl-machine.h: Likewise.
	* sysdeps/mips/mips64/dl-machine.h: Likewise.
	* sysdeps/s390/s390-32/dl-machine.h: Likewise.
	* sysdeps/s390/s390-64/dl-machine.h: Likewise.
	* sysdeps/sh/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc32/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc64/dl-machine.h: Likewise.
	* sysdeps/x86_64/dl-machine.h: Likewise.
	* sysdeps/powerpc/dl-start.S (_dl_start_user): Likewise.

	* elf/Versions: Don't export _dl_check_all_versions, _dl_sysdep_start,
	and _dl_debug_initialize.
2002-02-03 00:31:37 +00:00
Ulrich Drepper
379d4ec497 Update.
2002-02-02  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/dl-environ.c (unsetenv): Optimize.  Don't use
	strncmp.
	* elf/dl-load.c (is_dst): Optimize.  Don't call strncmp twice.
	* elf/rtld.c (process_dl_debug): Optimize. Avoid calls to strncmp,
	strspn, and strcspn.
	(process_envvars): Don't use strcspn.

	* elf/dl-load.c (_dl_dst_count): Fix possible endless loop.
	(_dl_dst_substitute): Likewise.
2002-02-02 09:49:35 +00:00
Ulrich Drepper
27ef89fbdc Update.
2002-02-01  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/ldsodefs.h (_dl_load_lock): Remove duplicate
	definition.
	* sysdeps/ia64/hp-timing.h: Move _dl_hp_timing_overhead in
	_rtld_global struct.
	* sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
	* sysdeps/sparc/sparc64/hp-timing.c: Likewise.
	* sysdeps/sparc/sparc64/hp-timing.h: Likewise.
	* sysdeps/sparc/sparc64/Makefile: Make hp-timing static only.
	* sysdeps/unix/sysv/aix/init-first.c (_dl_fpu_control,
	_dl_fpu_control_set): Remove unused externs.
	* sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c: New file.
	* sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c: New file.
	* sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Move procinfo
	related variables in _rtld_global struct.
	* sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
	* sysdeps/unix/sysv/linux/init-first.c (_dl_fpu_control_set): Remove
	unused extern.
2002-02-01 19:06:42 +00:00
Ulrich Drepper
040006a36d Dummy dl-procinfo.c file for platforms which don't have one. 2002-02-01 18:25:44 +00:00
Ulrich Drepper
ccdf0cab1d Update.
* elf/dl-minimal.c: Define _itoa for 32-bit machines with HP timing.
	* elf/dl-reloc.c: Pretty printing.
	* sysdeps/generic/ldsodefs.h: Move _dl_hp_timing_overhead and
	procinfo-related variables in rtld_global struct.
	* elf/dl-support.c: Likewise.
	* elf/rtld.c: Likewise.
	* sysdeps/i386/i686/Makefile: Likewise.
	* sysdeps/i386/i686/hp-timing.c: Likewise.
	* sysdeps/i386/i686/hp-timing.h: Likewise.
	* sysdeps/ia64/Makefile: Likewise.
	* sysdeps/ia64/hp-timing.c: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
	* sysdeps/unix/sysv/linux/arm/dl-procinfo.c: Likewise.
	* sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
	* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
	* sysdeps/x86_64/Makefile: Likewise.
2002-02-01 07:49:47 +00:00
Ulrich Drepper
5688da5537 Update.
* sysdeps/generic/ldsodefs.h: Add _dl_load_lock, _dl_lazy,
	_dl_dynamic_weak, _dl_fpu_control, _dl_cpuclock_offset, and
	_dl_debug_fd to rtld_global.
	* elf/Versions: Likewise.
	* elf/dl-close.c: Likewise.
	* elf/dl-iteratephdr.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-misc.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-support.c: Likewise.
	* elf/do-lookup.h: Likewise.
	* elf/rtld.c: Likewise.
	* sysdeps/generic/dl-cache.c: Likewise.
	* sysdeps/generic/dl-sysdep.c: Likewise.
	* sysdeps/ia64/Versions: Likewise.
	* sysdeps/unix/clock_gettime.c: Likewise.
	* sysdeps/unix/clock_settime.c: Likewise.
	* sysdeps/unix/sysv/linux/init-first.c: Likewise.
	* sysdeps/sparc/Versions: Removed.
	* sysdeps/i386/i686/Versions : Removed.
	* sysdeps/x86_64/Versions: Removed.
	* configure.in: Define HAVE_PROTECTED if .protected is available.
	* config.h.in: Add entry for HAVE_PROTECTED.

2002-01-31  Jakub Jelinek  <jakub@redhat.com.

	* sysdeps/alpha/dl-machine.h: Move global variables for SHARED
	code in struct _rtld_global.  Export this struct, remove all
	exports for the signal variables.
	* sysdeps/arm/dl-machine: Likewise.
	* sysdeps/generic/dl-origin: Likewise.
	* sysdeps/generic/dl-sysdep: Likewise.
	* sysdeps/generic/dl-cache: Likewise.
	* sysdeps/hppa/dl-fptr: Likewise.
	* sysdeps/hppa/dl-machine: Likewise.
	* sysdeps/cris/dl-machine: Likewise.
	* sysdeps/i386/dl-machine: Likewise.
	* sysdeps/ia64/dl-machine: Likewise.
	* sysdeps/m68k/dl-machine: Likewise.
	* sysdeps/mach/hurd/dl-sysdep: Likewise.
	* sysdeps/mips/mips64/dl-machine: Likewise.
	* sysdeps/mips/dl-machine: Likewise.
	* sysdeps/powerpc/elf/libc-start: Likewise.
	* sysdeps/powerpc/dl-machine: Likewise.
	* sysdeps/powerpc/dl-start: Likewise.
	* sysdeps/sparc/sparc32/dl-machine: Likewise.
	* sysdeps/sparc/sparc64/dl-machine: Likewise.
	* sysdeps/sh/dl-machine: Likewise.
	* sysdeps/s390/s390-32/dl-machine: Likewise.
	* sysdeps/s390/s390-64/dl-machine: Likewise.
	* sysdeps/unix/sysv/aix/libc-start: Likewise.
	* sysdeps/unix/sysv/aix/start-libc: Likewise.
	* sysdeps/unix/sysv/linux/ia64/dl-static: Likewise.
	* sysdeps/unix/sysv/linux/m68k/getpagesize: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize: Likewise.
	* sysdeps/x86_64/dl-machine: Likewise.

2002-01-31  Ulrich Drepper  <drepper@redhat.com>
2002-02-01 01:33:04 +00:00
Ulrich Drepper
a204ea3607 Update.
2002-01-31  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/posix/readv.c: Don't use alloca if the memory requirements
	are too high.

2002-01-31  Andreas Schwab  <schwab@suse.de>

	* sysdeps/posix/readv.c: Check for ssize_t overflow.

2002-01-31  Andreas Schwab  <schwab@suse.de>

	* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Fix leftover
	reference to _dl_pagesize.
2002-01-31 19:43:44 +00:00
Ulrich Drepper
d6b5d570a3 Update.
2002-01-30  Ulrich Drepper  <drepper@redhat.com>

	* Versions.def [ld]: Add GLIBC_2.3.
	* elf/dl-addr.c: Move global variables for SHARED code in struct
	_rtld_global.  Export this struct, remove all exports for the
	signal variables.
	* elf/dl-close.c: Likewise.
	* elf/dl-conflict.c: Likewise.
	* elf/dl-debug.c: Likewise.
	* elf/dl-deps.c: Likewise.
	* elf/dl-dst.h: Likewise.
	* elf/dl-error.c: Likewise.
	* elf/dl-fini.c: Likewise.
	* elf/dl-init.c: Likewise.
	* elf/dl-iteratephdr.c: Likewise.
	* elf/dl-libc.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-minimal.c: Likewise.
	* elf/dl-object.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-profile.c: Likewise.
	* elf/dl-profstub.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-runtime.c: Likewise.
	* elf/dl-support.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* elf/dl-version.c: Likewise.
	* elf/do-lookup.h: Likewise.
	* elf/do-rel.h: Likewise.
	* elf/dynamic-link.h: Likewise.
	* elf/rtld.c: Likewise.
	* sysdeps/generic/dl-cache.c: Likewise.
	* sysdeps/generic/dl-sysdep.c: Likewise.
	* sysdeps/generic/ldsodefs.h: Likewise.
	* sysdeps/generic/libc-start.c: Likewise.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/ia64/dl-fptr.c: Likewise.
	* sysdeps/ia64/dl-machine.h: Likewise.
	* sysdeps/unix/sysv/linux/dl-librecon.h: Likewise.
	* sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
	* sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
	* sysdeps/unix/sysv/linux/getclktck.c: Likewise.
	* sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
	* sysdeps/unix/sysv/linux/ia64/dl-static.c: Likewise.
	* sysdeps/unix/sysv/linux/ia64/getpagesize.c: Likewise.

	* malloc/thread-m.h: Spinlock definitions for x86/x86_64.
2002-01-31 03:41:25 +00:00
Ulrich Drepper
d77a71c5fe Update.
2002-01-09  Jakub Jelinek  <jakub@redhat.com>

	* elf/elf.h (SHN_UNDEF): Remove duplicate definition.

2002-01-09  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/alpha/fpu/e_sqrt.c (__ieee754_sqrt): Don't use multi-line
	string literals.
	(__full_ieee754_sqrt): Add __attribute_used__.

2002-01-10  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/group_member.c (__group_member): Also check
	groups[0] [PR libc/2781].
2002-01-11 01:06:11 +00:00
Andreas Jaeger
5c26fecb6f Prevent double inclusion. 2002-01-08 10:19:35 +00:00
Ulrich Drepper
a0dcb6896c Update.
2002-01-03  Jakub Jelinek  <jakub@redhat.com>

	* elf/Makefile (routines, shared-only-routines): Add
	unwind-dw2-fde-glibc instead of unwind-dw2-fde.
	* elf/elf.h (PT_GNU_EH_FRAME): Define.
	* sysdeps/generic/unwind-dw2-fde-glibc.c: New file.
	* sysdeps/generic/unwind-dw2-fde.c (__register_frame_info_bases):
	Optimize if .eh_frame section contains no FDEs.
	(__register_frame, __deregister_frame_info_bases,
	__deregister_frame): Likewise.
	* sysdeps/generic/unwind-dw2.c (execute_cfa_program): Fix
	DW_CFA_restore handling.

2002-01-07  Stephen L Moshier  <moshier@mediaone.net>
2002-01-08 06:28:46 +00:00
Roland McGrath
6ede11aa0d * sysdeps/generic/htonl.c: Use uint32_t instead of u_int32_t.
* sysdeps/generic/htons.c: Use uint16_t instead of u_int16_t.
2002-01-02 10:24:13 +00:00
Ulrich Drepper
d1dddedf78 Realloc error handling memory leak fix. 2001-12-29 15:57:15 +00:00
Andreas Jaeger
a49d0179db * elf/dblloadmod1.c: Add prototype to avoid warning.
* elf/dblloadmod2.c: Likewise. 
* elf/dblloadmod3.c: Likewise. 
* elf/reldepmod5.c: Likewise. 
* elf/reldepmod6.c: Likewise.
	* elf/dl-conflict.c (_dl_resolve_conflicts): Add unused attribute
	for resolve_conflict_map since RESOLVE_CONFLICT_FIND_MAP is not
	used on all architectures.

	* sunrpc/svc_tcp.c: Add noreturn attribute for
	svctcp_rendezvous_abort.
	* sunrpc/svc_unix.c: Likewise for svcunix_rendezvous_abort.

	* sysdeps/generic/strstr.c (strstr): Add paranthese for assignment
	to avoid warning.
2001-12-21 10:16:16 +00:00
Ulrich Drepper
9cddf9deda Update.
2001-12-18  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (clone): Subtract
	stack bias from child stack pointer before passing it to clone syscall.

2001-12-18  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/posix/sysconf.c (__sysconf): Respect POSIX minimum for
	_SC_TZNAME_MAX.
	* sysdeps/generic/sysconf.c (__sysconf): Likewise.
	Reported by Thorsten Kukuk <kukuk@suse.de>.

	* sysdeps/unix/grantpt.c (grantpt): Correct typo in comment and
	add some casts.

	* sysdeps/unix/sysv/linux/grantpt.c: Make __unix_grantpt static.

2001-12-18  Thorsten Kukuk  <kukuk@suse.de>

	* sysdeps/unix/sysv/linux/grantpt.c: Make errno results standard
	conforming: return EBADF if file descriptor is invalid and EINVAL
	if file descriptor is no valid tty.
	* login/tst-grantpt.c: New file.
	* login/Makefile (tests): Add tst-grantpt.
2001-12-19 00:21:23 +00:00