aboutsummaryrefslogtreecommitdiff
path: root/elf
AgeCommit message (Collapse)Author
2000-10-21Update.Ulrich Drepper
* elf/dl-load.c (_dl_map_object_from_fd): Split out ELF file verification in open_verify. (open_verify): New function. Called instead of open. Ignores valid files for other architectures. (open_path): Call open_verify instead of open. (_dl_map_object): Likewise. Somewhat based on a patch by Don Dugger <n0ano@valinux.com>. * io/pwd.c (main): The output was missing a newline.
2000-10-21Update.Ulrich Drepper
2000-10-21 Ulrich Drepper <drepper@redhat.com> * elf/dl-open.c (add_to_global): New function. Split out from dl_open_worker. (dl_open_worker): Call add_to_global not only for new objects, also for previously loaded objects when (mode & RTLD_GLOBAL) and the object was not yet in the global scope. * elf/Makefile: Add rules to build and run lateglobal. * elf/lateglobal.c: New file. * elf/ltglobmod1.c: New file. * elf/ltglobmod2.c: New file.
2000-10-21Update.Ulrich Drepper
* include/link.h (struct link_map): Add l_soname_added bitfield. * elf/dl-load.c (_dl_map_object): Remember when we added the SONAME to the l_libname list and don't try it again.
2000-10-21Update.Ulrich Drepper
* elf/dl-close.c: Decrement opencount for all dependencies which can be removed even if the object is not yet unloaded. * elf/dl-deps.c (_dl_map_object_deps): If dependency is already in the list decrement opencount of all dependencies. * elf/dl-load.c (_dl_map_object_from_fd): Increment object of object and all dependencies. (_dl_map_object): Likewise. * elf/dl-lookup.c (add_dependency): Likewise. * elf/loadtest.c: Add debug when with more output.
2000-10-21Update.Ulrich Drepper
* elf/Makefile: Add rules to build and run unload2. * elf/unload2.c: New file. * elf/unload2mod.c: New file. * elf/unload2dep.c: New file. * intl/libintl.h (ngettext macro): Add missing parameter. (dngettext macro): Likewise.
2000-10-21Update.Ulrich Drepper
2000-10-19 H.J. Lu <hjl@gnu.org> * elf/Makefile (distribute): Add neededtest.c, neededobj1.c, neededobj2.c and neededobj3.c. (tests): Add neededtest. (modules-names): Add neededobj1, neededobj2 and neededobj3. ($(objpfx)neededobj1.so): New target. ($(objpfx)neededobj2.so): Likewise. ($(objpfx)neededobj3.so): Likewise. ($(objpfx)neededtest): Likewise. ($(objpfx)neededtest.out): Likewise. * elf/neededtest.c: New. Based on the bug report from Allen Bauer <kylix_rd@hotmail.com>. * elf/neededobj1.c: Likewise. * elf/neededobj2.c: Likewise. * elf/neededobj3.c: Likewise. 2000-10-20 Ulrich Drepper <drepper@redhat.com> * elf/dl-close.c (_dl_close): Decrement reference counter for all dependencies even if the DSO does not get unloaded. * elf/dl-load.c (_dl_map_object_from_fd): Pass pointer to ELF header to elf_machine_matches_host. * sysdeps/alpha/dl-machine.h (elf_machine_matches_host): Parameter is now pointer to ELF header. * sysdeps/arm/dl-machine.h: Likewise. * sysdeps/generic/dl-machine.h: Likewise. * sysdeps/hppa/dl-machine.h: Likewise. * sysdeps/i386/dl-machine.h: Likewise. * sysdeps/ia64/dl-machine.h: Likewise. * sysdeps/m68k/dl-machine.h: Likewise. * sysdeps/mips/dl-machine.h: Likewise. * sysdeps/mips/mips64/dl-machine.h: Likewise. * sysdeps/powerpc/dl-machine.h: Likewise. * sysdeps/s390/dl-machine.h: Likewise. * sysdeps/sh/dl-machine.h: Likewise. * sysdeps/sparc/sparc32/dl-machine.h: Likewise. * sysdeps/sparc/sparc64/dl-machine.h: Likewise. Patch by Martin Schwidefsksy <schwidefsky@de.ibm.com>. 2000-10-20 Jakub Jelinek <jakub@redhat.com> * include/limits.h: Include bits/wordsize.h, use #if __WORDSIZE == 64 check instead of #ifdef __alpha__. * include/bits/xopen_lim.h (WORD_BIT, LONG_BIT): Don't count on INT_MAX, __INT_MAX__, LONG_MAX or __LONG_MAX__ being defined when this is included. * posix/wordexp-tst.sh (testout): Place output file in build directory. Patch by Joseph S. Myers <jsm28@cam.ac.uk>.
2000-10-16Update.Ulrich Drepper
2000-10-15 Ulrich Drepper <drepper@redhat.com> * elf/dl-error.c (_dl_signal_error): Allocate memory for objname as well. Reported by Alexander V. Lukyanov <lav@yars.free.net>.
2000-10-15Update.Ulrich Drepper
2000-10-13 Andreas Schwab <schwab@suse.de> * elf/elf.h (R_IA64_PCREL60B): Add relocation.
2000-10-15Update.Ulrich Drepper
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.
2000-10-09Update.glibc-2.1.95cvs/libc-2_1_95Ulrich Drepper
* nscd/Makefile (distribute): Add nscd-types.h. * elf/Makefile (distribute): Add gccframe.h. * sysdeps/sparc/sparc32/Dist: Add ieee754.h. * sysdeps/ia64/Dist: Add ieee754.h.
2000-10-08Update.Ulrich Drepper
* elf/elf.h: Add a few section-related symbols.
2000-10-05Update.Ulrich Drepper
2000-10-05 Jakub Jelinek <jakub@redhat.com> * sysdeps/sparc/sparc64/fpu/libm-test-ulps: New file. 2000-10-02 Jakub Jelinek <jakub@redhat.com> * sunrpc/svc_udp.c (svcudp_recv): Set msg_controllen to all remaining xp_pad space. 2000-10-05 Jakub Jelinek <jakub@redhat.com> * elf/dl-close.c (_dl_close): Check imap's l_flags_1 for DF_1_NODELETE, not list[i]'s.
2000-10-03Update.Ulrich Drepper
2000-10-02 Jakub Jelinek <jakub@redhat.com> * elf/nextmod1.c (failing_rtld_next_use): Ensure it is not tail call optimized. * sysdeps/sparc/sparc32/fpu/libm-test-ulps: New file.
2000-09-30Update.Ulrich Drepper
2000-09-30 H.J. Lu <hjl@gnu.org> * sysdeps/ieee754/ldbl-96/s_ceill.c (__ceill): Handle overflow. * sysdeps/ieee754/ldbl-96/s_floorl.c (__floorl): Likewise. 2000-09-29 H.J. Lu <hjl@gnu.org> * math/libm-test.inc (init_max_error): Clear all exceptions before starting test. (acosh_test): Test for existence of function. (asinh_test): Likewise. (atan2_test): Likewise. (cabs_test): Likewise. (cacos_test): Likewise. (cacosh_test): Likewise. (casin_test): Likewise. (casinh_test): Likewise. (catan_test): Likewise. (catanh_test): Likewise. (ccos_test): Likewise. (ccosh_test): Likewise. (cexp_test): Likewise. (clog_test): Likewise. (clog10_test): Likewise. (cosh_test): Likewise. (cpow_test): Likewise. (csin_test): Likewise. (csinh_test): Likewise. (csqrt_test): Likewise. (ctan_test): Likewise. (ctanh_test): Likewise. (fmod_test): Likewise. (hypot_test): Likewise. (remainder_test): Likewise. (remquo_test): Likewise. (sincos_test): Likewise. (sinh_test): Likewise. (tanh_test): Likewise. 2000-09-29 H.J. Lu <hjl@gnu.org> * sysdeps/ia64/ieee754.h: New file. * sysdeps/ia64/fpu/math_ldbl.h: New file. 2000-09-30 Jakub Jelinek <jakub@redhat.com> * elf/ldconfig.h (FLAG_X8664_LIB64): Define. * sysdeps/unix/sysv/linux/i386/readelflib.c: New file. 2000-09-30 Ulrich Drepper <drepper@redhat.com> * manual/charset.texi: Correct notations, reference to C90 amd 1, and some other details. * manual/ctype.texi: Likewise. Patches by Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>.
2000-09-30Update.Ulrich Drepper
2000-09-29 Ulrich Drepper <drepper@redhat.com> * elf/cache.c (save_cache): Initialize __unused field in new cache as well to get reproducable results.
2000-09-30Update.Ulrich Drepper
2000-09-29 Ulrich Drepper <drepper@redhat.com> * elf/chroot_canon.c: Don't report a failure if the last path component is not available. * elf/ldconfig.c (parse_conf): Use canonicalized name when reporting error. * elf/cache.c (print_cache): Use stat64 instead of stat. * elf/ldconfig.c (chroot_stat): Likewise. (create_links): Likewise. (manual_link): Likewise. (search_dir): Likewise. * elf/readlib.c (process_file): Likewise. * Makefile (install): Set LC_ALL and LANGUAGE to C before running ldconfig. 2000-09-29 Jakub Jelinek <jakub@redhat.com> * elf/chroot_canon.c: New file. * elf/Makefile: Build and distribute it. * elf/ldconfig.h (process_file): Add real_file_name argument. (chroot_canon): Add prototype. * elf/ldconfig.c (cache_file): Remove const. (chroot_stat): New. (create_links): Add real_path argument. If opt_chroot, maintain both real and given filenames. (manual_link): Likewise. (search_dir): Likewise. (parse_conf): If opt_chroot, use chroot_canon to find the real config file. (main): For -r, try to use chroot, if it fails, leave opt_chroot set and use chroot_canon where appropriate to do the same as if chroot succeeded. * elf/readlib.c (process_file): Add real_file_name argument, pass it to fopen. 2000-09-29 Ulrich Drepper <drepper@redhat.com> * math/complex.h (_Complex): We can be more specific when _Complex is defined by the compiler.
2000-09-29Update.Ulrich Drepper
2000-09-29 H.J. Lu <hjl@gnu.org> * sysdeps/unix/sysv/linux/ia64/dl-cache.h: New. * elf/cache.c (print_entry): Replace 64bit with IA-64 in message for x86/IA-64 binary. 2000-09-29 Andreas Schwab <schwab@suse.de> * sysdeps/unix/sysv/linux/ia64/readelflib.c: New file. * elf/cache.c (print_entry): Check for FLAG_IA64_LIB64.
2000-09-29Update.Ulrich Drepper
* elf/ldconfig.c (parse_conf): Print full name of config dir including chroot() path. (main): Remove trailing / from opt_chroot string.
2000-09-28Update.Ulrich Drepper
* mutex.c (__pthread_mutex_unlock): For PTHREAD_MUTEX_RECURSIVE_NP test for owner first. Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
2000-09-27(search_dir): Allow unlimited path length. (create_links): Likewise.Andreas Jaeger
2000-09-26Update.Ulrich Drepper
2000-09-26 Jakub Jelinek <jakub@redhat.com> * sysdeps/sparc/sparc32/bits/endian.h: Remove. * sysdeps/sparc/sparc32/ieee754.h: New. * sysdeps/sparc/sparc64/bits/endian.h: Move... * sysdeps/sparc/bits/endian.h: ...here. * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Optimize. * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): Check %o1, not %o0 to see if we're parent or child. Optimize. 2000-09-26 Jes Sorensen <jes@linuxcare.com> * sysdeps/unix/sysv/linux/ia64/fork.S: New file (based on code by Hans Boehm). * sysdeps/unix/sysv/linux/ia64/vfork.S: New file (based on code by Hans Boehm). * sysdeps/unix/sysv/linux/ia64/fork.c: Deleted (obsoleted by fork.S). 2000-09-20 H.J. Lu <hjl@gnu.org> * sysdeps/ia64/fpu/printf_fphex.c: New file. * sysdeps/ia64/fpu/libm-test-ulps: New file. 2000-09-17 H.J. Lu <hjl@gnu.org> * sysdeps/ia64/Makefile (long-double-fcts): New. Defined as yes. * sysdeps/ia64/fpu/s_isinfl.c: New file. Include sysdeps/i386/fpu/s_isinfl.c. * sysdeps/ia64/fpu/s_isnanl.c: New file. Include sysdeps/i386/fpu/s_isnanl.c. * sysdeps/ia64/fpu/s_nextafterl.c: New file. Include sysdeps/i386/fpu/s_nextafterl.c. * sysdeps/ia64/fpu/bits/mathdef.h: New file. Copied from sysdeps/i386/fpu/bits/mathdef.h. 2000-09-16 H.J. Lu <hjl@gnu.org> * sysdeps/generic/ldsodefs.h (DL_UNMAP): New. Defined if DL_UNMAP_IS_SPECIAL is not defined. * sysdeps/ia64/dl-lookupcfg.h (DL_UNMAP_IS_SPECIAL): Defined. (_dl_unmap): New prototype. (DL_UNMAP): New. Defined as _dl_unmap. * sysdeps/ia64/Versions [ld] (GLIBC_2.2): Add _dl_unmap. * elf/dl-close.c (_dl_close): Replace __munmap with DL_UNMAP. 2000-09-16 H.J. Lu <hjl@gnu.org> * sysdeps/generic/ldsodefs.h (DL_LOOKUP_ADDRESS): New. Defined if ELF_FUNCTION_PTR_IS_SPECIAL is not defined. * sysdeps/ia64/dl-lookupcfg.h (_dl_lookup_address): New prototype. (DL_LOOKUP_ADDRESS): New. Defined as _dl_lookup_address. * sysdeps/ia64/dl-fptr.c (_dl_lookup_address): New. Lookup the memory location of a function from a function descriptor. * sysdeps/ia64/Versions [ld] (GLIBC_2.2): Add _dl_lookup_address. * elf/dl-addr.c (_dl_addr): Use DL_LOOKUP_ADDRESS to get the memory location. 2000-09-14 Jes Sorensen <jes@linuxcare.com> * sysdeps/ia64/bits/byteswap.h (__bswap_16): Don't mark output variable as input argument. (__bswap_32): Likewise. * sysdeps/ia64/dl-machine.h: Add missing stop bit in RTLD_START() - found by Jim Wilson <wilson@cygnus.com> 2000-09-26 Ulrich Drepper <drepper@redhat.com> * string/strxfrm.c: Only require alignment on __alignof__ (int32_t) instead of 4. 2000-09-26 Andreas Schwab <schwab@suse.de> * locale/programs/ld-collate.c (collate_output): Only require alignment on __alignof__ (int32_t) instead of 4. * locale/loadlocale.c (_nl_load_locale): Likewise. * string/strcoll.c: Likewise. 2000-09-26 Jes Sorensen <jes@linuxcare.com> * sysdeps/ieee754/ldbl-96/e_atan2l.c (__ieee754_atan2l): Add parentheses around arithmetic used in | statement to kill compiler warning. * math/math_private.h: Add prototype for __finitel. (__ilogbl): Likewise. (__isinfl): Likewise. (__isnanl): Likewise. (__atanl): Likewise. (__copysignl): Likewise. (__expm1l): Likewise. (__floorl): Likewise. (__frexpl): Likewise. (__ldexpl): Likewise. (__log1pl): Likewise. (__nanl): Likewise. (__rintl): Likewise. (__scalbnl): Likewise. (__sqrtl): Likewise. (fabsl): Likewise. (__sincosl): Likewise. (si_isr) [USE_GNU]: Likewise. (ILL_BREAK) [USE_GNU]: Likewise. (FPE_DECOVF) [USE_GNU]: Likewise. (FPE_DECDIV) [USE_GNU]: Likewise. (FPE_DECERR) [USE_GNU]: Likewise. (FPE_INVASC) [USE_GNU]: Likewise. (FPE_INVDEC) [USE_GNU]: Likewise. (TRAP_BRANCH) [USE_GNU]: Likewise. (TRAP_HWBKPT) [USE_GNU]: Likewise. * sysdeps/ieee754/flt-32/s_exp2f.c: Likewise.
2000-09-26Update.Ulrich Drepper
2000-09-26 Thorsten Kukuk <kukuk@suse.de> * nscd/dbg_log.c (dbg_log): Add missing format string. * catgets/catgets.c (catopen): Use getenv instead of __secure_getenv since we filter out the variable once. * iconv/gconv_conf.c (__gconv_get_path): Likewise. * locale/newlocale.c (__newlocale): Likewise. * locale/setlocale.c (setlocale): Likewise. * malloc/malloc.c (ptmalloc_init): Likewise. * resolv/res_hconf.c (_res_hconf_init): Likewise. * resolv/res_init.c (__res_vinit): Likewise. * time/tzfile.c (__tzfile_read): Likewise. * sysdeps/generic/unsecvars.h: New file. * elf/dl-support.c (non_dynamic_init): Use it here to remove variables. * elf/rtld.c (process_envvars): Likewise. * elf/Makefile (distribute): Add unsecvars.h.
2000-09-26Update.Ulrich Drepper
* elf/rtld.c (process_envvars): Open debug output file with O_NOFOLLOW.
2000-09-24Update.Andreas Jaeger
* elf/ldconfig.c (add_dir): Move logic to add entry to list to new function add_single_dir. (add_single_dir): New function. (search_dir): Use add_single_dir instead of recursing.
2000-09-24Update.Ulrich Drepper
2000-09-24 Ulrich Drepper <drepper@redhat.com> * elf/ldconfig.c (search_dir): Make more use of d_type information. 2000-09-23 Ulrich Drepper <drepper@redhat.com> * stdio-common/printf-parse.h (parse_one_spec): Clear spec->info.i18n. Patch by Joseph S. Myers <jsm28@cam.ac.uk>.
2000-09-16Update.Ulrich Drepper
2000-09-16 Jakub Jelinek <jakub@redhat.com> * sysdeps/ia64/Implies: Reorder ieee754 implies so that ldbl-* comes first. * sysdeps/m68k/Implies: Likewise. * sysdeps/sparc/sparc64/Implies: Likewise. 2000-09-16 Jakub Jelinek <jakub@redhat.com> * elf/readlib.c (process_file): Don't error for stale .so links either. * elf/dl-load.c (_dl_map_object_from_fd): Add one more __builtin_expect.
2000-09-16Update.Ulrich Drepper
* elf/rtld.c (_dl_dynamic_weak): Set to 1 by default for now. * elf/dl-support.c: Likewise. necessary. Move includes of POSIX and Unix limits files to the end.
2000-09-15Update.Ulrich Drepper
2000-09-15 Ulrich Drepper <drepper@redhat.com> * elf/Makefile (distribute): Add nextmod1.c and nextmod2.c. (tests): Add next. (modules-names): Add nextmod1 and nextmod2. Add rules to build and run next. * elf/next.c: New file. * elf/nextmod1.c: New file. * elf/nextmod2.c: New file. 2000-09-14 Jakub Jelinek <jakub@redhat.com> * elf/dl-lookup.c (_dl_lookup_symbol_skip): Fix a typo.
2000-09-15(_dl_lookup_symbol_skip): Fix a typo.Ulrich Drepper
2000-09-14Update.Ulrich Drepper
* elf/elf.h: Add missing official relocations.
2000-09-08Update.Ulrich Drepper
* elf/dl-load.c (lose): Decrement _nl_loaded. (_dl_map_object_from_fd): Don't try to dlopen executables.
2000-09-07Update.Ulrich Drepper
* elf/Makefile (all-rtld-routines): Evaluate $(sysdep-rtld-routines) too. * sysdeps/powerpc/Makefile (sysdep-rtld-routines): New variable. (sysdep_routines): Remove dl-start. Patches by Franz Sirl <Franz.Sirl-kernel@lauterbach.com>.
2000-09-07* locale/programs/ld-collate.c (handle_ellipsis): Fix typo. Andreas Jaeger
* elf/dl-load.c (_dl_map_object_from_fd): Likewise. Reported by GOTO Masanori <gotom@debian.or.jp>.
2000-09-05Update.Ulrich Drepper
2000-09-03 Bruno Haible <haible@clisp.cons.org> * charmaps/EUC-TW: Add commented non-reversible mappings. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * charmaps/CP949: New file. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * charmaps/GB2312: Remove 0x80..0xA0, 0xAA..0xAF, 0xF8..FF. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * charmaps/EUC-JP: Nonreversibly map 0xA1C0 to U+005C and 0x8FA2B7 to U+007E.
2000-08-31Update.Ulrich Drepper
* intl/Makefile (tests): Depend in mtrace-tst-gettext. Make this a new rule depending on tst-gettext.out and run mtrace. * intl/tst-gettext.c: Call mtrace. * intl/tst-gettext.sh: Put MALLOC_TRACE in environment of tst-gettext. * elf/dl-reloc.c: Add a few more __builtin_expect. * configure.in: Remove --with-gettext option. * intl/dcigettext.c (free_mem): Correct freeing of _nl_domain_bindings list.
2000-08-31Update.Ulrich Drepper
* sysdeps/generic/ldsodefs.h: Add declaration for _dl_all_dirs and _dl_all_init_dirs. * include/link.h (struct r_search_path_struct): New. (struct link_map): Use it for l_rpath_dirs and l_runpath_dirs. * elf/Versions [ld] (GLIBC_2.2): Add _dl_all_dirs and _dl_all_init_dirs. * elf/dl-close.c (_dl_close): Free l_rpath_dirs and l_runpath_dirs. * elf/dl-libc.c (free_mem): Free _dl_all_dirs list except elements added at startup time. * elf/dl-load.c: Fix memory handling. r_search_path_struct contains element to remember fact that we can free memory. (all_dirs): Renamed to _dl_all_dirs. Made global. (_dl_init_all_dirs): New variable. (fillin_rpath): Save one malloc call. (decompose_rpath): Change interface. New first parameter points to r_search_path_struct. (_dl_init_paths): Adjust for changes. Mark all memory as not deletable. Set _dl_init_all_paths value. (open_path): Remove may_free_dirs parameter. r_search_path_elem *** parameter replaced with r_search_path_struct *. Information about freeing now contained in r_search_path_struct. (_dl_map_object): Adjust for above changes. * elf/dl-open.c (dl_open_worker): Change format of debug info a bit.
2000-08-31Update.Ulrich Drepper
* elf/dl-load.c (fillin_rpath): Only check for trusted directories when adding new entries.
2000-08-30Update.Ulrich Drepper
* elf/dl-load.c (fillin_rpath): Make local copy of where string since the object being loaded can be unloaded.
2000-08-29Update.Ulrich Drepper
2000-08-27 Bruno Haible <haible@clisp.cons.org> * string/strxfrm.c (strxfrm, wcsxfrm): Include <sys/param.h>. If nrules == 0 and srclen < n, copy only srclen + 1 characters. * sysdeps/generic/getdomain.c (getdomainname): Include <sys/param.h>. If the result is fits in the buffer, copy only as many bytes as needed. * sysdeps/generic/_strerror.c (__strerror_r): Don't zero-fill the buffer after copying numbuf into it. * sysdeps/mach/_strerror.c (__strerror_r): Likewise. 2000-08-27 Bruno Haible <haible@clisp.cons.org> * posix/confstr.c (confstr): When string_len > len, NUL-terminate the result. When string_len < len, don't clear the rest of the buffer. 2000-08-27 Bruno Haible <haible@clisp.cons.org> Support for new LC_COLLATE format. * locale/coll-lookup.h: New file. * locale/weightwc.h (findidx): When size == 0, call collidx_table_lookup. * wcsmbs/wcscoll.c: Include coll-lookup.h. * wcsmbs/wcsxfrm.c: Likewise. * posix/fnmatch.c: Likewise. * posix/fnmatch_loop.c (internal_fnwmatch): When size == 0, call collseq_table_lookup. * locale/programs/3level.h: New file. * locale/programs/ld-ctype.c: (wcwidth_table, wctrans_table): Define by including "3level.h". * locale/programs/ld-collate.c (wchead_table, collidx_table, collseq_table): New types, defined by including "3level.h". (locale_collate_t): New wcheads_3level, wcseqorder_3level fields. (encoding_mask, encoding_byte): Remove. (utf8_encode): Use simple shifts instead. (collate_finish): When !oldstyle_tables, set plane_size and plane_cnt to 0, and initialize and fill wcheads_3level and wcseqorder_3level. (collate_output): New local variable tablewc_3level. When !oldstyle_tables, set table_size to 0 and names to NULL and fill tablewc_3level instead of tablewc. Change format of TABLEWC and COLLSEQWC entries written to the file. * locale/C-collate.c (collseqwc): Change format. (_nl_C_LC_COLLATE): Set HASH_SIZE and HASH_LAYERS to 0, change format of COLLSEQWC. * locale/Makefile (distribute): Add coll-lookup.h, programs/3level.h. 2000-08-27 Bruno Haible <haible@clisp.cons.org> * locale/programs/ld-ctype.c (MAX_CHARNAMES_IDX): New macro. (locale_ctype_t): New charnames_idx field. (ctype_startup): Initialize charnames_idx field. (find_idx): Speed up dramatically by using charnames_idx inverse table. 2000-08-27 Bruno Haible <haible@clisp.cons.org> * locale/C-ctype.c: Switch to new locale format. (_nl_C_LC_CTYPE_names): Remove array. (STRUCT_CTYPE_CLASS): New macro. (_nl_C_LC_CTYPE_class_{upper,lower,alpha,digit,xdigit,space,print, graph,blank,cntrl,punct,alnum}, _nl_C_LC_CTYPE_map_{toupper,tolower}): New three-level tables. (_nl_C_LC_CTYPE_width): Change from array to three-level table. (_nl_C_LC_CTYPE): Fix nstrings value. Set HASH_SIZE and HASH_LAYERS to 0. Change WIDTH format. Set CLASS_OFFSET and MAP_OFFSET. Add 12 class tables and 2 map tables at the end. * ctype/ctype-info.c (_nl_C_LC_CTYPE_names): Remove declaration. (_nl_C_LC_CTYPE_class_{upper,lower,alpha,digit,xdigit,space,print, graph,blank,cntrl,punct,alnum}, _nl_C_LC_CTYPE_map_{toupper,tolower}): New declarations. (b): Remove trailing semicolon. (__ctype_names, __ctype_width): Don't initialize. (__ctype32_wctype, __ctype32_wctrans, __ctype32_width): Initialize. 2000-08-27 Bruno Haible <haible@clisp.cons.org> * elf/dl-load.c (open_path): Add a argument telling whether *dirsp is guaranteed to be allocated with the same malloc() and may be passed to free(). (_dl_map_object): Update open_path calls. If rtld_search_dirs has been set to empty by an earlier open_path call, don't pass it again.
2000-08-28Update.Ulrich Drepper
* elf/Versions [ld] (GLIBC_2.2): Export _dl_debug_files. * elf/dl-close.c (_dl_close): Print debug message if object is not unloaded. * elf/dl-open.c (dl_open_worked): Print message about opencount before returning to caller.
2000-08-27Update.Ulrich Drepper
* sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add getdents64 syscall.
2000-08-26Update.Ulrich Drepper
2000-08-26 Ulrich Drepper <drepper@redhat.com> * elf/Makefile (distribute): Add unloadmod.c, reldepmod1.c, reldepmod2.c, reldepmod3.c, and reldepmod4.c. (tests): Add unload, reldep, reldep2, and reldep3. (modules-names): Add unloadmod, reldepmod1, reldepmod2, reldepmod3, and reldepmod4. Add rules to build and run unload, reldep, reldep2, and reldep3. * elf/dl-lookup.c (_dl_lookup_symbol): Add new parameter explicit. Don't create relocation dependency if it is nonzero. (_dl_lookup_symbol_skip): Remove relocation dependency stuff. This can never happen here. (_dl_lookup_versioned_symbol): Add new parameter explicit. Don't create relocation dependency if it is nonzero. (_dl_lookup_versioned_symbol_skip): Remove relocation dependency stuff. This can never happen here. * sysdeps/generic/ldsodefs.h: Change prototypes. * elf/dl-reloc.c (RESOLVE_MAP): Pass 0 in explicit parameter to _dl_lookup_up and _dl_lookup_versioned_symbol. (RESOLV): Likewise. * elf/dl-runtime.c (fixup): Likewise. (profile_fixup): Likewise. * elf/dl-libc.c (do_dlsym): Pass 1 in explicit parameter to _dl_lookup_symbol. * elf/dl-symbol.c (_dl_symbol_value): Likewise. * elf/rtld.c (dl_main): Likewise. * elf/dl-sym.c (_dl_sym): Pass 1 in explicit parameter to _dl_lookup_symbol if handle is not RTLD_DEFAULT. Always compute and pass down the caller map. (_dl_vsym): Likewise. * elf/reldep.c: New file. * elf/reldep2.c: New file. * elf/reldep3.c: New file. * elf/reldepmod1.c: New file. * elf/reldepmod2.c: New file. * elf/reldepmod3.c: New file. * elf/reldepmod4.c: New file. * elf/unload.c: New file. * elf/unloadmod.c: New file. * elf/do-lookup.h: Remove unused undef_name parameter. * elf/dl-lookup.c: Adjust callers.
2000-08-25Update.Ulrich Drepper
2000-08-25 Ulrich Drepper <drepper@redhat.com> * elf/Makefile (LDFLAGS-nodelete): Add -rdynamic. * elf/nodelete.c (fini_ran): New global variable. (do_test): Before every dlclose call clear fini_ran and test afterwards that it is not set by the destructors. * elf/nodelmod1.c: Add destructor which sets fini_ran. * elf/nodelmod2.c: Likewise. * elf/nodelmod4.c: Likewise.
2000-08-25Update.Ulrich Drepper
* elf/dl-close.c (_dl_close): Don't run destructors of objects marked DF_1_NODELETE.
2000-08-22Update.Ulrich Drepper
* elf/Makefile (distribute): Add dl-osinfo.h. * sysdeps/generic/dl-osinfo.h: New file. * sysdeps/unix/sysv/linux/dl-osinfo.h: New file. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Use DL_SYSDEP_OSCHECK if defined. * sysdeps/unix/sysv/linux/init-first.c: Perform kernel version test only for !SHARED case. Get the code from dl-osinfo.h.
2000-08-19Include <stdio.h> for puts prototype.Andreas Jaeger
2000-08-19Update.Ulrich Drepper
2000-08-19 Ulrich Drepper <drepper@redhat.com> * elf/Versions [ld] (GLIBC_2.2): Export _dl_check_map_versions. * elf/dl-deps.c (_dl_map_object_deps): If object was dependency of a dynamically loaded object remove old l_initfini list. * elf/dl-libc.c (free_mem): Used as __libc_subfreeres callback to remove some dynamically allocated memory blocks in the dynamic loading data structures. * elf/dl-load.c (add_name_to_object): Initialize dont_free to 0. * elf/dl-open.c (dl_open_workder): Don't call _dl_check_all_versions. Instead call _dl_check_map_versions only for the dependencies. * elf/rtld.c: Avoid unneccessary initializations. Mark l_libname information of initial objects as not free-able. * sysdeps/generic/ldsodefs.h (struct libname_list): Add dont_free element. * elf/filter.c: Call mtrace. * elf/restest1.c: Likewise. Close the objects. * elf/loadtest.c: Call mtrace. Check result of dlclose. Print more debug information. * elf/constload1.c: Add comment explaining not freed memory.
2000-08-19[ld] (GLIBC_2.2): Export _dl_check_map_versions.Ulrich Drepper
2000-08-17Update.Ulrich Drepper
2000-08-17 Ulrich Drepper <drepper@redhat.com> * stdio-common/printf_fp.c: Fix chars_needed computation. Patch by Greg McGary <greg@mcgary.org>. 2000-08-17 Jakub Jelinek <jakub@redhat.com> * elf/dl-load.c (_dl_map_object): Don't crash if both loader and _dl_loaded are NULL. 2000-08-17 Jakub Jelinek <jakub@redhat.com> * manual/arith.texi (feholdexcept): Returns 0 on success. 2000-08-17 Andreas Jaeger <aj@suse.de> * sysdeps/gnu/net/if.h (struct ifreq): Add ifru_newname. (ifr_newname): New. Reported by Andi Kleen <ak@suse.de>. 2000-08-17 Jakub Jelinek <jakub@redhat.com> * sysdeps/alpha/fpu/fedisblxcpt.c: New file. * sysdeps/alpha/fpu/feenablxcpt.c: New file. * sysdeps/alpha/fpu/fegetexcept.c: New file. 2000-08-16 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/xstatconv.c (xstat32_conv): Test sizes of buf->st_ino and kbuf->st_ino, not __st_ino. If _HAVE_STAT64___ST_INO is not defined, don't use __st_ino at all. * sysdeps/unix/sysv/linux/getdents64.c: Change path in #include directive so that only linux/getdents.c is used, not some architecture specific one. 2000-08-16 Jakub Jelinek <jakub@redhat.com> * sysdeps/i386/fpu/fegetexcept.c (fegetexcept): Return currently enabled, not disabled exceptions. * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise. * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Likewise. ($(addprefix $(objpfx),$(tests)), $(addprefix $(objpfx),$(librt-tests))): * include/link.h: Undo last patches. Hurd now has stat64.
2000-08-16Update.Ulrich Drepper
2000-08-15 Ulrich Drepper <drepper@redhat.com> * sysdeps/generic/ldsodefs.h: Declare _nl_nloaded. * elf/Versions [ld] (GLIBC_2.2): Add _nl_nloaded. * elf/dl-support.c: Define _nl_nloaded. * elf/rtld.c: Likewise. Increment _nl_nloaded for rtld itself. * elf/dl-object.c (_dl_new_object): Increment _nl_nloaded after adding object to global list. * elf/dl-close.c (_dl_close): Decrement _nl_nloaded after removing from _dl_loaded list. * elf/dl-load.c (_dl_map_object_from_fd): Likewise. * elf/dl-fini.c (_dl_fini): Use _nl_nloaded instead of computing the number here. * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Mask, not unmask, exceptions. * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Unmask, not mask, exceptions. Reported by Harvey J. Stein <hjstein@bfr.co.il>.