2002-02-02 Paul Eggert * src/mktime.c [defined DEBUG && STDC_HEADERS]: Include . (__mktime_internal): If no tm_isdst is requested, prefer solutions with tm_isdst > 0 when the requested time falls within a spring-forward gap [PR libc/2894]. 2002-02-03 Andreas Schwab * stdio-common/tst-rndseek.c: Increase timeout. 2002-02-02 Ulrich Drepper Change ld.so to not use functions which are exported. One cannot interpose them anyway. Use INT() to mark uses, INTDEF() to mark definitions. * include/libc-symbols.h: Define INT and INTDEF. * sysdeps/generic/ldsodefs.h: Declare _dl_debug_printf_internal, _dl_signal_error_internal, _dl_map_object_internal, _dl_map_object_deps_internal, _dl_lookup_symbol_internal, _dl_lookup_versioned_symbol_internal, _dl_relocate_object_internal, _dl_debug_state_internal, _dl_start_profile_internal, and _dl_unload_cache_internal. * include/dlfcn.h: Declare _dl_catch_error_internal. * elf/rtld.c: Use INT for calls to any of the *_internal functions above. Add INTDEF to function definitions. * elf/dl-debug.c: Likewise. * elf/dl-deps.c: Likewise. * elf/dl-dst.h: Likewise. * elf/dl-error.c: Likewise. * elf/dl-fini.c: Likewise. * elf/dl-init.c: Likewise. * elf/dl-load.c: Likewise. * elf/dl-lookup.c: Likewise. * elf/dl-misc.c: Likewise. * elf/dl-open.c: Likewise. * elf/dl-profile.c: Likewise. * elf/dl-reloc.c: Likewise. * elf/dl-runtime.c: Likewise. * elf/dl-version.c: Likewise. * elf/do-lookup.h: Likewise. * sysdeps/generic/dl-cache.c: Likewise. * sysdeps/generic/dl-sysdep.c: Likewise. * sysdeps/alpha/dl-machine.h (RTLD_START): Call _dl_init_internal instead of _dl_init. * 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/mips/mips64/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. * sysdeps/x86_64/dl-machine.h: Likewise. * sysdeps/powerpc/dl-start.S (_dl_start_user): Likewise. * elf/Versions: Don't export _dl_check_all_versions, _dl_sysdep_start, and _dl_debug_initialize. * elf/dl-object.c (_dl_new_object): Avoid using strrchr. We have more information. * elf/rtld.c (dl_main): Avoid strrchr. * sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): Use the result of readlink. Search from the back for '/'. * elf/dl-profile.c (_dl_start_profile): Help the compiler to avoid strncpy if possible. * sysdeps/generic/dl-environ.c (unsetenv): Optimize. Don't use strncmp. * elf/dl-load.c (is_dst): Optimize. Don't call strncmp twice. * elf/rtld.c (process_dl_debug): Optimize. Avoid calls to strncmp, strspn, and strcspn. (process_envvars): Don't use strcspn. * elf/dl-load.c (_dl_dst_count): Fix possible endless loop. (_dl_dst_substitute): Likewise. 2002-02-01 Ulrich Drepper * elf/do-rel.h (elf_dynamic_do_rel): Help the compiler recognize code which is never used when relocating ld.so itself. * elf/dynamic-link.h (elf_get_dynamic_info): Optimize a bit for starting ld.so itself. Move l_addr variable initialization closer to use. (_ELF_DYNAMIC_DO_RELOC): Help the compiler optimize a bit. 2002-02-01 Jakub Jelinek * Versions.def (libc): Add GLIBC_PRIVATE. (libdb, libnss_db, libdb1): Remove. (libnss_compat, libnss_dns, libnss_files, libnss_hesiod, libnss_nis, libnss_nisplus): Move all symbols to GLIBC_PRIVATE. (libpthread): Add GLIBC_PRIVATE. (libresolv): Likewise, remove GLIBC_2.1. (ld): Add GLIBC_PRIVATE, remove GLIBC_2.1.1, GLIBC_2.2, GLIBC_2.2.1, GLIBC_2.2.3, GLIBC_2.3. * catgets/Versions (__open_catalog): Move to GLIBC_PRIVATE. * elf/Versions (_dl_open, _dl_close, _dl_addr, _dl_init_first, _dl_sym, _dl_vsym): Likewise. (__libc_enable_secure, __libc_stack_end, _dl_argv, _dl_catch_error, _dl_check_all_versions, _dl_check_map_versions, _dl_debug_initialize, _dl_debug_printf, _dl_debug_state, _dl_dst_count, _dl_dst_substitute, _dl_init, _dl_lookup_symbol, _dl_lookup_symbol_skip, _dl_lookup_versioned_symbol, _dl_lookup_versioned_symbol_skip, _dl_map_object, _dl_map_object_deps, _dl_out_of_memory, _dl_relocate_object, _dl_signal_error, _dl_start_profile, _dl_starting_up, _dl_sysdep_start, _dl_unload_cache, _rtld_global): Likewise. (_dl_object_relocation_scope): Remove. * hesiod/Versions: Move all symbols to GLIBC_PRIVATE. * iconv/Versions (__gconv_alias_db, __gconv_modules_db, __gconv_cache): Move to GLIBC_PRIVATE. * inet/Versions (__internal_endnetgrent, __internal_getnetgrent_r, __internal_setnetgrent): Likewise. * io/Versions (__libc_open, __libc_close, __libc_read, __libc_write, __libc_lseek, __libc_fcntl, __libc_open64, __libc_lseek64): Likewise. * locale/Versions (__collate_element_hash, __collate_element_strings, __collate_symbol_classes, __collate_symbol_hash, __collate_symbol_strings, _nl_current_LC_COLLATE, _nl_current_LC_CTYPE): Likewise. * misc/Versions (__libc_fsync, __libc_msync): Likewise. * nis/Versions (libnss_compat): Move all symbols to GLIBC_PRIVATE. (libnss_nis, libnss_nisplus): Likewise. * nss/Versions (_nss_files_parse_grent, _nss_files_parse_pwent, _nss_files_parse_spent): Move to GLIBC_PRIVATE. (libnss_files): Move all symbols to GLIBC_PRIVATE. * posix/Versions (__libc_wait, __libc_waitpid, __libc_pause, __libc_nanosleep, __libc_fork, __libc_pread, __libc_pread64, __libc_pwrite, __libc_pwrite64): Move to GLIBC_PRIVATE. * resolv/Versions (__gai_sigqueue, __ns_name_unpack, __ns_name_ntop, __ns_get16, __ns_samename): Likewise. (libnss_dns): Move all symbols to GLIBC_PRIVATE. * setjmp/Versions (__libc_longjmp, __libc_siglongjmp): Move to GLIBC_PRIVATE. * socket/Versions (__libc_accept, __libc_send, __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv, __libc_sendto, __libc_connect): Likewise. * stdio-common/Versions (_itoa_lower_digits, _itoa_upper_digits): Likewise. * stdlib/Versions (__libc_system): Likewise. * sunrpc/Versions (__rpc_thread_destroy): Likewise. * sysdeps/hppa/Versions: Move all symbols to GLIBC_PRIVATE. * sysdeps/ia64/fpu/Versions: Likewise. * sysdeps/ia64/Versions: Likewise. * sysdeps/unix/sysv/linux/ia64/Versions: Likewise. * sysdeps/unix/sysv/linux/i386/Versions (__modify_ldt): Move to GLIBC_PRIVATE. * sysdeps/unix/sysv/linux/x86_64/Versions (__modify_ldt): Likewise. * sysdeps/unix/sysv/linux/Versions (__syscall_rt_sigqueueinfo, __libc_sigaction): Likewise. * termios/Versions (__libc_tcdrain): Likewise. * misc/sys/cdefs (__attribute_noinline__): Define. * elf/dl-lookup.c (_dl_do_lookup, _dl_do_lookup_versioned): Add __attribute_noinline__. * elf/Makefile (rtld-routines): Add dl-xstat64, dl-fxstat64. * elf/dl-xstat64.c: New file. * elf/dl-fxstat64.c: New file. * sysdeps/unix/sysv/linux/fxstat64.c: If RTLD_STAT64 is defined, don't export __fxstat64 at multiple versions. * sysdeps/unix/sysv/linux/lxstat64.c: Similarly. * sysdeps/unix/sysv/linux/xstat64.c: Similarly. 2002-01-18 Isamu Hasegawa * locale/program/ld-collate.c (collate_finish): Assign a wide char collation sequence value to multi character collating elements, and avoid over writing by non-character elements. 2002-02-01 Ulrich Drepper * elf/Makefile (distribute): Add dl-procinfo.c. * sysdeps/unix/sysv/linux/i386/Dist: Remove dl-procinfo.c. * sysdeps/unix/sysv/linux/arm/Dist: Likewise. 2002-02-01 Jakub Jelinek * sysdeps/generic/ldsodefs.h (_dl_load_lock): Remove duplicate definition. * sysdeps/ia64/hp-timing.h: Move _dl_hp_timing_overhead in _rtld_global struct. * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise. * sysdeps/sparc/sparc64/hp-timing.c: Likewise. * sysdeps/sparc/sparc64/hp-timing.h: Likewise. * sysdeps/sparc/sparc64/Makefile: Make hp-timing static only. * sysdeps/unix/sysv/aix/init-first.c (_dl_fpu_control, _dl_fpu_control_set): Remove unused externs. * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Move procinfo related variables in _rtld_global struct. * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise. * sysdeps/unix/sysv/linux/init-first.c (_dl_fpu_control_set): Remove unused extern. 2002-02-01 Ulrich Drepper * sysdeps/generic/dl-procinfo.c: New file. 2002-02-01 Andreas Schwab * sysdeps/m68k/dl-machine.h: Don't use multi-line string literals. 2002-02-01 Ulrich Drepper * elf/rtld.c (_dl_start): Mark as internal_function. * sysdeps/i386/dl-machine.h (RTLD_START): Pass parameter for _dl_start in register. (elf_machine_rel): Cleanup and minor optimization for RTLD_BOOTSTRAP. General pretty printing. 2002-01-31 Ulrich Drepper * elf/dl-minimal.c: Define _itoa for 32-bit machines with HP timing. * elf/dl-reloc.c: Pretty printing. * sysdeps/generic/ldsodefs.h: Move _dl_hp_timing_overhead and procinfo-related variables in rtld_global struct. * elf/dl-support.c: Likewise. * elf/rtld.c: Likewise. * sysdeps/i386/i686/Makefile: Likewise. * sysdeps/i386/i686/hp-timing.c: Likewise. * sysdeps/i386/i686/hp-timing.h: Likewise. * sysdeps/ia64/Makefile: Likewise. * sysdeps/ia64/hp-timing.c: Likewise. * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise. * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise. * sysdeps/unix/sysv/linux/arm/dl-procinfo.c: Likewise. * sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise. * sysdeps/unix/sysv/linux/i386/Makefile: Likewise. * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Likewise. * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise. * sysdeps/x86_64/Makefile: Likewise. * sysdeps/generic/ldsodefs.h: Add _dl_load_lock, _dl_lazy, _dl_dynamic_weak, _dl_fpu_control, _dl_cpuclock_offset, and _dl_debug_fd to rtld_global. * elf/Versions: Likewise. * elf/dl-close.c: Likewise. * elf/dl-iteratephdr.c: Likewise. * elf/dl-lookup.c: Likewise. * elf/dl-misc.c: Likewise. * elf/dl-open.c: Likewise. * elf/dl-support.c: Likewise. * elf/do-lookup.h: Likewise. * elf/rtld.c: Likewise. * sysdeps/generic/dl-cache.c: Likewise. * sysdeps/generic/dl-sysdep.c: Likewise. * sysdeps/ia64/Versions: Likewise. * sysdeps/unix/clock_gettime.c: Likewise. * sysdeps/unix/clock_settime.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Likewise. * sysdeps/sparc/Versions: Removed. * sysdeps/i386/i686/Versions : Removed. * sysdeps/x86_64/Versions: Removed. * configure.in: Define HAVE_PROTECTED if .protected is available. * config.h.in: Add entry for HAVE_PROTECTED. 2002-01-31 Jakub Jelinek * sysdeps/posix/readv.c: Don't use alloca if the memory requirements are too high. 2002-01-31 Andreas Schwab * sysdeps/posix/readv.c: Check for ssize_t overflow. 2002-01-31 Andreas Schwab * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Fix leftover reference to _dl_pagesize. 2002-01-30 Ulrich Drepper * Versions.def [ld]: Add GLIBC_2.3. * elf/dl-addr.c: Move global variables for SHARED code in struct _rtld_global. Export this struct, remove all exports for the signal variables. * elf/dl-close.c: Likewise. * elf/dl-conflict.c: Likewise. * elf/dl-debug.c: Likewise. * elf/dl-deps.c: Likewise. * elf/dl-dst.h: Likewise. * elf/dl-error.c: Likewise. * elf/dl-fini.c: Likewise. * elf/dl-init.c: Likewise. * elf/dl-iteratephdr.c: Likewise. * elf/dl-libc.c: Likewise. * elf/dl-load.c: Likewise. * elf/dl-lookup.c: Likewise. * elf/dl-minimal.c: Likewise. * elf/dl-object.c: Likewise. * elf/dl-open.c: Likewise. * elf/dl-profile.c: Likewise. * elf/dl-profstub.c: Likewise. * elf/dl-reloc.c: Likewise. * elf/dl-runtime.c: Likewise. * elf/dl-support.c: Likewise. * elf/dl-sym.c: Likewise. * elf/dl-version.c: Likewise. * elf/do-lookup.h: Likewise. * elf/do-rel.h: Likewise. * elf/dynamic-link.h: Likewise. * elf/rtld.c: Likewise. * sysdeps/generic/dl-cache.c: Likewise. * sysdeps/generic/dl-sysdep.c: Likewise. * sysdeps/generic/ldsodefs.h: Likewise. * sysdeps/generic/libc-start.c: Likewise. * sysdeps/i386/dl-machine.h: Likewise. * sysdeps/ia64/dl-fptr.c: Likewise. * sysdeps/ia64/dl-machine.h: Likewise. * sysdeps/unix/sysv/linux/dl-librecon.h: Likewise. * sysdeps/unix/sysv/linux/dl-origin.c: Likewise. * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise. * sysdeps/unix/sysv/linux/getclktck.c: Likewise. * sysdeps/unix/sysv/linux/getpagesize.c: Likewise. * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise. * sysdeps/unix/sysv/linux/ia64/dl-static.c: Likewise. * sysdeps/unix/sysv/linux/ia64/getpagesize.c: Likewise. 2002-01-29 Ulrich Drepper * sysdeps/ia64/dl-lookupcfg.h (DL_AUTO_FUNCTION_ADDRESS): Add cast to avoid warning (DL_STATIC_FUNCTION_ADDRESS): Likewise. * elf/dl-lookup.c: Only define or handle _dl_num_relocations for the SHARED version. * elf/dl-reloc.c: Likewise for _dl_num_cache_relocations. * elf/rtld.c (_dl_start): Use __builtin_memset if available. 2002-01-29 Ben Collins * string/bits/string2.h (__mempcpy): Protect size arg for addition when using __builtin_memcpy. 2002-01-29 Ulrich Drepper * stdlib/Makefile (tests): Add tst-qsort. * stdlib/tst-qsort.c: New file. Written by Paul Eggert. * manual/signal.texi (Process Signal Mask): Document that pthread_sigmask, not sigprocmask, must be used in MT programs. Patch by Bertold Kolics . * misc/hsearch_r.c (hsearch_r): Don't insert anything if entry is found. * misc/Makefile (tests): Add tst-hsearch. * misc/tst-hsearch.c: New file. 2002-01-18 Wolfram Gloger * malloc/malloc.c: Rewrite, adapted from Doug Lea's malloc-2.7.0.c. * malloc/malloc.h: Likewise. * malloc/thread-m.h: Spinlock definitions for x86/x86_64. * malloc/arena.c: New file. * malloc/hooks.c: New file. * malloc/tst-mallocstate.c: New file. * malloc/Makefile: Add new testcase tst-mallocstate. Add arena.c and hooks.c to distribute. Fix commented CPPFLAGS. 2002-01-28 Ulrich Drepper * stdlib/msort.c: Remove last patch. The optimization violates the same rule which qsort.c had problems with. 2002-01-27 Paul Eggert * stdlib/qsort.c (_quicksort): Do not apply the comparison function to a pivot element that lies outside the array to be sorted, as ISO C99 requires that the comparison function be called only with addresses of array elements [PR libc/2880]. 2002-01-28 Ulrich Drepper * elf/dl-load.c (_dl_map_object): Remove incorrect optimization for SHARED code. Reported by Ben Collins . * timezone/asia: Update from tzdata2002b. * timezone/australasia: Likewise. * timezone/backward: Likewise. * timezone/europe: Likewise. * timezone/leapseconds: Likewise. * timezone/iso3166.tab: Likewise. * timezone/zone.tab: Likewise. 2002-01-23 Richard Henderson * sysdeps/alpha/Makefile (pic-ccflag): New variable. 2002-01-28 Ulrich Drepper * string/strxfrm.c: Allocate one more byte for rulearr and clear this element [PR libc/2855]. * string/strcoll.c: Handle zero-length arguments specially [PR libc/2856]. 2002-01-23 Jakub Jelinek * string/bits/string2.h (__mempcpy): For gcc 3.0+, don't use __mempcpy_small but instead use __builtin_memcpy ( , , n) + n for short lengths and constant src. (strcpy): Don't optimize for gcc 3.0+. (__stpcpy): For gcc 3.0+, don't use __stpcpy_small but instead use __builtin_strcpy (, src) + strlen (src) for short string literal src. 2002-01-23 Jeroen Dobbelaere * sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde): Set for arm, too. 2001-01-22 Paul Eggert * manual/llio.texi (Linked Channels, Cleaning Streams): Make it clearer that a just-opened input stream might need cleaning. 2002-01-21 H.J. Lu * sysdeps/mips/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC): Don't use label at end of compound statement. 2002-01-28 Stephen L Moshier * sysdeps/ieee754/ldbl-96/e_lgammal_r.c (__ieee754_lgammal_r): Remove test for negative integer arg; sin_pi does it correctly. 2002-01-20 Ulrich Drepper * nscd/Makefile (distribute): Filter out xmalloc.c. 2002-01-19 Ulrich Drepper * libio/fileops.c (_IO_file_underflow_mmap): Don't define as static. Set offset if read end wasn't the buffer end. (_IO_file_seekoff_mmap): New function. (_IO_file_xsgetn_mmap): New function. (_IO_file_jumps_mmap): Use the two new functions. * libio/wfileops.c (_IO_wfile_underflow_mmap): Handle end read buffer != end buffer. * libio/libioP.h: Declare _IO_file_seekoff_mmap and _IO_file_underflow_mmap. * libio/iofopen.c: Don't position file descriptor at end of file. * libio/tst-widetext.c: Improve error messages. * stdio-common/tst-rndseek.c: Likewise. 2002-01-18 Ulrich Drepper * sysdeps/unix/sysv/linux/bits/statvfs.h: Avoid warning about comma at end of enum for !_GNU_SOURCE. * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: Likewise. * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Likewise. * sysdeps/mach/hurd/bits/statvfs.h: Don't define non-standard ST_* values unless _GNU_SOURCE. * iconvdata/tcvn5712-1.c: Minor cleanups. 2002-01-18 Andreas Schwab * sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde): Set for m68k, too. 2002-01-16 Roger Sayle * stdlib/msort.c (msort_with_tmp): Replace implementation with more efficient "Towers of Hanoi" mergesort. (hanoi_sort, hanoi_sort_int, hanoi_sort_long): New functions, for generic, sizeof(int) and sizeof(long) variants respectively. 2002-01-17 Ulrich Drepper * manual/syslog.texi (openlog): Describe possible problems with first parameter. Patch by Christopher Allen Wing . * nscd/nscd.c (drop_privileges): Removed. Adjust caller. * nscd/connections.c (begin_drop_privileges): New function. (finish_drop_privileges): New function. (nscd_init): Call the new functions which also install all groups for the server user. * nscd/Makefile (nscd-modules): Add xmalloc for nscd. Patch by Christopher Allen Wing . 2002-01-17 H.J. Lu * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Remove `const' from `got'. 2002-01-17 Martin Schwidefsky * sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S: Use 64 bit instructions for pointer operations. * sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S: Likewise. 2002-01-17 Andreas Jaeger * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h: GCC 3.1 has __uint128_t build-in. * sysdeps/unix/sysv/linux/configure.in: Fix check for S390 and PowerPC, sync with 2.2 branch. 2002-01-16 Ulrich Drepper * posix/getconf.c: Update copyright year. * nss/getent.c: Likewise. * nscd/nscd_nischeck.c: Likewise. * iconv/iconvconfig.c: Likewise. * iconv/iconv_prog.c: Likewise. * elf/ldconfig.c: Likewise. * catgets/gencat.c: Likewise. * csu/version.c: Likewise. * elf/ldd.bash.in: Likewise. * elf/sprof.c (print_version): Likewise. * locale/programs/locale.c: Likewise. * locale/programs/localedef.c: Likewise. * nscd/nscd.c (print_version): Likewise. * debug/xtrace.sh: Likewise. * malloc/memusage.sh: Likewise. * malloc/mtrace.pl: Likewise. 2002-01-16 Andreas Schwab * sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: Fix regexp to reliably remove "-ia64" from rtld name. 2002-01-16 Ulrich Drepper * iconvdata/gb18030.c: Bug fixes and support for more characters. Patch by Yu Shao . 2002-01-16 Martin Schwidefsky * sysdeps/unix/sysv/linux/s390/swapcontext.c: Remove. * sysdeps/unix/sysv/linux/s390/s390-32/swapcontext.S: New file. * sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S: New file. 2002-01-14 Martin Schwidefsky * sysdeps/s390/fpu/libm-test-ulps: Update. 2002-01-11 Ulrich Drepper * elf/elf.h: Update x86 relocations. 2002-01-10 Ulrich Drepper * locale/programs/charmap.c (new_width): Check whether byte sequences for both ends of range have the same length. 2002-01-09 Jakub Jelinek * elf/elf.h (SHN_UNDEF): Remove duplicate definition. 2002-01-09 Jakub Jelinek * sysdeps/alpha/fpu/e_sqrt.c (__ieee754_sqrt): Don't use multi-line string literals. (__full_ieee754_sqrt): Add __attribute_used__. 2002-01-10 Ulrich Drepper * sysdeps/generic/group_member.c (__group_member): Also check groups[0] [PR libc/2781]. 2002-01-08 Ulrich Drepper * Makefile (distribute): Add scripts/cpp. * elf/Makefile (distribute): Add reldep6mod[01234].c, unwind-dw2.c, unwind-dw2-fde.c, unwind.h, unwind-pe.h, unwind-dw2-fde.h, and dwarf2.h. * sysdeps/unix/bsd/bsd4.4/Dist: New file. * sysdeps/unix/sysv/aix/Dist: Add sysv_termio.h and start-libc.c. * sysdeps/unix/sysv/linux/ia64/Dist: Add ldd-rewrite.sed. * sysdeps/unix/sysv/linux/s390/Dist: Likewise. 2002-01-07 Roland McGrath * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Use volatile on type of ARGC so the compiler doesn't get clever. 2002-01-07 Andreas Jaeger * sysdeps/generic/bits/byteswap.h: Prevent double inclusion. * sysdeps/i386/bits/byteswap.h: Likewise. * sysdeps/ia64/bits/byteswap.h: Likewise. * sysdeps/m68k/bits/byteswap.h: Likewise. * sysdeps/s390/s390-32/bits/byteswap.h: Likewise. * sysdeps/s390/s390-64/bits/byteswap.h: Likewise. 2002-01-02 Bruno Haible * intl/plural.y: Fix %expect count. 2002-01-03 Jakub Jelinek * elf/Makefile (routines, shared-only-routines): Add unwind-dw2-fde-glibc instead of unwind-dw2-fde. * elf/elf.h (PT_GNU_EH_FRAME): Define. * sysdeps/generic/unwind-dw2-fde-glibc.c: New file. * sysdeps/generic/unwind-dw2-fde.c (__register_frame_info_bases): Optimize if .eh_frame section contains no FDEs. (__register_frame, __deregister_frame_info_bases, __deregister_frame): Likewise. * sysdeps/generic/unwind-dw2.c (execute_cfa_program): Fix DW_CFA_restore handling. 2002-01-07 Stephen L Moshier * sysdeps/ieee754/ldbl-96/s_erfl.c (erfcl): Fix K&R header. * sysdeps/ieee754/ldbl-96/e_lgammal_r.c (sin_pi): Fix typo in test for x < 0.25 and restore original range reduction method. (__ieee754_lgammal_r): Make sure signgam is set before returning. 2002-01-07 Ulrich Drepper * libio/fileops.c (_IO_file_underflow_mmap): New function. (_IO_file_close_mmap): New function. (_IO_file_jumps_mmap): New variable. * libio/wfileops.c (_IO_wfile_underflow): Reset read pointer before trying to convert rest of byte buffer. (_IO_wfile_underflow_mmap): New function. (_IO_wfile_jumps_mmap): New variable. * libio/iofopen.c (__fopen_maybe_mmap): New function. (__fopen_internal): New function. Split out from _IO_new_fopen. (_IO_new_fopen): Call __fopen_internal. * libio/iofopen64.c: Just call __fopen_internal. * libio/iofdopen.c: Call __fopen_maybe_mmap before returning successfully. * libio/iolibio.h: Declare __fopen_internal and __fopen_maybe_mmap. * libio/libioP.h: Declare _IO_file_jumps_mmap, _IO_wfile_jumps_mmap, _IO_file_close_mmap. * sysdeps/gnu/_G_config.h: Define _G_MMAP64. * sysdeps/unix/sysv/linux/cris/_G_config.h: Likewise. * stdio-common/Makefile (tests): Add tst-rndseek. * stdio-common/tst-rndseek.c: New file. 2002-01-05 Roland McGrath * config.h.in (HAVE_MIG_RETCODE): New #undef. * sysdeps/mach/hurd/configure.in (hurd_MIG_RETCODE: New macro swiped from hurd package's aclocal.m4; use it to set HAVE_MIG_RETCODE. * sysdeps/mach/hurd/configure: Regenerated. 2002-01-03 Ulrich Drepper * elf/elf.h: Add more TLS definitions. 2002-01-02 Ulrich Drepper * include/features.h (__GLIBC_MINOR__): Bump to 3. 2002-01-02 Roland McGrath * sysdeps/mach/hurd/sigwait.c (__sigwait): Use __sigandset, __sigisemptyset. Don't use MASK uninitialized. * sysdeps/mach/hurd/sigprocmask.c (__sigprocmask): Use __sigorset. * hurd/hurdinit.c (_hurd_new_proc_init): Use __sigisemptyset. * hurd/hurdsig.c (_hurd_internal_post_signal): Use __sigismember, __sigdelset, __sigaddset, __sigorset. * sysdeps/generic/htonl.c: Use uint32_t instead of u_int32_t. * sysdeps/generic/htons.c: Use uint16_t instead of u_int16_t. * hurd/hurdinit.c (_hurd_ports_use): Return EGRATUITOUS when _hurd_ports is null. * hurd/hurdsig.c (_hurdsig_init): Conditionalize exception port setup for old CMU and new OSF Mach interface flavors. * hurd/hurdfault.c (_hurdsig_fault_init): Likewise. * sysdeps/mach/hurd/fork.c (__fork): Likewise. * hurd/hurdsig.c (_hurd_internal_post_signal): Leave msgh_seqno unset. * sysdeps/mach/hurd/spawni.c (__spawni) [KERN_INVALID_LEDGER]: Pass extra arguments to task_create for OSF variant. * sysdeps/mach/hurd/fork.c (__fork): Likewise. * sysdeps/powerpc/elf/libc-start.c: Make AUXVEC diddling code conditional on [HAVE_AUX_VECTOR]. * mach/mach/mach_traps.h (thread_switch, __thread_switch): Use mach_msg_timeout_t as type of final argument. * hurd/privports.c (__get_privileged_ports): Change host_priv_t to mach_port_t in argument type. * hurd/hurd.h (get_privileged_ports, __get_privileged_ports): Update decls. * sysdeps/mach/hurd/i386/bits/sigcontext.h: Protect from multiple inclusion. Inhibit #error under [_SYS_UCONTEXT_H]. * sysdeps/mach/hurd/alpha/bits/sigcontext.h: Likewise. * sysdeps/mach/hurd/hppa/bits/sigcontext.h: Likewise. * sysdeps/mach/hurd/mips/bits/sigcontext.h: Likewise. * sysdeps/mach/hurd/powerpc/bits/sigcontext.h: Likewise. 2002-01-01 Roland McGrath * sysdeps/mach/hurd/errnos.awk: Tighten up device_types.h matching. 2002-01-01 Ulrich Drepper * include/stdlib.h: Define inlines for the _l variants of the strto* functions. 2002-01-01 Roland McGrath * sysdeps/mach/hurd/powerpc/intr-msg.h: Remove extraneous backslash. * mach/Machrules (MIG): Set CPP as well as CC. 2001-12-31 Ulrich Drepper * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Always use C locale to parse /proc/loadavg [PR libc/2760]. 2001-12-31 Jakub Jelinek * elf/dl-conflict.c: Include sys/param.h. (RESOLVE_CONFLICT_FIND_MAP): Cast r_offset to ElfW(Addr). * sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Avoid warning. (TRAMPOLINE_TEMPLATE, RTLD_START): Don't use multi-line string literals to avoid warnings. 2001-12-31 Andreas Jaeger * configure.in: Don't check for gsed since we do not use it anywhere. 2001-12-25 Dmitry V. Levin * io/fts.c: Update from BSD to fix memory leaks. 2001-12-25 Dmitry V. Levin * crypt/md5-crypt.c: Realloc error handling memory leak fix. * elf/chroot_canon.c: Likewise. * elf/dl-object.c: Likewise. * iconv/iconv_charmap.c: Likewise. * iconv/iconv_prog.c: Likewise. * libio/iogetdelim.c: Likewise. * locale/lc-time.c: Likewise. * stdlib/canonicalize.c: Likewise. * sunrpc/svc.c: Likewise. * sysdeps/generic/glob.c: Likewise. 2001-12-19 Martin Schwidefsky * sysdeps/unix/sysv/linux/s390/profil-counter.h: Move/copy to ... * sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: ... here, remove high order bit from the program counter. * sysdeps/unix/sysv/linux/s390/s390-64/profil-counter.h: ... and here. 2001-12-19 Martin Schwidefsky * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Remove unnecessary code and add missing reloc types. * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Add empty case for reloc type R_390_NONE. 2001-12-28 Andreas Jaeger * io/bug-ftw3.c: Include string.h for prototypes. * crypt/md5test.c (main): Remove unused variable. * dlfcn/modstatic.c: Add prototype to avoid warning. 2001-12-26 Roland McGrath * sysdeps/mach/hurd/sigwait.c (__sigwait): When returning immediately, check only (SS->pending & MASK) for the signal to return. From Jeroen Dekkers . 2001-12-22 Roland McGrath * iconv/skeleton.c [!RESET_INPUT_BUFFER && !SAVE_RESET_STATE]: Use preprocessor #if conditionals instead of `if' to avoid warnings about divide by zero in dead code. * hurd/Versions (libc: GLIBC_2.2.5): Add _hurd_port_set, _hurd_port_init, and __hurd_self_sigstate. * mach/Versions (libc: GLIBC_2.2.5): Add mig_strncpy. 2001-12-21 Andreas Jaeger * elf/dblloadmod1.c: Add prototype to avoid warning. * elf/dblloadmod2.c: Likewise. * elf/dblloadmod3.c: Likewise. * elf/reldepmod5.c: Likewise. * elf/reldepmod6.c: Likewise. * elf/dl-conflict.c (_dl_resolve_conflicts): Add unused attribute for resolve_conflict_map since RESOLVE_CONFLICT_FIND_MAP is not used on all architectures. * sunrpc/svc_tcp.c: Add noreturn attribute for svctcp_rendezvous_abort. * sunrpc/svc_unix.c: Likewise for svcunix_rendezvous_abort. * sysdeps/generic/strstr.c (strstr): Add paranthese for assignment to avoid warning. 2001-12-19 Jakub Jelinek * manual/llio.texi (aio_fsync): Fix a typo. Patch by Tammy Fox . 2001-12-18 Jakub Jelinek * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (clone): Subtract stack bias from child stack pointer before passing it to clone syscall. 2001-12-18 Ulrich Drepper * sysdeps/posix/sysconf.c (__sysconf): Respect POSIX minimum for _SC_TZNAME_MAX. * sysdeps/generic/sysconf.c (__sysconf): Likewise. Reported by Thorsten Kukuk . * sysdeps/unix/grantpt.c (grantpt): Correct typo in comment and add some casts. * sysdeps/unix/sysv/linux/grantpt.c: Make __unix_grantpt static. 2001-12-18 Thorsten Kukuk * sysdeps/unix/sysv/linux/grantpt.c: Make errno results standard conforming: return EBADF if file descriptor is invalid and EINVAL if file descriptor is no valid tty. * login/tst-grantpt.c: New file. * login/Makefile (tests): Add tst-grantpt. 2001-12-17 Ulrich Drepper * io/ftw.c (ftw_dir): Handle inaccessibility of toplevel dir different than implemented in last patch. * io/bug-ftw3.c: Adjust test for changed handling of inaccessibility of toplevel dir. 2001-12-16 Roland McGrath * nss/nsswitch.c (__nss_next): Don't use __FUNCTION__ as literal. * grp/initgroups.c (internal_getgrouplist): Likewise. * hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Add `break' after `default:' to silence new GCC warning. Rewrite cast of lvalue to silence new GCC warning. * sysdeps/mach/hurd/i386/init-first.c: Avoid multi-line strings in asm. * sysdeps/mach/hurd/spawni.c: New file, by me with a couple fixes by Neal H Walfield . 2001-12-14 Ulrich Drepper * sysdeps/generic/strstr.c (strstr): Update. New optimized version. Patch by Stephen R. van den Berg. * crypt/md5.h: Define md5_uintptr. 2001-12-13 Ulrich Drepper * libio/tst_swprintf.c (main): Add test for string argument with zero precision. * stdio-common/Makefile (tests): Add tst-sprintf. * stdio-common/tst-sprintf.c: New file. 2001-12-13 Andreas Schwab * stdio-common/vfprintf.c (process_string_arg): Correctly handle zero precision with wide character string format. 2001-12-13 Thorsten Kukuk * sysdeps/posix/cuserid.c (cuserid): If we don't find the UID, but have a user supplied buffer, return the empty buffer, not NULL. 2001-12-13 Ulrich Drepper * crypt/md5.c (md5_process_bytes): Correct handling of alignment. Patch by Eric Sharkey . * crypt/md5test.c (main): Add test for multiple calls to __md5_process_bytes to itererate over input string. 2001-12-12 Ulrich Drepper * nis/nis_findserv.c (__nis_findfastest_with_timeout): Mostly the code from __nis_findfastest. Take timeout value from parameter. (__nis_findfastest): Call __nis_findfastest_with_timeout repeatedly. * nis/nis_intern.h: Define parameters controlling __nis_findfastest [PR libc/2520]. Patch by Alexander Belopolsky . 2001-12-12 Andreas Jaeger * configure.in: Use -nostartfiles -nostdlib for linker tests, fix combreloc test so that it works in this case. * sysdeps/arm/dl-machine.h (elf_machine_rela): Fix typo in last patch. 2001-12-12 NIIBE Yutaka * sysdeps/sh/Makefile: New file. * sysdeps/sh/_mcount.S: New file. * sysdeps/sh/sysdep.h (CALL_MCOUNT): Implemented. * sysdeps/sh/machine-gmon.h: Remove "NOTYET" comment, as we are ready. 2001-12-11 Ulrich Drepper * resolv/nss_dns/dns-host.c (getanswer_r): Remove MAX_NR_ADDRS limitation [PR libc/2564]. 2001-12-11 Jakub Jelinek * elf/Makefile (dl-routines): Add conflict. (rtld-ldscript-in, rtld-ldscript, rtld-parms): Remove. (ld.so): Add _begin local symbol. * elf/elf.h (DT_VALTAGIDX, DT_VALNUM, DT_ADDRTAGIDX, DT_ADDRNUM): Define. * elf/dl-deps.c (_dl_build_local_scope): New. (_dl_map_object_deps): If LD_TRACE_PRELINKING, compute local scopes of all libraries. * elf/do-rel.h (VALIDX): Define. (elf_dynamic_do_rel): If ELF_MACHINE_PLT_REL is defined, don't do lazy binding for RELA. If DT_GNU_PRELINKED, DT_RELACOUNT relocations can be skipped. * elf/dl-conflict.c: New file. * elf/dl-lookup.c (_dl_debug_bindings): New. (_dl_lookup_symbol): Use _dl_debug_bindings. Reference_name is always non-NULL. (_dl_lookup_symbol_skip): Likewise. (_dl_lookup_versioned_symbol): Likewise. (_dl_lookup_versioned_symbol_skip): Likewise. * elf/dl-runtime.c (PLTREL): If ELF_MACHINE_PLT_REL is defined, define to ElfW(Rel). * elf/dynamic-link.h (elf_get_dynamic_info): Record selected dynamic tags in the DT_VALRNGLO..DT_VALRNGHI and DT_ADDRRNGLO..DT_ADDRRNGHI ranges. Don't adjust address dynamic tags if l_addr is 0. * elf/rtld.c (_dl_trace_prelink, _dl_trace_prelink_map): New variables. (_dl_start): Skip ELF_DYNAMIC_RELOCATE if ld.so is prelinked. (VALIDX, ADDRIDX): Define. (_dl_start_final): Initialize _dl_rtld_map's l_map_start and l_map_end. (dl_main): Print library list for LD_TRACE_PRELINKING. If prelinking information can be used, skip relocating libraries and call _dl_resolve_conflicts instead. (process_envvars): Handle LD_TRACE_PRELINKING envvar. * elf/dl-load.c (_dl_map_object): Don't create fake libs if LD_TRACE_PRELINKING. * include/link.h (struct link_map) [l_info]: Add DT_VALNUM + DT_ADDRNUM. * sysdeps/generic/ldsodefs.h (_dl_trace_prelink_map): New declaration. (DL_DEBUG_PRELINK): Define. (_dl_resolve_conflicts): Add prototype. * sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Reinitialize .plt for prelinked libraries where prelinking info cannot be used. (elf_machine_rela): If relocating R_ALPHA_JMP_SLOT in .gnu.conflict section, use RESOLVE_CONFLICT_FIND_MAP to find out reloc's link_map. * sysdeps/arm/bits/link.h: New file. * sysdeps/arm/dl-machine.h (elf_machine_runtime_setup): Save original content of .got[1]. (ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP. (ELF_MACHINE_PLT_REL): Define. (elf_machine_rela, elf_machine_rela_relative): New. (elf_machine_lazy_rel): Reinitialize R_ARM_JUMP_SLOT address instead of adjusting it if prelinked and prelinking cannot be used. * sysdeps/i386/bits/link.h: New file. * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Save original content of .got[1]. (ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP. (ELF_MACHINE_PLT_REL): Define. (elf_machine_rela, elf_machine_rela_relative): New. (elf_machine_lazy_rel): Reinitialize R_386_JUMP_SLOT address instead of adjusting it if prelinked and prelinking cannot be used. * sysdeps/powerpc/dl-machine.h (elf_machine_rela): If relocating conflicts, skip finaladdr computation. Use RESOLVE_CONFLICT_FIND_MAP to find out map for R_PPC_JMP_SLOT relocs. * sysdeps/sparc/sparc32/dl-machine.h (VALIDX): Define. (OPCODE_BA): Define. (elf_machine_runtime_setup): Reinitialize .plt for prelinked libraries where prelinking info cannot be used. (sparc_fixup_plt): Renamed from elf_machine_fixup_plt. (elf_machine_fixup_plt): Call sparc_fixup_plt. (elf_machine_rela): Set value to 0 if relocating conflicts. Call sparc_fixup_plt for R_SPARC_JMP_SLOT. * sysdeps/sparc/sparc64/dl-machine.h (VALIDX): Define. (sparc64_fixup_plt): Fix a typo. (elf_machine_rela): Set value to 0 if relocating conflicts. Handle R_SPARC_JMP_SLOT relocs when relocating conflicts. (elf_machine_runtime_setup): Reinitialize .plt for prelinked libraries where prelinking info cannot be used. * sysdeps/sh/bits/link.h: New file. * sysdeps/sh/dl-machine.h (elf_machine_runtime_setup): Save original content of .got[1]. (elf_machine_lazy_rel): Reinitialize R_SH_JMP_SLOT address instead of adjusting it if prelinked and prelinking cannot be used. * sysdeps/s390/s390-32/bits/link.h: New file. * sysdeps/s390/s390-32/dl-machine.h (elf_machine_runtime_setup): Save original content of .got[1]. (elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead of adjusting it if prelinked and prelinking cannot be used. * sysdeps/s390/s390-64/bits/link.h: New file. * sysdeps/s390/s390-64/dl-machine.h (elf_machine_runtime_setup): Save original content of .got[1]. (elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead of adjusting it if prelinked and prelinking cannot be used. * sysdeps/x86_64/bits/link.h: New file. * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Save original content of .got[1]. (elf_machine_lazy_rel): Reinitialize R_X86_64_JMP_SLOT address instead of adjusting it if prelinked and prelinking cannot be used. 2001-12-11 Ulrich Drepper * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Use sizeof where appropriate instead of numbers. Little optimizations. 2001-12-10 Roland McGrath * sysdeps/mach/hurd/bind.c (bind): Don't deallocate IFSOCK if we never set it. * shlib-versions [USE_IN_LIBIO] (.*-.*-gnu-gnu.*): Set default set to GLIBC_2.2.5, not GLIBC_2.2.4. * sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde): Fix conditionals so this is set by default for stdio and not for libio. * sysdeps/mach/hurd/configure: Regenerated. 2001-12-10 Thorsten Kukuk * io/ftw.c (ftw_startup): Check, if the path is search and readable. 2001-12-10 Ulrich Drepper * io/Makefile (tests): Add bug-ftw3. * io/bug-ftw3.c: New file. * sysdeps/generic/glob.c (glob): Return only pattern if nothing matches and GLOB_NOCHECK is set. * posix/globtest.sh: Correct expected result for NOCHECK test. * po/ca.po: Update from translation team. 2001-12-09 Ulrich Drepper Implement transliteration of characters in strings of the locale definitions. * locale/programs/linereader.c: Adjust for additional parameter to lr_token. (get_string): If character is not found try to transliterate it. * locale/programs/ld-ctype.c: Adjust for additional parameter to lr_token. Add const to charmap parameter of all functions. (find_translit, find_translit2): New functions. * locale/programs/charmap.c: Adjust for additional parameter to lr_token. * locale/programs/repertoire.c: Likewise. * locale/programs/linereader.h: Likewise. * locale/programs/ld-address.c: Likewise. Add const to charmap parameter of all functions. * locale/programs/ld-collate.c: Likewise. * locale/programs/ld-identification.c: Likewise. * locale/programs/ld-measurement.c: Likewise. * locale/programs/ld-messages.c: Likewise. * locale/programs/ld-monetary.c: Likewise. * locale/programs/ld-name.c: Likewise. * locale/programs/ld-numeric.c: Likewise. * locale/programs/ld-paper.c: Likewise. * locale/programs/ld-paper.c: Likewise. * locale/programs/ld-telephone.c: Likewise. * locale/programs/ld-time.c: Likewise. * locale/programs/locfile.c: Likewise. * locale/programs/localedef.c: Likewise. * locale/programs/localedef.h: Likewise. * locale/programs/locfile.h: Likewise. Add declaration for find_translit. * locale/programs/simple-hash.c: Add const to first parameter of find_entry, iterate_table, and lookup. * locale/programs/simple-hash.h: Likewise. * locale/localeinfo.h: Don't define __LC_LAST here. Include instead. * include/locale.h: Define __LC_LAST. * iconv/Makefile (CFLAGS-linereader.c): Define to -DNO_TRANSLITERATION. 2001-12-07 Geoff Keating * sysdeps/powerpc/Dist: Update for recent FP changes. * sysdeps/powerpc/fpu/Dist: Likewise. 2001-12-07 Andreas Schwab * sysdeps/unix/sysv/linux/opensock.c: Include . 2001-12-06 Geoff Keating * sysdeps/powerpc/Makefile (sysdep_routines): Don't build the fpr save/restore functions here. (libm-support): Don't define these functions here. * sysdeps/powerpc/fpu/Makefile: Build the fpr save/restore functions here. * sysdeps/powerpc/fe_nomask.c: Move to... * sysdeps/powerpc/fpu/fe_nomask.c: ... here. * sysdeps/powerpc/fprrest.S: Move to... * sysdeps/powerpc/fpu/fprrest.S: ... here. * sysdeps/powerpc/fprsave.S: Move to... * sysdeps/powerpc/fpu/fprsave.S: ... here. 2001-12-06 Ulrich Drepper * sysdeps/unix/sysv/linux/opensock.c: New file. 2001-12-06 Geoff Keating * config.make.in (with-fp): Define from configure. * configure.in: Substitute with_fp. * configure: Regenerate. * sysdeps/powerpc/Makefile: Set -msoft-float when --without-fp is specified, and don't change FPU environment. 2001-12-06 Ulrich Drepper * libio/vasprintf.c (_IO_vasprintf): Free buffer on failure. * assert/assert.c: Check result of __asprintf call and don't use string if it failed. * assert/assert-perr.c: Likewise. * inet/rcmd.c: Likewise. * locale/programs/localedef.c (main): Check result of construct_output_path and exit if it failed. (construct_output_path): Check result of asprintf and mkdir calls and fail if they failed. * posix/getopt.c: Check result of __asprintf calls and fail if they failed. Patch by Dmitry V. Levin . 2001-12-05 Ulrich Drepper * sysdeps/generic/strcasecmp.c (__strcasecmp): Little performance patch. * sysdeps/generic/strncase.c: Likewise. * string/tester.c: Add tests for strcasecmp and strncasecmp. 2001-12-05 Geoff Keating * scripts/cpp: Test the exit status from 'type', not 'awk'. * sysdeps/powerpc/__longjmp.S: Don't restore FP registers. * sysdeps/powerpc/fpu/__longjmp.S: Do restore FP registers. * sysdeps/powerpc/setjmp.S: Don't save FP registers. * sysdeps/powerpc/fpu/setjmp.S: Do save FP registers. * sysdeps/powerpc/fclrexcpt.c: Move to... * sysdeps/powerpc/fpu/fclrexcpt.c: ... here. * sysdeps/powerpc/fpu_control.h: Move to... * sysdeps/powerpc/fpu/fpu_control.h: ... here. 2001-12-05 Ulrich Drepper * iconvdata/ibm1129.h: Remove duplicate mappings. * iconvdata/ibm937.c: Handle overflow errors. Handle new tables. * iconvdata/ibm937.h: Reorganize table to safe a lot of space. Patch by Masahide Washizawa . * timezone/zic.c: Fix handling of turnaround times. Patch by Arthur David Olson . 2001-12-02 Moshe Olshansky * sysdeps/ieee754/dbl-64/e_remainder.c (__ieee754_remainder): Fix overflow problem. 2001-12-05 Ulrich Drepper * posix/regex.c: For use outside glibc defined bounded pointer macros here. Patch by Jim Meyering . * iconvdata/Makefile (modules): Add TCVN5712-1. * iconvdata/TESTS: Add TCVN5712-1. * iconvdata/gconv-modules: Likewise. * iconvdata/tcvn5712-1.c: New file. * iconvdata/testdata/TCVN-5712: New file. * iconvdata/testdata/TCVN-5712..UTF8: New file. 2001-12-04 Ulrich Drepper * iconvdata/cp1258.c: Optimize conversion from UCS4. 2001-12-02 Roland McGrath * mach/Makefile, mach/Machrules: Move comments out of \ continuations. * hurd/hurd.h (__hurd_fail): Add `break;' to silence new gcc-3 warning. Reported by Jeff Bailey . * hurd/hurd.h (_hurd_umask): Remove volatile qualifier from decl. Reported by Jeff Bailey . * mach/Makefile ($(objpfx)mach-syscalls.mk): Pass $(CFLAGS) to $(CC). * mach/Machrules ($(objpfx)%.udeps static pattern rule): Likewise. Reported by Jeff Bailey . 2001-12-01 Roland McGrath * sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde): Add missing backslash in test arguments. * sysdeps/mach/hurd/configure: Regenerated. 2001-11-26 Roland McGrath * hurd/hurdinit.c (_hurd_ports_use): Check if _hurd_ports is null. Reported by John Tobey . 2001-11-30 Ulrich Drepper * iconvdata/Makefile (modules): Add ARMSCII-8. * iconvdata/gconv-modules: Add entries for ARMSCII-8. * iconvdata/armscii-8.c: New file. 2001-11-29 Jakub Jelinek * sysdeps/generic/glob.c (next_brace_sub): Return NULL if braces don't match, fix {{a,b},c} globbing, clean up. Patch by Flavio Veloso . * posix/globtest.sh: Add new tests. 2001-11-29 Andreas Jaeger * sysdeps/unix/sysv/linux/x86_64/Versions: Add arch_prctl. * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Add arch_prctl call. * sysdeps/generic/abort.c: Include libioP.h for _IO_flush_all_lockp prototype. 2001-11-29 Ulrich Drepper * posix/regex.h: Define __restrict_arr correctly. 2001-11-28 Ulrich Drepper * iconvdata/ibm1163.c: New file. * iconvdata/ibm1163.h: New file. * iconvdata/ibm1164.c: New file. * iconvdata/ibm1164.h: New file. * iconvdata/TESTS: Add entries for IBM1163 and IBM1164. * iconvdata/Makefile: Likewise. * iconvdata/testdata/IBM1163: New file. * iconvdata/testdata/IBM1163..UTF8: New file. * iconvdata/testdata/IBM1164: New file. * iconvdata/testdata/IBM1164..UTF8: New file. Patch by Masahide Washizawa . * iconvdata/ibm1046.h: Optimize. Remove duplicate mappings. * iconvdata/ibm1124.h: Likewise. * iconvdata/ibm1132.h: Likewise. * iconvdata/ibm1133.h: Likewise. * iconvdata/ibm1160.h: Likewise. * iconvdata/ibm1161.h: Likewise. * iconvdata/ibm1162.h: Likewise. * iconvdata/ibm856.h: Likewise. * iconvdata/ibm922.h: Likewise. * iconvdata/ibm930.h: Likewise. * iconvdata/ibm932.h: Likewise. * iconvdata/ibm933.h: Likewise. * iconvdata/ibm935.h: Likewise. * iconvdata/ibm937.h: Likewise. * iconvdata/ibm939.h: Likewise. * iconvdata/ibm943.h: Likewise. * iconvdata/ibm930.c: Pretty printing. * iconvdata/ibm937.c: Avoid access accross array boundary. * iconv/gconv_open.c (__gconv_open): Empty codeset name now means using the current locale's codeset. * iconv/iconv_open.c (iconv_open): Don't strip out everything for empty input string. * iconv/iconv_prog.c: Pass empty strings as default value for to- and from-charset. Don't determine locale's charset here. * libio/genops.c (_IO_flush_all_lockp): New function. The same code as the old _IO_flush_all but lock only if parameter is nonzero. (_IO_flush_all): Call _IO_flush_all_lockp with 1 as parameter. * libio/libioP.h: Add prototype for _IO_flush_all_lockp. * sysdeps/generic/abort.c (fflush): Define to _IO_flush_all_lockp(0) if libio is used [PR libc/2575]. 2001-11-28 Jakub Jelinek * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit, __signbitl): Only define for ISO C99. 2001-11-22 Thorsten Kukuk * nss/nss_files/files-hosts.c (_nss_files_get##name##_r): Set herrnop to NETDB_INTERNAL if we run out of buffer space. 2001-11-28 Ulrich Drepper * nss/nss_files/files-XXX.c (internal_getent): Correct input overflow test for platforms with signed char. Reported by Andrew Haley . 2001-11-28 Bruno Haible * locale/programs/simple-hash.c (lookup_2): Remove function. (insert_entry_2): Call lookup instead of lookup_2. 2001-03-04 Bruno Haible * intl/dcigettext.c (DCIGETTEXT): Increment path_max proportionally. 2001-10-31 Bruno Haible * intl/plural.y: Include , needed for NULL with SunOS 4 cc. 2001-03-21 Bruno Haible * intl/dcigettext.c (_nl_state_lock): Mark as #ifdef _LIBC. AIX 3 xlc chokes on empty macro arguments. * intl/plural.y: Add #pragma for alloca on AIX 3. 2001-11-27 Ulrich Drepper * intl/dcigettext.c (guess_category_value): Only implement for glibc. Otherwise rely on function _nl_locale_name which isn't present in the glibc sources. 2001-09-24 Bruno Haible * intl/loadmsgcat.c (_nl_init_domain_conv): Also enable transliteration when building on a glibc system but outside glibc. 2001-09-22 Bruno Haible * intl/plural-eval.c: New file, extracted from dcigettext.c. * intl/dcigettext.c (plural_eval): Remove function, moved to intl/plural-eval.c. (plural_lookup): Call PLURAL_EVAL instead of plural_eval. Include plural-eval.c. 2001-09-22 Bruno Haible * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Reject numbers that don't start with a digit; nplurals must be positive. 2001-09-02 Bruno Haible * intl/plural-exp.h: New file, extracted from gettextP.h. * intl/plural-exp.c: New file, extracted from loadmsgcat.c. * intl/gettextP.h (struct expression, struct parse_args, __gettext_free_exp, __gettextparse): Move to plural-exp.h. * intl/loadmsgcat.c: Include plural-exp.h. (PLURAL_PARSE): Move macro to plural-exp.h. (plvar, plone, germanic_plural, INIT_GERMANIC_PLURAL): Move to plural-exp.c. (_nl_load_domain): Move plural handling code to plural-exp.c. Call EXTRACT_PLURAL_EXPRESSION. (_nl_unload_domain): Update. * intl/dcigettext.c: Include plural-exp.h. * intl/plural.y: Include plural-exp.h, not gettextP.h. (FREE_EXPRESSION): Move macro to plural-exp.h. * intl/Makefile (routines): Add plural-exp. (distribute): Add plural-exp.h. 2001-07-28 Bruno Haible * intl/l10nflist.c (_nl_normalize_codeset): Cast isalnum, isalpha, isdigit, tolower argument to 'unsigned char'. * intl/loadmsgcat.c (_nl_load_domain): Cast isspace argument to 'unsigned char'. * intl/localealias.c (read_alias_file): Cast isspace argument to 'unsigned char'. 2001-10-20 Bruno Haible Assume strchr() exists. (Without it, intl/explodename.c wouldn't link anyway.) * intl/dcigettext.c (strchr): Remove fallback definition; it conflicts with the variable 'index' in plural_lookup. * intl/l10nflist.c (strchr): Likewise. * intl/localealias.c (strchr): Likewise. Assume , , , exist. * intl/bindtextdom.c: Likewise. * intl/dcigettext.c: Likewise. * intl/dgettext.c: Likewise. * intl/dngettext.c: Likewise. * intl/explodename.c: Likewise. * intl/finddomain.c: Likewise. * intl/gettext.c: Likewise. * intl/l10nflist.c: Likewise. * intl/loadmsgcat.c: Likewise. * intl/localealias.c: Likewise. * intl/ngettext.c: Likewise. * intl/textdomain.c: Likewise. * intl/gettext.h: Assume exists. 2001-11-27 Ulrich Drepper * stdio-common/Makefile (tests): Add scanf11. * stdio-common/scanf11.c: New file. 2001-11-26 Ulrich Drepper * version.h (RELEASE): Define as development. (VERSION): Set to 2.2.90. 2001-11-22 Thorsten Kukuk * nis/nss_compat/compat-grp.c: Print group id as unsigned long. * nis/nss_nis/nis-grp.c: Likewise. * nis/nss_nisplus/nisplus-grp.c: Likewise. * nis/nss_compat/compat-pwd.c: Print user id as unsigned long. * nis/nss_nis/nis-pwd.c: Likewise. * nis/nss_nisplus/nisplus-pwd.c: Likewise. * nis/nss_nis/nis-publickey.c: Use strtoul instead of atoi. * nis/nss_nisplus/nisplus-parser.c: Likewise. * nis/nss_nisplus/nisplus-publickey.c: Likewise. * nscd/grpcache.c: Use strtoul instead of atol. * nscd/pwdcache.c: Likewise. * nss/getent.c: Likewise. 2001-11-27 Paul Eggert * sysdeps/posix/tempname.c (__gen_tempname): Try at least ATTEMPTS_MIN or TMP_MAX times, whichever is greater. 2001-11-19 Bruno Haible * locale/programs/simple-hash.c (insert_entry_2): Resize at 75%, not 90%. (compute_hashval): Shift by 9 bits, not by 4 bits. This drastically improves the quality of the hash function, especially for short strings. 2001-11-26 Ulrich Drepper * stdio-common/vfscanf.c: If incomplete nan of inf(inity) strings are found call conv_error and not input_error [PR libc/2669]. * math/bits/mathcalls.h: Mark ceil and floor as const. Reported by David Mosberger. 2001-11-21 Jim Meyering * posix/regex.c (iswctype, mbrtowc, wcslen, wcscoll, wcrtomb) [_LIBC]: Define to be __-prefixed. Remove unnecessary duplication in `#ifdef _LIBC' blocks. 2001-11-26 Andreas Jaeger * sysdeps/unix/sysv/linux/hppa/brk.c: Remove __brk_addr alias, avoid warning. 2001-11-26 Stephen L Moshier * sysdeps/ieee754/ldbl-128/e_log10l.c (L102B): Fix typo in initialization. * sysdeps/ieee754/ldbl-128/e_coshl.c (__ieee754_coshl): Remove unused variables. Fix threshold for returning 1.0. * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (neval, deval): Constify argument. * sysdeps/ieee754/ldbl-128/s_erfl.c (neval, deval): Likewise, and remove unused variables. * sysdeps/ieee754/ldbl-128/e_j0l.c (neval, deval): Likewise. * sysdeps/ieee754/ldbl-128/e_j1l.c (neval, deval): Likewise, and include local math header files. 2001-11-22 Andreas Jaeger * sysdeps/ieee754/ldbl-96/s_ilogbl.c (__ilogbl): Add brace to avoid warning. 2001-11-21 Andreas Jaeger * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h: New file. * sysdeps/unix/sysv/linux/x86_64/Makefile (sysdep_headers): Add sys/debugreg.h 2001-11-15 Andreas Jaeger * include/features.h (__GLIBC_HAVE_LONG_LONG): Define for compilers that support it. * posix/sys/types.h: Use __GLIBC_HAVE_LONG_LONG. * sysdeps/unix/sysv/linux/bits/types.h: Likewise. * stdlib/stdlib.h: Likewise. 2001-11-17 Ulrich Drepper * posix/regex.c (byte_re_match_2_internal): For gcc replace switch statement with gotos. Based on a patch by Paolo Bonzini . 2001-11-16 Stephen L Moshier * sysdeps/ieee754/ldbl-96/s_erfl.c (__erfcl): Fix K&R header. 2001-11-15 Ulrich Drepper * sysdeps/generic/unwind-dw2-fde.c: Don't use recursive mutexes. 2001-10-02 Jakub Jelinek H.J. Lu * Versions.def (libc): Add GCC_3.0. * configure.in (libc_cv_gcc_static_libgcc): Set to -static-libgcc if gcc supports this flag. (EXPORT_UNWIND_FIND_FDE): Define unless target configure disables it. (gcc3): Allow glibc to be compiled with gcc 3.x. * config.h.in (EXPORT_UNWIND_FIND_FDE): Add. * config.make.in (static-libgcc, unwind-find-fde): Add. * Makerules (build-shlib-helper, build-module-helper): Use it. * scripts/versions.awk: Make sure GLIBC_ versions come first. * elf/soinit.c (__libc_global_ctors): Set tbases and dbases if necessary. (_fini): Call __deregister_frame_info_bases if __register_frame_info_bases was used to register. * elf/Versions (__register_frame_info, __deregister_frame_info): Add for GLIBC_2.0. (__register_frame_info_bases, __register_frame_info_table_bases, __deregister_frame_info_bases, _Unwind_Find_FDE): Add for GCC_3.0. * elf/Makefile (routines): Add unwind-dw2-fde. (shared-only-routines): Add unwind-dw2-fde. * sysdeps/alpha/gccframe.h: New file. * sysdeps/arm/gccframe.h: New file. * sysdeps/generic/framestate.c: New file. * sysdeps/generic/dwarf2.h: New file. * sysdeps/generic/gccframe.h (struct object): Update from gcc 3.0. * sysdeps/generic/unwind-dw2-fde.c: New file. * sysdeps/unix/sysv/linux/ia64/unwind-dw2-fde.c: New file. * sysdeps/generic/unwind-dw2-fde.h: New file. * sysdeps/generic/unwind-dw2.c: New file. * sysdeps/generic/unwind-pe.h: New file. * sysdeps/generic/unwind.h: New file. * sysdeps/hppa/gccframe.h: New file. * sysdeps/i386/gccframe.h: New file. * sysdeps/m68k/gccframe.h: New file. * sysdeps/mips/gccframe.h: New file. * sysdeps/powerpc/gccframe.h: New file. * sysdeps/s390/gccframe.h: New file. * sysdeps/sh/gccframe.h: New file. * sysdeps/sparc/gccframe.h: New file. * sysdeps/vax/gccframe.h: New file. * sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde): Set on all architectures except ia64. * sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde): Set for i386. * sysdeps/mach/hurd/i386/Versions (__register_frame_info, __deregister_frame_info): Move to elf/Versions. * sysdeps/unix/sysv/linux/m68k/Versions: Likewise. * sysdeps/unix/sysv/linux/arm/Versions: Likewise. * sysdeps/unix/sysv/linux/alpha/Versions: Likewise. * sysdeps/unix/sysv/linux/i386/Versions: Likewise. * sysdeps/unix/sysv/linux/mips/Versions: Likewise. * sysdeps/unix/sysv/linux/powerpc/Versions: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/Versions: Likewise. * sysdeps/mach/hurd/i386/Makefile (sysdep-routines): Add framestate. * sysdeps/unix/sysv/linux/arm/Makefile: Likewise. * sysdeps/unix/sysv/linux/alpha/Makefile: Likewise. * sysdeps/unix/sysv/linux/i386/Makefile: Likewise. * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise. * sysdeps/unix/sysv/linux/mips/Makefile: Likewise. * sysdeps/unix/sysv/linux/powerpc/Makefile: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise. * sysdeps/unix/sysv/linux/sparc/Makefile: Likewise. 2001-11-15 Jeff Law * posix/regex.c (uintptr_t): Do not provide a definition if the system provided one. 2001-11-13 Roland McGrath * stdio-common/tmpfile.c: Moved to ... * sysdeps/generic/tmpfile.c: ... here. * sysdeps/mach/hurd/tmpfile.c: New file. * hurd/fopenport.c (__fopenport): Renamed from fopenport. [USE_IN_LIBIO] (fopencookie): #define as _IO_fopencookie. (fopenport): Define as weak alias. * libio/iofopncook.c (_IO_fopencookie): Move forward declaration ... * libio/libioP.h: ... to here. 2001-11-12 Ulrich Drepper * elf/dl-reloc.c (_dl_relocate_object): Avoid iterating over program header twice. Construct list with the needed information. 2001-11-10 Ulrich Drepper * po/ca.po: Update from translation team. * elf/dl-load.c (_dl_map_object_from_fd): Remove use of _dl_pf_to_prot. Use arithmetic operation using PF_TO_PROT macro. * sysdeps/generic/ldsodefs.h (PF_TO_PROT): New macro. * elf/dl-reloc.c (_dl_relocate_object): Likewise. 2001-11-10 Andreas Jaeger * sysdeps/ieee754/ldbl-128/e_log2l.c: New file. * sysdeps/ieee754/ldbl-128/e_log10l.c: Likewise. Contributed by Stephen L Moshier . 2001-11-09 Ulrich Drepper * elf/dl-minimal.c (realloc): Handle NULL for first parameter correctly. * elf/dl-load.c (is_dst): New function. (_dl_dst_count): Use is_dst to check for DST variable. (_dl_dst_substitute): Likewise. 2001-11-09 Roland McGrath Hurd/PowerPC port contributed by Peter Bruin . * sysdeps/mach/hurd/powerpc/exc2signal.c: New file. * sysdeps/mach/hurd/powerpc/init-first.c: New file. * sysdeps/mach/hurd/powerpc/intr-msg.h: New file. * sysdeps/mach/hurd/powerpc/longjmp-ts.c: New file. * sysdeps/mach/hurd/powerpc/register-dump.h: New file. * sysdeps/mach/hurd/powerpc/sigreturn.c: New file. * sysdeps/mach/hurd/powerpc/static-start.S: New file. * sysdeps/mach/hurd/powerpc/trampoline.c: New file. * sysdeps/mach/hurd/powerpc/bits/sigcontext.h: New file. * sysdeps/mach/hurd/powerpc/Dist: New file. * hurd/privports.c (__get_privileged_ports): Only contact the proc server if necessary for this call. Suggested by Neal H Walfield . Check error return for mach_port_mod_refs. 2001-11-09 Andreas Schwab * sysdeps/unix/sysv/linux/m68k/bits/resource.h: New file. 2001-11-09 Ulrich Drepper * elf/dl-load.c (lose): Remove some unnecessary code. The new object is always the last in the list. (_dl_map_object_from_fd): Delete code to remove from object list when DF_1_NOOPEN is seen. This is done in lose. 2001-11-08 Ulrich Drepper * elf/dl-object.c (_dl_new_object): Various small optimizations. 2001-11-07 Ulrich Drepper * sysdeps/generic/dl-cache.c: Optimize SEARCH_CACHE and HWCAP_CHECK macro code. * elf/dl-misc.c (_dl_sysdep_read_whole_file): Optimize code a bit. Now returns MAP_FAILED on error. * elf/rtld.c: Adjust caller. * sysdeps/generic/dl-cache.c: Likewise. * sysdeps/generic/ldsodefs.h: Adjust description. * elf/dl-version.c (match_symbol): Optimize error handling for size. (_dl_check_map_versions): Likewise. 2001-11-06 Ulrich Drepper * elf/dl-load.c (_dl_map_object_from_fd): Don't call _dl_signal_error directly, always use lose. Set fd to -1 after file is closed. (lose): Don't call close if fd == -1. 2001-11-07 Kaoru Fukui * manual/charset.texi: Fix typo @w[ISO 6937] to @w{ISO 6937}. Also fix typo @code {mbsinit} to @code{mbsinit}. 2001-11-06 Ulrich Drepper * elf/dl-profile.c: Replace state variable with simple flag named running. Remove commented-out code. * elf/dl-load.c (decompose_rpath): Optimize error handling for size. (_dl_init_paths): Likewise. (_dl_map_object_from_fd): Likewise. * elf/dl-reloc.c (_dl_relocate_object): Likewise. 2001-11-06 Roland McGrath * sysdeps/mach/powerpc/sysdep.h: Include sysdeps/unix/powerpc/sysdep.h instead of sysdeps/powerpc/elf/sysdep.h and sysdeps/unix/sysdep.h. * sysdeps/unix/sysv/linux/powerpc/sysdep.h: Don't include sysdeps/powerpc/elf/sysdep.h. Reported by Kaoru Fukui . 2001-11-05 Ulrich Drepper * elf/rtld.c (process_dl_debug): Rewritten. Optimized for size not speed. (process_envvars): Some more optimizations. * sysdeps/generic/ldsodefs.h (DL_DEBUG_HELP): New macro. * 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. * elf/dl-reloc.c (_dl_reloc_bad_type): Rewrite to not use writable strings. Change type of second parameter. * sysdeps/generic/ldsodefs.h: Adjust _dl_reloc_bad_type prototype for last change. * io/fts.h: Prevent using with _FILE_OFFSET_BITS=64. 2001-11-04 Joseph S. Myers * manual/string.texi: Fix typos. * manual/examples/argp-ex2.c: Likewise. 2001-11-05 Roland McGrath * sysdeps/powerpc/elf/sysdep.h: Remove this file, because it overrides the more-specific unix/sysv/linux/powerpc file and breaks everything. * sysdeps/powerpc/sysdep.h (ALIGNARG, ASM_TYPE_DIRECTIVE, ASM_SIZE_DIRECTIVE, CALL_MCOUNT, ENTRY, EALIGN, DO_CALL, JUMPTARGET, PSEUDO, PSEUDO_RET, PSEUDO_END, L, C_TEXT): These macros moved here here, put under [__ELF__]. 2001-11-05 Ulrich Drepper * manual/charset.texi: Extensive editing work. * manual/nss.texi: Likewise. Changes by Dennis Grace . 2001-11-04 Roland McGrath * hurd/set-host.c (_hurd_set_host_config): Use O_WRONLY in flags parameter to dir_mkfile. 2001-11-02 Jakub Jelinek * string/bits/string2.h (__strndup): If n is smaller than len, set len to n + 1. * string/tester.c (test_strndup): New function. (main): Call it. 2001-11-01 Ulrich Drepper * sunrpc/rpc_main.c: Optimize variable definitions a bit. * sunrpc/Makefile (rpcgen-cmd): Use ../scripts/cpp in rpcgen calls. * scripts/cpp: New file. * elf/dl-load.c (_dl_map_object): Correct test of DF_1_NODEFLIB for rtld_search_dirs content. Minor optimizations. 2001-10-31 Ulrich Drepper * elf/dl-load.c (_dl_map_object): Make code a bit more compact by avoiding unnecessary duplication. 2001-10-31 Jakub Jelinek * elf/dl-load.c (_dl_map_object): If library was found using LD_LIBRARY_PATH, don't try RUNPATH list. 2001-10-31 Martin Schwidefsky * sysdeps/unix/sysv/linux/s390/s390-32/register-dump.h (REGISTER_DUMP): Correct second argument of register_dump call. * sysdeps/unix/sysv/linux/s390/s390-64/register-dump.h (REGISTER_DUMP): Likewise. 2001-10-31 Ulrich Drepper * iconvdata/Makefile: Add support for IBM1132, IBM1133, and IBM1162 modules. * iconvdata/TESTS: Likewise. * iconvdata/gconv-modules: Likewise. * iconvdata/ibm1132.c: New file. * iconvdata/ibm1132.h: New file. * iconvdata/ibm1133.c: New file. * iconvdata/ibm1133.h: New file. * iconvdata/ibm1162.c: New file. * iconvdata/ibm1162.h: New file. * iconvdata/testdata/IBM1132: New file. * iconvdata/testdata/IBM1132..UTF8: New file. * iconvdata/testdata/IBM1133: New file. * iconvdata/testdata/IBM1133..UTF8: New file. * iconvdata/testdata/IBM1162: New file. * iconvdata/testdata/IBM1162..UTF8: New file. Patches by Masahide Washizawa . * string/string.h: Fix typo in comment. * wcsmbs/wchar.h: Likewise. 2001-10-30 Joseph S. Myers * manual/getopt.texi (getopt_long, getopt_long_only): Include const in type of longopts parameter. 2001-10-29 Andreas Jaeger * sysdeps/ieee754/dbl-64/mpa.h: Add prototypes for internal functions. 2001-10-29 Kevin Ryde * manual/stdio.texi (Integer Conversions): Corrections to sample printf output, clarify `#' behaviour on 0. (Floating-Point Conversions): Clarify that %g only uses %e when the exponent would be greater than 1. 2001-10-28 Roland McGrath Support for Mach/PowerPC contributed by Peter Bruin . * sysdeps/mach/powerpc/machine-sp.h: New file. * sysdeps/mach/powerpc/sysdep.h: New file. * sysdeps/mach/powerpc/thread_state.h: New file. * sysdeps/mach/hurd/i386/Makefile: File removed; crt0.o rules moved ... * sysdeps/mach/hurd/Makefile: ... to here. For the time being, we can expect to need the same thing on every platform. * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: File moved ... * sysdeps/generic/sys/ucontext.h: ... to replace this one. * sysdeps/unix/sysv/linux/powerpc/sysdep.h (ALIGNARG, ASM_TYPE_DIRECTIVE, ASM_SIZE_DIRECTIVE, CALL_MCOUNT, ENTRY, EALIGN, DO_CALL, JUMPTARGET, PSEUDO, PSEUDO_RET, PSEUDO_END, L, C_TEXT): Move all these assembly-related definitions to ... * sysdeps/powerpc/elf/sysdep.h: ... this new file. * sysdeps/mach/powerpc/machine-lock.h: Assembly code rewritten by Peter Bruin . * hurd/hurdselect.c (_hurd_select): Check SELECT_RETURNED bit when packing results for a `poll' call. 2001-10-26 Ulrich Drepper * posix/fnmatch_loop.c: Recognize - at end of bracket expression correctly. * posix/tst-fnmatch.input: Add tests for - at beginning and end of bracket expression. * string/strxfrm.c [USE_IN_EXTENDED_LOCALE_MODEL]: Correctly get nrules value. * string/tst-strxfrm.c (test): Also test __strxfrm_l. 2001-10-24 H.J. Lu * sysdeps/generic/bits/dlfcn.h (DL_CALL_FCT): Cast to void *. Use __BEGIN_DECLS/__END_DECLS around prototypes. * sysdeps/mips/bits/dlfcn.h (DL_CALL_FCT): Likewise. 2001-10-21 Jim Meyering * malloc/obstack.c (_): Honor the setting of ENABLE_NLS. Otherwise, this code would end up calling gettext even in packages built with --disable-nls. * posix/getopt.c (_): Likewise. * posix/regex.c (_): Likewise. 2001-10-26 Ulrich Drepper * resolv/gethnamaddr.c (gethostbyaddr): Use ip6.addr for reverse lookup not ip6.int. * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise. Reported by Martin.v.Loewis@t-online.de [PR libc/2598]. 2001-10-19 Jakub Jelinek * misc/sys/cdefs.h (__attribute_used__): Define. * elf/rtld.c (_dl_start): Add __attribute_used__. * elf/dl-runtime.c (fixup, profile_fixup): Likewise. 2001-10-25 Andreas Schwab * stdlib/a64l.c: Expect least significant digit first. * stdlib/l64a.c: Produce least significant digit first. * stdlib/Makefile (tests): Add test-a64l. * stdlib/test-a64l.c: New file. Reported by Masaki Hasegawa . 2001-10-21 Ulrich Drepper * po/sk.po: Update from translation team. 2001-10-18 Ulrich Drepper * sysdeps/i386/elf/start.S (_fp_hw): Define object type. 2001-10-18 Andreas Schwab * math/libm-test.inc (print_ulps): Print ulp values rounded to next whole number. (print_function_ulps): Likewise. (print_complex_function_ulps): Likewise. (print_max_error): Likewise. (print_complex_max_error): Likewise. Handle ignore_max_ulp. 2001-10-16 Andreas Schwab * sysdeps/m68k/fpu/libm-test-ulps: Updated for fixed cbrtl implementation. * sysdeps/m68k/setjmp.c: Also define setjmp and _setjmp if BSD_SETJMP or BSD__SETJMP is defined, resp. * sysdeps/m68k/bsd-setjmp.c: Inline setjmp code instead of making a tail call to __sigsetjmp that would require extending the caller's frame. * sysdeps/m68k/bsd-_setjmp.c: Likewise. * sysdeps/m68k/bsd-setjmp.S: Deleted. * sysdeps/m68k/bsd-_setjmp.S: Deleted. Reported by Jes Sorensen . 2001-10-16 Andreas Jaeger * sysdeps/ieee754/ldbl-96/s_nextafterl.c (__nextafterl): Fix parentheses. Reported by David Byron , close PR libc/2589. 2001-10-15 Ulrich Drepper * po/ca.po: New file. Contributed by the translation team. 2001-10-15 Ralf Baechle * sysdeps/unix/sysv/linux/mips/sys/sysmips.h: Make sysmips() prototype a varargs prototype. Remove dependency from kernel header files. * sysdeps/unix/sysv/linux/mips/bits/termios.h: General cleanup, use __USE_MISC / __USE_XOPEN not __USE_BSD where appropriate. 2001-10-14 Ulrich Drepper * locale/programs/ld-collate.c (handle_ellipsis): Use %lX not %lx to generate hexadecimal identifier. Patch by Jungshik Shin . 2001-10-09 Stephen L Moshier * sysdeps/ieee754/ldbl-96/s_cbrtl.c (__cbrtl): Fix algorithm. 2001-10-14 Ulrich Drepper * sysdeps/ieee754/ldbl-128/e_powl.c: New file. * sysdeps/ieee754/ldbl-128/s_cbrtl.c: New file. Contributed by Stephen L Moshier . * sysdeps/ieee754/ldbl-128/e_j0l.c: Constify float variables. * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise. * sysdeps/ieee754/ldbl-128/e_lgammal_r.c: Likewise * sysdeps/ieee754/ldbl-128/s_erfl.c: Likewise * sysdeps/ieee754/ldbl-128/s_expm1l.c: Likewise * sysdeps/ieee754/ldbl-128/s_log1pl.c: Likewise * timezone/africa: Update from tzdata2001d. * timezone/asia: Likewise. * timezone/australasia: Likewise. * timezone/backward: Likewise. * timezone/europe: Likewise. * timezone/leapseconds: Likewise. * timezone/northamerica: Likewise. * timezone/southamerica: Likewise. * timezone/zone.tab: Likewise. 2001-10-09 Martin Schwidefsky * sysdeps/s390/s390-32/sys/ucontext.h: Correct __psw_t typedef. * sysdeps/s390/s390-64/sys/ucontext.h: Likewise. 2001-10-12 Ulrich Drepper * elf/elf.h (PT_TLS): New definition. 2001-10-10 Jeff Bailey * sysdeps/mach/hurd/Makefile: Add $(CFLAGS) for generation of bits/errno.h 2001-10-07 Roland McGrath * sysdeps/mach/hurd/setrlimit.c (__setrlimit): Never return ENOSYS. 2001-10-10 Ulrich Drepper * elf/elf.h: Add more ELFOSABI_* constants. 2001-10-04 Ben Collins * sysdeps/generic/inttypes.h: Fix typo (define, not defined) in decleration of __need_wchar_t. 2001-10-03 Jakub Jelinek * string/bits/string2.h (__strsep_g): Add prototype. (__strsep): Use it. * string/Versions (__strsep): Remove. * sysdeps/generic/strsep.c (__strsep_g): Add alias to __strsep. 2001-10-07 Ulrich Drepper * manua/llio.texi: Clarify file references added by mmap. Patch by Marcus Brinkmann . 2001-09-29 Jes Sorensen * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext): Add sc_loadrs and sc_rbs_bas to match current kernel. 2001-09-27 Jakub Jelinek * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update. * sysdeps/ieee754/ldbl-128/s_erfl.c (__erfcl): Fix erfc(-inf). 2001-09-27 Jakub Jelinek * elf/dl-open.c (dl_open_worker): If l_opencount of freshly loaded object has been bumped because of relocation dependency, avoid duplicates in l_scope. (show_scope): Fix typos. * elf/Makefile: Add rules to build and run reldep6. * elf/reldep6.c: New file. * elf/reldep6mod0.c: New file. * elf/reldep6mod1.c: New file. * elf/reldep6mod2.c: New file. * elf/reldep6mod3.c: New file. * elf/reldep6mod4.c: New file. 2001-09-26 Jakub Jelinek * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_fixup_plt): Call sparc64_fixup_plt. (sparc64_fixup_plt): Moved from elf_machine_fixup_plt. Optimize near jumps and 0xfffff800XXXXXXXX target addresses, no thread safety for non-lazy binding. Fix .plt[32768+] handling. (elf_machine_plt_value): Don't add addend. (elf_machine_rela): Call sparc64_fixup_plt instead of elf_machine_fixup_plt. (elf_machine_runtime_setup, TRAMPOLINE_TEMPLATE): Optimize for dynamic linker at 0xfffff800XXXXXXXX. * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update. 2001-09-28 Ulrich Drepper * elf/elf.h: Define SHF_GROUP and SHF_TLS. 2001-09-25 Jakub Jelinek * sysdeps/unix/bsd/bsd4.4/bits/socket.h (struct cmsghdr): Don't declare __cmsg_data field if its size would be bigger than 0. (CMSG_DATA): Adjust accordingly. * sysdeps/unix/sysv/aix/bits/socket.h: Likewise. * sysdeps/unix/sysv/linux/alpha/bits/socket.h: Likewise. * sysdeps/unix/sysv/linux/ia64/bits/socket.h: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/bits/socket.h: Likewise. * sysdeps/unix/sysv/linux/bits/socket.h: Likewise. * sysdeps/unix/sysv/linux/mips/bits/socket.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise. 2001-09-25 Ulrich Drepper * iconvdata/TESTS: Add entries for IBM1160 and IBM1161. * iconvdata/testdata/IBM1160: New file. * iconvdata/testdata/IBM1160..UTF8: New file. * iconvdata/testdata/IBM1161: New file. * iconvdata/testdata/IBM1161..UTF8: New file. Patch by Masahide Washizawa . 2001-09-24 Ulrich Drepper * sysdeps/unix/bsd/ulimit.c (ulimit): Handle overflow in UL_SETFSIZE computations better. * rt/Makefile: Remove use of filter for librt again. * sysdeps/unix/sysv/linux/ulimit.c (__ulimit): Handle overflow in UL_SETFSIZE computations better. * string/Versions: Export __strsep for GLIBC_2.2.5. * string/bits/string2.h: Define all __STRING_INLINE functions if _FORCE_INLINES is defined. Use int instead of char of parameter types. (__strsep): Don't use __strsep_g. Don't define it. (__strsep_1c, __strsep_2c, __strsep_3c): Optimize. * sysdeps/i386/i486/string.h (__strcpy_a_small): Renamed from __strcpy_small. (__stpcpy_a_small): Renamed from __stpcpy_small. (__strcspn_c1): Don't define if _FORCE_INLINES. (__strspn_c1): Likewise. 2001-09-22 Ben Collins * sysdeps/sparc/bits/sigaction.h: Define SA_RESTART and friends when _UNIX98_SOURCE is defined too. Matches generic/bits/sigaction.h. * sysdeps/ia64/bits/sigaction.h: Likewise. * sysdeps/s390/s390-64/bits/sigaction.h: Likewise. 2001-09-24 Andrew Haley * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_headers): Add sys/io.h. 2001-09-24 Jakub Jelinek * elf/dl-open.c (dl_open_worker): Update l_scope_max. 2001-09-24 Ulrich Drepper * wcsmbs/wchar.h: Add __attribute_pure__ to mbsinit prototype. 2001-09-20 H.J. Lu * include/dlfcn.h (__RTLD_SPROF): New definiton. * elf/dl-open.c (dl_open_worker): Return immediately after loading for __RTLD_SPROF. * elf/sprof.c (main): Default to the filename if soname doesn't exist. (load_shobj): Call dlopen with `RTLD_LAZY | __RTLD_SPROF'. 2001-09-20 H.J. Lu * elf/dl-profile.c (_dl_mcount): Use old *narcsp value for newarc, don't add 1. 2001-09-22 Ulrich Drepper * nss/getent.c: Accept -s parameter to overwrite rules in nsswitch.conf. Patch by Nalin Dahyabhai . * nss/nss_files/files-network.c (LINE_PARSER): Pad addr string with as many ".0" as necessary to form a complete address inet_network understands. * nss/getent.c: Various cleanups. Use simpler and fewer function calls. 2001-09-20 Martin Schwidefsky * sysdeps/s390/s390-32/bits/setjmp.h: Correct pointer comparison in _JMPBUF_UNWINDS. * sysdeps/s390/s390-64/bits/setjmp.h: Likewise. 2001-09-22 Ulrich Drepper * iconvdata/Makefile: Add rules to build and distribute IBM1160 and IBM1161. * iconvdata/gconv-modules: Add entries for IBM1160 and IBM1161. * iconvdata/ibm1160.c: New file. * iconvdata/ibm1160.h: New file. * iconvdata/ibm1161.c: New file. * iconvdata/ibm1161.h: New file. Patch by Masahide Washizawa . 2001-09-19 Jakub Jelinek * sysdeps/alpha/dl-machine.h (elf_machine_load_address): Compute the difference between base address and first PT_LOAD's virtual address, not the base address. 2001-09-11 Tom Rix * sysdeps/unix/sysv/aix/init-first.c (init): Use USE_NONONPTION_FLAG ifdef for __getopt_clean_environment. * sysdeps/unix/sysv/aix/libc-start.c: Add real implementation. 2001-09-22 Andreas Jaeger * elf/reldep4.c (main): Add proper prototype to fix warning. * elf/reldep5.c (main): Remove unused variable. * math/math_private.h: Add prototypes. 2001-09-21 Andreas Jaeger * sysdeps/unix/sysv/linux/x86_64/Dist: New file. * sysdeps/x86_64/Dist: New file. * sysdeps/x86_64/soft-fp/Dist: New file. * sysdeps/gnu/Dist: Remove eval.c. 2001-09-20 Ulrich Drepper * malloc/memusage.c (realloc): Don't count already allocated memory in the sums. (me): Always use dlsym() to find the real implementations. * malloc/memusage.sh: Make -n option actually do something. 2001-09-20 Andreas Jaeger * elf/elf.h (R_390_NUM): Correct value. * Versions.def: Add missing versions 2.2.3 for libthread_db and libpthread. * sysdeps/unix/sysv/linux/configure.in: Add minimal kernel version for x86-64, install x86-64 into */lib64. * shlib-versions: Add x86-64. * elf/elf.h: Add x86-64 relocations. 2001-09-19 Ulrich Drepper * po/fr.po: Update from translation team. 2001-09-19 Andreas Jaeger * sysdeps/unix/sysv/linux/x86_64/Makefile: New file. * sysdeps/unix/sysv/linux/x86_64/Versions: New file. * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: New file. * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: New file. * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: New file. * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: New file. * sysdeps/unix/sysv/linux/x86_64/bits/time.h: New file. * sysdeps/unix/sysv/linux/x86_64/bits/types.h: New file. * sysdeps/unix/sysv/linux/x86_64/brk.c: New file. * sysdeps/unix/sysv/linux/x86_64/clone.S: New file. * sysdeps/unix/sysv/linux/x86_64/fstatfs64.c: New file. * sysdeps/unix/sysv/linux/x86_64/ftruncate64.c: New file. * sysdeps/unix/sysv/linux/x86_64/fxstat.c: New file. * sysdeps/unix/sysv/linux/x86_64/fxstat64.c: New file. * sysdeps/unix/sysv/linux/x86_64/getdents.c: New file. * sysdeps/unix/sysv/linux/x86_64/getdents64.c: New file. * sysdeps/unix/sysv/linux/x86_64/getrlimit64.c: New file. * sysdeps/unix/sysv/linux/x86_64/gettimeofday.c: New file. * sysdeps/unix/sysv/linux/x86_64/glob64.c: New file. * sysdeps/unix/sysv/linux/x86_64/lxstat.c: New file. * sysdeps/unix/sysv/linux/x86_64/lxstat64.c: New file. * sysdeps/unix/sysv/linux/x86_64/mmap64.c: New file. * sysdeps/unix/sysv/linux/x86_64/pread64.c: New file. * sysdeps/unix/sysv/linux/x86_64/profil-counter.h: New file. * sysdeps/unix/sysv/linux/x86_64/pwrite64.c: New file. * sysdeps/unix/sysv/linux/x86_64/readdir.c: New file. * sysdeps/unix/sysv/linux/x86_64/readdir64.c: New file. * sysdeps/unix/sysv/linux/x86_64/readdir64_r.c: New file. * sysdeps/unix/sysv/linux/x86_64/readdir_r.c: New file. * sysdeps/unix/sysv/linux/x86_64/recv.c: New file. * sysdeps/unix/sysv/linux/x86_64/register-dump.h: New file. * sysdeps/unix/sysv/linux/x86_64/send.c: New file. * sysdeps/unix/sysv/linux/x86_64/setrlimit64.c: New file. * sysdeps/unix/sysv/linux/x86_64/sigaction.c: New file. * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: New file. * sysdeps/unix/sysv/linux/x86_64/sigpending.c: New file. * sysdeps/unix/sysv/linux/x86_64/sigprocmask.c: New file. * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: New file. * sysdeps/unix/sysv/linux/x86_64/statfs64.c: New file. * sysdeps/unix/sysv/linux/x86_64/sys/perm.h: New file. * sysdeps/unix/sysv/linux/x86_64/sys/procfs.h: New file. * sysdeps/unix/sysv/linux/x86_64/sys/reg.h: New file. * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h: New file. * sysdeps/unix/sysv/linux/x86_64/sys/user.h: New file. * sysdeps/unix/sysv/linux/x86_64/syscall.S: New file. * sysdeps/unix/sysv/linux/x86_64/syscalls.list: New file. * sysdeps/unix/sysv/linux/x86_64/sysdep.S: New file. * sysdeps/unix/sysv/linux/x86_64/sysdep.h: New file. * sysdeps/unix/sysv/linux/x86_64/time.c: New file. * sysdeps/unix/sysv/linux/x86_64/truncate64.c: New file. * sysdeps/unix/sysv/linux/x86_64/umount.c: New file. * sysdeps/unix/sysv/linux/x86_64/vfork.S: New file. * sysdeps/unix/sysv/linux/x86_64/xstat.c: New file. * sysdeps/unix/sysv/linux/x86_64/xstat64.c: New file. * sysdeps/unix/x86_64/sysdep.S: New file. * sysdeps/unix/x86_64/sysdep.h: New file. * sysdeps/x86_64/Implies: New file. * sysdeps/x86_64/Makefile: New file. * sysdeps/x86_64/Versions: New file. * sysdeps/x86_64/__longjmp.S: New file. * sysdeps/x86_64/abort-instr.h: New file. * sysdeps/x86_64/atomicity.h: New file. * sysdeps/x86_64/bits/endian.h: New file. * sysdeps/x86_64/bits/setjmp.h: New file. * sysdeps/x86_64/bits/string.h: New file. * sysdeps/x86_64/bp-asm.h: New file. * sysdeps/x86_64/bsd-_setjmp.S: New file. * sysdeps/x86_64/bsd-setjmp.S: New file. * sysdeps/x86_64/dl-machine.h: New file. * sysdeps/x86_64/elf/initfini.c: New file. * sysdeps/x86_64/elf/start.S: New file. * sysdeps/x86_64/ffs.c: New file. * sysdeps/x86_64/ffsll.c: New file. * sysdeps/x86_64/fpu/bits/fenv.h: New file. * sysdeps/x86_64/fpu/bits/mathdef.h: New file. * sysdeps/x86_64/fpu/e_acosl.c: New file. * sysdeps/x86_64/fpu/e_atan2l.c: New file. * sysdeps/x86_64/fpu/e_exp2l.S: New file. * sysdeps/x86_64/fpu/e_expl.c: New file. * sysdeps/x86_64/fpu/e_fmodl.S: New file. * sysdeps/x86_64/fpu/e_log10l.S: New file. * sysdeps/x86_64/fpu/e_log2l.S: New file. * sysdeps/x86_64/fpu/e_logl.S: New file. * sysdeps/x86_64/fpu/e_powl.S: New file. * sysdeps/x86_64/fpu/e_rem_pio2l.c: New file. * sysdeps/x86_64/fpu/e_scalbl.S: New file. * sysdeps/x86_64/fpu/e_sqrtl.c: New file. * sysdeps/x86_64/fpu/fclrexcpt.c: New file. * sysdeps/x86_64/fpu/fedisblxcpt.c: New file. * sysdeps/x86_64/fpu/feenablxcpt.c: New file. * sysdeps/x86_64/fpu/fegetenv.c: New file. * sysdeps/x86_64/fpu/fegetexcept.c: New file. * sysdeps/x86_64/fpu/fegetround.c: New file. * sysdeps/x86_64/fpu/feholdexcpt.c: New file. * sysdeps/x86_64/fpu/fesetenv.c: New file. * sysdeps/x86_64/fpu/fesetround.c: New file. * sysdeps/x86_64/fpu/fgetexcptflg.c: New file. * sysdeps/x86_64/fpu/fraiseexcpt.c: New file. * sysdeps/x86_64/fpu/fsetexcptflg.c: New file. * sysdeps/x86_64/fpu/ftestexcept.c: New file. * sysdeps/x86_64/fpu/libm-test-ulps: New file. * sysdeps/x86_64/fpu/math_ldbl.h: New file. * sysdeps/x86_64/fpu/printf_fphex.c: New file. * sysdeps/x86_64/fpu/s_atanl.c: New file. * sysdeps/x86_64/fpu/s_cosl.S: New file. * sysdeps/x86_64/fpu/s_expm1l.S: New file. * sysdeps/x86_64/fpu/s_fpclassifyl.c: New file. * sysdeps/x86_64/fpu/s_isinfl.c: New file. * sysdeps/x86_64/fpu/s_isnanl.c: New file. * sysdeps/x86_64/fpu/s_log1pl.S: New file. * sysdeps/x86_64/fpu/s_logbl.c: New file. * sysdeps/x86_64/fpu/s_nextafterl.c: New file. * sysdeps/x86_64/fpu/s_nexttoward.c: New file. * sysdeps/x86_64/fpu/s_nexttowardf.c: New file. * sysdeps/x86_64/fpu/s_rintl.c: New file. * sysdeps/x86_64/fpu/s_significandl.c: New file. * sysdeps/x86_64/fpu/s_sincosl.S: New file. * sysdeps/x86_64/fpu/s_sinl.S: New file. * sysdeps/x86_64/fpu/s_tanl.S: New file. * sysdeps/x86_64/gmp-mparam.h: New file. * sysdeps/x86_64/hp-timing.c: New file. * sysdeps/x86_64/hp-timing.h: New file. * sysdeps/x86_64/htonl.S: New file. * sysdeps/x86_64/memusage.h: New file. * sysdeps/x86_64/setjmp.S: New file. * sysdeps/x86_64/soft-fp/sfp-machine.h: New file. * sysdeps/x86_64/stackinfo.h: New file. * sysdeps/x86_64/sysdep.h: New file. * sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed: New file. * sysdeps/ieee754/ldbl-128/s_erfl.c: New file, contributed Stephen L Moshier. 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 file. * sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed: New file. * 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_class 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 file. * 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.