2001-09-18 Ulrich Drepper * malloc/malloc.c (ptmalloc_init): Handle _environ==NULL. Reported by B. D. Elliott [PR libc/2541]. 2001-09-18 Andreas Schwab * elf/dl-load.c (_dl_map_object_from_fd): Update handling of scope list, now that l_scope is a pointer. * elf/dl-open.c (dl_open_worker): Fix thinko when enlarging the scope list. 2001-09-18 kaz Kojima * sysdeps/sh/dl-machine.h (elf_machine_rela): Fix reverse condition. (elf_machine_rela_relative): Add a missing declaration. 2001-09-18 Jakub Jelinek * sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: New. * sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed: New. * sysdeps/unix/sysv/linux/configure.in: Add ia64 and s390 ldd-rewrite scripts. 2001-09-18 Ulrich Drepper * elf/ldd.bash.in: Update copyright message. 2001-09-17 H.J. Lu * hurd/hurdmalloc.c (bcopy): Removed. (realloc): Replace bcopy with memcpy. * hurd/path-lookup.c (file_name_path_scan): Likewise. * resolv/gethnamaddr.c (map_v4v6_address): Likewise. * sunrpc/rpcinfo.c (pmapdump): Likewise. * resolv/gethnamaddr.c (getanswer): Replace bcopy with memmove. (gethostbyaddr): Likewise. * sunrpc/rpcinfo.c (get_inet_address): Likewise. 2001-09-18 Ulrich Drepper * sysdeps/gnu/eval.c: Removed. 2001-09-18 Andreas Jaeger * sysdeps/i386/fpu/s_logbl.S: Move to ... * sysdeps/i386/fpu/s_logbl.c: ...here, use inline assembler. * sysdeps/i386/fpu/s_rintl.S: Move to ... * sysdeps/i386/fpu/s_rintl.c: ...here, use inline assembler. * sysdeps/i386/fpu/s_significandl.S: Move to ... * sysdeps/i386/fpu/s_significandl.c: ...here, use inline assembler. 2001-09-16 Ulrich Drepper * string/strcoll.c [USE_IN_EXTENDED_LOCALE_MODEL]: Correctly get nrules value. 2001-09-14 H.J. Lu * sysdeps/mips/fpu/libm-test-ulps: Updated. 2001-09-14 Ulrich Drepper * sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Fix a typo. Patch by Florian La Roche . * string/bits/string2.h (__strtok_r_1c): Optimize a bit. * sysdeps/unix/sysv/linux/net/ethernet.h: Correct references to ETHER_CRC_LEN. 2001-09-14 Andreas Schwab * posix/execl.c: Fix last argument of memcpy. Reported by Brian Sumner . * posix/execlp.c: Likewise. 2001-09-13 Jakub Jelinek * elf/dl-deps.c (_dl_map_object_deps): Fix filter handling if filter is already found earlier in the search scope. 2001-09-12 Jakub Jelinek * rt/Makefile (LDFLAGS-rt.so): Use shared thread library as librt's filter. 2001-09-13 Ulrich Drepper * sysdeps/powerpc/fpu/libm-test-ulps: Adjust expected errors for j0. 2001-09-12 Ulrich Drepper * config.h.in: Enforce optimization to be used. * Makeconfig (preprocess-versions): Define ASSEMBLER. * stdlib/Makefile (isomac-CFLAGS): Define to -O. * posix/Makefile (annexc-CFLAGS): Define to -O. * sysdeps/unix/make-syscalls.sh: Define __OPTIMIZE__ in use of asm_CPP. 2001-09-11 Ulrich Drepper * nscd/nscd_gethst_r.c: Don't expect IPv6 addresses for IPv4 lookup. Patch by Stephan Kulow. 2001-09-08 Ben Collins * sysdeps/arm/dl-machine.h (elf_machine_rel): Fix thinko in usage of RESOLVE() (r_type, not reloc->r_type). 2001-09-08 Ulrich Drepper * elf/dl-object.c: Avoid allocating extra memory block for name. * elf/dl-close.c (_dl_close): Don't free l_libname if it is not allocated separately. * elf/dl-load.c (_dl_map_object_from_fd): Likewise. 2001-09-08 H.J. Lu * po/zh_TW.po: Fix a typo. 2001-09-07 Tom Rix * sysdeps/unix/sysv/aix/sysv_termio.h: New file. 2001-08-26 Tom Rix * sysdeps/unix/sysv/aix/Makefile (aix-syscalls.o): More linker command line options. * sysdeps/unix/sysv/aix/start.s: New file, rework of start.c * sysdeps/unix/sysv/aix/start.c: Removed. * sysdeps/unix/sysv/aix/start-libc.c: New file. * sysdeps/unix/sysv/aix/init-first.c: New file. * sysdeps/unix/sysv/aix/fcntl.c: Alias __libc_fcntl to __fcntl. 2001-09-08 Ben Collins * sysdeps/arm/dl-machine.h: Fix usage of new _dl_signal_error() format. * sysdeps/generic/dl-machine.h: Likewise. * sysdeps/hppa/dl-fptr.c: Likewise. * sysdeps/ia64/dl-fptr.c: Likewise. * sysdeps/mach/hurd/dl-sysdep.c: Likewise. * sysdeps/mips/dl-machine.h: Likewise. * sysdeps/mips/mips64/dl-machine.h: Likewise. * sysdeps/powerpc/dl-machine.c: Likewise. 2001-09-07 Ben Collins * sysdeps/sparc/sparc32/dl-machine.h: Fix typo. * sysdeps/hppa/dl-lookupcfg.h: Forward declare struct link_map. 2001-09-08 Ulrich Drepper * elf/dl-lookup.c (add_dependency): Bump l_opencount of all dependencies if necessary. * elf/dl-close.c (_dl_close): If object has no r_list (i.e., wasn't loaded directly) determine length if l_initfini list by iterating over its elements. Minor optimizations. * elf/dl-deps.c (_dl_map_object_deps): Always add own map to l_initfini for dependency objects. If object was already loaded check whether any of the dependencies is already on the relocation dependency list. If yes, remove the latter. Minor optimizations. * elf/dl-lookup.c (add_dependency): Add check for self reference of maps here. Search l_initfini list only if the object was loaded directly and not only as a dependency. (_dl_lookup_symbol): Add relocation dependency also if object is not in global scope. Remove test for self-reference here. (_dl_lookup_versioned_symbol): Likewise. * elf/dl-object (_dl_new_object): Cleanup. Initialize dont_free element of first name record. * elf/loadtest.c: Add some more test to recognize early if an object wasn't unloaded. * elf/Makefile: Add rules to build and run reldep5. * elf/reldep5.c: New file. * elf/reldepmod5.c: New file. * elf/reldepmod6.c: New file. * elf/reldep2.c: Fix typo. 2001-09-07 Ulrich Drepper * include/link.h (struct link_map): Add l_scope_mem and l_scope_max elements. Change l_scope to be a pointer only. * elf/dl-object.c (_dl_new_object): Initialize l_scope and l_scope_max. * elf/dl-open.c (dl_open_worker): If dependency wasn't just opened here add searchlist of newly open file to the dependency's scope. * elf/dl-close.c (_dl_close): If dependency is used otherwise remove only searchlist from its scope. Free own scope array if necessary. * elf/Makefile (tests): Add dblload and dblunload now. 2001-09-06 Andreas Jaeger * sysdeps/ieee754/ldbl-128/e_lgammal_r.c: New file, contributed Stephen L Moshier. 2001-09-05 Ulrich Drepper * elf/Makefile: Add rules to build new tests. Don't run them yet since they both fail. * elf/dblload.c: New file. * elf/dblloadmod1.c: New file. * elf/dblloadmod2.c: New file. * elf/dblloadmod3.c: New file. * elf/dblunload.c: New file. 2001-09-04 Richard Henderson * elf/elf.h (R_ALPHA_OP_*, R_ALPHA_IMMED_*): Remove. (R_ALPHA_GPREL16): Rename from R_ALPHA_IMMED_GP_16. 2001-09-04 Ulrich Drepper Correct very misleading message for error in failed runtime relocation. * elf/dl-error.c (_dl_signal_error): Take extra parameter to describe place of the error. (_dl_signal_cerror): Likewise. * sysdeps/generic/ldsodefs.h: Adjust prototypes. * elf/dl-close.c: Likewise. * elf/dl-deps.c: Likewise. * elf/dl-load.c: Likewise. * elf/dl-lookup.c: Likewise. * elf/dl-open.c: Likewise. * elf/dl-reloc.c: Likewise. * elf/dl-sym.c: Likewise. * elf/dl-version.c: Likewise. * sysdeps/generic/dl-sysdep.c: Likewise. 2001-09-04 Jakub Jelinek * iconv/strtab.c (strtabinit): Initialize null Strent. (newstring): Move len == 0 handling... (strtabadd): ...here. If len == 1, return null Strent. When inserting a suffix of an existing string, check if it is not equal to some suffix already recorded. Copy left and right members over if adding longer string. 2001-09-04 Jakub Jelinek * sunrpc/rpc_cout.c (upcase): Account for trailing '\0'. * sysdeps/unix/sysv/linux/alpha/gethostname.c: Include . (__syscall_gethostname): Add prototype. 2001-09-04 Ulrich Drepper * elf/dl-object.c (_dl_new_object): Remove unnecessary if. 2001-09-02 Ulrich Drepper * elf/rtld.c (dl_main): Increment l_opencount for main binary. 2001-08-27 Roland McGrath * sysdeps/unix/sysv/gethostname.c (__gethostname): When LEN is too short, copy that much into NAME anyway before returning error. 2001-09-01 Richard Henderson * sysdeps/alpha/elf/Dist: Remove file. * sysdeps/alpha/elf/Makefile: Remove file. * sysdeps/alpha/elf/crtbegin.S: Remove file. * sysdeps/alpha/elf/crtend.S: Remove file. * sysdeps/alpha/elf/initfini.c: New file. 2001-09-01 Mark Kettenis * iconv/tst-iconv1.c: Include for wchar_t. * iconv/tst-iconv3.c: Likewise. 2001-09-01 Jakub Jelinek * sysdeps/generic/inttypes.h (__gwchar_t): Define to wchar_t for C++. 2001-09-01 Ulrich Drepper * iconv/gconv_cache.c: Rename variable cache to __gconv_cache and export it. * iconv/Versions (libc) [GLIBC_2.2.5]: Export __gconv_cache. * iconv/iconv_prog.c (insert_cache): New function. (print_known_names): If cache is used call insert_cache to use the information from the cache [PR libc/2509]. 2001-08-31 Ulrich Drepper * time/strptime.c (strptime_internal): Recognize 'l' format and handle it like 'I' for symmetry with strftime. 2001-08-31 Richard Henderson * elf/dl-support.c (_dl_cpuclock_offset): Protect with NONAVAIL. (HP_TIMING_AVAIL): Set to HP_SMALL_TIMING_AVAIL if present. * elf/rtld.c (HP_TIMING_AVAIL): Likewise. (print_statistics): Make scalar unsigned long long. * sysdeps/alpha/hp-timing.h: New file. 2001-08-31 Jakub Jelinek * stdio-common/perror.c (perror): Save errno early, pass it down to perror_internal. (perror_internal): Add errnum argument. 2001-08-31 Jakub Jelinek * sysdeps/alpha/dl-machine.h (elf_machine_rela): Remove unused code. Don't add old memory content for R_ALPHA_REFQUAD. 2001-08-30 Ulrich Drepper * crypt/md5-crypt.c (__md5_crypt_r): Compute used and required memory correctly. * sysdeps/unix/sysv/linux/ia64/ioperm.c (_ioperm): Use __open instead of open, __close instead of close, __getpagesize instead of getpagesize. * string/argz-stringify.c (__argz_stringify): Use __strnlen instead of strnlen. * include/string.h (strndupa): Redefine here to use __strnlen instead of strnlen. * string/strndup.c (__strndup): Use __strnlen not strnlen. * misc/syslog.c (vsyslog): Fix typo in last change (connect -> connected). 2001-08-30 Jakub Jelinek * sysdeps/alpha/dl-machine.h (elf_machine_rela): Don't handle R_ALPHA_RELATIVE if RTLD_BOOTSTRAP and HAVE_Z_COMBRELOC. Only check for rtld map if neither RTLD_BOOTSTRAP nor HAVE_Z_COMBRELOC is defined. * sysdeps/i386/dl-machine.h (elf_machine_rel): Similarly. * sysdeps/ia64/dl-machine.h (elf_machine_rel): Similarly. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rel): Similarly. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rel): Similarly. 2001-08-30 Ulrich Drepper * sysdeps/alpha/fpu/libm-test-ulps: Adjust j0 ULPs. 2001-08-30 Andreas Jaeger * sysdeps/ieee754/ldbl-128/e_jnl.c: New file, contributed Stephen L Moshier. 2001-08-30 Jakub Jelinek * sunrpc/etc.rpc (sgi_fam): Add. 2001-08-30 Ulrich Drepper * sysdeps/unix/sysv/linux/alpha/gethostname.c: New file. 2001-08-29 Ulrich Drepper * nis/nis_findserv.c (__nis_findfastest): Don't fail if reply received first is from a previous call. Patch by Alexander Belopolsky for [PR libc/3670]. 2001-08-29 Andreas Schwab * sysdeps/ia64/fpu/libm-test-ulps: Updated. 2001-08-25 Maciej W. Rozycki * config.make.in (INSTALL_SCRIPT): Define. * Makeconfig (INSTALL_SCRIPT): Define. * Makerules (do-install-script): New macro to install scripts using INSTALL_SCRIPT. (install-bin-script): New rule to install scripts with do-install-script. (install-bin-script-nosubdir): New rule. (install-no-libc.a-nosubdir): Add install-bin-script-nosubdir. (distinfo-vars): Add $(install-bin-script). * Rules (others): Likewise. * Makefile (glibcbug): Install with install-bin-script. * debug/Makefile (xtrace): Likewise. (catchsegv): Likewise. * elf/Makefile (ldd): Likewise. * malloc/Makefile (mtrace): Likewise. * timezone/Makefile (tzselect): Likewise. 2001-08-29 H.J. Lu * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Pass ELF_RTYPE_CLASS_PLT, instead of R_MIPS_REL32, to _dl_lookup_versioned_symbol () and _dl_lookup_symbol (). 2001-08-29 Andreas Schwab * sysdeps/m68k/fpu/libm-test-ulps: Updated. 2001-08-28 H.J. Lu * Makeconfig (combreloc-LDFLAGS): New variable. Add it to LDFLAGS.so, LDFLAGS-rtld, and +link. * config.make.in (have-z-combreloc): New variable. * configure.in: Substitute libc_cv_z_combreloc. 2001-08-29 Ulrich Drepper * po/sv.po: Update from translation team. * po/fr.po: Likewise. * po/da.po: Likewise. 2001-08-28 Maciej W. Rozycki * Makerules: Fix a typo: MD% -> MD5. 2001-08-28 Ulrich Drepper * sunrpc/rpc_hout.c (pargdef): Function must take pointer to object. Patch by Patrick Duval . 2001-08-28 Andreas Jaeger * manual/libc-texinfo.sh: Add entry about free manuals. * manual/contrib.texi (Contributors): Fix cross reference. * manual/libc.texinfo (Copying): Include freemanuals. * manual/Makefile (appendices): Add freemanuals. * manual/freemanuals.texi: New file. Patch by Brian Youmans <3diff@gnu.org>. * manual/libm-err-tab.pl: Pretty print more platforms, print a smaller table. * manual/math.texi (Errors in Math Functions): Fix grammar, start table on separate page. Patch by Brian Youmans <3diff@gnu.org>. 2001-08-27 Ulrich Drepper * misc/syslog.c (vsyslog): Try a bit harder to use syslogd. If the connection went down after we first used it try to connect again and resend the message before printing to the console. Reported by Coserea Gh. Tudor . 2001-08-27 Jakub Jelinek * string/tst-strlen.c (main): Test strnlen (, -1) too. * sysdeps/generic/strnlen.c (__strnlen): Fix for maxlens with top bit set. 2001-08-27 Ulrich Drepper * iconv/strtab.c (searchstring): Use correct length for comparison. (strtabadd): Account total size correct if new string has old string as substring. 2001-08-27 Jakub Jelinek * elf/rtld.c (dl_main): Update call to _dl_lookup_symbol. 2001-08-27 Andreas Jaeger * sysdeps/i386/fpu/libm-test-ulps (float): Add ulps for new tests. * math/libm-test.inc (j0_test): Add extra tests. * sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee754_j0l): Use |x|, not x, in Hankel approximation. Patches by Stephen L Moshier. 2001-08-26 Ulrich Drepper * sysdeps/ia64/dl-lookupcfg.h: Add forward declaration for struct link_map. * configure.in: Fix test for .rela.dyn section. * elf/dl-runtime.c: Update calls to _dl_lookup_*. 2001-08-26 Jakub Jelinek * elf/dl-reloc.c (RESOLVE_MAP, RESOLVE): Use elf_machine_type_class instead of elf_machine_lookup_noexec_p and elf_machine_lookup_noplt_p. Pass type_class to _dl_lookup_*. * elf/dl-lookup.c (_dl_lookup_symbol): Take type_clas parameter now. Pass around just type_class instead of noexec, noplt pair. (_dl_lookup_versioned_symbol): Likewise. (_dl_lookup_symbol_skip): Pass around just type_class instead of noexec, noplt pair. (_dl_lookup_versioned_symbol_skip): Likewise. (_dl_do_lookup, _dl_do_lookup_versioned): Likewise. * elf/do-lookup.h (do_lookup): Likewise. * include/link.h (struct link_map): Replace noexec and noplt fields in l_lookup_cache with type_class field. * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_PLT, ELF_RTYPE_CLASS_COPY): Define. Adjust prototypes for _dl_lookup_symbol and _dl_lookup_versioned_symbol. * sysdeps/alpha/dl-machine.h (elf_machine_lookup_noplt_p, elf_machine_lookup_noexec_p): Remove. (elf_machine_type_class): Define. * sysdeps/arm/dl-machine.h: Likewise. * sysdeps/hppa/dl-machine.h: Likewise. * sysdeps/cris/dl-machine.h: Likewise. * sysdeps/i386/dl-machine.h: Likewise. * sysdeps/ia64/dl-machine.h: Likewise. * sysdeps/m68k/dl-machine.h: Likewise. * sysdeps/mips/mips64/dl-machine.h: Likewise. * sysdeps/mips/dl-machine.h: Likewise. * sysdeps/powerpc/dl-machine.h: Likewise. * sysdeps/sparc/sparc32/dl-machine.h: Likewise. * sysdeps/sparc/sparc64/dl-machine.h: Likewise. * sysdeps/sh/dl-machine.h: Likewise. * sysdeps/s390/s390-32/dl-machine.h: Likewise. * sysdeps/s390/s390-64/dl-machine.h: Likewise. 2001-08-26 Ulrich Drepper * manual/message.texi (Advanced gettext functions): Change description of plural forms for Slovak. Reported by Marcel Telka . * manuaL/time.texi (Low-Level Time String Parsing): Fix description of %z. Reported by C. Scott Ananian . 2001-08-26 Jakub Jelinek * sysdeps/s390/s390-32/dl-machine.h (elf_machine_lazy_rel): Fix a typo. Patch by Florian La Roche . 2001-08-26 Ulrich Drepper * include/link.h (struct link_map): Add l_lookup_cache element. * elf/dl-reloc.c (RESOLVE): Add symbol caching here. (RESOLVE_MAP): Likewise. (_dl_relocate_object): Remove cache initialization. * elf/dl-lookup.c: Rip out cache handling code. * sysdeps/generic/ldsodefs.h: Remove lookup_cache struct and variable declarations. * elf/dl-lookup.c (_dl_lookup_symbol): Reorder some conditions and remove some __builtin_expect. (_dl_lookup_versioned_symbol): Likewise. * config.h.in: Add HAVE_Z_COMBRELOC. * configure.in: Add test for -z combreloc. * sysdeps/i386/dl-machine.h (elf_machine_rel): Minor cleanups and optimizations. Use HAVE_Z_COMBRELOC to avoid generaton of R_386_RELATIVE handling for ld.so startup. Reduce RTLD_BOOTSTRAP case to almost no code. 2001-08-25 Ulrich Drepper * po/tr.po: Update from translation team. 2001-08-24 Andreas Jaeger * iconv/Makefile (extra-objs): Add iconvconfig-modules so that make clean works. 2001-08-24 Ulrich Drepper * elf/rtld.c (print_statistics): Printf % after percent values. * elf/dl-misc.c (_dl_debug_vdprintf): Implement %%. * elf/dl-lookup.c (_dl_lookup_symbol): If we use the cache we don't have to compute the hash value and initialize current_value. Move reference_name variable to where it is needed. (_dl_lookup_versioned_symbol): Likewise. 2001-08-24 Roland McGrath * string/tester.c (test_strerror): Don't use _sys_errlist/_sys_nerr. Just test that strerror returns non-null for a few errno codes. 2001-08-23 Roland McGrath * hurd/Versions (libc: GLIBC_2.2.5): New set; add _hurd_raise_signal, _hurdsig_interrupt_timeout, _hurdsig_fault_preemptor. * sysdeps/posix/shm_unlink.c (shm_unlink): __unlink -> unlink. * mach/Versions (libc: GLIBC_2.2.5): New set; add __mach_msg_destroy, __mach_reply_port. 2001-08-24 Ulrich Drepper * nss/test-netdb.c (test_hosts): Don't segfault if gethostname returns NULL. * elf/do-rel.h (elf_dynamic_do_rel): Fix problem with ld.so startup. Explicitly remove lazy part for RTLD_BOOTSTRAP since gcc doesn't do it. * elf/rtld.c: Include . * elf/dl-reloc.c: Likewise. 2001-08-24 Maciej W. Rozycki * sysdeps/unix/sysv/linux/mips/configure.in: Define AC_SUBST to empty to prevent junk from being generated. * sysdeps/unix/sysv/linux/mips/configure: Regenerated. 2001-08-24 Jakub Jelinek * elf/do-rel.h (elf_dynamic_do_rel): If l_addr is 0, skip relative records. Rename endrel to relative, initialize it to r, and use it in elf_machine_rel_relative calls. Point r after relative relocs. 2001-08-24 Ulrich Drepper * sysdeps/i386/dl-machine.h (elf_machine_rel): Correct prediction of R_386_NONE. 2001-08-24 Jakub Jelinek * elf/do-rel.h (elf_machine_rel_relative): Define for rela if necessary. Undefine newly defined macros at the end. * sysdeps/hppa/dl-machine.h (elf_machine_rela_relative): Rename from elf_machine_rel_relative. * sysdeps/cris/dl-machine.h (elf_machine_rela_relative): Likewise. * sysdeps/m68k/dl-machine.h (elf_machine_rela_relative): Likewise. * sysdeps/powerpc/dl-machine.h (elf_machine_rela_relative): Likewise. * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela_relative): Likewise. * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela_relative): Likewise. * sysdeps/ia64/dl-machine.h (elf_machine_rela_relative): Likewise. Fix argument types. * sysdeps/alpha/dl-machine.h (elf_machine_rela_relative): Likewise. Fix argument types. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela_relative): Likewise. Fix argument types. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela_relative): Likewise. Fix argument types. * sysdeps/sh/dl-machine.h (elf_machine_rela_relative): Likewise. Fix argument types. * sysdeps/mips/dl-machine.h (elf_machine_rel_relative): Use ElfW(Rel) in argument. * sysdeps/mips/mips64/dl-machine.h (elf_machine_rel_relative): New function. 2001-08-24 Alexandre Oliva * sysdeps/sh/dl-machine.h (elf_machine_rela): Fix typo. 2001-08-24 Andreas Jaeger * sysdeps/ieee754/ldbl-128/e_j1l.c: New file, contributed by Stephen L Moshier . 2001-08-24 Ulrich Drepper * elf/do-rel.h (elf_dynamic_do_rel): RELATIVE relocations comes first if RELCOUNT is set. * elf/do-rel.h (elf_dynamic_do_rel): If not relocating lazily, don't call elf_machine_rel for the last DT_RELCOUNT relocations but instead elf_machine_rel_relative. * sysdeps/alpha/dl-machine.h: Define elf_machine_rel_relative. Minor optimizations. * sysdeps/arm/dl-machine.h: Likewise. * sysdeps/cris/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/powerpc/dl-machine.h: Likewise. * sysdeps/s390/s390-32/dl-machine.h: Likewise. * sysdeps/s390/s390-64/dl-machine.h: Likewise. * sysdeps/sh/dl-machine.h: Likewise. * sysdeps/sparc/sparc32/dl-machine.h: Likewise. * sysdeps/sparc/sparc64/dl-machine.h: Likewise. 2001-08-23 Roland McGrath * rt/tst-aio4.c [! SIGRTMIN] (SIGRTMIN, SIGRTMAX): Define as -1. * sysdeps/mach/hurd/bits/libc-lock.h: New file, initially copied from sysdeps/mach version. Implement counting ("recursive") mutexes on top of cthreads mutexes. * sysdeps/mach/hurd/bits/stdio-lock.h: File removed; generic now works. * sysdeps/generic/bits/stdio-lock.h (_IO_lock_initializer): Define to _LIBC_LOCK_RECURSIVE_INITIALIZER if defined, else do an #error. (__libc_cleanup_region_start, __libc_cleanup_region_end, __libc_clean_end): Define these to call the cleanup function after normal exit when they're supposed to. * sysdeps/mach/bits/libc-lock.h (__libc_cleanup_region_start): Take new first arg DOIT, a boolean saying whether to really install any cleanup handler. (__libc_cleanup_region_end): Do nothing if start's DOIT arg was zero. (__libc_cleanup_end): Likewise. * sysdeps/generic/bits/libc-lock.h: Same changes. * stdio-common/vfscanf.c (LOCK_STREAM): Pass new arg. * stdio-common/vfprintf.c (buffered_vfprintf, vfprintf): Likewise. * sysdeps/mach/hurd/bits/stdio-lock.h (_IO_cleanup_region_start): Likewise. * misc/syslog.c (vsyslog, openlog, closelog): Likewise. * sysdeps/generic/bits/stdio-lock.h (_IO_cleanup_region_start, _IO_cleanup_region_start_noarg): Likewise. 2001-08-23 Jakub Jelinek * elf/ldconfig.c (search_dir): Remove stale symlinks. 2001-08-23 Jakub Jelinek * elf/dl-lookup.c (lookup_cache, lookup_cache_versioned): New. (_dl_lookup_symbol): Lookup relocations in cache and store successfull lookups in cache. (_dl_lookup_versioned_symbol): Likewise. * elf/dl-reloc.c (_dl_relocate_object): Initialize cache for relocation lookup. * elf/rtld.c (print_statistics): Output _dl_num_cache_relocations. * sysdeps/generic/ldsodefs.h (struct lookup_cache): New definition. (lookup_cache, lookup_cache_versioned): Add declarations. 2001-08-23 Ulrich Drepper * stdlib/tst-random.c (main): Swap parameters in fail call. Patch by Pete Bevin . 2001-08-23 Jakub Jelinek * sysdeps/generic/inttypes.h: Use __gwchar_t instead of __wchar_t. 2001-08-23 Ulrich Drepper * malloc/obstack.c: Indent preprocessor directives. Patch by Jim Meyering . * po/ja.po: Update from translation team. 2001-08-23 Roland McGrath * libio/tst-ungetwc1.c (main): Add a const to quiet a warning. * nss/test-netdb.c (test_hosts): Don't use MAXHOSTNAMELEN. Instead, use dynamic buffer to test gethostname's ENAMETOOLONG error. 2001-08-22 Roland McGrath * sysdeps/generic/ldsodefs.h (_dl_load_lock): Declare it here with __libc_lock_define_recursive. * elf/dl-open.c: Don't declare it here any more. * elf/dl-close.c: Likewise. * elf/dl-lookup.c: Likewise. * elf/dl-iteratephdr.c: Likewise. * elf/dl-lookup.c (add_dependency): Use __libc_lock_lock_recursive and __libc_lock_unlock_recursive. * elf/dl-close.c (_dl_close): Likewise * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise * elf/dl-open.c (_dl_open): Likewise * sysdeps/generic/bits/libc-lock.h (__libc_lock_define_recursive): New macro. * sysdeps/generic/bits/stdio-lock.h (_IO_lock_t): Use it. (_IO_lock_lock): Use __libc_lock_lock_recursive. (_IO_lock_unlock): Use __libc_lock_unlock_recursive. * conform/conformtest.pl (checknamespace): Sort the output list. * sysdeps/generic/bits/poll.h (POLLWRBAND): New alias for POLLOUT. (POLLRDNORM, POLLRDBAND, POLLWRNORM, POLLWRBAND): Make these definitions conditional on [__USE_XOPEN]. * sysdeps/mach/hurd/bits/fcntl.h (O_ASYNC, O_FSYNC, O_SYNC): Define these unconditionally, not only use [__USE_BSD], so as to match the sysdeps/unix/sysv/linux files. 2001-08-22 Ulrich Drepper * test-skeleton.c (add_temp_file): Add __attribute__ ((unused)) to avoid warnings. * dlfcn/tst-dladdr.c (do_test): Get address of ref1 using DL_LOOKUP_ADDRESS. 2001-08-22 Roland McGrath * sysdeps/generic/bits/sigaction.h (struct sigaction): Fix up conditionalization of sa_handler/sa_sigaction member types to match the sysdeps/unix/sysv/linux file. 2001-08-22 Ulrich Drepper * elf/dl-addr.c (_dl_addr): Handle broken binaries with zero symbol sizes a bit better. * sysdeps/ia64/strncpy.S: Complete rewrite. Contributed by Jakub Jelinek . * string/stratcliff.c (main): Add strncpy test. 2001-08-22 Roland McGrath * sysdeps/generic/dl-environ.c: Include and , and don't declare unsetenv or _environ directly. (unsetenv): Return int, not void. Use __environ instead of _environ. 2001-08-01 Mark Kettenis * sysdeps/unix/bsd/bsd4.4/Makefile: New file. * sysdeps/unix/bsd/bsd4.4/Versions: New file. * sysdeps/unix/bsd/bsd4.4/cmsg_nxthdr.c: New file. * sysdeps/unix/bsd/bsd4.4/bits/socket.h (__cmsg_nxthdr): Correct test for cmsg struct size. 2001-04-23 Paul Eggert * posix/getopt.h (getopt_long, getopt_long_only, _getopt_internal): Rename __argc to ___argc in prototypes to avoid compatibility problems with systems that reserve the identifier "__argc". Similarly for __argv. 2001-08-21 Roland McGrath * stdio-common/tst-fseek.c: Include for `time' declaration. * mach/Makefile (tests): Removed. * mach/hello.c: File removed. 2001-08-22 Ulrich Drepper * po/sv.po: Update from translation team. * stdio-common/vfscanf.c: Fix handling of %l[]. Reported by Mitsuru Chinen . * libio/Makefile (tests): Add tst-sscanf. * libio/tst-sscanf.c: New file. * elf/dl-addr.c (_dl_addr): Fix tests to determine dli_sname. * malloc/mtrace.c (tr_where): dli_sname always points to a non-empty string if != NULL. Reported by Tim Janik . 2001-08-22 Jakub Jelinek * sunrpc/xdr_rec.c (xdrrec_create): Fix buf sizes before allocating buf. Free resources on failure. * sunrpc/svc_unix.c (svcunix_create): Free resources on failure. (makefd_xprt): Likewise. * sunrpc/svc_udp.c (svcudp_bufcreate): Likewise. * sunrpc/svc_tcp.c (svctcp_create, makefd_xprt): Likewise. * sunrpc/auth_unix.c (authunix_create): Likewise. 2001-08-21 Jakub Jelinek * string/strnlen.c: Remove. * sysdeps/generic/strnlen.c: New. * sysdeps/i386/i486/bits/string.h (strnlen): Remove. 2001-08-21 Roland McGrath * sysdeps/mach/i386/machine-sp.h (__thread_stack_pointer): Define this as a macro, not an extern inline function. * hurd/Versions (GLIBC_2.2.5): New set, define __hurd_fail here. * Versions.def (libc): Add GLIBC_2.2.5 set. * hurd/hurd.h (_HURD_H_EXTERN_INLINE): New macro. (__hurd_fail): Use that instead of _EXTERN_INLINE in decl. 2001-08-20 Roland McGrath * hurd/hurdlookup.c (__hurd_file_name_lookup): Fail with ENOENT for "". (__hurd_file_name_split, __hurd_directory_name_split): Likewise. 2001-08-21 Ulrich Drepper * string/bits/string2.h: Remove strnlen optimization here. * sysdeps/i386/i486/bits/string.h: Add it here. 2001-08-21 Wolfram Gloger * malloc/malloc.c: Make access to ..._hook pointers thread-safe. 2001-08-21 Ulrich Drepper * po/gl.po: Update from translation team. 2001-08-20 Ulrich Drepper * misc/error.c (error_tail): Use fputws_unlocked instead of fputws. * misc/err.c (convert_and_print): Likewise. * malloc/obstack.c (print_and_abort): Use fprintf instead of two function calls. 2001-08-20 Martin Schwidefsky * sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Revert the change of the gregset_t type. * sysdeps/unix/sysv/linux/s390/s390-64/sys/ucontext.h: Likewise. 2001-08-20 kaz Kojima * sysdeps/unix/sysv/linux/sh/sysdep.S: Align errno. 2001-08-20 Ulrich Drepper * posix/regex.c (truncate_wchar): Use wcrtomb not wctomb. * string/strnlen.c: Fix the implementation. We cannot use memchr. 2001-08-18 Mark Kettenis * sysdeps/mach/hurd/i386/init-first.c (init): Initialize __environ before calling the cthreads initialization code. 2001-08-20 Ulrich Drepper * argp/argp-help.c: Fix two problems introduced in last change. * include/dirent.h: Include first. 2001-08-19 Ulrich Drepper * io/fts.c (fts_safe_changedir): Use __fxstat64 instead of __fstat. * sunrpc/svcauth_des.c (_svcauth_des): Avoid using bcopy. * sunrpc/xdr_rec.c: Likewise. * sunrpc/xdr_mem.c: Likewise. * sunrpc/svc_authux.c (_svcauth_unix): Likewise. * sunrpc/rpc_cmsg.c: Likewise. * sunrpc/getrpcport.c (getrpcport): Likewise. * sunrpc/clnt_simp.c (callrpc): Likewise. * sunrpc/clnt_gen.c (clnt_create): Likewise. * string/envz.c: Likewise. * po/ko.po: Update from translation team. * argp/argp-help.c: Handle wide oriented stderr stream. 2001-08-18 Ulrich Drepper * sysdeps/generic/strtol.c: Little optimizations. Add some __builtin_expect. * conform/conformtest.pl: test requires . * wcsmbs/wchar.h (wcwdith): Change parameter type to wchar_t. * wcsmbs/wcwidth.c (wcwdith): Likewise. * wcsmbs/wcwidth.h (internal_wcwdith): Likewise. * conform/data/unistd.h-data: Remove _SC_MULTIPLE_PROCESS. * conform/data/ucontext.h-data: Fix typos in ucontext_t element tests. * time/time.h (struct timespec): Use __time_t for tv_sec element. * sysdeps/generic/inttypes.h: Define __wchar_t. Use it instead of wchar_t for function declarations and defintions. * misc/sys/select.h: Define __need_time_t before including . Define suseconds_t if it hasn't happened yet. * iconv/gconv.h: Define __need_wchar_t before including . * conform/data/sys/uio.h-data: Allow UIO_MAXIOV to be defined. * sysdeps/generic/stdint.h: Don't get definition of wchar_t from . * conform/data/stddef.h-data: Remove wint_t. * conform/conformtest.pl: Change namespace test to take #undef lines into account. * conform/data/netinet/in.h-data: Fix typo in allow-header line. * conform/data/sys/socket.h-data: Add sockatmark. 2001-08-17 Ulrich Drepper * io/fts.c: Update from recent BSD source. 2001-08-17 Roland McGrath * stdio-common/perror.c (perror) [! USE_IN_LIBIO]: Don't use _IO_fwide. * misc/error.c (error_tail, error, error_at_line) [! USE_IN_LIBIO]: Likewise. 2001-08-17 Ulrich Drepper * locale/duplocale.c (__duplocale): Also initialize the special __ctype_* elements. * conform/data/netdb.h-data: Adjust gai_strerror return type. 2001-08-17 Andreas Jaeger * misc/getpass.c: Include wchar.h for prototypes. * malloc/obstack.c: Likewise. 2001-08-17 Ulrich Drepper * sunrpc/svc_simple.c (universal): Use __write instead of write. * wcsmbs/wcscoll.c: Also define __wcscoll. * include/wchar.h: Declare __wcscoll. * libio/fwprintf.c: Use __vfwprintf instead of vfwprintf. * libio/vwprintf.c: Likewise. * libio/wprintf.c: Likewise. * iconv/gconv_cache.c: Use __munmap instead of munmap. 2001-08-16 Ulrich Drepper * posix/regex.c [_LIBC] (convert_mbs_to_wcs): Use __mbrtowc instead of mbrtowc. [_LIBC]: Use __iswctype instead of iswctype, __wcslen instead of wcslen, and __wcscoll instead of wcscoll. * sysdeps/unix/sockatmark.c (sockatmark): Use __ioctl instead of ioctl. * sysdeps/unix/sysv/linux/gai_sigqueue.c (__gai_sigqueue): Use __getuid instead of getuid. * stdio-common/perror.c (perror): Use __close instead of close. * iconv/gconv_cache.c (__gconv_load_cache): Likewise. * libio/freopen.c (freopen): Likewise. * libio/freopen64.c (freopen64): Likewise. * libio/tst-ungetwc2.c (main): Define str const. * include/wchar.h: Add prototypes for __fwprintf and __vfwprintf. * libio/fwprintf.c: Also define __fwprintf. * stdio-common/vfprintf.c [COMPILE_WPRINTF]: Also define __vfwprintf. * argp/argp-fmtstream.c: Handle wide oriented stderr stream. * assert/assert-perr.c: Likewise. * assert/assert.c: Likewise. * gmon/gmon.c: Likewise. * inet/rcmd.c: Likewise. * malloc/obstack.c: Likewise. * misc/err.c: Likewise. * misc/error.c: Likewise. * misc/getpass.c: Likewise. * posix/getopt.c: Likewise. * resolv/res_hconf.c: Likewise. * stdio-common/perror.c: Likewise. * stdio-common/psignal.c: Likewise. * stdlib/fmtmsg.c: Likewise. * sunrpc/auth_unix.c: Likewise. * sunrpc/clnt_perr.c: Likewise. * sunrpc/clnt_tcp.c: Likewise. * sunrpc/clnt_udp.c: Likewise. * sunrpc/clnt_unix.c: Likewise. * sunrpc/svc_simple.c: Likewise. * sunrpc/svc_tcp.c: Likewise. * sunrpc/svc_udp.c: Likewise. * sunrpc/svc_unix.c: Likewise. * sunrpc/xdr.c: Likewise. * sunrpc/xdr_array.c: Likewise. * sunrpc/xdr_rec.c: Likewise. * sunrpc/xdr_ref.c: Likewise. * sysdeps/generic/wordexp.c: Likewise. * po/it.po: Update from translation team. * misc/err.c: Handle wide oriented stderr stream. 2001-08-14 Tom Rix * iconv/gconv_cache.c (find_module): Add #ifndef STATIC_GCONV. * iconv/Makefile: Fix gconv_cache.c CFLAGS. 2001-08-13 Tom Rix * sysdeps/unix/sysv/aix/Makefile: Add rule to import kernel symbols. * sysdeps/unix/sysv/aix/bits/types.h: Fix type of __id_t, __useconds_t and __intptr_t. 2001-08-15 Martin Schwidefsky * sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S (__getcontext): Store the access registers to the ucontext structure. * sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S (__getcontext): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/setcontext.S (__setcontext): Load the access registers from the ucontext structure. * sysdeps/unix/sysv/linux/s390/s390-64/setcontext.S (__setcontext): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/ucontext_i.h: Adjust the SC_xxx offsets to the new ucontext layout. * sysdeps/unix/sysv/linux/s390/s390-64/ucontext_i.h: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Fix the layout of the ucontext structure. * sysdeps/unix/sysv/linux/s390/s390-64/sys/ucontext.h: Likewise. 2001-08-15 Ulrich Drepper * misc/error.c (error): Handle wide oriented stderr stream correctly. (error_at_line): Likewise. * stdio-common/perror.c (perror): Implement according to standard. The stream orientation must not be changed if the stream was not oriented before the call. * stdio-common/Makefile (tests): Add tst-perror. * stdio-common/tst-perror.c: New file. See ChangeLog.12 for earlier changes.