* elf/elf.h: Add dynamic tag definitions for prelinking.
* elf/rtld.c (process_envvars): Avoid using array of string pointers.
Rewrite code to remove environment varables for SUID binaries.
Small optimization in LD_PROFILE handling.
* sysdeps/generic/unsecvars.h: Adjust format for process_envvars
changes.
* sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
* sysdeps/generic/dl-sysdep.c: Don't initialize _dl_cpuclock_offset.
2001-10-10 Ulrich Drepper <drepper@redhat.com>
* elf/elf.h: Add more ELFOSABI_* constants.
(sparc64_fixup_plt): Moved from elf_machine_fixup_plt. Optimize
2001-07-06 Paul Eggert <eggert@twinsun.com>
* manual/argp.texi: Remove ignored LGPL copyright notice; it's
not appropriate for documentation anyway.
* manual/libc-texinfo.sh: "Library General Public License" ->
"Lesser General Public License".
2001-07-06 Andreas Jaeger <aj@suse.de>
* All files under GPL/LGPL version 2: Place under LGPL version
2.1.
2001-04-10 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* elf/elf.h (AT_DCACHEBSIZE, AT_ICACHEBSIZE, AT_UCACHEBSIZE,
AT_IGNOREPPC): New defines.
* sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Print them.
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_STD_AUXV):
Define for newer powerpc kernels.
* sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c: Use the standard
DL_FIND_ARG_COMPONENTS if __ASSUME_STD_AUXV is defined.
2001-04-08 Hans-Peter Nilsson <hp@axis.com>
* sysdeps/unix/sysv/linux/cris/Dist: New file.
* sysdeps/unix/sysv/linux/cris/Makefile: New file.
* sysdeps/unix/sysv/linux/cris/_G_config.h: New file.
* sysdeps/unix/sysv/linux/cris/bits/fcntl.h: New file.
* sysdeps/unix/sysv/linux/cris/bits/mman.h: New file.
* sysdeps/unix/sysv/linux/cris/bits/resource.h: New file.
* sysdeps/unix/sysv/linux/cris/brk.c: New file.
* sysdeps/unix/sysv/linux/cris/chown.c: New file.
* sysdeps/unix/sysv/linux/cris/clone.S: New file.
* sysdeps/unix/sysv/linux/cris/fchown.c: New file.
* sysdeps/unix/sysv/linux/cris/fcntl.c: New file.
* sysdeps/unix/sysv/linux/cris/fxstat.c: New file.
* sysdeps/unix/sysv/linux/cris/getegid.c: New file.
* sysdeps/unix/sysv/linux/cris/geteuid.c: New file.
* sysdeps/unix/sysv/linux/cris/getgid.c: New file.
* sysdeps/unix/sysv/linux/cris/getgroups.c: New file.
* sysdeps/unix/sysv/linux/cris/getresgid.c: New file.
* sysdeps/unix/sysv/linux/cris/getresuid.c: New file.
* sysdeps/unix/sysv/linux/cris/getrlimit.c: New file.
* sysdeps/unix/sysv/linux/cris/getrlimit64.c: New file.
* sysdeps/unix/sysv/linux/cris/getuid.c: New file.
* sysdeps/unix/sysv/linux/cris/lchown.c: New file.
* sysdeps/unix/sysv/linux/cris/lockf64.c: New file.
* sysdeps/unix/sysv/linux/cris/lxstat.c: New file.
* sysdeps/unix/sysv/linux/cris/mmap.S: New file.
* sysdeps/unix/sysv/linux/cris/mmap64.S: New file.
* sysdeps/unix/sysv/linux/cris/msgctl.c: New file.
* sysdeps/unix/sysv/linux/cris/profil-counter.h: New file.
* sysdeps/unix/sysv/linux/cris/register-dump.h: New file.
* sysdeps/unix/sysv/linux/cris/semctl.c: New file.
* sysdeps/unix/sysv/linux/cris/setegid.c: New file.
* sysdeps/unix/sysv/linux/cris/seteuid.c: New file.
* sysdeps/unix/sysv/linux/cris/setfsgid.c: New file.
* sysdeps/unix/sysv/linux/cris/setfsuid.c: New file.
* sysdeps/unix/sysv/linux/cris/setgid.c: New file.
* sysdeps/unix/sysv/linux/cris/setgroups.c: New file.
* sysdeps/unix/sysv/linux/cris/setregid.c: New file.
* sysdeps/unix/sysv/linux/cris/setresgid.c: New file.
* sysdeps/unix/sysv/linux/cris/setresuid.c: New file.
* sysdeps/unix/sysv/linux/cris/setreuid.c: New file.
* sysdeps/unix/sysv/linux/cris/setrlimit.c: New file.
* sysdeps/unix/sysv/linux/cris/setuid.c: New file.
* sysdeps/unix/sysv/linux/cris/shmctl.c: New file.
* sysdeps/unix/sysv/linux/cris/socket.S: New file.
* sysdeps/unix/sysv/linux/cris/sys/ucontext.h: New file.
* sysdeps/unix/sysv/linux/cris/syscall.S: New file.
* sysdeps/unix/sysv/linux/cris/sysdep.S: New file.
* sysdeps/unix/sysv/linux/cris/sysdep.h: New file.
* sysdeps/unix/sysv/linux/cris/vfork.S: New file.
* sysdeps/unix/sysv/linux/cris/xstat.c: New file.
2001-04-08 Hans-Peter Nilsson <hp@axis.com>
* sysdeps/cris/Dist: New file.
* sysdeps/cris/Implies: New file.
* sysdeps/cris/Makefile: New file.
* sysdeps/cris/__longjmp.S: New file.
* sysdeps/cris/_mcount.S: New file.
* sysdeps/cris/bits/endian.h: New file.
* sysdeps/cris/bits/setjmp.h: New file.
* sysdeps/cris/bits/string.h: New file.
* sysdeps/cris/dl-machine.h: New file.
* sysdeps/cris/elf/start.S: New file.
* sysdeps/cris/machine-gmon.h: New file.
* sysdeps/cris/memcopy.h: New file.
* sysdeps/cris/memusage.h: New file.
* sysdeps/cris/setjmp.S: New file.
* sysdeps/cris/sysdep.h: New file.
* sysdeps/cris/wordcopy.c: New file.
2001-04-08 Hans-Peter Nilsson <hp@axis.com>
* elf/elf.h: Add new relocations for CRIS.
2001-04-08 Hans-Peter Nilsson <hp@axis.com>
* shlib-versions: Add cases for Linux on CRIS.
2001-04-08 Hans-Peter Nilsson <hp@axis.com>
* configure.in (ASM_LINE_SEP tests): Handle CRIS assembly, with
';' for comments and '@' for line separator.
2001-04-08 Hans-Peter Nilsson <hp@axis.com>
* sysdeps/unix/sysv/linux/hppa/sysdep.h (INLINE_SYSCALL): Fix
typo; s/==/=/ for assignment.
2001-04-08 Hans-Peter Nilsson <hp@axis.com>
* malloc/Makefile: Correct comment; mtrace is Perl, not AWK.
2001-04-08 Hans-Peter Nilsson <hp@axis.com>
* iconv/gconv_simple.c (internal_ucs4_loop_unaligned): Check for
empty input before checking full output.
2001-04-08 Hans-Peter Nilsson <hp@axis.com>
* iconv/gconv.c (__gconv): Don't derefer parameter cd before
checking if == -1L.
2001-04-08 Ulrich Drepper <drepper@redhat.com>
* inet/rexec.c (rexec_af): Avoid calling perror with errno being set.
2001-04-05 David S. Miller <davem@redhat.com>
* elf/elf.h (HWCAP_SPARC_ULTRA3): Define it.
* sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Add it to
capability flags table and HWCAP_IMPORTANT, increase
_DL_HWCAP_COUNT to 6.
* sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
2001-03-13 Martin Schwidefsky <schwidefsky@de.ibm.com>
* shlib-versions: Add rule for Linux on 64 bit S/390.
* sysdeps/s390/s390-64/pt-machine.h: New file.
* sysdeps/unix/sysv/linux/s390/s390-64/pt-initfini.c: New file.
2001-03-13 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/pt-machine.h: Move to...
* sysdeps/s390/s390-32/pt-machine.h: ...here.
Add defines for FLOATING_STACK and ARCH_STACK_MAX_SIZE.
2001-03-09 Andreas Jaeger <aj@suse.de>
* sysdeps/s390/dl-machine.h (elf_machine_matches_host): Handle
both new and old EM_S390 values.
(EM_S390_OLD): New constant.
* elf/elf.h (EM_S390): Use official value.
2001-02-27 Philip Blundell <pb@futuretv.com>
* elf/elf.h: Add new ARM definitions from latest (B-01)
specification. Correct naming of EF_ARM_ALIGN8 et al.
2001-03-04 Ulrich Drepper <drepper@redhat.com>
* stdio-common/tst-printf.sh: Remove bashisms.
Patch by Matthew Clarke <Matthew_Clarke@mindlink.bc.ca>.
* shlib-versions: Add entry for libanl.
2001-02-01 Ulrich Drepper <drepper@redhat.com>
* Makerules (build-shlib): Add $(extra-B-$(@F:lib%.so=%).so).
* configure.in: Test for -z initfirst linker option.
* config.make.in: Add have-z-initfirst.
* elf/dl-init.c (_dl_init): Split out actual initialization code in
new function call_init. If _dl_initfirst is non-NULL initialize first.
* elf/dl-load.c (_dl_map_from_fd): If DF_1_INITFIRST flag is set
remember object in _dl_initfirst.
* elf/soinit.c: Remove special support for calling
__pthread_initialize_minimal.
* conform/conformtest.pl: Add missing $prepend in type test.
* elf/elf.h (SHT_CHECKSUM): New definition.
* posix/tst-fnmatch.input: Add tests for [. .] in locales.
2000-10-14 Ulrich Drepper <drepper@redhat.com>
* math/libm-test.inc (frexp_test): Add L suffix also to parameters.
(hypot_test): Likewise.
* sysdeps/generic/printf_fphex.c: Compute width of decimal point
string correctly. Handle padding correctly.
* sysdeps/ia64/fpu/printf_fphex.c: Use sizeof in _itowa parameters
correctly.
* sysdeps/ieee754/ldbl-128/printf_fphex.c: Likewise.
* sysdeps/ieee754/ldbl-96/printf_fphex.c: Likewise.
2000-10-12 Alan Modra <alan@linuxcare.com.au>
* FAQ.in: Add --start-group and --end-group.
2000-10-12 Alan Modra <alan@linuxcare.com.au>
* malloc/memusage.c: Conditionalize stack usage calculation on
stack direction.
2000-10-12 Alan Modra <alan@linuxcare.com.au>
* config.h.in: Add ASM_LINE_SEP.
* configure.in: Add test for comment and line separators.
* include/libc-symbols.h: Define and use ASM_LINE_SEP, and add tabs to
placate some hppa assemblers.
* sysdeps/hppa/sysdep.h: Likewise.
* sysdeps/gnu/siglist.c: Insert \n and \t into inline asm.
* sysdeps/unix/sysv/linux/errlist.c: Likewise.
2000-10-12 David Huggins-Daines <dhd@linuxcare.com>
* sysdeps/unix/sysv/linux/Makefile: Include <bits/initspin> in
$(sysdep_headers).
* sysdeps/unix/sysv/linux/bits/initspin.h: Dummy version for
non-threaded platforms.
2000-10-12 David Huggins-Daines <dhd@linuxcare.com>
* configure.in: Add definitions for hppa.
* elf/elf.h: Add PLABEL32 relocation for hppa ELF32, comments
for IPLT and EPLT relocations.
* shlib-versions: Version symbol definitions for hppa-linux.
* sysdeps/unix/sysv/linux/configure.in: Define $arch_minimum_kernel
for hppa.
2000-10-12 David Huggins-Daines <dhd@linuxcare.com>
* sysdeps/hppa/Makefile: New file.
* sysdeps/hppa/Versions: New file.
* sysdeps/hppa/setjmp.S: New file.
* sysdeps/hppa/__longjmp.S: New file.
* sysdeps/hppa/bits/setjmp.h: New file.
* sysdeps/hppa/frame.h: New file.
* sysdeps/hppa/add_n.s: Don't use %r19 (linkage table pointer).
* sysdeps/hppa/sub_n.s: Likewise.
* sysdeps/hppa/lshift.s: Likewise.
* sysdeps/hppa/rshift.s: Likewise.
* sysdeps/hppa/udiv_qrnnd.s: Likewise.
* sysdeps/hppa/hppa1.1/addmul_1.s: Likewise.
* sysdeps/hppa/hppa1.1/submul_1.s: Likewise.
* sysdeps/hppa/hppa1.1/mul_1.s: Likewise.
* sysdeps/hppa/hppa1.1/udiv_qrnnd.s: Likewise.
* sysdeps/hppa/dl-machine.h: New file.
* sysdeps/hppa/dl-fptr.c: New file (note that this is almost
identical to the IA-64 one).
* sysdeps/hppa/dl-lookupcfg.h: Likewise.
* sysdeps/hppa/dl-symaddr.c: Likewise.
* sysdeps/hppa/elf/initfini.c: New file.
* sysdeps/hppa/elf/start.S: New file.
* sysdeps/hppa/fpu/bits/fenv.h: New file.
* sysdeps/hppa/fpu/fclrexcpt.c: New file.
* sysdeps/hppa/fpu/fedisblxcpt.c: New file.
* sysdeps/hppa/fpu/feenablxcpt.c: New file.
* sysdeps/hppa/fpu/fegetenv.c: New file.
* sysdeps/hppa/fpu/fegetexcept.c: New file.
* sysdeps/hppa/fpu/fegetround.c: New file.
* sysdeps/hppa/fpu/feholdexcpt.c: New file.
* sysdeps/hppa/fpu/fesetenv.c: New file.
* sysdeps/hppa/fpu/fesetround.c: New file.
* sysdeps/hppa/fpu/feupdateenv.c: New file.
* sysdeps/hppa/fpu/fegetexcptflg.c: New file.
* sysdeps/hppa/fpu/fraiseexcpt.c: New file.
* sysdeps/hppa/fpu/fsetexcptflg.c: New file.
* sysdeps/hppa/fpu/ftestexcept.c: New file.
* sysdeps/unix/sysv/linux/hppa/Makefile: New file.
* sysdeps/unix/sysv/linux/hppa/Versions: New file.
* sysdeps/unix/sysv/linux/hppa/syscalls.list: New file.
* sysdeps/unix/sysv/linux/hppa/sysdep.c: New file.
* sysdeps/unix/sysv/linux/hppa/sysdep.h: New file.
* sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: New file.
* sysdeps/unix/sysv/linux/hppa/bits/ioctls.h: New file.
* sysdeps/unix/sysv/linux/hppa/bits/mman.h: New file.
* sysdeps/unix/sysv/linux/hppa/bits/sigaction.h: New file.
* sysdeps/unix/sysv/linux/hppa/bits/signum.h: New file.
* sysdeps/unix/sysv/linux/hppa/brk.c: New file.
* sysdeps/unix/sysv/linux/hppa/clone.S: New file.
* sysdeps/unix/sysv/linux/hppa/socket.S: New file.
* sysdeps/unix/sysv/linux/hppa/syscall.S: New file.
* sysdeps/unix/sysv/linux/hppa/setrlimit.c: New file.
* sysdeps/unix/sysv/linux/hppa/getrlimit.c: New file.
* sysdeps/unix/sysv/linux/hppa/getrlimit64.c: New file.
* sysdeps/unix/sysv/linux/hppa/kernel_sigaction.h: New file.
* sysdeps/unix/sysv/linux/hppa/kernel_stat.h: New file.
* sysdeps/unix/sysv/linux/hppa/mmap.c: New file.
* sysdeps/unix/sysv/linux/hppa/profil-counter.h: New file.
* sysdeps/unix/sysv/linux/hppa/procfs.h: New file.
* sysdeps/unix/sysv/linux/hppa/ucontext.h: New file.
* sysdeps/unix/sysv/linux/hppa/umount.c: New file.
2000-10-12 Alan Modra <alan@linuxcare.com.au>
* sysdeps/hppa/hppa1.1/Implies: New file.
* sysdeps/hppa/memusage.h: New file.
* elf/elf.h: Add various DF_1_*, DTF_1_*, and DF_P1_* entries.
* elf/dl-close.c (_dl_close): Don't close an object if it is marked
with nodelete.
* elf/dl-open.c (dl_open_worker): Pass RTLD_NOLOAD as new parameter
to _dl_map_object. Return immediately if no object loaded.
Set DF_1_NODELETE bit in l_flags_1 if RTLD_NODELETE was passed.
* elf/dynamic-link.h (elf_get_dynamic_info): Copy DT_FLAGS_1 entry
if it exists into l_flags_1 word.
* elf/dl-load.c (_dl_map_object_from_fd): Take no parameter and use
it to determine whether loading is wanted or not.
(_dl_map_object): Likewise.
Call _dl_map_object_from_fd with new parameter.
* sysdeps/generic/ldsodefs.h: Update prototype.
* elf/dl-deps.c: Add new parameter to _dl_map_object calls.
* elf/rtld.c: Likewise.
* elf/Makefile (tests): Add noload. Add rules to generate noload.
* elf/noload.c: New file.
* include/link.h (struct link_map): Add l_feature_1 and l_flags_1.
* sysdeps/generic/bits/dlfcn.h: Define RTLD_NOLOAD and RTLD_NODELETE.
* sysdeps/mips/bits/dlfcn.h: Likewise.
2000-05-05 Ulrich Drepper <drepper@redhat.com>
* elf/dl-load.c (_dl_map_object_from_fd): Little of computation of
parameter to mprotect and for variable assignments.
2000-05-03 Jes Sorensen <jes@linuxcare.com>
* sysdeps/generic/ldsodefs.h (LOOKUP_VALUE_ADDRESS): Check the
validity of map before dereferencing it.
* elf/dl-reloc.c (RESOLVE_MAP): Define.
2000-05-02 Jes Sorensen <jes@linuxcare.com>
* elf/dl-runtime.c (fixup): Add the value returned in the symbol
lookup to the arguments to elf_machine_fixup_plt().
* sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add Link_map
of the symbol being resolved to input argument list and make the
function return the pointer to the reloc.
* sysdeps/alpha/dl-machine.h (elf_machine_fixup_plt): Change
return valuie to lookup_t and return the value.
* sysdeps/arm/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/generic/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/i386/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/m68k/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/powerpc/dl-machine.h (elf_machine_fixup_plt): Likewise.
Make it an inline function returning value after calling
__elf_machine_fixup_plt().
* elf/dl-sym.c (_dl_vsym): Use DL_SYMBOL_ADDRESS() to obtain the
symbol address.
* elf/dl-symbol.c (_dl_symbol_value): Use LOOKUP_VALUE_ADDRESS to
obtain the symbol address.
* sysdeps/generic/ldsodefs.h: Add generic DL_SYMBOL_ADDRESS() macro
depending on the definition of ELF_FUNCTION_PTR_IS_SPECIAL.
* sysdeps/ia64/dl-machine.h: Add DL_SYMBOL_ADDRESS() macro calling
_dl_symbol_address() - this way DL_SYMBOL_ADDRESS() turns into an
inline on non ia64.
2000-04-28 Jes Sorensen <jes@linuxcare.com>
* elf/dl-runtime.c (fixup): Use the portable macros to get the
symbol address of an object.
* elf/dl-runtime.c (fixup-profile): Use the portable macros to get
the symbol address of an object.
* elf/dl-libc.c (struct do_dlsym_args): Change loadbase to a lookup_t.
* elf/dl-lookup.c (_dl_lookup_symbol): Likewise.
(_dl_lookup_symbol_skip): Likewise.
(_dl_lookup_versioned_symbol): Likewise.
(_dl_lookup_versioned_symbol_skip): Likewise.
2000-04-27 Jes Sorensen <jes@linuxcare.com>
* elf/rtld.c (_dl_start): Get the function pointer return address
via _dl_start_address for architectures that need a function
pointer descriptor rather than just a pointer (ia64).
* sysdeps/generic/dl-lookupcfg.h: New file.
* sysdeps/ia64/dl-lookupcfg.h: New file.
* sysdeps/ia64/dl-machine.h: New file.
* sysdeps/ia64/dl-symaddr.c: New file.
* sysdeps/ia64/dl-fptr.c: New file.
* elf/elf.h: Add IA-64 specific definitions.