Commit Graph

8708 Commits

Author SHA1 Message Date
Ulrich Drepper
7d0b1164e6 Update.
* sysdeps/generic/libc-tls.c: Likewise.
2002-08-08 04:16:54 +00:00
Ulrich Drepper
0e4b99b65b Update.
2002-08-07  Ulrich Drepper  <drepper@redhat.com>

	* elf/rtld.c: Include <errno.h>.
2002-08-08 03:35:15 +00:00
Roland McGrath
0a463fa9da * resolv/res_debug.c (latlon2ul): Add const to argument type, and use
it internally.
	(precsize_aton): Likewise.
2002-08-08 02:01:41 +00:00
Roland McGrath
78323b5b80 * inet/getnetgrent_r.c (endnetgrent, __getnetgrent_r): Actually call
the static symbols added in the last change (doofus is me).

	* locale/newlocale.c (__newlocale): Use a bit mask instead of a second
	loop to notice missing categories in a composite name.

	* locale/locale.h (LC_CTYPE_MASK, LC_NUMERIC_MASK, LC_TIME_MASK,
	LC_COLLATE_MASK, LC_MONETARY_MASK, LC_MESSAGES_MASK, LC_ALL_MASK,
	LC_PAPER_MASK, LC_NAME_MASK, LC_ADDRESS_MASK, LC_TELEPHONE_MASK,
	LC_MEASUREMENT_MASK, LC_IDENTIFICATION_MASK, LC_ALL_MASK): New macros.

	* malloc/tst-calloc.c: Add tests for one or both parameters being zero.
2002-08-08 01:33:05 +00:00
Roland McGrath
2a54ad77a1 2002-08-07 Roland McGrath <roland@redhat.com>
* inet/getnetgrent_r.c (endnetgrent, __getnetgrent_r): Actually call
	the static symbols added in the last change (doofus is me).
2002-08-08 01:32:48 +00:00
Ulrich Drepper
53552dd8de Update.
2002-08-07  Ulrich Drepper  <drepper@redhat.com>

	* malloc/tst-calloc.c: Add tests for one or both parameters being
	zero.

	* malloc/malloc.c (public_cALLOc): Check ELEM_SIZE != 0 before
2002-08-07 23:08:10 +00:00
Ulrich Drepper
a2e62fb1bd Add tests for one or both parameters being zero. 2002-08-07 23:06:11 +00:00
Roland McGrath
534feaab4b * sysdeps/i386/dl-machine.h (elf_machine_rel): Add to, don't clobber,
unrelocated initial value for DTPOFF32 and TPOFF32 relocs.
	Reported by Jakub Jelinek  <jakub@redhat.com>.
2002-08-07 22:14:40 +00:00
Roland McGrath
0be405c239 2002-08-07 Jakub Jelinek <jakub@redhat.com>
* malloc/malloc.c (public_cALLOc): Check ELEM_SIZE != 0 before
	division.

	* include/getopt.h: Put private decls inside [_GETOPT_H].
2002-08-07 19:32:54 +00:00
Roland McGrath
e78f615d52 * include/getopt.h: But private decls inside [_GETOPT_H].
Use libc_hidden_proto for getopt_long, getopt_long_only.
	* posix/getopt1.c [_LIBC]: Include <getopt.h> instead of "getopt.h".
	Add libc_hidden_def.

	* sysdeps/generic/unwind-dw2-fde-glibc.c [_LIBC] (dl_iterate_phdr):
	Define as a macro for __dl_iterate_phdr.

	* inet/getnetgrent_r.c (internal_setnetgrent): Renamed from __ name,
	made static.  Add __ name as a strong alias.
	(internal_endnetgrent): Likewise.
	(internal_getnetgrent_r): Likewise.
2002-08-06 21:10:50 +00:00
Roland McGrath
1ab62b326e * locale/Versions (libc: GLIBC_2.3): Add all the *_l functions
with no __ prefix.
	* locale/langinfo.h [__USE_GNU]: Declare nl_langinfo_l.
	* ctype/ctype.h [__USE_GNU]: Add declarations and macros for
	all *_l functions with no __ prefix.
	* wctype/wcfuncs_l.c: Define weak aliases without __ for all fns.
	* ctype/ctype_l.c: Likewise.
	* locale/nl_langinfo.c: Likewise.
	* string/string.h [__USE_GNU]: Add decls for all *_l fns with no __.
	* stdlib/stdlib.h [__USE_GNU]: Likewise.
	* wcsmbs/wchar.h [__USE_GNU]: Likewise.
	* wctype/wctype.h [__USE_GNU]: Likewise.
	* string/strcoll_l.c (strcoll_l): Define as weak alias.
	* string/strxfrm_l.c (strxfrm_l): Define as weak alias.
	* sysdeps/generic/strcasecmp_l.c (strcasecmp_l): Define as weak alias.
	* sysdeps/generic/strncase_l.c (strncasecmp_l): Define as weak alias.
	* stdlib/strtod_l.c (strtod_l): Define as weak alias.
	* stdlib/strtof_l.c (strtof_l): Define as weak alias.
	* stdlib/strtold_l.c (strtold_l): Define as weak alias.
	* wcsmbs/wcscasecmp_l.c (wcscasecmp_l): Define as weak alias.
	(__wcscasecmp_l): Add libc_hidden_def.
	* wcsmbs/wcsncase_l.c (wcsncasecmp_l): Define as weak alias.
	(__wcsncasecmp_l): Add libc_hidden_def.
	* wcsmbs/wcstof_l.c (wcstof_l): Define as weak alias.
	* wcsmbs/wcstod_l.c (wcstod_l): Define as weak alias.
	* wcsmbs/wcstold_l.c (wcstold_l): Define as weak alias.
	* wcsmbs/wcscoll_l.c (wcscoll_l): Define as weak alias.
	* wcsmbs/wcsxfrm_l.c (wcsxfrm_l): Define as weak alias.
	* sysdeps/generic/wcstol_l.c (wcstol_l): Define as weak alias.
	* sysdeps/generic/wcstoll_l.c (wcstoll_l): Define as weak alias.
	* sysdeps/generic/wcstoul_l.c (wcstoul_l): Define as weak alias.
	* sysdeps/generic/wcstoull_l.c (wcstoull_l): Define as weak alias.
	* sysdeps/wordsize-64/wcstol_l.c (wcstoll_l): Define as weak alias.
	* sysdeps/wordsize-64/wcstoul_l.c (wcstoull_l): Define as weak alias.
	* wctype/wctrans_l.c (wctrans_l) Define as weak alias.
	* wctype/towctrans_l.c (towctrans_l) Define as weak alias.
	* wctype/wctype_l.c (wctype_l) Define as weak alias.
2002-08-06 08:40:20 +00:00
Roland McGrath
9b0b40d35e * include/rpc/auth.h: Use libc_hidden_proto for getnetname,
netname2user, host2netname, user2netname, key_gendes.
	* sunrpc/netname.c: Add libc_hidden_def.
	* sunrpc/key_call.c: Likewise.

	* include/netdb.h: Use libc_hidden_proto for getaddrinfo, getnameinfo,
	freeaddrinfo.
	* inet/getnameinfo.c: Add libc_hidden_def.
	* sysdeps/generic/getaddrinfo.c: Likewise.
	* sysdeps/posix/getaddrinfo.c: Likewise.

	* include/wchar.h: Use libc_hidden_proto for wmemchr, wmemset.
	* wcsmbs/wmemchr.c: Add libc_hidden_def.
	* wcsmbs/wmemset.c: Add libc_hidden_def.

	* include/string.h: Move libc_hidden_proto's inside #ifndef _STRING_H.
	(index, rindex): Define as macros for strchr, strrchr.

	* string/envz.c (envz_strip): index -> strchr

	* include/rpc/rpc_msg.h: Use libc_hidden_proto for _seterr_reply.
	* sunrpc/rpc_prot.c: Add libc_hidden_def.

	* include/wchar.h: Use libc_hidden_proto for mbrtowc.
	* wcsmbs/mbrtowc.c: Add libc_hidden_weak.
2002-08-06 06:09:28 +00:00
Roland McGrath
e2ec9b4dc1 * include/stdlib.h: Use libc_hidden_proto for wctomb.
* stdlib/wctomb.c: Add libc_hidden_def.

	* include/netdb.h: Use libc_hidden_proto for innetgr, rcmd_af,
	rexec_af, rresvport_af, ruserok_af, iruserok_af, ruserpass, hstrerror.
	* resolv/herror.c: Likewise.
	* inet/rcmd.c: Add libc_hidden_def.
	* inet/ruserpass.c: Likewise.
	* inet/getnetgrent_r.c: Likewise.

	* include/rpc/auth.h: Use libc_hidden_proto for getnetname,
	netname2user, host2netname, user2netname.
	* sunrpc/netname.c: Add libc_hidden_def.

	* include/rpc/svc.h: Use libc_hidden_proto for svc_register,
	svc_unregister, remove *_internal decls.  Use libc_hidden_proto
	for svcerr_auth, svcerr_noprog, svcerr_progvers.
	* sunrpc/svc.c (svc_register, svc_unregister): Change INTDEF to
	libc_hidden_def.
	(svcerr_auth, svcerr_noprog, svcerr_progvers): Add libc_hidden_def.
	* sunrpc/svc_simple.c (registerrpc): Nix INTUSE for svc_register.
2002-08-06 05:10:45 +00:00
Roland McGrath
a585ba226b * sysdeps/posix/system.c (do_system): New function, guts broken out of
__libc_system.
	(__libc_system): Call it, putting just the line == NULL test here.

	* include/libc-symbols.h (__hidden_proto): Add extern keywords so
	variables work right.

	* elf/dl-open.c (dl_open_worker): Use _ macro instead of gettext.
	* elf/dl-close.c (_dl_close): Likewise.

	* include/netinet/in.h: Use libc_hidden_proto for bindresvport,
	in6addr_any, in6addr_loopback.  Remove decls for
	bindresvport_internal, in6addr_any_internal, in6addr_loopback_internal.
	* sunrpc/svc_udp.c (svcudp_bufcreate): Nix INTUSE for bindresvport.
	* sunrpc/svc_tcp.c (svctcp_create): Likewise.
	* sunrpc/clnt_udp.c (clntudp_bufcreate): Likewise.
	* sunrpc/bindrsvprt.c: Change INTDEF to libc_hidden_def.
	* inet/in6_addr.c: Change INTVARDEF to libc_hidden_def.
	* sysdeps/posix/getaddrinfo.c (gaih_inet): Nix INTUSE for
	in6addr_loopback.
	* inet/gethstbyad_r.c (PREPROCESS): Nix INTUSE for in6addr_any.

	* include/netinet/ether.h: Use libc_hidden_proto for ether_ntoa_r,
	ether_aton_r.
	* inet/ether_aton_r.c: Add libc_hidden_def.
	* inet/ether_ntoa_r.c: Likewise.

	* include/rpc/auth.h: Use libc_hidden_proto for getnetname,
	netname2user, host2netname.
	* sunrpc/netname.c: Add libc_hidden_def.

	* include/netdb.h: Use libc_hidden_proto for innetgr, rcmd_af,
	rexec_af, rresvport_af, ruserok_af.
	* inet/rcmd.c: Add libc_hidden_def.
	* inet/getnetgrent_r.c: Likewise.
2002-08-06 04:30:03 +00:00
Roland McGrath
45085ac9b9 * include/rpc/svc.h: Use libc_hidden_proto for xprt_register,
xprt_unregister.
	* sunrpc/svc.c: Add libc_hidden_def.
	* include/rpc/pmap_clnt.h: Use libc_hidden_proto for pmap_getport,
	pmap_set, pmap_unset.
	* sunrpc/pmap_clnt.c: Add libc_hidden_def.
	* sunrpc/pm_getport.c: Likewise.
	* include/rpc/auth_des.h: Use libc_hidden_proto for getpublickey.
	* sunrpc/publickey.c: Add libc_hidden_def.
2002-08-06 01:23:32 +00:00
Roland McGrath
cd4c174b68 2002-08-05 Roland McGrath <roland@redhat.com>
* include/rpc/svc.h: Use libc_hidden_proto for xprt_register,
	xprt_unregister.
	* sunrpc/svc.c: Add libc_hidden_def.
	* include/rpc/pmap_clnt.h: Use libc_hidden_proto for pmap_getport,
	pmap_set, pmap_unset.
	* sunrpc/pmap_clnt.c: Add libc_hidden_def.
	* sunrpc/pm_getport.c: Likewise.
	* include/rpc/auth_des.h: Use libc_hidden_proto for getpublickey.
	* sunrpc/publickey.c: Add libc_hidden_def.
2002-08-06 01:23:20 +00:00
Ulrich Drepper
f884de5be9 Update.
2002-08-05  Ulrich Drepper  <drepper@redhat.com>

	* elf/rtld.c (_dl_start): Don't use memset.  Use same tricks as for
	the other memset call in this function.

	* sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Store dtv pointer
	at correct index.  Clear BSS region now that memalign is used.

	* include/wchar.h (wcrtomb, wcscmp, wcsftime, wcsspn, wcschr, wcscoll,
	wcspbrk): Add libc_hidden_proto.
	* time/strftime.c (my_strftime): Add libc_hidden_def.
	(strftime): Remove libc_hidden_def.
	* wcsmbs/wcschr.c (wcschr): Add libc_hidden_def.
	* wcsmbs/wcspbrk.c (wcspbrk): Likewise.
	* wcsmbs/wcsspn.c (wcsspn): Likewise.
	* wcsmbs/wcscmp.c (wcscmp): Likewise.
	* wcsmbs/wcrtomb.c (wcrtomb): Add libc_hidden_weak.
	* wcsmbs/wcscoll.c (wcscoll): Likewise.

	* include/rpc/rpc.h (__rpc_thread_svc_max_pollfd,
	__rpc_thread_svc_pollfd, __rpc_thread_svc_fdset,
	__rpc_thread_createerr): Add libc_hidden_proto.
	* sunrpc/rpc_thread.c (__rpc_thread_svc_max_pollfd,
	__rpc_thread_svc_pollfd, __rpc_thread_svc_fdset,
	__rpc_thread_createerr): Add libc_hidden_def.

	* include/rpc/clnt.h (clnt_sperrno, clnt_spcreateerror,
	clnt_perror, clnt_sperror, _rpc_dtablesize): Add libc_hidden_proto.
	* sunrpc/clnt_perr.c (clnt_sperrno, clnt_spcreateerror,
	clnt_perror, clnt_sperror): Add libc_hidden_def.
	* sunrpc/rpc_dtable.c (_rpc_dtablesize): Likewise.

	* include/rpc/des_crypt.h (des_setparity, ecb_crypt, cbc_crypt): Add
	libc_hidden_proto.
	* sunrpc/des_crypt.c (ecb_crypt, cbc_crypt): Add libc_hidden_proto.
	* sunrpc/des_soft.c (des_setparity): Likewise.

	* include/rpc/auth.h (key_encryptsession_pk, key_decryptsession_pk):
	Add libc_hidden_proto.
	* sunrpc/key_call.c (key_encryptsession_pk, key_decryptsession_pk):
	Add libc_hidden_def.
2002-08-06 01:00:59 +00:00
Ulrich Drepper
84bdcade74 (_dl_allocate_tls_init): Store dtv pointer at correct index. Clear BSS region now that memalign is used. 2002-08-06 00:51:51 +00:00
Roland McGrath
4f6da0f5d8 * include/sys/utsname.h: Use libc_hidden_proto for uname, __uname.
* sysdeps/generic/uname.c: Add libc_hidden_def.
	* sysdeps/mach/hurd/uname.c: Likewise.
2002-08-05 22:47:19 +00:00
Roland McGrath
8784cc18e1 2002-08-05 Jakub Jelinek <jakub@redhat.com>
* include/wchar.h (wcrtomb, wcscmp, wcsftime, wcsspn, wcschr, wcscoll,
        wcspbrk): Add libc_hidden_proto.
        * time/strftime.c (my_strftime): Add libc_hidden_def.
        (strftime): Remove libc_hidden_def.
        * wcsmbs/wcschr.c (wcschr): Add libc_hidden_def.
        * wcsmbs/wcspbrk.c (wcspbrk): Likewise.
        * wcsmbs/wcsspn.c (wcsspn): Likewise.
        * wcsmbs/wcscmp.c (wcscmp): Likewise.
        * wcsmbs/wcrtomb.c (wcrtomb): Add libc_hidden_weak.
        * wcsmbs/wcscoll.c (wcscoll): Likewise.

        * include/rpc/rpc.h (__rpc_thread_svc_max_pollfd,
        __rpc_thread_svc_pollfd, __rpc_thread_svc_fdset,
        __rpc_thread_createerr): Add libc_hidden_proto.
        * sunrpc/rpc_thread.c (__rpc_thread_svc_max_pollfd,
        __rpc_thread_svc_pollfd, __rpc_thread_svc_fdset,
        __rpc_thread_createerr): Add libc_hidden_def.

        * include/rpc/clnt.h (clnt_sperrno, clnt_spcreateerror,
        clnt_perror, clnt_sperror, _rpc_dtablesize): Add libc_hidden_proto.
        * sunrpc/clnt_perr.c (clnt_sperrno, clnt_spcreateerror,
        clnt_perror, clnt_sperror): Add libc_hidden_def.
        * sunrpc/rpc_dtable.c (_rpc_dtablesize): Likewise.

        * include/rpc/des_crypt.h (des_setparity, ecb_crypt, cbc_crypt): Add
        libc_hidden_proto.
        * sunrpc/des_crypt.c (ecb_crypt, cbc_crypt): Add libc_hidden_proto.
        * sunrpc/des_soft.c (des_setparity): Likewise.

        * include/rpc/auth.h (key_encryptsession_pk, key_decryptsession_pk):
        Add libc_hidden_proto.
        * sunrpc/key_call.c (key_encryptsession_pk, key_decryptsession_pk):
        Add libc_hidden_def.
2002-08-05 22:11:14 +00:00
Roland McGrath
917f1c58fa * sysdeps/generic/ldsodefs.h (struct rtld_global): Replace member
`bool _dl_initial_dtv_malloced' with `void *_dl_initial_dtv'.
	* elf/rtld.c (dl_main): Set it to the new dtv for the main thread.
	* sysdeps/generic/dl-tls.c (__tls_get_addr): When reallocating the
	dtv, check if it matches _dl_initial_dtv; if so, malloc and copy the
	old data, abandoning the original memory allocated by rtld at startup,
	instead of calling realloc normally.
2002-08-05 18:56:19 +00:00
Roland McGrath
08da062122 2002-08-05 Roland McGrath <roland@redhat.com>
* sysdeps/generic/ldsodefs.h (struct rtld_global): Replace member
	`bool _dl_initial_dtv_malloced' with `void *_dl_initial_dtv'.
	* elf/rtld.c (dl_main): Set it to the new dtv for the main thread.
	* sysdeps/generic/dl-tls.c (__tls_get_addr): When reallocating the
	dtv, check if it matches _dl_initial_dtv; if so, malloc and copy the
	old data, abandoning the original memory allocated by rtld at startup,
	instead of calling realloc normally.
2002-08-05 18:56:03 +00:00
Ulrich Drepper
1614dd9fe0 Update.
2002-08-05  Ulrich Drepper  <drepper@redhat.com>

	* po/fr.po: Update from translation team.
2002-08-05 17:30:31 +00:00
Ulrich Drepper
cfba5765ef Update from translation team. 2002-08-05 16:56:10 +00:00
Roland McGrath
7944bd340c * sysdeps/unix/make-syscalls.sh: If the syscall name field is -
then generate a dummy module under the given name, obeying the
	normal rules for the "caller" field.
2002-08-05 06:58:03 +00:00
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
2a185b31a8 * stdlib/isomac.c (fmt): Add -DNOT_IN_libc to the compiler command. 2002-08-05 04:59:44 +00:00
Roland McGrath
14a42f4502 * elf/Makefile (test-srcs): Add $(modules-names) to it.
(CFLAGS-vismod2.c, CFLAGS-failobj.c, CFLAGS-constload2.c,
	CFLAGS-reldepmod3.c, CFLAGS-reldepmod4.c, CFLAGS-ltglobmod2.c): Remove
	all these variables.
2002-08-05 04:58:18 +00:00
Roland McGrath
b1b76ea559 2002-08-04 Roland McGrath <roland@frob.com>
* elf/Makefile (test-srcs): Add $(modules-names) to it.
	(CFLAGS-vismod2.c, CFLAGS-failobj.c, CFLAGS-constload2.c,
	CFLAGS-reldepmod3.c, CFLAGS-reldepmod4.c, CFLAGS-ltglobmod2.c): Remove
	all these variables.
2002-08-05 04:58:03 +00:00
Ulrich Drepper
6ad5c58805 Update.
2002-08-04  Ulrich Drepper  <drepper@redhat.com>

	* include/stdio.h: Don't define macro magic to redirect function
	calls if _ISOMAC is defined.

	* sysdeps/i386/fpu/libm-test-ulps: Add epsilons for inlined
	ldouble asin tests.
2002-08-05 03:28:59 +00:00
Ulrich Drepper
25e08dc663 Don't define macro magic to redirect function calls if _ISOMAC is defined. 2002-08-05 02:21:23 +00:00
Roland McGrath
382b94a58a * stdlib/lrand48_r.c: Add libc_hidden_def.
* sysdeps/unix/sysv/irix4/setpriority.c: Likewise.
2002-08-05 02:19:15 +00:00
Ulrich Drepper
3741d6af19 Add epsilons for inlined ldouble asin tests. 2002-08-05 02:19:08 +00:00
Roland McGrath
179ffb0433 2002-08-04 Roland McGrath <roland@redhat.com>
* stdlib/lrand48_r.c: Add libc_hidden_def.
2002-08-05 02:18:42 +00:00
Roland McGrath
7adf06d755 (_dl_deallocate_tls): Free it with free instead of munmap. 2002-08-05 01:30:42 +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
3ba06713f8 Update.
2002-08-04  Jakub Jelinek  <jakub@redhat.com>

	* manual/debug.texi: Fix spelling to programmatically.
	Reported by <hayastan132@hotmail.com>.

	* include/libio.h: Add libc_hidden_proto for __uflow.
	* include/stdio.h: Map fopen, fdopen, fclose, fputs, fsetpos, and
	fgetpos to _IO_* names.
	Add libc_hidden_proto for fileno, fwrite, fseek, fflush_unlocked,
	fread_unlocked, fwrite_unlocked, fgets_unlocked, fputs_unlocked.
	* include/wchar.h: Add libc_hidden_proto for fputws_unlocked,
	putwc_unlocked, vswscanf.
	* libio/iolibio.h: Add libc_hidden_proto for _IO_fputs.
	* libio/fileno.c: Use <stdio.h> and libc_hidden_def.
	* libio/fseek.c: Likewise.
	* libio/fmemopen.c: Include "libioP.h".  Call _IO_fopencookie and
	not fopencookie.
	* libio/genops.c (__uflow): Add libc_hidden_def.
	* libio/iofflush_u.c (fflush_unlocked): Likewise.
	* libio/iofgets_u.c (fgets_unlocked): Likewise.
	* libio/iofputs_u.c (fputs_unlocked): Likewise.
	* libio/iofputws_u.c (fputws_unlocked): Likewise.
	* libio/iofread_u.c (fread_unlocked): Likewise.
	* libio/iofwrite_u.c (fwrite_unlocked): Likewise.
	* libio/iovswscanf.c (vswscanf): Likewise.
	* libio/putwc_u.c (putwc_unlocked): Likewise.
	* libio/iofputs.c: Use libc_hidden_def instead of INTDEF.
	* malloc/malloc.c: Redirect fwrite calls to _IO_fwrite.
	* malloc/mtrace.c: Likewise.

	* sunrpc/clnt_perr.c: Remove fputs macro.
	* sunrpc/svc_simple.c: Likewise.
	* sunrpc/svc_tcp.c: Likewise.
	* sunrpc/svc_udp.c: Likewise.
	* sunrpc/xdr_rec.c: Likewise.
	* sunrpc/xdr_ref.c: Likewise.

	* iconv/Makefile: Add CPPFLAGS definitions with -DNOT_in_libc for
	iconv_prog, linereader, and charmap-dir.
	* locale/Makefile: Likewise for locale and charmap-dir.
	* malloc/Makefile: Likewise for memusagestat.
	* nscd/Makefile: Likewise for nscd, nscd_conf, and dbg_log.
	* sunrpc/Makefile: Likewise for rpc_main.
	* sysdeps/unix/sysv/linux/Makefile: Likewise for lddlibc4.
	* timezone/Makefile: Likewise for zic.

	* stdio-common/perror.c: Avoid multiple calls to fileno_unlocked.
2002-08-04 20:54:20 +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
Ulrich Drepper
cc7e7a2641 Add libc_hidden_def. 2002-08-04 09:05:47 +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
5517266d33 2002-08-02 Roland McGrath <roland@redhat.com>
* sysdeps/pthread/bits/libc-tsd.h (enum __libc_tsd_key_t):
	Add _LIBC_TSD_KEY_LOCALE.
	* manager.c (pthread_start_thread) [!(USE_TLS && HAVE___THREAD)]:
	Call __uselocale to initialize our per-thread locale pointer to
	the global one.
	* pthread.c (__pthread_initialize_minimal): Likewise.
2002-08-04 03:25:12 +00:00
Ulrich Drepper
7498f1b0ba Update.
2002-08-03  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/pthread/bits/libc-tsd.h: Add _LIBC_TSD_KEY_LOCALE.
2002-08-04 03:18:18 +00:00
Ulrich Drepper
ead001fdd6 Add _LIBC_TSD_KEY_LOCALE. 2002-08-04 03:17:32 +00:00
Roland McGrath
dc18d4d8e4 * locale/nl_langinfo.c: Use _NL_CURRENT_DATA.
* elf/Makefile (CFLAGS-vismod2.c): New variable.
2002-08-04 02:32:32 +00:00
Roland McGrath
30c14c31ae * locale/setlocale.c (_nl_current_names): Variable moved ...
* locale/localename.c (_nl_current_names): ... here, new file.
	Make it global, with attribute_hidden.
	* locale/localeinfo.h: Declare it.
	* locale/Makefile (aux): Add localename.
	* locale/localename.c (__current_locale_name): New function.
	* include/locale.h (__current_locale_name): Declare it.
	* intl/dcigettext.c (guess_category_value): Use that instead of
	calling setlocale.

	* locale/locale.h [__USE_GNU] (locale_t): New type alias of __locale_t.
	[__USE_GNU] (newlocale, duplocale, freelocale, uselocale): New decls.
	[__USE_GNU] (LC_GLOBAL_LOCALE): New macro.
	* locale/newlocale.c: Add alias to __ name.
	* locale/duplocale.c: Likewise.
	* locale/freelocale.c: Likewise.
	* locale/uselocale.c: New file.
	* locale/Makefile (routines): Add it.
	* locale/Versions (libc: GLIBC_2.3): New set.
	Add newlocale, duplocale, freelocale, uselocale.
	(libc: GLIBC_PRIVATE): Add __uselocale.

	* locale/localeinfo.h [SHARED]
	(_NL_CURRENT_LOCALE): New macro, defined to fetch a tsd value.
	(_NL_CURRENT_DATA): Define using that.
	(_NL_CURRENT, _NL_CURRENT_WSTR, _NL_CURRENT_WORD): Define using that.
	(_NL_CURRENT_DEFINE): Define to empty.
	[! SHARED]: Decls of _nl_current_CATEGORY and _nl_current
	conditionalized on this.
	* locale/xlocale.c (NL_C_INTIIALIZER): New macro,
	taking initializer of _nl_C_locobj.
	[SHARED] (_nl_global_locale): New variable, using that initializer.
	(_nl_C_locobj): Use new macro for initialzier.
	* locale/setlocale.c [! SHARED] (_nl_current): Conditionalize on this.
	[! SHARED] (CATEGORY_USED): New macro.
	[SHARED] (CATEGORY_USED, _nl_C): New macros.
	(setdata, setlocale): Use that macro instead of examining _nl_current.
	(setdata): Set the slot in _nl_global_locale.
	Conditionalize setting of _nl_current on [! SHARED].
	* locale/findlocale.c [SHARED] (_nl_C): Define as a macro instead of
	declaration as an extern.
	* locale/newlocale.c (__newlocale): Use _nl_C_locobj instead of _nl_C.

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

	* locale/setlocale.c (free_mem): Use _NL_CURRENT_DATA.
2002-08-04 01:41:55 +00:00