Commit Graph

11646 Commits

Author SHA1 Message Date
Roland McGrath d6e68295b4 2003-10-02 Roland McGrath <roland@redhat.com>
* argp/argp-help.c (__argp_short_program_name): Move inside [! _LIBC].
	* argp/argp-namefrob.h
	[_LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME]
	(__argp_short_program_name): Don't declare fn, define it as a macro.
2003-10-03 00:44:39 +00:00
Ulrich Drepper f39941e412 Update.
2003-08-22  Simon Josefsson  <jas@extundo.com>

	* argp/argp-fmtstream.h [!__attribute__]: Define to nothing.

	* argp/argp-help.c: Don't include malloc.h, some platforms
	complain and it doesn't appear to be used.
	[!_LIBC && HAVE_STRERROR_R && !HAVE_DECL_STRERROR_R]: Declare
	strerror_r.
	[!_LIBC && !HAVE_STRERROR_R && !HAVE_DECL_STRERROR]: Declare
	strerror.
	(hol_entry_long_iterate): Change __attribute to __attribute__.
	(_help, __argp_error, __argp_failure) [!_LIBC && (HAVE_FLOCKFILE
	&& HAVE_FUNLOCKFILE)]: Protect call to flockfile and funlockfile.
	(__argp_basename) [!_LIBC]: New. Taken from LSH, by Niels Mller,
	modifed after comments from Ulrich Drepper.
	(__argp_short_program_name): Ditto.
	(__argp_state_help, __argp_error, __argp_failure): Use it.
	(__argp_failure): Use strerror when necessary.

	* argp/argp-namefrob.h (__flockfile, __funlockfile, __mempcpy)
	(__strchrnul, __strerror_r, __strndup) [!_LIBC]: Remove __-prefix.
	(clearerr_unlocked, feof_unlocked, ferror_unlocked)
	(fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
	(fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
	(putc_unlocked, putchar_unlocked) [!_LIBC && !HAVE_DECL_*]: Map to
	non-unlocked functions.
	[!_LIBC]: Add prototypes for __argp_basename and
	__argp_short_program_name.

	* argp/argp-parse.c (argp_default_parser): Only use
	program_invocation{_short,}_name if declared.
	(parser_init): Use __argp_short_program_name.

	* argp/argp-xinl.c [_LIBC || HAVE_FEATURES_H]: Add CPP check for
	'#include features.h'.

	* argp/argp.h [!__attribute__]: Define to nothing.
2003-10-02 22:55:10 +00:00
Ulrich Drepper 134abcb5b9 Update.
2003-09-26  Paolo Bonzini  <bonzini@gnu.org>

	* posix/regcomp.c (parse_sub_exp): Pass RE_CARET_ANCHORS_HERE
	for the first token in a subexpression as well.

2003-10-02  Jakub Jelinek  <jakub@redhat.com>

	* posix/regcomp.c (peek_token): Add 2003-09-20 changes for anchor
	handling again.
	(parse_reg_exp): Likewise.
	* posix/regex.h (RE_CARET_ANCHORS_HERE): Define.

	* posix/bug-regex11.c (tests): Add new tests.
	* posix/bug-regex12.c (tests): Add new test.
2003-10-02 22:41:11 +00:00
Ulrich Drepper b77ca0e827 Update.
2003-10-01  Thorsten Kukuk  <kukuk@suse.de>

	* elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
	variables only used if TLS_DTV_AT_TP is defined into the #if branch.
2003-10-02 18:58:31 +00:00
Ulrich Drepper 1b6f6a92e3 Update.
2003-10-02  Jeroen Dekkers  <jeroen@dekkers.cx>

	* sysdeps/mach/hurd/malloc-machine.h: Copy the tsd code from
        the old thread-m.h header too.
2003-10-02 18:56:20 +00:00
Ulrich Drepper 4d961dc7aa Update.
2003-10-02  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/i386/sysdep-cancel.h: Fix saving and
	restoring of the old cancellation type.

	* sysdeps/pthread/malloc-machine.h: New file
2003-10-02 17:32:59 +00:00
Ulrich Drepper bf8288adc8 Update.
* sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ): Go
	back to 131027 since this is what the kernel enforces.
2003-10-02 15:37:21 +00:00
Ulrich Drepper 0d29743729 Update.
2003-10-02  Ulrich Drepper  <drepper@redhat.com>

	* inet/getnameinfo.c: Move domain out of nrl_domainname scope and
	define it with libc_freeres_ptr.
2003-10-02 09:36:32 +00:00
Ulrich Drepper 6a31ae84dc Update.
* SUPPORTED (SUPPORTED-LOCALES): Add uz_UZ@cyrillic.UTF-8.
2003-10-01 07:21:38 +00:00
Ulrich Drepper 01b6434872 Update.
2003-10-01  Ulrich Drepper  <drepper@redhat.com>

	* locales/uz_UZ: New version by Mashrab Kuvatov.
	* locales/uz_UZ@cyrillic: New file.  Patch by Mashrab Kuvatov.
2003-10-01 07:19:56 +00:00
Ulrich Drepper f59ed17eef Mostly replaced. 2003-10-01 07:18:18 +00:00
Roland McGrath f28c14d69a * elf/rtld.c (dl_main): Add cast in last change. 2003-10-01 07:15:10 +00:00
Roland McGrath d057b5e76c * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Remove
"#if 0" surrounding most of contents.
	(SYSCALL_ERROR_LABEL): Define.
	(__SYSCALL_CLOBBERS): Add $10.
	(internal_syscall7): Remove.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
2003-10-01 07:00:03 +00:00
Roland McGrath 4106a40380 formatting fix
2003-09-27  Wolfram Gloger  <wg@malloc.de>

	* sysdeps/pthread/malloc-machine.h: New file.
2003-10-01 06:51:59 +00:00
Ulrich Drepper 1d5b20ad46 Update
2003-09-30  Jakub Jelinek  <jakub@redhat.com>
	* sysdeps/pthread/malloc-machine.h: Remove misleading comment.

2003-09-27  Wolfram Gloger  <wg@malloc.de>
2003-10-01 06:27:22 +00:00
Ulrich Drepper c1384d1077 Update. 2003-10-01 06:25:58 +00:00
Ulrich Drepper f556dbfa41 Update.
2003-09-30  Ulrich Drepper  <drepper@redhat.com>

	* elf/rtld.c (dl_main): Also set l_map_start.

2003-09-30  Daniel Jacobowitz  <drow@mvista.com>

	* elf/rtld.c (dl_main): Set l_libname and l_name for the sysinfo DSO
	to work around kernel problem.
2003-09-30 20:37:46 +00:00
Ulrich Drepper 94ae6d75ad Update.
* sysdeps/pthread/malloc-machine.h: New file.

2003-09-27  Wolfram Gloger  <wg@malloc.de>
2003-09-30 02:15:31 +00:00
Ulrich Drepper 3c6904fb49 Update.
2003-09-27  Wolfram Gloger  <wg@malloc.de>

	* malloc/malloc.c: Include <malloc-machine.h> earlier instead of
	"thread-m.h", so that default parameters can be overridden in a
	system-specific malloc-machine.h.  Remove extra ; from extern "C"
	closing brace.
	* sysdeps/generic/malloc-machine.h: New file.
	* sysdeps/mach/hurd/malloc-machine.h: New file.
	* malloc/thread-m.h: Removed.
	* malloc/Makefile: Remove CFLAGS-malloc.c parameter addition, it
	is in sysdeps/generic/malloc-machine.h now.

	* elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
	variables only used if TLS_TCB_AT_TP is defined into the #if
	branch.
2003-09-30 02:10:33 +00:00
Ulrich Drepper 28f532c89a Update.
2003-09-29  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __extension__ as
	well to cover using long long in C90.
2003-09-29 22:23:14 +00:00
Ulrich Drepper a7c5324235 Update.
2003-09-28  Alfred M. Szmidt  <ams@kemisten.nu>

	* sysdeps/mach/hurd/bits/libc-lock.h (__libc_cleanup_pop):
	Redefine and use __libc_cleanup_region_end instead.

2003-09-29  Thorsten Kukuk  <kukuk@suse.de>

	* sysdeps/unix/sysv/linux/sys/sysmacros.h: Use __inline and
	fix prototypes for picky C++ compilers.
2003-09-29 21:57:16 +00:00
Ulrich Drepper b1c74afa76 Update.
2003-09-27  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/ustat.c (ustat): Set errno to EINVAL if
	the device ID is invalid and return -1.
	* sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
2003-09-27 17:02:41 +00:00
Ulrich Drepper dc2b164943 Update.
2003-09-26  Andreas Schwab  <schwab@suse.de>

	* sysdeps/unix/sysv/linux/ia64/getcontext.S: Pass fourth argument to
	rt_sigprocmask system call.
2003-09-26 08:45:18 +00:00
Ulrich Drepper 2047343ac5 Pass fourth argument to rt_sigprocmask system call. 2003-09-26 08:41:51 +00:00
Roland McGrath 8afd37cb2b * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
Don't check for zero __libc_stack_end, it should be initialized.
	[_STACK_GROWS_DOWN] [PROT_GROWSDOWN]: Try using PROT_GROWSDOWN flag
	and fall back if it fails with EINVAL.
	[_STACK_GROWS_UP] [PROT_GROWSUP]: Likewise for PROT_GROWSUP.
2003-09-25 23:04:29 +00:00
Roland McGrath e95dc10c40 2003-09-25 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
	Don't check for zero __libc_stack_end, it should be initialized.
	[_STACK_GROWS_DOWN] [PROT_GROWSDOWN]: Try using PROT_GROWSDOWN flag
	and fall back if it fails with EINVAL.
	[_STACK_GROWS_UP] [PROT_GROWSUP]: Likewise for PROT_GROWSUP.
2003-09-25 23:04:12 +00:00
Ulrich Drepper 55715bfca6 Update.
2003-09-25  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: Include
	sysdeps/i386/dl-procinfo.c instead of
	sysdeps/unix/sysv/linux/i386/dl-procinfo.c.
	* sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Avoid using
	#include_next.
2003-09-25 22:01:15 +00:00
Ulrich Drepper a0788ec48c Update.
* posix/regcomp.c (peek_token): Remove recent changes for anchor
	handling again.
	(parse_reg_exp): Likewise.
	* posix/regex.h: Remove RE_CARET_ANCHORS_HERE.

	(peek_token): Accept \s and \S as OP_SPACE and OP_NOTSPACE.
	(parse_expression): Replace build_word_op with
2003-09-25 20:48:59 +00:00
Ulrich Drepper 63461e7544 Update.
* csu/Makefile ($(objpfx)version-info.h): Fix sed script to handle
	banners.
2003-09-25 20:31:23 +00:00
Ulrich Drepper 901956a52a Update.
* nis/nis_table.c (nis_list): Always strdup string used with
	ibreq->ibr_name.  Add several NULL pointer checks.

	* nis/nss_nisplus/nisplus-alias.c: Add check for NULL return value
	of nis_list.
	* nis/nss_nisplus/nisplus-ethers.c: Likewise.
	* nis/nss_nisplus/nisplus-grp.c: Likewise.
	* nis/nss_nisplus/nisplus-hosts.c: Likewise.
	* nis/nss_nisplus/nisplus-netgrp.c: Likewise.
	* nis/nss_nisplus/nisplus-network.c: Likewise.
	* nis/nss_nisplus/nisplus-proto.c: Likewise.
	* nis/nss_nisplus/nisplus-publickey.c: Likewise.
	* nis/nss_nisplus/nisplus-pwd.c: Likewise.
	* nis/nss_nisplus/nisplus-rpc.c: Likewise.
	* nis/nss_nisplus/nisplus-service.c: Likewise.
	* nis/nss_nisplus/nisplus-spwd.c: Likewise.
2003-09-25 19:44:55 +00:00
Ulrich Drepper ed91314ee8 Update.
* sysdeps/unix/sysv/linux/cris/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
2003-09-25 16:53:29 +00:00
Ulrich Drepper db2f688a94 Update.
2003-09-25  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/alpha/bits/mman.h: Define PROT_GROWSDOWN
	and PROT_GROWSUP.
	* sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
2003-09-25 16:40:57 +00:00
Ulrich Drepper 26721ed62e Update.
2003-09-25  Jakub Jelinek  <jakub@redhat.com>

	* misc/syslog.c: Include locale.h.
	(vsyslog): Add date always in C locale %h %e %T format.
2003-09-25 15:34:03 +00:00
Ulrich Drepper 32868f8801 Update.
2003-09-24  Paul Eggert  <eggert@twinsun.com>

	* argp/argp-fmtstream.c (__argp_fmtstream_ensure): Check for
	size_t overflow when reallocating storage.
	* argp/argp-help.c (make_hol, hol_append): Likewise.
	(SIZE_MAX): New macro.
2003-09-25 05:38:48 +00:00
Ulrich Drepper c706f2a34d (__argp_fmtstream_ensure): Check for size_t overflow when reallocating storage. 2003-09-25 05:34:28 +00:00
Roland McGrath fca9d8e489 * sysdeps/mach/hurd/bits/libc-lock.h
(__libc_cleanup_push, __libc_cleanup_pop): New macros.

2003-08-01  Alfred M. Szmidt  <ams@kemisten.nu>

	* sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
	* sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
	#include_next dl-procinfo.h to get them.
	(_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
	(_DL_PLATFORMS_COUNT): Likewise.
	(_DL_FIRST_PLATFORM): Likewise.
	(_DL_HWCAP_PLATFORM): Likewise.
	(HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
	HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
	HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
	HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
	HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
	HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
	HWCAP_IMPORTANT): Likewise.
	(_DL_PROCINFO_H_): Likewise.
	(_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
	(_dl_string_platform): Likewise.
	* sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
	* sysdeps/i386/dl-procinfo.c: ... here, new file.
2003-09-25 03:55:10 +00:00
Roland McGrath 0070086564 2003-09-24 Roland McGrath <roland@redhat.com>
* allocatestack.c (__make_stacks_executable): Don't ignore return
	value from _dl_make_stack_executable.
2003-09-25 03:50:45 +00:00
Ulrich Drepper 69c9fa045b Update.
* sysdeps/unix/sysv/linux/dl-execstack.c
	(_dl_make_stack_executable): Remember that we changed the permission.
2003-09-25 03:31:59 +00:00
Ulrich Drepper 279f1143af Update.
* allocatestack.c (change_stack_perm): Split out from
	__make_stacks_executable.
	(allocate_stack): If the required permission changed between the time
	we started preparing the stack and queueing it, change the permission.
	(__make_stacks_executable): Call change_stack_perm.
2003-09-25 03:16:53 +00:00
Ulrich Drepper 9771695416 Update.
2003-09-24  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/ia64/dl-machine.h (RTLD_START): Remove setting of
	__libc_stack_end.  Patch by David Mosberger.

2003-09-24  Jakub Jelinek  <jakub@redhat.com>

	* elf/Versions (ld): Export __libc_stack_end@GLIBC_2.1 instead of
	__libc_stack_end@GLIBC_PRIVATE.

	* sysdeps/generic/dl-sysdep.c (DL_STACK_END): Define if not defined.
	(_dl_sysdep_start): Set __libc_stack_end here.
	* sysdeps/alpha/dl-machine.h (RTLD_START): Remove setting of
	__libc_stack_end.
	* sysdeps/arm/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/cris/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/i386/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/s390/s390-32/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/s390/s390-64/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/sh/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/ia64/dl-machine.h (DL_STACK_END): Define.
	* sysdeps/sparc/sparc32/dl-machine.h (DL_STACK_END): Define.
	(RTLD_START): Remove setting of __libc_stack_end.
	* sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Define.
	(RTLD_START): Remove setting of __libc_stack_end.

2003-09-24  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/sys/sysmacros.h: Add gnu_dev_ prefix to
	function definitions.  Adjust macro expansions accordingly.
	* sysdeps/unix/sysv/linux/Versions: Add gnu_dev_ prefix to major,
	minor, makedev name.
	* sysdeps/unix/sysv/linux/makedev.c: Likewise.

2003-09-24  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
	Add __THROW.
2003-09-24 21:13:55 +00:00
Ulrich Drepper 0f124303c8 Update.
2003-09-24  Jakub Jelinek  <jakub@redhat.com>

	* nscd/Makefile (others): Add nscd before including ../Rules.
2003-09-24 17:38:32 +00:00
Ulrich Drepper c9c60884af Update.
2003-09-24  Ulrich Drepper  <drepper@redhat.com>
	* configure.in: Check for -fpie and -pie compiler options.
	* config.make.in (have-fpie): Define.
	* sysdeps/unix/sysv/linux/alpha/sys/sysmacros.h: Removed.
	* sysdeps/unix/sysv/linux/sparc/sys/sysmacros.h: Removed.
2003-09-24 08:33:01 +00:00
Ulrich Drepper df244a7b4d Update.
* nscd/Makefile: Add rules to build nscd as a PIE.

2003-09-23  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/sys/alpha/sysmacros.h: Removed.
	* sysdeps/unix/sysv/linux/sys/sparc/sysmacros.h: Removed.
	* sysdeps/unix/sysv/linux/ustat.c (ustat): Adjust for 32-bit
	kernel dev_t.
	* sysdeps/unix/sysv/linux/alpha/ustat.c: Removed.
	* sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
	* sysdeps/unix/sysv/linux/alpha/xmknod.c: Removed.
	Code by Alexander Viro <aviro@redhat.com>.
2003-09-24 06:12:33 +00:00
Ulrich Drepper 9a276f8e1e Update.
* sysdeps/unix/sysv/linux/sys/sysmacros.h: Adjust for larger
	kernel dev_t size.
	* sysdeps/unix/sysv/linux/makedev.c: New file.
	* sysdeps/unix/sysv/linux/Dist: Add makedev.c.
	* sysdeps/unix/sysv/linux/Makefile [subdir=misc]
	(sysdep_routines): Add makedev.
	* sysdeps/unix/sysv/linux/Versions [libc] (GLIBC_2.3.3): Add
	major, minor, makedev.

2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2003-09-24 05:05:38 +00:00
Ulrich Drepper 54ee14b388 Update.
2003-09-23  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions [libc]
	(GLIBC_2.3.3): Add setcontext, getcontext, swapcontext, and
	makecontext.
	* sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct change
	for include Altivec support for PPC32.  It was not compatible.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: Adjust
	offsets for ucontext_t change.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Adjust
	for ucontext_t change.  Add compatibility code.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
	Patch by Paul Mackerras <paulus@samba.org>.

2003-02-25  Randolph Chung  <tausq@debian.org>

	* sysdeps/hppa/Makefile: Include compat code in build.
	* sysdeps/hppa/libgcc-compat.c: New file.
	* sysdeps/hppa/Dist: Add libgcc-compat.c.
	* sysdeps/hppa/Versions [GLIBC_2.2]: Add __clz_tab.
2003-09-24 03:22:56 +00:00
Ulrich Drepper 16a76cd23c Test for changing stack exec permission. 2003-09-24 03:07:10 +00:00
Roland McGrath c70ba48888 * elf/rtld.c (dl_main): In rtld_is_main case, reinitialize
GL(dl_stack_flags) according to rtld's own PT_GNU_STACK.
	Move GL(dl_make_stack_executable_hook) initialization up.
	* elf/tst-execstack-prog.c: New file.
	* elf/Makefile (tests-execstack-yes): Add it.
	(LDFLAGS-tst-execstack-prog): New variable.
2003-09-24 01:56:08 +00:00
Roland McGrath 217ed70e13 * sysdeps/x86_64/dl-machine.h (RTLD_START): Set __libc_stack_end
before calling _dl_start, using %rip relative access.
	Use %rip relative access to _dl_skip_args, _rtld_local._dl_loaded
	and _dl_fini.
2003-09-23 21:31:54 +00:00
Roland McGrath 2abf9ff113 * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
calling _dl_start, using GOTOFF access.

	* configure.in (libc_cv_z_execstack): New check.
	* configure: Regenerated.
	* config.make.in (have-z-execstack): New variable set by it.
	* elf/tst-execstack.c: New file.
	* elf/tst-execstack-mod.c: New file.
	* elf/tst-execstack-needed.c: New file.
	* elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
	variables.
	(tests, modules-names): Conditionally include them.
	(distribute): Add tst-execstack-mod.c here.
	($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
	(LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
	($(objpfx)tst-execstack-needed): New target.
	(LDFLAGS-tst-execstack-needed): New variable.

	* sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
	and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
	* elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
	(dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
	Initialize _dl_make_stack_executable_hook.
	* elf/dl-support.c: Define those new variables.
	(_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
	(_dl_phdr): Fix type.
	* elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
	enable execute permission for the stack if necessary.
	* sysdeps/generic/dl-execstack.c: New file.
	* elf/Makefile (dl-routines): Add it.
	* elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
	* sysdeps/unix/sysv/linux/dl-execstack.c: New file.
2003-09-23 12:07:26 +00:00
Roland McGrath ecdeaac05f 2003-09-23 Roland McGrath <roland@redhat.com>
* sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
	and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
	* elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
	(dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
	Initialize _dl_make_stack_executable_hook.
	* elf/dl-support.c: Define those new variables.
	(_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
	(_dl_phdr): Fix type.
	* elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
	enable execute permission for the stack if necessary.
	* sysdeps/generic/dl-execstack.c: New file.
	* elf/Makefile (dl-routines): Add it.
	* elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
	* sysdeps/unix/sysv/linux/dl-execstack.c: New file.
2003-09-23 12:06:48 +00:00