Commit Graph

1723 Commits

Author SHA1 Message Date
Roland McGrath
c55dca8d85 * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
(struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
	Use int32_t for ll_time.
	(struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
	Use int32_t instead of long int for ut_session.
	Use an anonymous struct with 32-bit fields for ut_tv.
	* sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
	(struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
	here as in utmp.h for `struct utmp'.
	* sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
	* sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
	* sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
	* sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
	* sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
	* sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.

	* sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
	of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
	All the following files were identical or equivalent to it.
	* sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.

	* sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
	instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
	Other than the previously incorrect sign of msg_iovlen, this is a
	no-op on 32-bit platforms.  On 64-bit platforms it makes this header
	match their layouts as well, so the following are now identical to it.
	* sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
	* sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
	* sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
	* sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
	* sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
2002-10-16 01:03:05 +00:00
Roland McGrath
f7d1f342cc 2002-10-15 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
	of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
	All the following files were identical or equivalent to it.
	* sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
2002-10-16 01:02:25 +00:00
Ulrich Drepper
7d1ed880a3 Update.
2002-10-15  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
	support for reiserfs and xfs.

	* sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
	XFS link count.
	* sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
	and XFS_LINK_MAX.
	Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
2002-10-16 00:38:29 +00:00
Ulrich Drepper
75c151a1b9 Define XFS_SUPER_MAGIC and XFS_LINK_MAX. 2002-10-16 00:33:18 +00:00
Roland McGrath
9b21e6bcf8 2002-10-16 Jakub Jelinek <jakub@redhat.com>
* include/libc-symbols.h (attribute_tls_model_ie): Define.
	* include/errno.h (errno): Define to __libc_errno in libc.so.
	Add attribute_tls_model_ie.
	* include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
	Add attribute_tls_model_ie.
	* include/resolv.h (_res): Define to __libc_res in libc.so.  Add
	attribute_tls_model_ie.
	* inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
	(h_errno): Define.
	* resolv/res_libc.c (__libc_res): Add hidden alias to _res.
	(_res): Define.
	* sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
	attribute_tls_model_ie.
	* sysdeps/generic/errno-loc.c (errno): Only undefine if not using
	__thread.
	* sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
	* sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
	__libc_errno in USE___THREAD case.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
	Likewise.
	* configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
	__attribute__((tls_model (""))).
	* configure: Rebuilt.
	* config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
2002-10-15 22:50:43 +00:00
Roland McGrath
a7a2ea5a71 2002-10-14 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/sigaction.c
	[HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
	extern using attribute_hidden instead of static, avoids warning.
2002-10-15 08:38:41 +00:00
Andreas Jaeger
8b992d77ef Use */lib64 for s390x too. 2002-10-15 07:37:22 +00:00
Ulrich Drepper
89b91a9265 Update.
2002-10-12  H.J. Lu  <hjl@gnu.org>

	* sunrpc/thrsvc.c (PROCQUIT): New.
	(struct rpc_arg): New.
	(dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
	(test_one_call): Take struct rpc_arg * instead of CLIENT *c.
	(thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
	(main): Modified for struct rpc_arg *.

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

	* dirent/scandir.c: Rearrange code a bit to reduce binary size.

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

	* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
	(SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
	in ld.so even if __thread is supported.

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

	* sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
	Add hack to prevent the compiler from clobbering the signal context.
	* sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
	Likewise.
	* sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
	Likewise.
2002-10-14 18:10:15 +00:00
Ulrich Drepper
5e3ab761da (profil_counter): Add hack to prevent the compiler from clobbering the signal context. 2002-10-14 17:26:14 +00:00
Roland McGrath
747bf98ea9 * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
* sysdeps/mach/hurd/getresuid.c: New file.
	* sysdeps/mach/hurd/getresgid.c: New file.
	* sysdeps/mach/hurd/setresuid.c: New file.
	* sysdeps/mach/hurd/setresgid.c: New file.

	* posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
	setresgid): Declare them.
	* NEWS: Mention it.
	* include/unistd.h
	(__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
	add libc_hidden_proto.
	* posix/Versions (libc: GLIBC_2.3.2): New set.  Add
	getresuid, getresgid, setresuid, setresgid here.
	* Versions.def (libc): Define GLIBC_2.3.2 set.
	* sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
	Add libc_hidden_def.
	* sysdeps/generic/getresgid.c (__getresgid): Likewise.
	* sysdeps/generic/setresgid.c: New file.
	* sysdeps/generic/setresuid.c: New file.
	* sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
	(sysdep_routines): Don't add getresuid and getresgid here.
	* sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
	(sysdep_routines): Don't add setresuid and setresgid here.
	* sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
	* posix/Makefile (routines): Add them all here instead.
	* sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
	__getresuid.  Add libc_hidden_def for that, and weak alias to old name.
	* sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
	__getresgid.  Add libc_hidden_def for that, and weak alias to old name.
	* sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
	[! __NR_setresuid]: Include generic file.
	* sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
	__setresgid.  Add libc_hidden_def for that, and weak alias to old name.
	[! __NR_setresuid]: Include generic file.
	* sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
	Caller is - now, not EXTRA.
	* sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
	(setresuid, setresgid, getresuid, getresgid): Likewise.
	* sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
	Add these calls here.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
	* sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.

	* sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
	(sysdep_routines): Add setfsuid and setfsgid here.
	* sysdeps/unix/sysv/linux/arm/Makefile: Not here.
	* sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.

	* hurd/errno.c: Renamed to ...
	* hurd/errno-loc.c: ... this.
	* hurd/Makefile (routines): errno -> errno-loc
2002-10-14 01:03:16 +00:00
Roland McGrath
6bdcd619a4 2002-10-13 Roland McGrath <roland@frob.com>
* posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
	setresgid): Declare them.
	* NEWS: Mention it.
	* include/unistd.h
	(__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
	add libc_hidden_proto.
	* posix/Versions (libc: GLIBC_2.3.2): New set.  Add
	getresuid, getresgid, setresuid, setresgid here.
	* Versions.def (libc): Define GLIBC_2.3.2 set.
	* sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
	Add libc_hidden_def.
	* sysdeps/generic/getresgid.c (__getresgid): Likewise.
	* sysdeps/generic/setresgid.c: New file.
	* sysdeps/generic/setresuid.c: New file.
	* sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
	(sysdep_routines): Don't add getresuid and getresgid here.
	* sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
	(sysdep_routines): Don't add setresuid and setresgid here.
	* sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
	* posix/Makefile (routines): Add them all here instead.
	* sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
	__getresuid.  Add libc_hidden_def for that, and weak alias to old name.
	* sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
	__getresgid.  Add libc_hidden_def for that, and weak alias to old name.
	* sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
	[! __NR_setresuid]: Include generic file.
	* sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
	__setresgid.  Add libc_hidden_def for that, and weak alias to old name.
	[! __NR_setresuid]: Include generic file.
	* sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
	Caller is - now, not EXTRA.
	* sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
	(setresuid, setresgid, getresuid, getresgid): Likewise.
	* sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
	Add these calls here.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
	* sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
	(sysdep_routines): Add setfsuid and setfsgid here.
	* sysdeps/unix/sysv/linux/arm/Makefile: Not here.
	* sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
2002-10-14 01:02:54 +00:00
Ulrich Drepper
485d775dd5 Update.
2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>

	* posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
	OP_CONTEXT_NODE.
	(regfree): Likewise.
	(create_initial_state): Likewise.
	(analyze): Remove the substitutions which became useless.
	(calc_first): Likewise.
	(calc_epsdest): Use edests of OP_BACK_REF in case that it has
	epsilon destination.
	(duplicate_node_closure): New function.
	(duplicate_node): Remove the handling OP_CONTEXT_NODE.
	(calc_inveclosure): Likewise.
	(calc_eclosure): Likewise.
	(calc_eclosure_iter): Invoke duplicate_node_closure instead of
	direct invocation of duplicate_node.
	(parse): Don't use comma operator in the return to avoid compiler
	warning.
	(parse_reg_exp): Likewise.
	(parse_branch): Likewise.
	(parse_expression): Likewise.
	(parse_sub_exp): Likewise.
	(parse_dup_op): Likewise.
	* posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
	which became useless.
	(create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
	(create_cd_newstate): Likewise.
	* posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
	(re_token_t): Likewise.
	(re_dfa_t): Likewise.
	(re_node_set_remove): New macro.
	* posix/regexec.c (check_matching): Remove the handling
	OP_CONTEXT_NODE.
	(check_halt_node_context): Likewise.
	(proceed_next_node): Likewise.
	(pop_fail_stack): Fix the memory leak.
	(set_regs): Likewise.
	(free_fail_stack_return): New function.
	(sift_states_backward): Fix the memory leak.  Remove the handling
	OP_CONTEXT_NODE.
	(update_cur_sifted_state): Append some if clause to avoid redundant
	call.
	(sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
	back reference.
	(check_dst_limits): Remove the handling OP_CONTEXT_NODE.
	(check_subexp_limits): Likewise.
	(search_subexp): Likewise.
	(sift_states_bkref): Likewise.
	(transit_state_mb): Likewise.
	(transit_state_bkref_loop): Likewise.
	(transit_state_bkref_loop): Likewise.
	(group_nodes_into_DFAstates): Likewise.
	(check_node_accept): Likewise.
	(sift_ctx_init): Add initializing.

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

	* sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
	__builtin_expect.
2002-10-12 08:34:26 +00:00
Ulrich Drepper
cc12f2a442 Update.
* elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
	duplicated variable c.

	* sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
	if possible.
	Add hack to prevent the compiler from clobbering the signal context.
2002-10-12 06:34:56 +00:00
Ulrich Drepper
f44476711d Update.
* sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use
	INTERNAL_SYSCALL is possible.

	* sysdeps/unix/sysv/linux/i386/sysdep.h
	(INTERNAL_SYSCALL_ERROR_P): New define.
	(INTERNAL_SYSCALL_ERRNO): Likewise.
2002-10-12 00:49:44 +00:00
Ulrich Drepper
bd97565d08 (profil_counter): Add hack to prevent the compiler from clobbering the signal context. 2002-10-11 18:56:32 +00:00
Roland McGrath
5232c93914 * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
Fix typos.
2002-10-11 12:54:53 +00:00
Roland McGrath
1077a5f2d3 * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
missing labels and ; from last change.
2002-10-11 12:03:29 +00:00
Roland McGrath
ce460d04a5 * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
changed from [USE_TLS && HAVE___THREAD].

	* sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
	Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
	* sysdeps/x86_64/dl-machine.h
	(elf_machine_type_class, elf_machine_rela): Likewise.
	* sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
	Likewise.

	* include/link.h (struct link_map): Remove member l_tls_tp_initialized.
	* elf/rtld.c (_dl_start_final, dl_main): Don't use it.
	(_dl_start): Conditionalize PT_TLS check on [USE___THREAD].

	* sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
	instead of ___tls_get_addr.
	(___tls_get_addr_internal): Add attribute_hidden to decl.

	* sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
	_dl_error_catch_tsd.
	* elf/rtld.c (startup_error_tsd): New function.
	(dl_main): Point _dl_error_catch_tsd at that.
	* elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
	use new function pointer instead.
	* elf/dl-tsd.c: New file.
	* elf/Makefile (routines): Add it.

2002-10-07  Roland McGrath  <roland@redhat.com>

	* elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
	writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
	take _dl_load_lock around calling __writev.

	* sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
	(INLINE_SYSCALL): Use that.

	* sysdeps/generic/dl-sysdep.h: New file.
	* sysdeps/mach/hurd/dl-sysdep.h: New file.
	* sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
	* include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
	[RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
	access it directly.
	* elf/dl-minimal.c (__errno_location): Removed.
	* sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
	Use GOTOFF access for errno.
	* sysdeps/unix/sysv/linux/i386/sysdep.h
	[RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.

	* sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
	Use PC-relative access for errno.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h
	[RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.

	* include/tls.h: New file.
	(USE___THREAD): New macro.
	Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
	libc or libpthread.
	* sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
	changed from [USE_TLS && HAVE___THREAD].
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
	* sysdeps/unix/i386/sysdep.S: Likewise.
	* sysdeps/unix/x86_64/sysdep.S: Likewise.
	* include/errno.h: Likewise.
	* include/netdb.h: Likewise.
	* include/resolv.h: Likewise.

	* sysdeps/generic/errno.c: New file.
	* csu/Makefile (aux): New variable, list errno.
	* sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
	* sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
	* sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
	* sysdeps/unix/alpha/sysdep.S: Likewise.
	* sysdeps/generic/start.c: Likewise.
	* sysdeps/unix/start.c: Likewise.
	* sysdeps/unix/arm/start.c: Likewise.
	* sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
	* sysdeps/unix/sparc/start.c: Likewise.
	* sysdeps/unix/sysv/irix4/start.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.

	* manual/search.texi (Tree Search Function, Hash Search Function):
	Mention search.h clearly.

2002-10-05  Roland McGrath  <roland@redhat.com>

	* elf/dl-fxstat64.c: File removed.
	* elf/dl-xstat64.c: File removed.
	* elf/Makefile (rtld-routines): Remove them.
	* sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
	Instead, use strong_alias instead of versioned_symbol in the
	!SHLIB_COMPAT case.
	* sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
	* sysdeps/unix/sysv/linux/lxstat64.c: Likewise.

	* include/shlib-compat.h
	(SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
	[! NOT_IN_libc] (IS_IN_libc): Define it.
	* cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
	* elf/Makefile (CPPFLAGS-.os): Likewise.

	* sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
	Return the status instead of calling exit.

	* Makeconfig (CFLAGS): Prepend -std=gnu99.
	* Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
	Remove superfluous rm command, whose @ plus make bugs hid
	all these commands from the make output.

	* include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
	* Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
	Use that file's contents instead of literal echo's for the prologue.
	* include/features.h: Include <gnu/stubs.h> unconditionally.
	* include/gnu/stubs.h: New file.

2002-09-30  Roland McGrath  <roland@redhat.com>

	* elf/rtld-Rules: New file.
	* elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
	$(objpfx)rtld-libc.a): New targets.
	(generated): Add them.
	(reloc-link): Remove -o $@ from the variable.
	($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
	(distribute): Add rtld-Rules.
	(CPPFLAGS-.os): Define this instead of CFLAGS-.os.
	* Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
	(common-mostlyclean, common-clean): Clean up rtld-* files.
	* sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
2002-10-11 10:52:20 +00:00
Ulrich Drepper
c29defa319 Don't try calling __pthread_kill_other_threads_np. 2002-10-11 07:59:08 +00:00
Roland McGrath
704bb2fd8e 2002-10-06 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
	Add all necessary register outputs for syscall-clobbered registers.
2002-10-11 07:20:46 +00:00
Ulrich Drepper
d3c79d4ae7 Update.
* sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
	Reported by edwardsg@sgi.com [PR libc/4678].
2002-10-09 09:58:30 +00:00
Ulrich Drepper
6166815d69 Update.
2002-10-09  Ulrich Drepper  <drepper@redhat.com>

	* Versions.def (libc): Add GLIBC_2.3.1.
	(libpthread): Add GLIBC_2.3.1.

	* include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
	and __sigtimedwait.
	* signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
	* sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
	libc_hidden_def.
	* sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
	* sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.

	* include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
	* sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
	and make old name an alias.
	* sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
	and make old name an alias.
	* sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
	__libc_msgsnd.

	* include/sys/uio.h: Declare __libc_readv and __libc_writev.
	* misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
	__libc_writev.
	* sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
	old name an alias.
	* sysdeps/posix/readv.c: Likewise
	* sysdeps/unix/sysv/aix/readv.c: Likewise.
	* sysdeps/unix/sysv/linux/readv.c: Likewise.
	* sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
	old name an alias.
	* sysdeps/posix/writev.c: Likewise
	* sysdeps/unix/sysv/aix/writev.c: Likewise.
	* sysdeps/unix/sysv/linux/writev.c: Likewise.

	* include/sys/wait.h: Declare __waitid.
	* posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
	* sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
	name an alias.
	* sysdeps/posix/waitid.c: Likewise.
	* sysdeps/unix/sysv/aix/waitid.c: Likewise.

	* sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.

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

	* include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
	prototypes.
	(__MAX_ALLOCA_CUTOFF): Define.
	Include allocalim.h.
	* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
	_nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
	host_buffer depending on __libc_use_alloca.
	* resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
	_nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
	net_buffer depending on __libc_use_alloca.
	* resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
	buf depending on __libc_use_alloca.
	* resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
	* stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
	instead of hardcoded constants.
	Pass proper size argument to alloca and compute end for wide char
	version.
	* stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
	instead of hardcoded constants.
	* string/strcoll.c (strcoll): Likewise.
	* string/strxfrm.c (strxfrm): Likewise.
	* sysdeps/posix/readv.c (__readv): Likewise.
	* sysdeps/posix/writev.c (__writev): Likewise.
	* sysdeps/generic/allocalim.h: New file.
2002-10-09 09:42:48 +00:00
Ulrich Drepper
05a5122742 Update.
2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>

	* elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.

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

	* version.h (RELEASE): Change to stable.

See ChangeLog.13 for earlier changes.
2002-10-05 06:52:02 +00:00
Ulrich Drepper
7edd1b564c Update.
2002-10-03  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
	__syscall_exit_group): New prototypes.
2002-10-03 16:37:04 +00:00
Ulrich Drepper
f8b0689f80 Update.
2002-10-03  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/net/route.h: Include bits/wordsize.h.
	(struct rtentry): Make rt_pad4 6 bytes long if __WORDSIZE == 64.
	* sysdeps/unix/sysv/linux/alpha/Dist: Remove net/route.h.
	* sysdeps/unix/sysv/linux/alpha/net/route.h: Remove.
	* sysdeps/unix/sysv/linux/ia64/Dist: Remove net/route.h.
	* sysdeps/unix/sysv/linux/ia64/net/route.h: Remove.
	* sysdeps/unix/sysv/linux/s390/Dist: Remove net/route.h.
	* sysdeps/unix/sysv/linux/s390/net/route.h: Remove.
2002-10-03 08:58:56 +00:00
Ulrich Drepper
4011dc709c Update.
* sysdeps/unix/sysv/linux/x86_64/Dist: Add bits/utmpx.h.
	* sysdeps/unix/sysv/linux/sparc/Dist: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/Dist: Likewise.
2002-10-03 01:03:45 +00:00
Ulrich Drepper
62497f9c8b Update.
2002-10-02  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/s390/s390-32/initfini.c: Avoid unterminated string literals.
	* sysdeps/sh/elf/initfini.c: Likewise.
	* sysdeps/mach/hurd/mips/init-first.c: Likewise.
	* sysdeps/hppa/elf/initfini.c: Likewise.
	* sysdeps/sparc/sparc32/soft-fp/sfp-machine.h: Likewise.
2002-10-03 00:24:35 +00:00
Ulrich Drepper
4c98451b0e Update.
2002-10-02  Steven Munroe  <sjmunroe@us.ibm.com>
	    Jakub Jelinek  <jakub@redhat.com>

	* login/programs/utmpdump.c (print_entry): Copy up->ut_tv fields
	to struct timeval temp_tv before printing to be 32-/64-bit agnostic.
	* sysdeps/powerpc/bits/wordsize.h: Move to...
	* sysdeps/powerpc/powerpc32/bits/wordsize.h: ...here.
	(__WORDSIZE_COMPAT32): Define.
	* sysdeps/powerpc/powerpc64/bits/wordsize.h: Likewise.
	* sysdeps/sparc/sparc32/bits/wordsize.h (__WORDSIZE_COMPAT32):
	Define.
	* sysdeps/sparc/sparc64/bits/wordsize.h (__WORDSIZE_COMPAT32):
	Define.
	* sysdeps/s390/bits/wordsize.h: Move to...
	* sysdeps/s390/s390-32/bits/wordsize.h: ...here.
	* sysdeps/s390/s390-64/bits/wordsize.h: Likewise.
	* sysdeps/x86_64/bits/wordsize.h (__WORDSIZE_COMPAT32): Define.
	* sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: New file.
	* sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: New file.
	* sysdeps/unix/sysv/linux/sparc/bits/utmp.h: New file.
	* sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: New file.
	* sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: New file.
	* sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: New file.
2002-10-02 21:03:48 +00:00
Roland McGrath
b77bb4fb08 * README.template: Minimum Linux kernel for powerpc64 is 2.4.19.
* sysdeps/unix/sysv/linux/powerpc/bits/ipc.h (struct ipc_perm):
	Use __uint32_t and __uint64_t for __seq, __pad1, __unused[12] fields
	so they are consistent between PPC32 and PPC64.
2002-10-02 08:48:09 +00:00
Roland McGrath
72978bbbaf * sysdeps/unix/sysv/linux/powerpc/bits/stat.h [__WORDSIZE != 32]:
(_STAT_VER): Define to _STAT_VER_KERNEL.
	(stru stat, struct stat64): Define to match the PPC64 kernel.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions
	(libc: GLIBC_2.2): Remove __xstat64, __fxstat64, and __lxstat64.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/kernel_stat.h: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/fxstat64.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/lxstat64.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/xstat64.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: Add kernel_stat.h.

2002-10-02  Roland McGrath  <roland@redhat.com>

	* sysdeps/unix/sysv/linux/xstatconv.c [STAT_IS_KERNEL_STAT]:
	Conditionalize the function definitions on this.
	* sysdeps/unix/sysv/linux/xstat.c (__xstat) [STAT_IS_KERNEL_STAT]:
	Don't use xstat_conv, just fail if VERS != _STAT_VER_KERNEL.
	* sysdeps/unix/sysv/linux/fxstat.c (__fxstat) [STAT_IS_KERNEL_STAT]:
	Likewise.
	* sysdeps/unix/sysv/linux/lxstat.c (__lxstat) [STAT_IS_KERNEL_STAT]:
	Likewise.

	* Make-dist (dist): Create .bz2 file.  Add rule to create .bz2 files.
2002-10-02 08:34:07 +00:00
Roland McGrath
c84d1f2ed7 2002-10-02 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/xstatconv.c [STAT_IS_KERNEL_STAT]:
	Conditionalize the function definitions on this.
	* sysdeps/unix/sysv/linux/xstat.c (__xstat) [STAT_IS_KERNEL_STAT]:
	Don't use xstat_conv, just fail if VERS != _STAT_VER_KERNEL.
	* sysdeps/unix/sysv/linux/fxstat.c (__fxstat) [STAT_IS_KERNEL_STAT]:
	Likewise.
	* sysdeps/unix/sysv/linux/lxstat.c (__lxstat) [STAT_IS_KERNEL_STAT]:
	Likewise.
2002-10-02 08:33:46 +00:00
Ulrich Drepper
0674eb08ee Update.
2002-10-01  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ,
	SIGSTKSZ): Changed to match kernel.
	* sysdeps/unix/sysv/linux/sparc/bits/sigstack.h: New file.
2002-10-01 20:13:00 +00:00
Ulrich Drepper
076febbc3d (MINSIGSTKSZ, SIGSTKSZ): Changed to match kernel. 2002-10-01 20:10:32 +00:00
Roland McGrath
c737bdee17 2002-10-01 Carlos O'Donell <carlos@baldric.uwo.ca>
* sysdeps/unix/sysv/linux/hppa/bits/fcntl.h
	[__USE_GNU] (F_SETLEASE, F_GETLEASE, F_NOTIFY): New macros.
	[__USE_GNU] (DN_ACCESS, DN_MODIFY, DN_CREATE, DN_DELETE, DN_RENAME,
	DN_ATTRIB, DN_MULTISHOT): New macros.
2002-10-01 19:42:01 +00:00
Roland McGrath
fe27057d17 * elf/tls-macros.h (TLS_LD, TLS_GD): Use call insn, not callq.
* sysdeps/unix/x86_64/sysdep.S [USE_TLS && HAVE___THREAD] [! PIC]:
	Use direct-%fs form of TLS access for errno.

	* sysdeps/unix/sysv/linux/i386/i686/sysdep.h: File removed, since
	the i386 version has all the same asm now.

	* sysdeps/i386/elf/configure.in: Add @GOTNTPOFF and @NTPOFF uses to
	the TLS support check.
	* sysdeps/i386/elf/configure: Regenerated.

	* sysdeps/unix/sysv/linux/i386/sysdep.h [USE_TLS && HAVE___THREAD]
	(SYSCALL_ERROR_HANDLER): Use direct-%gs form of TLS access for errno.

	* sysdeps/unix/i386/sysdep.S (syscall_error)
	[USE_TLS && HAVE___THREAD]: Use TLS access for errno.
2002-09-30 10:26:59 +00:00
Roland McGrath
7de490c686 2002-09-30 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/i386/sysdep.h [USE_TLS && HAVE___THREAD]
	(SYSCALL_ERROR_HANDLER): Use direct-%gs form of TLS access for errno.
2002-09-30 10:26:28 +00:00
Roland McGrath
3efdff78b3 * sysdeps/unix/sysv/linux/x86_64/sysdep.h
[USE_TLS && HAVE___THREAD] (SYSCALL_ERROR_HANDLER): Use TLS access.
2002-09-30 07:26:12 +00:00
Andreas Jaeger
5d865001d8 Update.
2002-09-30  Andreas Jaeger  <aj@suse.de>

	* iconvdata/tst-e2big.c (test): Use %td in printf for ptrdiff_t.

	* sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
	Store 4 bytes into errno, not 8 bytes.
2002-09-30 07:08:16 +00:00
Ulrich Drepper
8a815198bf (__sigwait): The return value semantics for sigtimedwait is different. Rework the return value handling and don't pass in an siginfo variable. 2002-09-29 22:02:28 +00:00
Roland McGrath
cc590e1d4e 2002-09-29 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/sysdep.S [USE_TLS && HAVE___THREAD]:
	Define errno in .tbss.
	* sysdeps/unix/x86_64/sysdep.S [USE_TLS && HAVE___THREAD]: Use TLS
	access for setting errno.
2002-09-29 21:41:17 +00:00
Ulrich Drepper
330fad2970 Update.
* sysdeps/unix/sysv/linux/kernel-features.h
	(__ASSUME_SETRESUID_SYSCALL): On the sparc, define to 1, not empty.

2002-09-29  Jakub Jelinek  <jakub@redhat.com>
2002-09-29 20:44:22 +00:00
Roland McGrath
72d4c33d4c * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall0): Make asm
volatile.
	(inline_syscall1, inline_syscall2, inline_syscall3, inline_syscall4,
	inline_syscall5, inline_syscall6): Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
	Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (INLINE_SYSCALL):
	Likewise.

2002-09-29  Roland McGrath  <roland@redhat.com>

	* configure.in (libc_cv_ranlib_necessary check): Put the .o file in
	the archive, not the .c file.
	* configure: Regenerated.
2002-09-29 11:32:03 +00:00
Roland McGrath
5bbfc1ea70 * configure: Regenerated after aclocal.m4 change.
* sysdeps/x86_64/sysdep.h [HAVE_ELF] (L): Define with .L##name form.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h (L): Don't define it here.

	* sysdeps/generic/dl-lookupcfg.h [USE_TLS] (DL_LOOKUP_RETURNS_MAP):
	Define it, because _dl_sym presumes it (for any platform).

	* sysdeps/x86_64/dl-tls.h: New file.

	* sysdeps/x86_64/dl-machine.h (elf_machine_rela): Add a cast.

	* sysdeps/x86_64/elf/configure.in: New file.
	* sysdeps/x86_64/elf/configure: New generated file.
2002-09-29 10:38:40 +00:00
Ulrich Drepper
fec0c5bb7f Add __syscall_exit entry point. 2002-09-28 23:02:54 +00:00
Andreas Jaeger
f1a0483069 Fix number of args to syscall. 2002-09-28 13:40:10 +00:00
Roland McGrath
2c536abd23 * sysdeps/unix/sysv/linux/x86_64/sysdep.h
(__NR_pread, __NR_pwrite): Define these to __NR_pread64, __NR_pwrite64
	if not defined.

	* sysdeps/unix/sysv/linux/powerpc/lchown.S
	[SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]: Use this condition
	on chown compatibility symbol; use compat_symbol, not symbol_version.
2002-09-28 04:15:27 +00:00
Roland McGrath
3899afcb76 2002-09-27 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/sysdep.h
	(__NR_pread, __NR_pwrite): Define these to __NR_pread64, __NR_pwrite64
	if not defined.
2002-09-28 04:15:00 +00:00
Ulrich Drepper
6546c95f67 SysV shared memory definitions for Linux/PA. 2002-09-28 04:05:23 +00:00
Andreas Jaeger
44c49908a1 Add syscall_exit. 2002-09-25 11:09:55 +00:00
Ulrich Drepper
b4d8d06a49 Update.
2002-09-24  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/configure.in: Recognize nptl add-on name.
2002-09-25 06:47:44 +00:00