Commit Graph

1266 Commits

Author SHA1 Message Date
Ulrich Drepper
537e7234f7 * grp/putgrent.c (putgrent): Don't write 0 as group
ID if groupname starts with + or -.
	* pwd/putpwent.c (putpwent): Don't write 0 as user or
	group ID if user name starts with + or -.

2005-01-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>

	* sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add sh variants.
	* sysdeps/elf/tst-auditmod1.c: Add sh support.
	* sysdeps/sh/bits/link.h: New.
	* sysdeps/sh/dl-machine.h: Remove trampoline code here.  Define
	ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.  Remove obsolete comments.
	(RTLD_START): Define __fpscr_values.
	* sysdeps/sh/dl-trampoline.S: New file.
	* sysdeps/sh/sh4/dl-trampoline.S: New file.
	* sysdeps/sh/sh4/Versions [ld]: Add __fpscr_values.
	* sysdeps/sh/sh4/dl-machine.h: Remove.

2005-01-10  Jakub Jelinek  <jakub@redhat.com>

	* time/tst-strptime.c (day_tests): Add 2 new tests.
	(test_tm, main): Issue an error instead of segfaulting if
	strptime returns NULL.

2005-01-10  H.J. Lu  <hongjiu.lu@intel.com>

	* sysdeps/alpha/libc-tls.c (__tls_get_addr): Updated for dtv_t union.
	* sysdeps/ia64/libc-tls.c (__tls_get_addr): Likewise.
2005-01-12 03:12:43 +00:00
Ulrich Drepper
73102f5002 Update.
2005-01-10  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/dl-tls.c (_dl_next_tls_modid): Fix assertion and
	recognition of last entry.
2005-01-10 11:10:54 +00:00
Ulrich Drepper
29f976542b Update.
2005-01-09  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-debug.c (_dl_debug_initialize): Take extra parameter and
	use it to select the r_debug structure for that namespace.
	* elf/dl-close.c (_dl_close): Adjust call to _dl_debug_initialize.
	* elf/dl-load.c (_dl_map_object_from_fd): Likewise.
	* elf/dl-open.c (_dl_open): Likewise.
	* elf/rtld.c (dl_main): Likewise.
	* sysdeps/generic/ldsodefs.h (struct link_namespaces): Add _ns_debug
	member.
	(_dl_debug_initialize): Add new parameter in declaration.

	* elf/dl-close.c (_dl_close): Make sure auditing callbacks are not
	called for the auditing objects themselves.
	* elf/dl-load.c (_dl_map_object_from_fd): Likewise.
2005-01-09 08:29:25 +00:00
Ulrich Drepper
2413fdba7a Update.
* sysdeps/powerpc/powerpc64/dl-trampoline.S: Use register names.

	* sysdeps/powerpc/powerpc32/dl-trampoline.S: New file.
	* sysdeps/powerpc/powerpc32/dl-machine.h: Remove trampoline code here.
	Define ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.
	* sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add ppc32 variants.
	* elf/tst-auditmod1.c: Add ppc32 support.
	* sysdeps/powerpc/powerpc32/bits/link.h: New file.
	* sysdeps/powerpc/powerpc64/bits/link.h: Add ppc32 definitions.
2005-01-07 23:14:21 +00:00
Ulrich Drepper
8222199266 Update.
2005-01-07  Ulrich Drepper  <drepper@redhat.com>

	* elf/rtld.c [!DONT_USE_BOOTSTRAP_MAP] (_dl_start_final): Initialize
	l_relocated of rtld map.
	* sysdeps/powerpc/powerpc64/dl-trampoline.S: New file.
	* sysdeps/powerpc/powerpc64/dl-machine.h: Remove trampoline code here.
	Define ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.
	* sysdeps/generic/ldsodefs.h (struct audif_ifaces): Add ppc64 variants.
	* elf/tst-auditmod1.c: Add ppc64 support.
	* sysdeps/powerpc/powerpc64/bits/link.h: New file.
2005-01-07 11:36:07 +00:00
Ulrich Drepper
9dcafc5597 * csu/elf-init.c (__libc_csu_fini): Don't do anything here.
* sysdeps/generic/libc-start.c: Don't register program destructor here.
	* dlfcn/Makefile: Add rules to build dlfcn.c.
	(LDFLAGS-dl.so): Removed.
	* dlfcn/dlclose.c: _dl_close is now in ld.so, use function pointer
	table.
	* dlfcn/dlmopen.c: Likewise for _dl_open.
	* dlfcn/dlopen.c: Likewise.
	* dlfcn/dlopenold.c: Likewise.
	* elf/dl-libc.c: Likewise for _dl_open and _dl_close.
	* elf/Makefile (routines): Remove dl-open and dl-close.
	(dl-routines): Add dl-open, dl-close, and dl-trampoline.
	Add rules to build and run tst-audit1.
	* elf/tst-audit1.c: New file.
	* elf/tst-auditmod1.c: New file.
	* elf/Versions [libc]: Remove _dl_open and _dl_close.
	* elf/dl-close.c: Change for use inside ld.so instead of libc.so.
	* elf/dl-open.c: Likewise.
	* elf/dl-debug.c (_dl_debug_initialize): Allow reinitialization,
	signaled by nonzero parameter.
	* elf/dl-init.c: Fix use of r_state.
	* elf/dl-load.c: Likewise.

	* elf/dl-close.c: Add auditing checkpoints.
	* elf/dl-open.c: Likewise.
	* elf/dl-fini.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* sysdeps/generic/libc-start.c: Likewise.
	* elf/dl-object.c: Allocate memory for auditing information.
	* elf/dl-reloc.c: Remove RESOLV.  We now always need the map.
	Correctly initialize slotinfo.
	* elf/dynamic-link.h: Adjust after removal of RESOLV.
	* sysdeps/hppa/dl-lookupcfg.h: Likewise.
	* sysdeps/ia64/dl-lookupcfg.h: Likewise.
	* sysdeps/powerpc/powerpc64/dl-lookupcfg.h: Removed.
	* elf/dl-runtime.c (_dl_fixup): Little cleanup.
	(_dl_profile_fixup): New parameters to point to register struct and
	variable for frame size.
	Add auditing checkpoints.
	(_dl_call_pltexit): New function.
	Don't define trampoline code here.
	* elf/rtld.c: Recognize LD_AUDIT.  Load modules on startup.
	Remove all the functions from _rtld_global_ro which only _dl_open
	and _dl_close needed.
	Add auditing checkpoints.
	* elf/link.h: Define symbols for auditing interfaces.
	* include/link.h: Likewise.
	* include/dlfcn.h: Define __RTLD_AUDIT.
	Remove prototypes for _dl_open and _dl_close.
	Adjust access to argc and argv in libdl.
	* dlfcn/dlfcn.c: New file.
	* sysdeps/generic/dl-lookupcfg.h: Remove all content now that RESOLVE
	is gone.
	* sysdeps/generic/ldsodefs.h: Add definitions for auditing interfaces.
	* sysdeps/generic/unsecvars.h: Add LD_AUDIT.
	* sysdeps/i386/dl-machine.h: Remove trampoline code here.
	Adjust for removal of RESOLVE.
	* sysdeps/x86_64/dl-machine.h: Likewise.
	* sysdeps/generic/dl-trampoline.c: New file.
	* sysdeps/i386/dl-trampoline.c: New file.
	* sysdeps/x86_64/dl-trampoline.c: New file.

	* sysdeps/generic/dl-tls.c: Cleanups.  Fixup for dtv_t change.
	Fix updating of DTV.
	* sysdeps/generic/libc-tls.c: Likewise.

	* sysdeps/arm/bits/link.h: Renamed to ...
	* sysdeps/arm/buts/linkmap.h: ...this.
	* sysdeps/generic/bits/link.h: Renamed to...
	* sysdeps/generic/bits/linkmap.h: ...this.
	* sysdeps/hppa/bits/link.h: Renamed to...
	* sysdeps/hppa/bits/linkmap.h: ...this.
	* sysdeps/hppa/i386/link.h: Renamed to...
	* sysdeps/hppa/i386/linkmap.h: ...this.
	* sysdeps/hppa/ia64/link.h: Renamed to...
	* sysdeps/hppa/ia64/linkmap.h: ...this.
	* sysdeps/hppa/s390/link.h: Renamed to...
	* sysdeps/hppa/s390/linkmap.h: ...this.
	* sysdeps/hppa/sh/link.h: Renamed to...
	* sysdeps/hppa/sh/linkmap.h: ...this.
	* sysdeps/hppa/x86_64/link.h: Renamed to...
	* sysdeps/hppa/x86_64/linkmap.h: ...this.
2005-01-06  Ulrich Drepper  <drepper@redhat.com>

	* allocatestack.c (init_one_static_tls): Adjust initialization of DTV
	entry for static tls deallocation fix.
	* sysdeps/alpha/tls.h (dtv_t): Change pointer type to be struct which
	also contains information whether the memory pointed to is static
	TLS or not.
	* sysdeps/i386/tls.h: Likewise.
	* sysdeps/ia64/tls.h: Likewise.
	* sysdeps/powerpc/tls.h: Likewise.
	* sysdeps/s390/tls.h: Likewise.
	* sysdeps/sh/tls.h: Likewise.
	* sysdeps/sparc/tls.h: Likewise.
	* sysdeps/x86_64/tls.h: Likewise.
2005-01-06 22:40:27 +00:00
Ulrich Drepper
3fb2606af3 Update.
* sysdeps/generic/libc-start.c [SHARED] (__libc_start_main): Don't
	initialize __environ again.
2005-01-04 07:11:05 +00:00
Ulrich Drepper
ab4bc71349 Update.
2004-12-28  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/dl-tls.c (__tls_get_addr): Fix typo.
2004-12-28 10:09:27 +00:00
Ulrich Drepper
a334319f65 (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
Jakub Jelinek
0ecb606cb6 2.5-18.1 2007-07-12 18:26:36 +00:00
Ulrich Drepper
00a121627c Update.
2004-12-01  Jakub Jelinek  <jakub@redhat.com>

	* elf/rtld.c (process_envvars): Don't consider LD_SHOW_AUXV
	and LD_DYNAMIC_WEAK if __libc_enable_secure.
	If __libc_enable_secure, /etc/suid-debug doesn't exist and
	program will be actually run, turn off all debugging.
	* sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add LD_DEBUG,
	LD_DYNAMIC_WEAK and LD_SHOW_AUXV.
2004-12-07 06:55:06 +00:00
Ulrich Drepper
60e4523a08 Update.
2004-11-27  Ulrich Drepper  <drepper@redhat.com>

	* posix/getconf.c (vars): Add support for _SC_IPV6 and
	_SC_RAW_SOCKETS.
	* sysdeps/posix/sysconf.c (__sysconf): Add support for _SC_IPV6
	and _SC_RAW_SOCKETS.
	* sysdeps/generic/bits/confname.h: Define _SC_IPV6 and
	_SC_RAW_SOCKETS.
2004-11-27 20:57:44 +00:00
Ulrich Drepper
097487fef8 Update.
2004-11-26  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add GETCONF_DIR.

2004-11-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>

	* sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
	NO_SGIDEFS_H isn't defined.  Don't include sgidefs.h twice.
	* sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
2004-11-27 20:38:06 +00:00
Ulrich Drepper
28f367c4e3 Update.
* posix/Makefile (install-others): Add $(inst_libexecdir)/getconf.
	(CFLAGS-sysconf.c): Add -D_GETCONF_DIR.
	(CFLAGS-getconf.c): New.
	($(inst_libexecdir)/getconf): New.
	* posix/confstr.c (confstr): Use __sysconf to query specifications
	that don't have _POSIX_V6_* macros defined.  Use __*_{C,LD}FLAGS
	macros defined in bits/environments.h.
	* sysdeps/posix/sysconf.c: Include stdlib.h, string.h and
	sys/stat.h.
	(__sysconf_check_spec): New routine.
	(__sysconf): Use it.
	* posix/getconf.c (specs): Change into structure array.
	(main): If -v is not given, try to get default from
	$(libexecdir)/getconf/default.  If specification is not
	supported by this getconf, try to execute
	$(libexecdir)/getconf/$(specification).
	* sysdeps/unix/bsd/bsd4.4/freebsd/bits/environments.h: New file.
	* sysdeps/unix/sysv/linux/s390/bits/environments.h: New file.
	* sysdeps/unix/sysv/linux/powerpc/bits/environments.h: New file.
	* sysdeps/unix/sysv/linux/sparc/bits/environments.h: New file.
	* sysdeps/unix/sysv/linux/i386/bits/environments.h: New file.
	* sysdeps/unix/sysv/linux/x86_64/bits/environments.h: New file.
	* sysdeps/generic/bits/environments.h (__ILP32_OFFBIG_CFLAGS):
	Define.

2004-11-26  Jakub Jelinek  <jakub@redhat.com>
2004-11-26 08:16:33 +00:00
Ulrich Drepper
42586dce03 Update.
2004-11-23  Alexandre Oliva  <aoliva@redhat.com>

	* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Use free
	range even if it doesn't match exactly.
2004-11-23 22:57:42 +00:00
Ulrich Drepper
52495f29a2 [BZ #552]
Update.
2004-11-20  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/ieee754/k_standard.c: Document code 50.
	(__kernel_standard) <case 50>: Avoid raising div-by-zero
	exception again.

2004-11-19  H.J. Lu  <hongjiu.lu@intel.com>

	[BZ #552]
	* math/libm-test.inc (tgamma_test): Update tgamma (0) and
	tgamma (-0).
	* sysdeps/generic/w_tgamma.c (__tgamma): Properly handle |x| == 0.
	* sysdeps/generic/w_tgammaf.c (__tgammaf): Likewise.
	* sysdeps/generic/w_tgammal.c (__tgammal): Likewise.
	* sysdeps/ieee754/dbl-64/e_gamma_r.c (__ieee754_gamma_r): Likewise.
	* sysdeps/ieee754/flt-32/e_gammaf_r.c: Likewise.
	* sysdeps/ieee754/ldbl-128/e_gammal_r.c: Likewise.
	* sysdeps/ieee754/ldbl-96/e_gammal_r.c: Likewise.
	* sysdeps/ieee754/k_standard.c (__kernel_standard): Handle
	tgamma (0) and tgamma (-0).
2004-11-21 19:58:34 +00:00
Roland McGrath
37b1a15401 [BZ #542]
2004-11-11  Simon Josefsson  <jas@extundo.com>
	[BZ #542]
	* sysdeps/generic/strtok_r.c [HAVE_CONFIG_H]: Include config.h.
	[!_LIBC]: Include strtok_r.h (in gnulib), map __strtok_r to
	strtok_r and __rawmemchr to strch.
	(__strtok_r): Use C89 prototype.
	[weak_alias]: Move calls to libc_hidden_def and weak_alias into
	this #ifdef.
2004-11-11 22:15:51 +00:00
Roland McGrath
30e32d23eb * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Define
_dl_sysinfo_dso under [NEED_DL_SYSINFO_DSO] as well.
	* elf/rtld.c (dl_main): Set up GLRO(dl_sysinfo_dso) under
	[NEED_DL_SYSINFO_DSO] as well.
	* sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Always include
	AT_SYSINFO and AT_SYSINFO_EHDR in name table.
	(_dl_sysdep_start) [NEED_DL_SYSINFO_DSO]: Match AT_SYSINFO_EHDR.
	* elf/dl-support.c (_dl_sysinfo_dso): Define also under
	[NEED_DL_SYSINFO_DSO].
	(_dl_aux_init) [NEED_DL_SYSINFO || NEED_DL_SYSINFO_DSO]:
	Match AT_SYSINFO_EHDR and set GL(dl_sysinfo_dso).

2004-11-05  Roland McGrath  <roland@redhat.com>
2004-11-06 00:24:55 +00:00
Roland McGrath
6d98e59366 * sysdeps/generic/utime.c: Include <stddef.h>. 2004-11-03 02:53:06 +00:00
Roland McGrath
ab5f7c4506 * sysdeps/generic/sysconf.c: Include <grp.h> and <pwd.h>. 2004-11-03 01:55:28 +00:00
Roland McGrath
a237785d08 2004-11-03 Marcus Brinkmann <marcus@gnu.org>
* sysdeps/generic/tempname.c (__path_search): Add missing argument
	TRY_TMPDIR.
2004-11-03 01:51:44 +00:00
Ulrich Drepper
778cddad17 Update.
2004-10-27  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/glob.c (globfree): Clear gl_pathv after freeing it.
	* posix/Makefile: Add rules to build and run bug-glob2 test.
	* posix/bug-glob2.c: New test.
2004-10-27 18:23:53 +00:00
Ulrich Drepper
7e46ec8ccc Update.
2004-10-19  Ulrich Drepper  <drepper@redhat.com>

	* elf/Versions [ld, GLIBC_PRIVATE]: Add _dl_debug_state.
	* elf/dl-debug.c (_dl_debug_state): Add rtld_hidden_def.
	* sysdeps/generic/ldsodefs.h (_dl_debug_state): Don't maek as
	hidden but use rtld_hidden_proto.
2004-10-19 22:21:46 +00:00
Ulrich Drepper
1866ae9455 Update.
2004-10-19  Alfred M. Szmidt  <ams@gnu.org>

	* sysdeps/generic/readonly-area.c (__readonly_str): Renamed to ...
	(__readonly_area): ... this.
2004-10-19 21:45:14 +00:00
Ulrich Drepper
708c687a6f Update.
2004-10-18  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/strcpy_chk.c (__strcpy_chk): Speed up by checking
	destlen only every 4 bytes.
2004-10-19 21:21:42 +00:00
Ulrich Drepper
b5cc329c4f 2004-10-15 Jakub Jelinek <jakub@redhat.com>
* elf/dl-minimal.c (__chk_fail): New.  Add rtld_hidden_def.
	* sysdeps/unix/sysv/linux/readonly-area.c: New file.
	* sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
	routine.
	* sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
	* sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
	* sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
	* sysdeps/i386/i686/memmove-chk.S: New file.
	* sysdeps/i386/i686/memcpy-chk.S: Likewise.
	* sysdeps/i386/i686/mempcpy-chk.S: Likewise.
	* sysdeps/i386/i686/memset-chk.S: Likewise.
	* sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
	if exactly fitting into buffer.
	* sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
	* sysdeps/generic/readonly-area.c: New file.
	* sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
	destlen once.
	* sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
	* sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
	* sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
	* sysdeps/x86_64/memcpy-chk.S: New file.
	* sysdeps/x86_64/mempcpy-chk.S: Likewise.
	* sysdeps/x86_64/memset-chk.S: Likewise.
	* sysdeps/x86_64/strcpy-chk.S: Likewise.
	* sysdeps/x86_64/stpcpy-chk.S: Likewise.
	* argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
	* argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
	* debug/tst-chk1.c: New test.
	* debug/tst-chk2.c: Likewise.
	* debug/tst-chk3.c: Likewise.
	* debug/test-strcpy_chk.c: Likewise.
	* debug/test-stpcpy_chk.c: Likewise.
	* debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
	_IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
	* debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
	vfprintf_chk, gets_chk and readonly-area.
	(CFLAGS-*_chk.c): Set.
	(tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
	test-stpcpy_chk.
	* debug/vprintf_chk.c: New file.
	* debug/printf_chk.c: Likewise.
	* debug/vfprintf_chk.c: Likewise.
	* debug/fprintf_chk.c: Likewise.
	* debug/gets_chk.c: Likewise.
	* debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
	* debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
	passed to __vsnprintf_chk.
	* debug/Versions (libc): Export __printf_chk, __fprintf_chk,
	__vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
	* debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
	__vsnprintf, instead create a temporary file with
	_IO_strn_jumps jumptable.  If flags > 0, request
	_IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
	* libio/Makefile (headers): Add bits/stdio2.h.
	* libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
	(sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
	* libio/strfile.h (_IO_strnfile): New type.
	(_IO_strn_jumps): New extern.
	* libio/vsnprintf.c (_IO_strnfile): Remove.
	(_IO_strn_jumps): Remove static.
	* libio/bits/stdio2.h: New file.
	* libio/vswprintf.c (_IO_strnfile): Rename type to...
	(_IO_wstrnfile): ...this.  Adjust all uses.
	* libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
	* stdio-common/vfprintf.c (STR_LEN): Define.
	(vfprintf): Add readonly_format variable.
	Handle _IO_FLAGS2_CHECK_PERCENT_N.
	(buffered_vfprintf): Copy _flags2.
	* include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
	__vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
	__vfprintf_chk): New prototypes.
	(__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
	* include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
	__memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
	__strncat_chk): New prototypes.
	* include/bits/string3.h: New file.
	* include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
	and rtld_hidden_proto.
	* string/Makefile (headers): Add bits/string3.h.
	* string/bits/string3.h (bcopy, bzero): New defines.
	(memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
	macros so that inlines are used only if unknown destination size
	or side-effects in destination argument.
	(mempcpy, stpcpy): Likewise.  Protect with #ifdef __USE_GNU.

2004-09-16  Ulrich Drepper  <drepper@redhat.com>

	* debug/Makefile (routines): Add *_chk.
	* debug/Versions (libc): Export __chk_fail, __memcpy_chk,
	__memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
	__strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
	__sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
	@GLIBC_2.3.4.
	* debug/chk_fail.c: New file.
	* debug/snprintf_chk.c: Likewise.
	* debug/sprintf_chk.c: Likewise.
	* debug/vsnprintf_chk.c: Likewise.
	* debug/vsprintf_chk.c: Likewise.
	* include/features.h (_FORTIFY_SOURCE): Document, handle.
	(__USE_FORTIFY_LEVEL): Define.
	(__GNUC_PREREQ): Move to earlier location.
	* include/sys/cdefs.h (__chk_fail): New prototype.
	* libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
	Define if __USE_FORTIFY_LEVEL.
	* misc/sys/cdefs.h (__bos, __bos0): Define.
	* string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
	* bits/string/string3.h: New header.
	* sysdeps/generic/memcpy_chk.c: New file.
	* sysdeps/generic/memmove_chk.c: Likewise.
	* sysdeps/generic/mempcpy_chk.c: Likewise.
	* sysdeps/generic/memset_chk.c: Likewise.
	* sysdeps/generic/stpcpy_chk.c: Likewise.
	* sysdeps/generic/strcat_chk.c: Likewise.
	* sysdeps/generic/strcpy_chk.c: Likewise.
	* sysdeps/generic/strncat_chk.c: Likewise.
	* sysdeps/generic/strncpy_chk.c: Likewise.
2004-10-15  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-minimal.c (__chk_fail): New.  Add rtld_hidden_def.
	* sysdeps/unix/sysv/linux/readonly-area.c: New file.
	* sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
	routine.
	* sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
	* sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
	* sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
	* sysdeps/i386/i686/memmove-chk.S: New file.
	* sysdeps/i386/i686/memcpy-chk.S: Likewise.
	* sysdeps/i386/i686/mempcpy-chk.S: Likewise.
	* sysdeps/i386/i686/memset-chk.S: Likewise.
	* sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
	if exactly fitting into buffer.
	* sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
	* sysdeps/generic/readonly-area.c: New file.
	* sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
	destlen once.
	* sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
	* sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
	* sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
	* sysdeps/x86_64/memcpy-chk.S: New file.
	* sysdeps/x86_64/mempcpy-chk.S: Likewise.
	* sysdeps/x86_64/memset-chk.S: Likewise.
	* sysdeps/x86_64/strcpy-chk.S: Likewise.
	* sysdeps/x86_64/stpcpy-chk.S: Likewise.
	* argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
	* argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
	* debug/tst-chk1.c: New test.
	* debug/tst-chk2.c: Likewise.
	* debug/tst-chk3.c: Likewise.
	* debug/test-strcpy_chk.c: Likewise.
	* debug/test-stpcpy_chk.c: Likewise.
	* debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
	_IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
	* debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
	vfprintf_chk, gets_chk and readonly-area.
	(CFLAGS-*_chk.c): Set.
	(tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
	test-stpcpy_chk.
	* debug/vprintf_chk.c: New file.
	* debug/printf_chk.c: Likewise.
	* debug/vfprintf_chk.c: Likewise.
	* debug/fprintf_chk.c: Likewise.
	* debug/gets_chk.c: Likewise.
	* debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
	* debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
	passed to __vsnprintf_chk.
	* debug/Versions (libc): Export __printf_chk, __fprintf_chk,
	__vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
	* debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
	__vsnprintf, instead create a temporary file with
	_IO_strn_jumps jumptable.  If flags > 0, request
	_IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
	* libio/Makefile (headers): Add bits/stdio2.h.
	* libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
	(sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
	* libio/strfile.h (_IO_strnfile): New type.
	(_IO_strn_jumps): New extern.
	* libio/vsnprintf.c (_IO_strnfile): Remove.
	(_IO_strn_jumps): Remove static.
	* libio/bits/stdio2.h: New file.
	* libio/vswprintf.c (_IO_strnfile): Rename type to...
	(_IO_wstrnfile): ...this.  Adjust all uses.
	* libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
	* stdio-common/vfprintf.c (STR_LEN): Define.
	(vfprintf): Add readonly_format variable.
	Handle _IO_FLAGS2_CHECK_PERCENT_N.
	(buffered_vfprintf): Copy _flags2.
	* include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
	__vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
	__vfprintf_chk): New prototypes.
	(__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
	* include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
	__memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
	__strncat_chk): New prototypes.
	* include/bits/string3.h: New file.
	* include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
	and rtld_hidden_proto.
	* string/Makefile (headers): Add bits/string3.h.
	* string/bits/string3.h (bcopy, bzero): New defines.
	(memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
	macros so that inlines are used only if unknown destination size
	or side-effects in destination argument.
	(mempcpy, stpcpy): Likewise.  Protect with #ifdef __USE_GNU.

2004-09-16  Ulrich Drepper  <drepper@redhat.com>

	* debug/Makefile (routines): Add *_chk.
	* debug/Versions (libc): Export __chk_fail, __memcpy_chk,
	__memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
	__strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
	__sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
	@GLIBC_2.3.4.
	* debug/chk_fail.c: New file.
	* debug/snprintf_chk.c: Likewise.
	* debug/sprintf_chk.c: Likewise.
	* debug/vsnprintf_chk.c: Likewise.
	* debug/vsprintf_chk.c: Likewise.
	* include/features.h (_FORTIFY_SOURCE): Document, handle.
	(__USE_FORTIFY_LEVEL): Define.
	(__GNUC_PREREQ): Move to earlier location.
	* include/sys/cdefs.h (__chk_fail): New prototype.
	* libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
	Define if __USE_FORTIFY_LEVEL.
	* misc/sys/cdefs.h (__bos, __bos0): Define.
	* string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
	* bits/string/string3.h: New header.
	* sysdeps/generic/memcpy_chk.c: New file.
	* sysdeps/generic/memmove_chk.c: Likewise.
	* sysdeps/generic/mempcpy_chk.c: Likewise.
	* sysdeps/generic/memset_chk.c: Likewise.
	* sysdeps/generic/stpcpy_chk.c: Likewise.
	* sysdeps/generic/strcat_chk.c: Likewise.
	* sysdeps/generic/strcpy_chk.c: Likewise.
	* sysdeps/generic/strncat_chk.c: Likewise.
	* sysdeps/generic/strncpy_chk.c: Likewise.
2004-10-18 04:17:19 +00:00
Ulrich Drepper
5ca3d19c74 Update.
2004-10-14  Ulrich Drepper  <drepper@redhat.com>

	* nscd/connections.c (nscd_init): Remove file if not persistent
	and not shared.  Patch by Jerome Borsboom <j.borsboom@erasmusmc.nl>.

	* sysdeps/unix/sysv/linux/i386/setresuid.c: Handle
	defined __NR_setresuid32 && !defined __NR_setresuid.
	* sysdeps/unix/sysv/linux/i386/setresgid.c: Handle
	defined __NR_setresgid32 && !defined __NR_setresgid.

	* sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
	__signbitl, sqrtf, sqrt, sqrtl, fdim, fdimf): Use __NTH macro.

	* sysdeps/generic/errno-loc.c: Don't undef #errno
	if RTLD_PRIVATE_ERRNO.
	* include/errno.h (__errno_location): If RTLD_PRIVATE_ERRNO,
	add attribute_hidden.

	* dlfcn/dlinfo.c (dlinfo_doit): Replace iteration over GL(dl_loaded)
	chain with iteration over all namespaces' _ns_loaded chains.
	* sysdeps/powerpc/powerpc32/dl-machine.c (__elf_preferred_address):
	Likewise.
	* sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Likewise.
2004-10-14 16:18:09 +00:00
Ulrich Drepper
c701ab9f0e Update.
2004-10-12  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/segfault.c: Include alloca.h and stdint.h.
	Don't include frame.h.
	(CURRENT_STACK_FRAME, INNER_THAN, ADVANCE_STACK_FRAME): Remove.
	(catch_segfault): Use backtrace function.

	* sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Fix comment.
	* sysdeps/unix/sysv/linux/ia64/register-dump.h: New file.
	* sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h (GET_PC): Return sc_ip
	field.
2004-10-14 02:24:44 +00:00
Ulrich Drepper
c0f62c5678 [BZ #77]
Update.
	Add support for namespaces in the dynamic linker.
	* dlfcn/Makefile (libdl-routines): Add dlmopen.
	* dlfcn/Versions [libdl, GLIBC_2.3.4]: Add dlmopen.
	* dlfcn/dlfcn.h: Define Lmid_t, LM_ID_BASE, and LM_ID_NEWLM.
	Declare dlmopen.  Document RTLD_DI_LMID.
	* dlfcn/dlinfo.c: Handle RTLD_DI_LMID.
	* dlfcn/dlmopen.c: New file.
	* dlfcn/dlopen.c: Pass new parameter to _dl_open.
	* dlfcn/dlopenold.c: Likewise.
	* elf/dl-addr.c: Adjust for removal of GL(dl_loaded).
	* elf/dl-caller.c: Likewise.
	* elf/dl-close.c: Likewise.
	* elf/dl-conflict.c: Likewise.
	* elf/dl-debug.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* elf/dl-version.c: Likewise.
	* elf/do-lookup.h: Likewise.
	* elf/rtld.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
	* elf/dl-depsc: Likewise.  Add new parameter to _dl_map_object.
	* elf/dl-fini.c: Call destructors in all namespaces.
	* elf/dl-iteratephdr.c: Compute total nloaded.  Adjust for removal of
	GL(dl_loaded).
	* elf/dl-libc.c: Pass new parameter to _dl_open.  Adjust for removal
	of GL(dl_loaded).
	* elf/dl-load.c (_dl_map_object_from_fd): Don't load ld.so a second
	time.  Reuse the one from the main namespace in all others.
	Pass new parameter to _dl_new_object.
	Adjust for removal of GL(dl_loaded).
	* elf/dl-object.c: Take new parameter.  Use it to initialize l_ns.
	Adjust for removal of GL(dl_loaded).
	* elf/dl-open.c (_dl_open): Take new parameter.
	Adjust for removal of GL(dl_loaded).
	* elf/dl-support.c: Replace global _dl_loaded etc variables with
	_dl_ns variable.
	* include/dlfcn.h: Adjust prototype of _dl_open.
	Define __LM_ID_CALLER.
	* include/link.h: Add l_real, l_ns, and l_direct_opencount elements.
	* sysdeps/generic/dl-tls.c: Bump TLS_STATIC_SURPLUS.  Since libc is
	using TLS we need memory appropriate to the number of namespaces.
	* sysdeps/generic/ldsodefs.h (struct rtld_global): Replace _dl_loaded,
	_dl_nloaded, _dl_global_scope, _dl_main_searchlist, and
	_dl_global_scope_alloc with _dl_ns element.  Define DL_NNS.
	Adjust prototypes of _dl_map_object and member in rtld_global_ro.
	* malloc/malloc.c: Include <dlfcn.h>.
	* malloc/arena.c (ptmalloc_init): If libc is not in primary namespace,
	never use brk.
	* elf/Makefile: Add rules to build and run tst-dlmopen1 and
	tst-dlmopen2.
	* elf/tst-dlmopen1.c: New file.
	* elf/tst-dlmopen1mod.c: New file.
	* elf/tst-dlmopen2.c: New file.

	* elf/dl-close.c: Improve reference counting by tracking direct loads.
	* elf/dl-lookup.c (add_dependency): Likewise.
	* elf/dl-open.c (dl_open_worker): Likewise.
	* elf/rtld.c (dl_main): Likewise.

2004-09-09  GOTO Masanori  <gotom@debian.or.jp>

	[BZ #77]
	* elf/dl-close.c: Count down l_opencount to check not only for
	l_reldeps, but also l_initfini.

2004-10-13  Ulrich Drepper  <drepper@redhat.com>
2004-10-14 02:08:23 +00:00
Roland McGrath
0c70edcbc6 * include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
to rtld_errno.
	* sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
	and don't define any other errno names.
	* sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
	place of errno.
	* sysdeps/unix/i386/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
	* sysdeps/unix/x86_64/sysdep.S: Likewise.

	* sysdeps/generic/errno.c [! USE___THREAD] (errno): Use `nocommon'
	attribute instead of `section'.

	are handled by one thread which then hands off the descriptors for the
2004-10-04 20:59:53 +00:00
Roland McGrath
290855f36b [BZ #420]
2004-10-02  Simon Josefsson  <jas@extundo.com>
	[BZ #420]
	* sysdeps/generic/memmem.c [!_LIBC]: Define __builtin_expect, to
	make the file usable inside gnulib.
2004-10-01 22:49:36 +00:00
Ulrich Drepper
66b38fc99e Update.
2004-09-29  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/glob.c (glob_in_dir): Don't blindly trust
	readdir results; for symlinks or files of unknown type check using
	stat whether the file exists.

	* posix/tst-gnuglob.c (find_file): Handle leading "./".  Fix
	recognition of files.
2004-09-30 06:42:39 +00:00
Ulrich Drepper
53b4fed6ef Update.
* sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Make sure
	SIGSETXID is not blocked.
	* sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Likewise.
	* sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
	* sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise.
	* sysdeps/generic/sigfillset.c (sigfillset): Don't set SIGSETXID.
2004-09-28 22:44:12 +00:00
Roland McGrath
f26e84d344 2004-09-27 Roland McGrath <roland@redhat.com>
* sysdeps/generic/bits/waitstatus.h (__WIFSIGNALED): Simplify bit
	twiddling in last change.
2004-09-28 01:58:03 +00:00
Roland McGrath
a044c713b0 * posix/tst-waitid.c (do_test): Add tests for waitpid with WCONTINUED.
* posix/sys/wait.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
	* stdlib/stdlib.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
	* sysdeps/generic/bits/waitstatus.h (__W_CONTINUED): New macro.
	[WCONTINUED] (__WIFCONTINUED): New macro.
	(__WIFSIGNALED): Rewritten to exclude __W_CONTINUED value, and have no
	branches.
2004-09-28 01:42:49 +00:00
Ulrich Drepper
6497a1d081 [BZ #376]
Update.
	* sysdeps/generic/s_fdim.c: Handle +inf/+inf
	* sysdeps/generic/s_fdimf.c: Likewise.
	* sysdeps/generic/s_fdiml.c: Likewise.
	* sysdeps/i386/i686/fpu/s_fdim.S: Likewise.
	* sysdeps/i386/i686/fpu/s_fdimf.S: Likewise.
	* sysdeps/i386/i686/fpu/s_fdiml.S: Likewise.
	* sysdeps/powerpc/fpu/s_fdim.c: Likewise.
	* sysdeps/powerpc/fpu/s_fdimf.c: Likewise.
	* sysdeps/x86_64/fpu/s_fdiml.S: Likewise.
	* math/libm-test.inc (fdim_test): Add test case.  [BZ #376].
2004-09-26 10:11:59 +00:00
Ulrich Drepper
a1d335d6c9 [BZ #362]
Update.
	* sysdeps/generic/bits/types.h: Fix __SQUAD_TYPE and __UQUAD_TYPE
	for compilers without __GLIBC_HAVE_LONG_LONG.  [BZ #362]
2004-09-26 08:48:19 +00:00
Ulrich Drepper
1fc074913b Update.
2004-09-23  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/bits/dlfcn.h: Add RTLD_DEEPBIND.
	* elf/dl-object.c (_dl_new_object): Add new parameter mode.  If mode
	has RTLD_DEEPBIND set add local searchlist before global scope.
	* sysdeps/generic/ldsodefs.h (_dl_new_object): Adjust prototype.
	* elf/rtld.c: Adjust callers of _dl_new_object.
	* elf/dl-load.c: Likewise.
	(_dl_map_object_from_fd): If RTLD_DEEPBIND is used, don't do anything
	for DF_SYMBOLIC.
	* elf/dl-open.c (dl_open_writer): Pass RTLD_DEEPBIND flag on to
	_dl_map_object_deps.
	* elf/tst-deep1.c: New file.
	* elf/tst-deep1mod1.c: New file.
	* elf/tst-deep1mod2.c: New file.
	* elf/tst-deep1mod3.c: New file.
	* elf/Makefile: Add rules to build and run new tests.

	* elf/dl-deps.c: Pretty printing.
2004-09-23 07:45:38 +00:00
Ulrich Drepper
7a11603dc6 Update.
2004-09-17  Ulrich Drepper  <drepper@redhat.com>

	* include/link.h (struct link_map): Add l_used element.
	* sysdeps/generic/ldsodefs.h: Define DL_DEBUG_UNUSED.
	* elf/rtld.c (process_dl_debug): Recognize unused.
	(dl_main): When unused debug flag is set check for unused direct
	dependencies.
	When printing dependencies and SONAME starts with /, omit the SONAME =>
	part.
	* elf/dl-lookup.c (_dl_lookup_symbol_x): Mark object in which the
	symbol has been found as used.
	* elf/ldd.bash.in: Add -u option.
2004-09-18 06:46:52 +00:00
Ulrich Drepper
79937577d1 Update.
2004-09-13  Ulrich Drepper  <drepper@redhat.com>

	* misc/sys/cdefs.h: Restore old definition of __P.
	* csu/munch.awk: Remove uses of __P and __PMT.
	* gmon/gmon.c: Likewise.
	* hesiod/hesiod.h: Likewise.
	* include/stdio.h: Likewise.
	* io/fts.c: Likewise.
	* libio/genops.c: Likewise.
	* libio/libioP.h: Likewise.
	* libio/fileops.c: Likewise.
	* libio/iolibio.h: Likewise.
	* libio/libio.h: Likewise.
	* libio/memstream.c: Likewise.
	* libio/oldfileops.c: Likewise.
	* libio/oldstdfiles.c: Likewise.
	* libio/iopopen.c: Likewise.
	* libio/vsnprintf.c: Likewise.
	* libio/vswprintf.c: Likewise.
	* libio/wgenops.c: Likewise.
	* libio/oldiopopen.c: Likewise.
	* locale/programs/xmalloc.c: Likewise.
	* locale/programs/xstrdup.c: Likewise.
	* malloc/mtrace.c: Likewise.
	* misc/getttyent.c: Likewise.
	* misc/getusershell.c: Likewise.
	* nis/rpcsvc/ypupd.h: Likewise.
	* posix/fnmatch.h: Likewise.
	* posix/glob.h: Likewise.
	* resolv/arpa/nameser.h: Likewise.
	* resolv/gethnamaddr.c: Likewise.
	* resolv/resolv.h: Likewise.
	* resolv/inet_net_ntop.c: Likewise.
	* resolv/inet_net_pton.c: Likewise.
	* resolv/res_init.c: Likewise.
	* resolv/nss_dns/dns-network.c: Likewise.
	* stdio-common/vfprintf.c: Likewise.
	* stdio-common/reg-printf.c: Likewise.
	* sysdeps/generic/chflags.c: Likewise.
	* sysdeps/generic/fchflags.c: Likewise.
	* sysdeps/generic/glob.c: Likewise.
	* sysdeps/generic/printf_fphex.c: Likewise.
	* sysdeps/generic/memcmp.c: Likewise.
	* sysdeps/generic/memcopy.h: Likewise.
	* sysdeps/generic/morecore.c: Likewise.
	* sysdeps/generic/sstk.c: Likewise.
	* sysdeps/posix/sigvec.c: Likewise.
	* sysdeps/posix/ttyname_r.c: Likewise.
	* sysdeps/standalone/arm/bits/errno.h: Likewise.
	* sysdeps/standalone/standalone.h: Likewise.
	* sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
	* sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
	* sysdeps/unix/arm/start.c: Likewise.
	* sysdeps/unix/bsd/sigaction.c: Likewise.
	* sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
	* sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
	* sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
	* sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
	* sysdeps/unix/sparc/start.c: Likewise.
	* sysdeps/unix/sysv/getdents.c: Likewise.
	* sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
	* sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
	* sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
	* sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
	* sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
	* sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
	* sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
	* sysdeps/unix/sysv/irix4/start.c: Likewise.
	* sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
	* sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
	* sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
	* sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
	* sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
	* sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
	* time/tzset.c: Likewise.
	* time/strftime_l.c: Likewise.
	* time/strptime_l.c: Likewise.
	* crypt/md5.h: Likewise.
2004-09-14 04:41:35 +00:00
Ulrich Drepper
081fc592fa Update.
Jakub Jelinek  <jakub@redhat.com>

	* nscd/Makefile (nscd-modules): Add nscd_setup_thread.
	* nscd/connections.c (nscd_run): Call setup_thread for maintenance
	threads.
	* nscd/nscd-client.h (struct database_pers_head): Add
	nscd_certainly_running field.
	* nscd/nscd.h: Declare setup_thread.
	* nscd/nscd_helper.c (__nscd_get_map_ref): Avoid the time test if
	nscd_certainly_running is nonzero.

2004-09-08  Ulrich Drepper  <drepper@redhat.com>
2004-09-08 17:56:46 +00:00
Ulrich Drepper
f377d02227 Update.
* include/atomic.h: Define atomic_increment_val, atomic_decrement_val,
	and atomic_dealy is not already defined.
	* sysdeps/i386/i486/bits/atomic.h: Define atomic_delay.
	* sysdeps/x86_64/bits/atomic.h: Likewise.

	* miscd/sys/cdefs.h (__NTH): New macro.
	(__THROW): Define using nothrow attribute for C code and gcc >= 3.2.
	(__REDIRECT_NTH): New macro.
	* argp/argp.h: Use __NTH and __REDIRECT_NTH where necessary.
	* ctype/ctype.h: Likewise.
	* dirent/dirent.h: Likewise.
	* io/fcntl.h: Likewise.
	* io/sys/sendfile.h: Likewise.
	* io/sys/stat.h: Likewise.
	* io/sys/statfs.h: Likewise.
	* io/sys/statvfs.h: Likewise.
	* libio/bits/stdio.h: Likewise.
	* misc/sys/mman.h: Likewise.
	* posix/unistd.h: Likewise.
	* resource/sys/resource.h: Likewise.
	* rt/aio.h: Likewise.
	* signal/signal.h: Likewise.
	* stdlib/stdlib.h: Likewise.
	* string/argz.h: Likewise.
	* string/string.h: Likewise.
	* sysdeps/generic/inttypes.h: Likewise.
	* sysdeps/i386/fpu/bits/mathinline.h: Likewise.
	* sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
	* sysdeps/s390/fpu/bits/mathinline.h: Likewise.
	* sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/sys/sysmacros.h: Likewise.
	* wcsmbs/wchar.h: Likewise.

	* sysdeps/generic/glob.c: Use __PMT isntead of __P where appropriate.

	* resolv/gethnamaddr.c (getanswer): Remove __P use in variable
	definition.

	* io/sys/poll.h: Remove __THROW from poll prototype, it's a
	cancellation point.
2004-09-07 22:33:37 +00:00
Ulrich Drepper
36ccb375a7 Use __PMT instead of __P where appropriate. 2004-09-07 22:10:43 +00:00
Roland McGrath
92c6ccd1b2 * csu/elf-init.c: Update copyright terms including special exception
for these trivial files, which are statically linked into executables
	that use dynamic linking for the significant library code.
	* io/fstat.c: Likewise.
	* io/fstat64.c: Likewise.
	* io/lstat.c: Likewise.
	* io/lstat64.c: Likewise.
	* io/stat.c: Likewise.
	* io/stat64.c: Likewise.
	* stdlib/atexit.c: Likewise.
	* sysdeps/alpha/elf/initfini.c: Likewise.
	* sysdeps/alpha/elf/start.S: Likewise.
	* sysdeps/arm/elf/start.S: Likewise.
	* sysdeps/cris/elf/start.S: Likewise.
	* sysdeps/generic/initfini.c: Likewise.
	* sysdeps/generic/mknod.c: Likewise.
	* sysdeps/hppa/elf/initfini.c: Likewise.
	* sysdeps/hppa/elf/start.S: Likewise.
	* sysdeps/i386/elf/start.S: Likewise.
	* sysdeps/i386/i686/hp-timing.c: Likewise.
	* sysdeps/ia64/elf/initfini.c: Likewise.
	* sysdeps/ia64/elf/start.S: Likewise.
	* sysdeps/ia64/hp-timing.c: Likewise.
	* sysdeps/m68k/elf/start.S: Likewise.
	* sysdeps/mach/start.c: Likewise.
	* sysdeps/mips/elf/start.S: Likewise.
	* sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
	* sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
	* sysdeps/s390/s390-32/elf/start.S: Likewise.
	* sysdeps/s390/s390-32/initfini.c: Likewise.
	* sysdeps/s390/s390-64/elf/start.S: Likewise.
	* sysdeps/s390/s390-64/initfini.c: Likewise.
	* sysdeps/sh/elf/initfini.c: Likewise.
	* sysdeps/sh/elf/start.S: Likewise.
	* sysdeps/sparc/sparc32/elf/start.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
	* sysdeps/sparc/sparc64/elf/start.S: Likewise.
	* sysdeps/sparc/sparc64/hp-timing.c: Likewise.
	* sysdeps/standalone/i386/start.S: Likewise.
	* sysdeps/standalone/i960/start.S: Likewise.
	* sysdeps/standalone/m68k/m68020/start.S: Likewise.
	* sysdeps/unix/arm/start.c: Likewise.
	* sysdeps/unix/bsd/osf/alpha/start.S: Likewise.
	* sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
	* sysdeps/unix/sparc/start.c: Likewise.
	* sysdeps/unix/start.c: Likewise.
	* sysdeps/unix/sysv/aix/start.s: Likewise.
	* sysdeps/unix/sysv/irix4/start.c: Likewise.
	* sysdeps/x86_64/elf/initfini.c: Likewise.
	* sysdeps/x86_64/elf/start.S: Likewise.
2004-08-16 04:51:23 +00:00
Ulrich Drepper
2566e5f3a3 Update.
2004-08-12  Jakub Jelinek  <jakub@redhat.com>

	* resolv/res_query.c (__libc_res_nsearch): Protect the debugging
	printf with #ifdef DEBUG and RES_DEBUG check.

	* sysdeps/unix/sysv/linux/bits/shm.h: Move __END_DECLS after
	__USE_MISC #endif.
	* sysdeps/generic/bits/shm.h: Add __BEGIN_DECLS for __getpagesize
	declaration.
	* sysdeps/gnu/bits/shm.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
	* sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
2004-08-12 17:42:16 +00:00
Roland McGrath
b6cef5b17a * sysdeps/generic/bits/in.h (struct ip_mreq): Remove definition. 2004-08-10 22:05:32 +00:00
Ulrich Drepper
d3c99ad106 Update.
* inet/netinet/in.h: Add more const to the setipv4soucefilter,
	getsourcefilter, and setsourcefilter parameter list.
	* sysdeps/generic/setipv4sourcefilter.c: Likewise.
	* sysdeps/generic/getsourcefilter.c: Likewise.
	* sysdeps/generic/setsourcefilter.c: Likewise.
	* sysdeps/unix/sysv/linux/setipv4sourcefilter.c: Likewise.
	* sysdeps/unix/sysv/linux/getsourcefilter.c: Likewise.
	* sysdeps/unix/sysv/linux/setsourcefilter.c: Likewise.
2004-08-07 18:22:26 +00:00
Ulrich Drepper
f89d689293 Update.
2004-07-25  Ulrich Drepper  <drepper@redhat.com>

	* inet/Versions [libc, GLIBC_2.3.4]: Add getipv4sourcefilter,
	getsourcefilter, setipv4sourcefilter, and setsourcefilter.
	* inet/Makefile (routines): Likewise.
	* inet/netinet/in.h: Add prototypes for getipv4sourcefilter,
	getsourcefilter, setipv4sourcefilter, and setsourcefilter.
	* sysdeps/generic/getipv4sourcefilter.c: New file.
	* sysdeps/generic/setipv4sourcefilter.c: New file.
	* sysdeps/generic/getsourcefilter.c: New file.
	* sysdeps/generic/setsourcefilter.c: New file.
2004-07-26 04:29:07 +00:00
Ulrich Drepper
ee600e3f76 Update.
2004-07-10  Ulrich Drepper  <drepper@redhat.com>

	* elf/ldconfig.c: Define PROCINFO_CLASS as static before including
	ldsodefs.h.
	* sysdeps/generic/ldsodefs.h: Only define PROCINFO_CLASS if it is not
	already defined.
	* sysdeps/i386/dl-procinfo.c: Define PROCINFO_CALLS only if not
	already defined.

	* elf/rtld.c (print_statistics): Mark with noinline attribute.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Mark with always_inline
	attribute.
	(elf_machine_rel_relative): Likewise.

	* include/string.h: Add libc_hidden_proto for __strtok_r and
	__strsep_g.
	* sysdeps/generic/strsep.c: Add libc_hidden_def.
	* sysdeps/generic/strtok_r.c: Likewise.
	* sysdeps/i386/strtok_r.S: Add alias for internal symbol.
	* sysdeps/i386/i686/strtok_r.S: Likewise.
	* sysdeps/x86_64/strtok_r.S: Likewise.

2004-07-09  Alexandre Oliva  <aoliva@redhat.com>

	* inet/getnetgrent_r.c (internal_setnetgrent): Make it hidden
	instead of internal-linkage, such that we can alias to it.
	(internal_endnetgrent, internal_getnetgrent_r): Likewise.
2004-07-10 20:00:44 +00:00
Ulrich Drepper
ce6e047fbb Update.
2004-07-05  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-init.c: Don't define and use _dl_starting_up if
	HAVE_INLINED_SYSCALLS is defined and the variable is not used.
	* elf/dl-support.c: Likewise.
	* elf/rtld.c: Likewise.
	* elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly
	if HAVE_INLINED_SYSCALLS is defined.
	* sysdeps/powerpc/powerpc64/dl-machine.h: Don't rest _dl_starting_up
	here.
	* sysdeps/powerpc/powerpc32/dl-start.S: Likewise.
	* sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS.
	* config.h.in: Add entry for HAVE_INLINED_SYSCALLS.

	* sysdeps/posix/profil.c: If compiled for ld.so, omit code which
	is needed to stop profiling.
	* elf/dl-open.c (dl_open_worker): If a newly opened object is to be
	profile make sure it cannot be unloaded.

	* sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall.

	* sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation
	support, make sure the helper function is inlined.
	* sysdeps/unix/sysv/linux/pread.c: Likewise.
	* sysdeps/unix/sysv/linux/pwrite.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
2004-07-06 04:26:42 +00:00