Ulrich Drepper [Sat, 20 Feb 1999 23:57:48 +0000 (23:57 +0000)]
Update.
* elf/dl-deps.c (_dl_map_object_deps): Don't add dummy objects created
for tracing to the scope lists.
* elf/do-lookup.h: Remove test for l_opencount == 0 after above change.
DT_SYMTAB is always available according to ELF spec.
Ulrich Drepper [Sat, 20 Feb 1999 22:05:45 +0000 (22:05 +0000)]
Update.
* elf/dl-lookup.c (_dl_lookup_symbol_skip): Before first do_lookup
call test whether there is any scope left.
(_dl_lookup_versioned_symbol_skip): Likewise.
Ulrich Drepper [Sat, 20 Feb 1999 21:12:26 +0000 (21:12 +0000)]
Update.
* elf/Makefile (distribute): Add do-lookup.h.
* elf/do-lookup.h: New file. Split out from dl-lookup.c.
* elf/dl-lookup.c: Move do_lookup function in separate file and
include the file twice, for handling versioning and without it.
Ulrich Drepper [Sat, 20 Feb 1999 15:02:24 +0000 (15:02 +0000)]
Update.
* elf/dynamic-link.h (elf_get_dynamic_info): Take new argument with
load address. Relocate d_ptr in DT_DTRTAB, DT_SYMTAB, DT_RELA, DT_REL,
DT_JMPREL, DT_PLTGOT, and DT_VERSYM l_info entry.
(_ELF_DYNAMIC_DO_RELOC): Take extra argument which specifies whether
rel and rela relocations can both happen and skip one test if this
is not possible.
(ELF_DYNAMIC_DO_RELA, ELF_DYNAMIC_DO_REL): Call _ELF_DYNAMIC_DO_RELOC
appropriately.
* elf/dl-addr.c (_dl_addr): DT_SYMTAB and DT_STRTAB entries are
already relocated.
* elf/dl-deps.c (_dl_map_object_deps): DT_STRTAB entry is already
relocated.
* elf/dl-load.c (_dl_init_paths): DT_STRTAB entry is already relocated.
(_dl_map_object_from_fd): Call elf_get_dynamic_info with new argument.
(_dl_map_object): DT_STRTAB entry is already relocated.
* elf/dl-lookup.c (do_lookup): DT_STRTAB and DT_SYMTAB entries are
already relocated.
* elf/dl-reloc.c (_dl_relocate_object): DT_STRTAB entry is already
relocated.
* elf/dl-runtime.c (fixup): DT_SYMTAB, DT_STRTAB, DT_JMPREL, and
DT_VERSYM entries are already relocated.
(profile_fixup): Likewise.
* elf/dl-version.c: Rename VERSTAG macro into VERSYMIDX. Replace
all users.
(match_symbol): DT_STRTAB entry is already relocated.
(_dl_check_map_versions): Likewise. Also fo DT_VERSYM.
* elf/do-rel.h (elf_dynamic_do_rel): reladdr is now assumed to be
relocated already. DT_SYMTAB and DT_VERSYM entries are also relocated.
* elf/rtld.c (_dl_start): Pass extra argument to elf_get_dynamic_info.
(find_needed): DT_STRTAB entry is already relocated.
(dl_main): Pass extra argument to elf_get_dynamic_info.
DT_STRTAB entry is already relocated.
* sysdeps/alpha/dl-machine.h (elf_machine_fixup_plt): DT_JMPREL and
DT_PLTGOT entries are already relocated.
(elf_machine_rela): Likewise for DT_SYMTAB.
* sysdeps/arm/dl-machine.h (elf_machine_rel): DT_STRTAB is already
relocated.
* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
* sysdeps/m68k/dl-machine.h (elf_machine_rela): Likewise.
* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Likewise.
* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Likewise.
* sysdeps/powerpc/dl-machine.c (__process_machine_rela): Likewise.
* sysdeps/mips/dl-machine.h (elf_machine_got_rel): Likewise.
(elf_machine_got_rel): Likewise for DT_SYMTAB and DT_STRTAB.
* grp/initgroups.c (initgroups): If function in current module was
successful don't stop but continue to process to get all the groups.
Ulrich Drepper [Fri, 19 Feb 1999 20:37:20 +0000 (20:37 +0000)]
Update.
1999-02-19 Ulrich Drepper <drepper@cygnus.com>
* elf/ldsodefs.h (_dl_signal_error): Mark as __noreturn__.
* elf/dl-load.c (lose): Make it a function at the toplevel, mark as
noreturn, and prevent it from being inlined.
Define LOSE appropriately.
(_dl_map_object_from_fd): Compare all bytes in e_ident at once.
Optimize decoding of p_flags for certain platforms.
Ulrich Drepper [Fri, 19 Feb 1999 00:00:05 +0000 (00:00 +0000)]
Update.
* elf/link.h (link_map): Add l_dev and l_ino.
* elf/dl-load.c (_dl_map_object_from_fd): Test dev/ino of newly
loaded shared object with all laoded objects. Initialize l_ino
and l_dev in case it's new.
* elf/rtld.c (dl_main): Explain situation is l_dev/l_ino with main
object.
* elf/Makefile: Compile and run new test.
* elf/multiload.c: New file.
Ulrich Drepper [Thu, 18 Feb 1999 22:27:04 +0000 (22:27 +0000)]
Update.
* nss/nsswitch.h (service_user): Change name field from const char *
to char[0].
(name_database_entry): Likewise.
* nss/nsswitch.c (nss_parse_service_list): Adjust memory allocation
for change of `service_user'.
(nss_getline): Adjust memory allocation for change of
`name_database_entry'.
Ulrich Drepper [Mon, 8 Feb 1999 10:08:45 +0000 (10:08 +0000)]
Update.
* po/el.po: New file.
1999-02-07 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* elf/dl-load.c (_dl_map_object_from_fd): Replace magic constant
when processing DT_SYMBOLIC objects.
1999-02-07 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* elf/dl-load.c (_dl_map_object_from_fd): When looking for the
program headers without PT_PHDR only require that they are
contained within one of the loaded segments. Don't use assert,
since that would be a bug in the object, not the dynamic linker.
1999-02-08 Richard Henderson <rth@cygnus.com>
* sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Save and
restore all call-clobbered fp regs.
Ulrich Drepper [Sun, 7 Feb 1999 20:46:14 +0000 (20:46 +0000)]
Update.
1999-02-03 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/generic/segfault.c: Add ADVANCE_STACK_FRAME
macro, so that architectures which need to add some special
offset to stack pointer can share this file.
* sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/register-dump.h: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/bits/mman.h: Remove.
* sysdeps/unix/sysv/linux/sparc/sparc64/bits/mman.h: Remove.
* sysdeps/unix/sysv/linux/sparc/bits/mman.h: New file - common
between sparc32 and sparc64.
* sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: Remove.
* sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: Remove.
* sysdeps/unix/sysv/linux/sparc/vfork.S: New file - common
between sparc32 and sparc64.
* sysdeps/unix/sysv/linux/sparc/sparc32/fork.S: Remove.
* sysdeps/unix/sysv/linux/sparc/sparc64/fork.S: Remove.
* sysdeps/unix/sysv/linux/sparc/fork.S: New file - common
between sparc32 and sparc64.
* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.S: Remove.
* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.S: Remove.
* sysdeps/unix/sysv/linux/sparc/sysdep.S: New file - common
between sparc32 and sparc64.
Ulrich Drepper [Sun, 7 Feb 1999 00:06:12 +0000 (00:06 +0000)]
Update.
1999-02-06 Ulrich Drepper <drepper@cygnus.com>
* Versions.def: Add versions for ld.so.
* csu/Versions: Remove __libc_stack_end here.
* elf/Versions: Split libc definitions in libc and ld.so definitions.
* elf/Makefile (ld-map): Change to ld.so.map.
* scripts/versions.awk: Recognize dot in library names.
* ctype/ctype.h: Remove definitions of __tolower and __toupper.
Don't use __tolower and __toupper in inline functions.
Add optimizing macros for tolower and toupper.
* ctype/ctype-extn.c (_tolower): Don't use __tolower.
(_toupper): Don't use __toupper.
* ctype/ctype.c (tolower): Don't use __tolower.
(toupper): Don't use toupper.
* nscd/cache.c (prune_cache): Correct printing of debugging messages.
* resolv/Versions (libresolv): Export __ns_name_unpack and
__ns_name_ntop.
* resolv/res_comp.c: Rename ns_name_unpack to __ns_name_unpack and
make it global. Change all users. Similar for ns_name_ntop.
* resolv/nss_dns/dns-host.c: Don't use dn_expand when extracting in
user-provided buffer. Use __ns_name_unpack and __ns_name_ntop
directly to detect too small buffer.
* stdio-common/Makefile (tests): Add scanf12.
* stdio-common/scanf12.c: New file.
* stdio-common/scanf12.input: New file.
* stdio-common/vfscanf.c (__vfscanf): Handle +/- at beginning of
floating-point correctly if the number is invalid.
* stdio-common/vfscanf.c: Don't use non-reentrant multibyte conversion
* stdio-common/printf_fphex.c: Likewise.
* stdio-common/vfprintf.c: Likewise.
See ChangeLog.9 for earlier changes.
Ulrich Drepper [Wed, 3 Feb 1999 10:30:07 +0000 (10:30 +0000)]
Update.
1999-02-03 Ulrich Drepper <drepper@cygnus.com>
* elf/dlsym.c (dlsym_doit): If no symbol for RTLD_NEXT is found
initialize ref element of args object so that dlsym does not dump
a core.
* elf/dlvsym.c (dlvsym_doit): Likewise.
Ulrich Drepper [Wed, 3 Feb 1999 09:31:42 +0000 (09:31 +0000)]
Update.
1999-02-03 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S: Set branch
prediction correctly.
* sysdeps/unix/sysv/linux/sparc/sparc32/profil-counter.h: Signal
takes a pointer to __sigcontext_t.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S: Do a nop after retl.
* sysdeps/unix/sysv/linux/sparc/sparc32/Dist: Remove fork.S.
Ulrich Drepper [Tue, 2 Feb 1999 16:27:57 +0000 (16:27 +0000)]
Update.
* nscd/nscd_getpw_r.c (nscd_getpw_r): Mark as internal and take
extra argument with length of key string.
(__nscd_getpwnam_r): Call nscd_getpw_r with extra argument.
(__nscd_getpwuid_r): Create key string on stack.
* nscd/nscd_getgr_r.c: Mark local functions as internal.
* nscd/nscd_gethst_r.c: Likewise.
Ulrich Drepper [Tue, 2 Feb 1999 09:26:53 +0000 (09:26 +0000)]
Update.
1999-02-02 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/reboot.c: Make sure first parameter is
correctly passed to the kernel even on 64bit platforms.
Patch by Bruce Elliott <bde@nwlink.com>.
* localedata/locales/it_CH: New file.
Contributed by Giacomo Amabile Catenazzi <gcatenaz@g26.ethz.ch>.
Ulrich Drepper [Sat, 30 Jan 1999 17:38:29 +0000 (17:38 +0000)]
Update.
1999-01-31 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: If the kernel
doesn't have vfork, resort to using fork.
* sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: Likewise.
Ulrich Drepper [Fri, 29 Jan 1999 12:01:59 +0000 (12:01 +0000)]
Update.
* sysdeps/unix/sparc/vfork.S: Correct comment.
* sysdeps/unix/sparc/fork.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove vfork.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/fork.S: No special case for
child necessary.
* sysdeps/unix/sysv/linux/sparc/sparc64/fork.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: New file.
Patches by Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>.
* sysdeps/libm-i387/s_fdim.S: Change fsubp to fsubrp for picky gas.
Ulrich Drepper [Fri, 29 Jan 1999 09:01:50 +0000 (09:01 +0000)]
Update.
1999-01-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sysdeps/wordsize-32/stdint.h (INT8_C, INT16_C, INT32_C, INT64_C,
UINT8_C, UINT16_C, UINT32_C, UINT64_C): Remove casts, they must be
integer constants. Use ## directly instead of __CONCAT so that
the suffix string is not expanded as a macro.
* sysdeps/wordsize-64/stdint.h (INT8_C, INT16_C, INT32_C, INT64_C,
UINT8_C, UINT16_C, UINT32_C, UINT64_C): Likewise.
(INT64_MIN, INT64_MAX, UINT64_MAX, INT_LEAST64_MIN,
INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST16_MIN, INT_FAST32_MIN,
INT_FAST64_MIN, INT_FAST16_MAX, INT_FAST32_MAX, INT_FAST64_MAX,
UINT_FAST16_MAX, UINT_FAST32_MAX, UINT_FAST64_MAX, INTMAX_MIN,
INTMAX_MAX, UINTMAX_MAX): Define as long constants, not long long.
1999-01-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* locale/mb_cur_max.c (__ctype_get_mb_cur_max): Correct return
type to size_t.
* locale/broken_cur_max.c (__ctype_get_mb_cur_max): Likewise.
* stdlib/stdlib.h (__ctype_get_mb_cur_max): Likewise.
Ulrich Drepper [Thu, 28 Jan 1999 17:34:53 +0000 (17:34 +0000)]
Update.
* sysdeps/unix/sysv/sysv4/solaris2/configure.in: New file.
* sysdeps/unix/sysv/sysv4/solaris2/configure: New file.
* sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c: New file.
Patch by Jeff Bailey <jbailey@phn.ca>.
Ulrich Drepper [Thu, 28 Jan 1999 14:14:08 +0000 (14:14 +0000)]
Update.
* intl/finddomain.c (free_mem): Also free filename.
* locale/findlocale.c (free_mem): Likewise.
(_nl_find_locale): Duplicate loc_name with strdupa not strdup.
* locale/setlocale.c (free_mem): New function. Free current locale
data and set current locale to "C".