2002-03-13 Wolfram Gloger * malloc/malloc.c (sYSMALLOc): Don't change brk if mmap failed. 2002-03-02 Andreas Schwab * stdio-common/vfprintf.c (process_arg): Fix decimal format with 'h' flag and positional arg. * stdio-common/tst-printf.c (rfg3): New function to test positional arguments. (main): Fix some warnings. 2002-03-13 Jakub Jelinek * elf/dl-minimal.c (_itoa): Use _itoa_lower_digits_internal if SHARED. * elf/dl-reloc.c (_dl_reloc_bad_type): Likewise. 2002-03-13 Ulrich Drepper * grp/initgroups.c (__nss_group_data): Declare as hidden. * include/locale.h (_nl_C_locobj): Declare as hidden. * time/asctime.c (_nl_C_LC_TIME): Declare as hidden. * time/strptime.c (_nl_C_LC_TIME): Likewise. * include/netinet/in.h (in6addr_any_internal): Mark as hidden. * include/sys/gmon.h: Declare _gmonparam as hidden. * locale/lc-ctype.c (__ctype32_wctype): Declare as hidden. (__ctype32_wctrans): Likewise. (__ctype32_width): Likewise. * sysdeps/unix/sysv/linux/ttyname.c: Comment out definition and use of __ttyname. * posix/regcomp.c (__re_error_msgid): Renamed from re_error_msgid. Define as hidden. (__re_error_msgid_idx): Renamed from re_error_msgid_idx. Define as hidden. Change all users of these variables. * posix/regex_internal.h (__re_error_msgid): Renamed from re_error_msgid. Declare as hidden. (__re_error_msgid_idx): Renamed from re_error_msgid_idx. Declare as hidden. * stdio-common/reg-printf.c (__printf_arginfo_table): Define as hidden. (__printf_function_table): Likewise. * stdio-common/printf-parse.h (__printf_arginfo_table): Declare as hidden. (__printf_function_table): Likewise. * nscd/nscd_proto.h: Declare __nss_not_use_nscd_passwd, __nss_not_use_nscd_group, and __nss_not_use_nscd_hosts as hidden. * nss/XXX-lookup.c (DATABASE_NAME_SYMBOL): Define as hidden. * nss/nsswitch.c: Declare _nss_*_database as hidden. * stdlib/wctomb.c (__no_r_state): Declare as hidden. * stdlib/mbtowc.c (__no_r_state): Define as hidden. 2002-03-12 Ulrich Drepper * ctype/ctype-info.c: Declare _nl_C_LC_CTYPE_class, _nl_C_LC_CTYPE_class32, _nl_C_LC_CTYPE_toupper, _nl_C_LC_CTYPE_tolower, _nl_C_LC_CTYPE_class_upper, _nl_C_LC_CTYPE_class_lower, _nl_C_LC_CTYPE_class_alpha, _nl_C_LC_CTYPE_class_digit, _nl_C_LC_CTYPE_class_xdigit, _nl_C_LC_CTYPE_class_space, _nl_C_LC_CTYPE_class_print, _nl_C_LC_CTYPE_class_graph, _nl_C_LC_CTYPE_class_blank, _nl_C_LC_CTYPE_class_cntrl, _nl_C_LC_CTYPE_class_punct, _nl_C_LC_CTYPE_class_alnum, _nl_C_LC_CTYPE_map_toupper, _nl_C_LC_CTYPE_map_tolower, and _nl_C_LC_CTYPE_width: Declare as hidden. * include/locale.h: Declare _nl_locale_file_list. * locale/C-address.c: Define _nl_C_LC_ADDRESS as hidden. * locale/C-collate.c: Define _nl_C_LC_COLLATE as hidden. * locale/C-identification.c: Define _nl_C_LC_IDENTIFICATION as hidden. * locale/C-measurement.c: Define _nl_C_LC_MEASUREMENT as hidden. * locale/C-messages.c: Define _nl_C_LC_MESSAGES as hidden. * locale/C-monetary.c: Define _nl_C_LC_MONETARY as hidden. * locale/C-name.c: Define _nl_C_LC_NAME as hidden. * locale/C-numeric.c: Define _nl_C_LC_NUMERIC as hidden. * locale/C-paper.c: Define _nl_C_LC_PAPER as hidden. * locale/C-telephone.c: Define _nl_C_LC_TELEPHONE as hidden. * locale/C-time.c: Define _nl_C_LC_TIME as hidden. * locale/C-ctype.c: Define _nl_C_LC_CTYPE_class, _nl_C_LC_CTYPE_class32, _nl_C_LC_CTYPE_toupper, _nl_C_LC_CTYPE_tolower, _nl_C_LC_CTYPE_class_upper, _nl_C_LC_CTYPE_class_lower, _nl_C_LC_CTYPE_class_alpha, _nl_C_LC_CTYPE_class_digit, _nl_C_LC_CTYPE_class_xdigit, _nl_C_LC_CTYPE_class_space, _nl_C_LC_CTYPE_class_print, _nl_C_LC_CTYPE_class_graph, _nl_C_LC_CTYPE_class_blank, _nl_C_LC_CTYPE_class_cntrl, _nl_C_LC_CTYPE_class_punct, _nl_C_LC_CTYPE_class_alnum, _nl_C_LC_CTYPE_map_toupper, _nl_C_LC_CTYPE_map_tolower, _nl_C_LC_CTYPE_width, and as hidden. * locale/findlocale.c: Declare _nl_C as hidden. * locale/newlocale.c: Likewise. * locale/setlocale.c: Define _nl_C as hidden. Remove declaration of _nl_locale_file_list. * locale/xlocale.c: Declare _nl_C_LC_CTYPE_class, _nl_C_LC_CTYPE_toupper, and _nl_C_LC_CTYPE_tolower as hidden. Define _nl_C_locobj as hidden. * malloc/mtrace.c (_mtrace_file): Define as hidden. (_mtrace_line): Likewise. * include/time.h: Declare __mon_yday as hidden. * time/strptime.c [_LIBC] (__mon_yday): Remove declaration. * libio/libioP.h: Declare __libio_codecvt as hidden. * libio/fileops.c: Declare __libio_translit as hidden. * libio/iofwide.c: Define __libio_translit as hidden. * login/getutent_r.c: Define __libc_utmp_lock as hidden. * login/getutid_r.c: Declare __libc_utmp_lock as hidden. * login/getutline_r.c: Likewise. * login/utmpname.c: Likewise. * login/utmp-private.h: Declare __libc_utmp_file_functions, __libc_utmp_unknown_functions, __libc_utmp_jump_table, and __libc_utmp_file_name as hidden. * locale/setlocale.c (__libc_setlocale_lock): Define as hidden. * locale/duplocale.c (__libc_setlocale_lock): Declare as hidden. * locale/freelocale.c: Likewise. * locale/lc-time.c: Likewise. * sysdeps/unix/bsd/getpt.c (__libc_ptyname1): Define as hidden. (__libc_ptyname2): Likewise. * sysdeps/unix/sysv/linux/ptsname.c (__libc_ptyname1): Declare as hidden. (__libc_ptyname2): Likewise. * sysdeps/generic/sbrk.c: Declare __libc_multiple_libcs as hidden. * sysdeps/arm/init-first.c (__libc_multiple_libcs): Define as hidden. * sysdeps/generic/init-first.c: Likewise. * sysdeps/i386/init-first.c: Likewise. * sysdeps/mach/hurd/i386/init-first.c: Likewise. * sysdeps/mach/hurd/mips/init-first.c: Likewise. * sysdeps/mach/hurd/powerpc/init-first.c: Likewise. * sysdeps/sh/init-first.c: Likewise. * sysdeps/unix/sysv/aix/init-first.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Likewise. * stdio-common/itowa-digits.c (_itowa_lower_digits): Define as hidden. (_itowa_upper_digits): Likewise. * libio/stdio.c (_IO_stdin, _IO_stdout, _IO_stderr): Define as hidden. * libio/libio.h [_LIBC] (_IO_stdin, _IO_stdout, _IO_stderr): Declare as hidden. * libio/libioP.h: Declare _IO_file_jumps_mmap, _IO_wfile_jumps, _IO_wfile_jumps_mmap, _IO_proc_jumps, _IO_old_proc_jumps, _IO_str_jumps, _IO_wstr_jumps, _IO_file_jumps_internal, _IO_wfile_jumps_internal, and _IO_list_all_internal as hidden. * gmon/gmon.c (__bb_head): Define as hidden. * gmon/bb_exit_func.c (__bb_head): Declare as hidden. * argp/argp-parse.c (_argp_hang): Define as static. * include/libc-symbols.h (_INTVARDEF): Adjust for visibility handling in latest compilers. * inet/in6_addr.c (in6addr_any): Use INTVARDEF not INTDEF to define alias. * libio/fileops.c (_IO_file_jumps): Likewise. * libio/stdfiles.c (_IO_list_all): Likewise. * libio/wfileops.c (_IO_wfile_jumps): Likewise. * malloc/malloc.h: Move __libc_malloc_initialized declaration to include/malloc.h. * include/malloc.h: Add __libc_malloc_initialized declaration here. Mark variable hidden. * malloc/malloc.c: Include not "malloc.h". * elf/dl-open.c (__libc_argc): Declare as hidden. (__libc_argv): Likewise. * sysdeps/generic/wordexp.c (__libc_argc): Declare as hidden. (__libc_argv): Likewise. * sysdeps/mach/hurd/i386/init-first.c: Define __libc_argc and __libc_argv as hidden. * sysdeps/mach/hurd/mips/init-first.c: Likewise. * sysdeps/mach/hurd/powerpc/init-first.c: Likewise. * sysdeps/unix/sysv/aix/init-first.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Likewise. * include/stdlib.h (__libc_drand48_data): Declare as hidden. * stdlib/drand48.c: Remove declaration of __libc_drand48_data here. * stdlib/erand48.c: Likewise. * stdlib/jrand48.c: Likewise. * stdlib/lcong48.c: Likewise. * stdlib/lrand48.c: Likewise. * stdlib/mrand48.c: Likewise. * stdlib/nrand48.c: Likewise. * stdlib/seed48.c: Likewise. * stdlib/srand48.c: Likewise. * stdio-common/_itoa.c (_itoa_base_table): Declare as hidden. (_itoa_lower_digits_internal): New declaration. (_itoa_upper_digits_internal): New declaration. (_itoa): Use INTUSE to acces _itoa_upper_digits and _itoa_lower_digits. * stdio-common.h (_itoa_lower_digits_internal): New declaration. (_itoa_upper_digits_internal): New declaration. (_itoa_word): Use INTUSE to acces _itoa_upper_digits and _itoa_lower_digits. * stdio-common/itoa-digits.c: Use INTVARDEF with _itoa_lower_digits. * stdio-common/itoa-udigits.c: Use INTVARDEF with _itoa_upper_digits. * elf/dl-minimal.c (_itoa): Declare _itoa_lower_digits as hidden. * elf/dl-reloc.c (_dl_reloc_bad_type): Likewise. * stdio-common/_itowa.c (_itoa_base_table): Declare as hidden. (_itowa_lower_digits): Likewise. (_itowa_upper_digits): Likewise. * stdio-common/_itowa.h (_itowa_lower_digits): Likewise. (_itowa_upper_digits): Likewise. * intl/plural-exp.h (attribute_hidden): Define as empty macro if not already defined. (GERMANIC_PLURAL): Declare as hidden. * posix/getopt.c (__getopt_initialized): Declare as hidden. (attribute_hidden): Define as empty macro if not already defined. * iconv/gconv_int.h (__gconv_path_elem): Declare hidden. (__gconv_max_path_elem_len): Likewise. (__gconv_path_envvar): Likewise. * math/Makefile (gmp-objs): Remove mp_clz_tab. * stdlib/Makefile (aux): Remove mp_clz_tab. * stdlib/mp_clz_tab.c: Removed. Not needed anywhere. * stdlib/exit.h (__exit_funcs): Declare as hidden. * posix/bug-regex5.c (main): Use nl_langinfo instead of _NL_CURRENT. * locale/localeinfo.h: Add attribute_hidden to _nl_current_LC_XXX, _nl_category_names, _nl_category_name_sizes, _nl_current, _nl_C_name, _nl_POSIX_name, _nl_C_codeset, and _nl_C_LC_XXX. * intl/dcigettext.c (_nl_default_default_domain): Define as hidden. (_nl_current_default_domain): Likewise (_nl_state_lock): Likewise. * intl/textdomain.c (_nl_default_default_domain): Declare as hidden. (_nl_current_default_domain): Likewise (_nl_state_lock): Likewise. * intl/bindtextdom.c (_nl_state_lock): Likewise. * stdlib/fpioconst.h (__tens): Add attribute_hidden. (_fpioconst_pow10): Likewise. * include/time.h (_tmbuf): Add attribute_hidden. * time/tzset.c (tzstring_list): Define as static. * include/time.h: Add attribute_hidden to __tzname_cur_max and __use_tzfile declaration. * wcsmbs/wcsmbsload.h: Add attribute_hidden to __wcsmbs_gconv_fcts and __wcsmbs_last_locale declaration. 2002-02-25 Paul Eggert * timezone/Makefile (tzbases): Move systemv from here... (tzlinks): to here, since the entries in systemv were all changed from Zone to Link lines in tz-2001a. Bug reported (and patch tested) by Peter Breitenlohner. 2002-03-07 Jakub Jelinek * time/tst-posixtz.c (tests): Add new tests. (main): Test whether tzset() sets daylight properly. 2002-03-06 Jakub Jelinek * time/tzset.c (tz_compute): Move __daylight, __tzname and __tzname_cur_max setting... (tzset_internal): ...here. 2002-03-06 Jakub Jelinek * time/tzset.c (compute_change): Don't return any value. (tz_compute): Likewise. Don't handle southern hemisphere here. (__tz_convert): But here. 2002-03-11 Ulrich Drepper * manual/examples/mkfsock.c: Include as well. Patch by Alain De Carolis . 2002-03-06 Isamu Hasegawa * posix/regexec.c (re_match): Fix incorrect register sizes. (re_search): Likewise. 2002-03-05 Isamu Hasegawa * posix/regcomp.c (regfree): Remove a disused condition. * posix/regex_internal.c (re_acquire_state): Likewise. (re_acquire_state_context): Likewise. (register_state): Remove a redundant malloc invocation. * posix/regex_internal.h: (re_state_table_entry): Simplify the structure. 2002-03-05 Isamu Hasegawa * posix/regcomp.c (regcomp): Add __builtin_expect to error handling conditions. (regerror): Likewise. (regfree): Likewise. (re_compile_internal): Likewise. (init_dfa): Likewise. (init_word_char): Likewise. (create_initial_state): Likewise. (analyze): Likewise. (analyze_tree): Likewise. (duplicate_node): Likewise. (calc_eclosure): Likewise. (calc_eclosure_iter): Likewise. (parse): Likewise. (parse_reg_exp): Likewise. (parse_branch): Likewise. (parse_expression): Likewise. (parse_subexp): Likewise. (parse_dup_op): Likewise. (parse_bracket_exp): Likewise. (build_equiv_class): Likewise. (build_charclass): Likewise. (build_word_op): Likewise. (fetch_number): Likewise. (create_tree): Likewise. (duplicate_tree): Likewise. * posix/regex.c (BE): New macro. * posix/regexec.c (re_match): Add __builtin_expect to error handling conditions. (re_match_2): Likewise. (re_search): Likewise. (re_search_internal): Likewise. (check_matching): Likewise. (proceed_next_node): Likewise. (set_regs): Likewise. (sift_states_backward): Likewise. (add_epsilon_backreference): Likewise. (transit_state): Likewise. (transit_state_sb): Likewise. (transit_state_mb): Likewise. (transit_state_bkref): Likewise. (transit_state_bkref_loop): Likewise. (build_trtable): Likewise. (group_nodes_into_DFAstates): Likewise. (match_ctx_init): Likewise. (match_ctx_add_entry): Likewise. * posix/regex_internal.c (re_string_construct): Add __builtin_expect to error handling conditions. (re_string_construct_toupper): Likewise. (build_wcs_buffer): Likewise. (build_wcs_upper_buffer): Likewise. (build_upper_buffer): Likewise. (re_string_translate_buffer): Likewise. (re_node_set_alloc): Likewise. (re_node_set_init_1): Likewise. (re_node_set_init_2): Likewise. (re_node_set_init_copy): Likewise. (re_node_set_intersect): Likewise. (re_node_set_init_union): Likewise. (re_node_set_merge): Likewise. (re_node_set_insert): Likewise. (re_dfa_add_node): Likewise. (re_acquire_state): Likewise. (re_acquire_state_context): Likewise. (create_new_state_common): Likewise. (register_state): Likewise. (create_ci_new_state): Likewise. (create_cd_new_state): Likewise. (re_string_context_at): Remove redundant condition. 2002-01-16 Roger Sayle * sysdeps/i386/i686/strcmp.S: Avoid unconditional jump to a ret. * sysdeps/i386/i586/strlen.S: Fix typo in comment. 2002-03-11 Jakub Jelinek * sysdeps/i386/elf/configure.in: Fix comment. * sysdeps/sparc/sparc64/configure.in: New. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_load_address): Fix if .dynamic comes before .got. * config.h.in (SPARC64_DYNAMIC_BEFORE_GOT): Add. * sysdeps/sparc/sparc64/hp-timing.h (HP_TIMING_DIFF, HP_TIMING_ACCUM): Fix typos. 2002-03-11 Ulrich Drepper * string/strfry.c: Add some more randomness to the seed. Patch by James A Morrison . * po/es.po: Update from translation team. * po/fr.po: Likewise. * stdio-common/tfformat.c (sprint_doubles): A test for %F format. * stdio-common/printf_fp.c (__printf_fp): Correct check for %F format when determining type of format. Patch by James Antill [PR libc/2787]. 2002-03-04 Jakub Jelinek * sysdeps/unix/bsd/ftime.c (ftime): Don't return 1000 in millitm. 2002-03-11 Roland McGrath * hurd/hurd/threadvar.h: Include for __THROW macro. * Versions.def (libc): Add GLIBC_2.2.6. * hurd/Versions (libc: GLIBC_2.2.6): Add __errno_location. * sysdeps/mach/hurd/errnos.awk: In generated macro, use __errno_location instead of __hurd_errno_location, and don't inline it. * sysdeps/mach/hurd/bits/errno.h: Regenerated. * hurd/errno.c: New file. * hurd/Makefile (routines): Add errno. 2002-03-11 Ulrich Drepper * stdio-common/vfprintf.c (vfprintf): Avoid crashing for ridiculously large widths and precisions [PR libc/3026]. 2002-03-11 Andreas Jaeger * sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed: Fix for bi-arch support. Patch by Susanne Oberhauser . 2002-03-11 Ulrich Drepper * inet/rexec.c (ahostbuf): Define as static. * wctype/wcfuncs.c (__ctype32_wctype): Declare as hidden. (__ctype32_wctrans): Likewise. * wcsmbs/wcwidth.h (__ctype32_width): Declare as hidden. * ctype/ctype-info.c (__ctype32_wctype): Add attribute_hidden. (__ctype32_wctrans): Likewise. (__ctype32_width): Likewise. * gmon/Makefile (elide-routines.os): Add bb_init_func and bb_exit_func. They were never exported anyway. * gmon/gmon.c (_gmonparam): Add attribute_hidden. * gmon/sys/gmon.h: Remove declaration of _gmonparam. It wasn't exported. * include/sys/gmon.h: Declare _gmonparam. * sysdeps/unix/sysv/linux/i386/getdents64.c: Don't define compatibility symbols for getdents64. They were never exported. 2002-03-09 Roland McGrath * hurd/hurdsig.c (write_corefile): Fix swapped arguments to __dir_link. Reported by Jon Arney . 2002-02-23 Roland McGrath * hurd/hurd/threadvar.h (__hurd_threadvar_location): Add __THROW to declaration. (__hurd_errno_location): Function removed. 2002-03-06 Andreas Jaeger * sysdeps/unix/sysv/linux/x86_64/sys/reg.h: Add compatibility for 32-bit. 2002-03-04 Andreas Jaeger * sysdeps/unix/sysv/linux/x86_64/readelflib.c: New. * sysdeps/unix/sysv/linux/kernel-features.h: Add defines for x86-64. * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: New. * sysdeps/unix/sysv/linux/x86_64/bits/sigcontext.h: New. * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: New. * sysdeps/x86_64/bits/setjmp.h: New. * sysdeps/unix/sysv/linux/x86_64/bits/sem.h: New. * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: New. * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Add compatibilty for x86. * sysdeps/unix/sysv/linux/x86_64/bits/msq.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/bits/types.h: Likewise. 2002-02-28 Bo Thorsen * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Merge with i386 version. 2002-03-03 Andreas Jaeger * sysdeps/x86_64/bits/wordsize.h: New file. * elf/nodlopenmod2.c: Provide prototype to avoid warning. * elf/tst-tlsmod1.c: Likewise. * posix/regcomp.c: Get regex.h from include dir for internal prototypes. * sysdeps/unix/sysv/linux/init-first.c: Move __init_misc prototype to libc-internal.h and include it. * include/libc-internal.h: Add __init_misc. * misc/init-misc.c: Include libc-internal.h for prototypes. * sysdeps/wordsize-32/divdi3.c: Add prototypes to avoid warnings. * misc/error.c [_LIBC]: Include libioP.h for prototype of _IO_putc_internal. 2002-03-03 Ulrich Drepper * posix/regcomp.c: Compatibility changes to allow using the code outside glibc. 2002-02-28 Hartvig Ekner * sysdeps/mips/elf/start.S: Added initialization of GP (to _gp) if compiled non-PIC. 2002-03-02 Ulrich Drepper * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Fix creation of .str elements in the returned data structure. * elf/elf.h: Add Alpha TLS bits. 2002-02-28 Jakub Jelinek * sysdeps/unix/sysv/linux/nice.c: New file. 2002-03-01 Ulrich Drepper * elf/Makefile (dl-routines): Add dl-origin. (elide-routines.os): Add dl-origin. * elf/Versions [ld] (GLIBC_PRIVATE): Add _dl_get_origin. * elf/dl-debug.c (_dl_debug_initialize): Add missing INTUSE around _dl_debug_state. * include/libc-symbols.c: Define attribute_hidden depending on HAVE_VISIBILITY_ATTRIBUTE. Add definition of INTVARDEF. * elf/dl-deps.c: Use INTUSE with __libc_enable_secure. * elf/dl-load.c: Likewise. * elf/rtld.c: Likewise. * include/unistd.h: Declare __libc_enable_secure_internal. * sysdeps/generic/dl-sysdep.c: Use INTVARDEF with __libc_enable_secure. Use INTUSE with __libc_enable_secure. * sysdeps/mach/hurd/dl-sysdep.c: Likewise. * elf/dl-deps.c: Use INTUSE with _dl_out_of_memory. * elf/dl-error.c: Likewise, * sysdeps/generic/ldsodefs.h: Declare _dl_out_of_memory_internal. * elf/dl-dst.h [_RTLD_GLOBAL]: Define _dl_get_origin to use INTUSE. * sysdeps/generic/dl-origin.c: Undefine _dl_get_origin macro before function definition. Use INTDEF with _dl_get_origin. * sysdeps/unix/sysv/linux/dl-origin.c: Likewise. * elf/dl-init.c: Use INTUSE with _dl_starting_up. * elf/rtld.c: Likewise. Use INTVARDEF for _dl_starting_up. * elf/dl-profile.c: Use INTDEF for _dl_mcount. * elf/dl-runtime.c: Use INTUSE with _dl_mcount. * sysdeps/generic/ldsodefs.h: Declare _dl_mcount_internal. * elf/dl-conflict.c: Use rtld_progrname instead of _dl_argv[0]. * elf/dl-deps.c: 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-reloc.c: Likewise. * elf/dl-version.c: Likewise. * elf/do-lookup.h: Likewise. * 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/m68k/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/sparc-32/dl-machine.h: Likewise. * sysdeps/sparc/sparc-64/dl-machine.h: Likewise. * sysdeps/x86_64/dl-machine.h: Likewise. * elf/rtld.c: Use INTDEF for _dl_argv. Use rtld_progrname instead of _dl_argv[0]. Use INTUSE with _dl_argv. * sysdeps/generic/dl-sysdep.c: Use INTUSE with _dl_argv. * sysdeps/generic/ldsodefs.h: Define rtld_progname macro. 2002-02-28 Jakub Jelinek * elf/rtld.c (_rtld_global): Remove .protected. (_rtld_local): Strong alias to _rtld_global. * elf/Makefile (CFLAGS-.os): Add -D_RTLD_LOCAL if compiling rtld only .os object. * sysdeps/generic/ldsodefs.h (GL): If SHARED and _RTLD_LOCAL, use _rtld_local instead of _rtld_global. (_rtld_local): Add hidden extern, possibly in .sdata section. * configure.in: Add tests for visibility attribute and .sdata. * config.h.in: Add HAVE_VISIBILITY_ATTRIBUTE and HAVE_SDATA_SECTION. * sysdeps/alpha/dl-machine.h: Use _rtld_local instead of _rtld_global. * sysdeps/arm/dl-machine.h: Likewise. * sysdeps/generic/ldsodefs.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/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. * sysdeps/x86_64/dl-machine.h: Likewise. 2002-02-28 Ulrich Drepper * login/login.c (login): Always initialize ut_line field [PR libc/2991]. 2002-02-28 Jakub Jelinek * sysdeps/i386/Makefile (sysdep_routines): Add divdi3 in csu dir. (shared-only-routines): Likewise. * sysdeps/m68k/Makefile (sysdep_routines): Likewise. (shared-only-routines): Likewise. * sysdeps/s390/s390-32/Makefile (sysdep_routines): Likewise. (shared-only-routines): Likewise. * sysdeps/wordsize-32/divdi3.c: New file. 2002-02-28 Ulrich Drepper * locale/iso-4217.def: Remove obsolete currencies for countries with Euro. 2002-02-28 Isamu Hasegawa * posix/regcomp.c (regcomp): Remove a redundant condition. (init_word_char): Add a check on malloc failure. (create_initial_state): Likewise. (duplicate_node): Likewise. (calc_eclosure): Likewise. (calc_eclosure_iter): Likewise. (parse_expression): Likewise. (parse_bracket_exp): Remove unnecessary malloc invocations. (build_equiv_class): Likewise. (build_charclass): Likewise. * posix/regex_internal.c (re_node_set_intersect): Add a check on malloc failure. (re_node_set_add_intersect): Likewise. (re_node_set_merge): Likewise. (re_acquire_state): Likewise. (re_acquire_state_context): Likewise. (create_newstate_common): Likewise. (register_state): Likewise. (create_ci_newstate): Likewise. (create_cd_newstate): Likewise. * posix/regex_internal.h: Fix prototypes of re_acquire_state and re_acquire_state_context. * posix/regexec.c (regexec): Suit it to the error handling of re_search_internal. (re_match): Likewise. (re_search): Likewise. (re_search_internal): Add a check on malloc failure. (acquire_init_state_context): Likewise. (check_matching): Likewise. (proceed_next_node): Likewise. (set_regs): Likewise. (sift_states_backward): Likewise. (sift_states_iter_bkref): Likewise. (add_epsilon_backreference): Likewise. (transit_state): Likewise. (transit_state_sb): Likewise. (transit_state_mb): Likewise. (transit_state_bkref_loop): Likewise. (build_trtable): Likewise. (group_nodes_into_DFAstates): Likewise. (match_ctx_init): Likewise. (match_ctx_add_entry): Likewise. 2002-02-27 Ulrich Drepper * elf/dl-load.c (_dl_map_object_from_fd): Always add SONAME to l_libname if profiling is enabled [PR libc/2916]. * sysdeps/ia64/dl-tls.h: New file. 2002-02-27 Jakub Jelinek * sysdeps/alpha/dl-machine.h (elf_machine_load_address, RTLD_START): Work around an Alpha gas bug. 2002-02-27 Ulrich Drepper * catgets/open_catalog.c (__open_catalog): Fix typo in code which uses read to load the catalog. Patch by Andy Isaacson [PR libc/3011]. 2002-02-26 Ulrich Drepper * posix/Makefile (distribute): Add regcomp.c, regexec.c, regex_internal.c, and regex_internal.h. (CFLAGS-regex.c): Replace -DMBS_SUPPORT with -DRE_ENABLE_I18N. * posix/regex.c: Complete rewrite. * posix/regexec.c: New file. * posix/regcomp.c: New file. * posix/regex_internal.c: New file. * posix/regex_internal.h: New file. * posix/regex.h (RE_ICASE): New macro. Contributed by Isamu Hasegawa . * stdio-common/vfscanf.c (_IO_vfwscanf): Always use ungetc, never ungetwc. It's a macro. * libio/tst-swscanf.c (do_test): Adjust for now fixed wscanf implementation. Reported by Jason Merrill . 2002-02-25 Jakub Jelinek * libio/iofopen.c (__fopen_maybe_mmap): Set the initial position to fp->_offset if it is set. * stdio-common/Makefile (tests): Add tst-fdopen. * stdio-common/tst-fdopen.c: New test. 2002-02-25 Jakub Jelinek * libio/fileops.c (_IO_file_xsgetn_mmap): Handle reading from backup. * stdio-common/tst-ungetc.c (main): Add another test. 2002-02-25 Ulrich Drepper * assert/assert-perr.c: Use INTUSE to reference functions and variables inside libc itself. Use INTDEF and INTDEF2 to define appropriate aliases. Add prototypes for the new aliases. * assert/assert.c: Likewise. * include/libc-symbols.h: Likewise. * include/stdio.h: Likewise. * include/netinet/in.h: Likewise. * include/rpc/auth.h: Likewise. * include/rpc/auth_unix.h: Likewise. * include/rpc/key_prot.h: Likewise. * include/rpc/pmap_prot.h: Likewise. * include/rpc/pmap_rmt.h: Likewise. * include/rpc/rpc_msg.h: Likewise. * include/rpc/xdr.h: Likewise. * inet/gethstbyad_r.c: Likewise. * inet/gethstbynm2_r.c: Likewise. * inet/gethstbynm_r.c: Likewise. * inet/gethstent_r.c: Likewise. * inet/in6_addr.c: Likewise. * libio/__fpurge.c: Likewise. * libio/filedoalloc.c: Likewise. * libio/fileops.c: Likewise. * libio/ftello.c: Likewise. * libio/ftello64.c: Likewise. * libio/genops.c: Likewise. * libio/iofclose.c: Likewise. * libio/iofdopen.c: Likewise. * libio/iofflush.c: Likewise. * libio/iofflush_u.c: Likewise. * libio/iofgetpos.c: Likewise. * libio/iofgetpos64.c: Likewise. * libio/iofgets.c: Likewise. * libio/iofgets_u.c: Likewise. * libio/iofopen.c: Likewise. * libio/iofopncook.c: Likewise. * libio/iofputs.c: Likewise. * libio/iofread.c: Likewise. * libio/iofread_u.c: Likewise. * libio/iofsetpos.c: Likewise. * libio/iofsetpos64.c: Likewise. * libio/ioftell.c: Likewise. * libio/iofwrite.c: Likewise. * libio/iogetline.c: Likewise. * libio/iogets.c: Likewise. * libio/iogetwline.c: Likewise. * libio/iolibio.h: Likewise. * libio/iopadn.c: Likewise. * libio/iopopen.c: Likewise. * libio/ioseekoff.c: Likewise. * libio/ioseekpos.c: Likewise. * libio/iosetbuffer.c: Likewise. * libio/iosetvbuf.c: Likewise. * libio/ioungetc.c: Likewise. * libio/ioungetwc.c: Likewise. * libio/iovdprintf.c: Likewise. * libio/iovsprintf.c: Likewise. * libio/iovsscanf.c: Likewise. * libio/libioP.h: Likewise. * libio/memstream.c: Likewise. * libio/obprintf.c: Likewise. * libio/oldfileops.c: Likewise. * libio/oldiofclose.c: Likewise. * libio/oldiofdopen.c: Likewise. * libio/oldiofgetpos.c: Likewise. * libio/oldiofgetpos64.c: Likewise. * libio/oldiofopen.c: Likewise. * libio/oldiofsetpos.c: Likewise. * libio/oldiofsetpos64.c: Likewise. * libio/oldiopopen.c: Likewise. * libio/oldstdfiles.c: Likewise. * libio/putc.c: Likewise. * libio/setbuf.c: Likewise. * libio/setlinebuf.c: Likewise. * libio/stdfiles.c: Likewise. * libio/stdio.c: Likewise. * libio/strops.c: Likewise. * libio/vasprintf.c: Likewise. * libio/vscanf.c: Likewise. * libio/vsnprintf.c: Likewise. * libio/vswprintf.c: Likewise. * libio/wfiledoalloc.c: Likewise. * libio/wfileops.c: Likewise. * libio/wgenops.c: Likewise. * libio/wstrops.c: Likewise. * malloc/mtrace.c: Likewise. * misc/error.c: Likewise. * misc/syslog.c: Likewise. * nss/getXXbyYY_r.c: Likewise. * nss/getXXent_r.c: Likewise. * nss/hosts-lookup.c: Likewise. * stdio-common/getw.c * stdio-common/printf-prs.c: Likewise. * stdio-common/printf_fp.c: Likewise. * stdio-common/printf_size.c: Likewise. * stdio-common/putw.c: Likewise. * stdio-common/scanf.c: Likewise. * stdio-common/sprintf.c: Likewise. * stdio-common/tmpfile64.c: Likewise. * stdio-common/vfprintf.c: Likewise. * stdio-common/vfscanf.c: Likewise. * stdlib/strfmon.c: Likewise. * sunrpc/auth_des.c: Likewise. * sunrpc/auth_none.c: Likewise. * sunrpc/auth_unix.c: Likewise. * sunrpc/authdes_prot.c: Likewise. * sunrpc/authuxprot.c: Likewise. * sunrpc/clnt_perr.c: Likewise. * sunrpc/clnt_raw.c: Likewise. * sunrpc/clnt_tcp.c: Likewise. * sunrpc/clnt_udp.c: Likewise. * sunrpc/clnt_unix.c: Likewise. * sunrpc/key_call.c: Likewise. * sunrpc/key_prot.c: Likewise. * sunrpc/openchild.c: Likewise. * sunrpc/pm_getmaps.c: Likewise. * sunrpc/pm_getport.c: Likewise. * sunrpc/pmap_clnt.c: Likewise. * sunrpc/pmap_prot.c: Likewise. * sunrpc/pmap_prot2.c: Likewise. * sunrpc/pmap_rmt.c: Likewise. * sunrpc/rpc_cmsg.c: Likewise. * sunrpc/rpc_prot.c: Likewise. * sunrpc/svc_authux.c: Likewise. * sunrpc/svc_raw.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_mem.c: Likewise. * sunrpc/xdr_rec.c: Likewise. * sunrpc/xdr_ref.c: Likewise. * sunrpc/xdr_stdio.c: Likewise. * sysdeps/generic/_strerror.c: Likewise. * sysdeps/generic/printf_fphex.c: Likewise. * sysdeps/generic/tmpfile.c: Likewise. * sysdeps/gnu/errlist.awk: Likewise. * sysdeps/gnu/errlist.c: Likewise. * libio/Makefile (routines): Remove iosprint. * libio/iosprintf.c: Removed 2002-02-24 Ulrich Drepper * elf/dl-support.c (_dl_non_dynamic_init): Renamed from non_dynamic_init and exported now. * sysdeps/unix/sysv/linux/ldsodefs.h: Declare _dl_non_dynamic_init. * sysdeps/unix/sysv/linux/init-first.c: Call _dl_non_dynamic_init for !SHARED. * sysdeps/mach/hurd/i386/init-first.c: Likewise. * sysdeps/mach/hurd/powerpc/init-first.c: Likewise. * sysdeps/mach/hurd/mips/init-first.c: Likewise. 2002-02-23 Ulrich Drepper * elf/dl-close.c (free_slotinfo): Check for end of list and return true in this case. * locale/iso-639.def: Add language codes for Walloon. * elf/dl-fini.c (_dl_fini): Print some final statistics on the total number of relocations performed. * elf/sprof.c (load_profdata): If do_test provide information as to why loading failed. * elf/dl-profile.c (_dl_start_profile): Initialize all of hist_hdr.dimen. * csu/set-init.c: Moved to... * sysdeps/mach/hurd/set-init.c: ...here. New file. * csu/Makefile: Don't compile set-init. * sysdeps/mach/hurd/Makefile: Compile set-init for subdir csu. * sysdeps/mach/hurd/i386/init-first.c: Call __init_misc in addition to __libc_init. * sysdeps/mach/hurd/mips/init-first.c: Likewise. * sysdeps/mach/hurd/powerpc/init-first.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Call __init_misc instead of __libc_init. * misc/init-misc.c: Always export __init_misc. Don't define hooks for __libc_subinit. 2002-02-22 Ulrich Drepper * elf/Versions: Add _dl_allocate_tls and _dl_deallocate_tls. * elf/rtld.c (dl_main): Use _dl_allocate_tls with INTUSE. * sysdeps/generic/dl-tls.c: Add INTDEF for _dl_allocate_tls. (_dl_deallocate_tls): New function. * sysdeps/generic/ldsodefs.h: Declare _dl_allocate_tls_internal and _dl_deallocate_tls. 2002-02-21 Jakub Jelinek * libio/fileops.c (_IO_file_seekoff_mmap): Fix fseek SEEK_END. * stdio-common/tst-fseek.c (main): Add test for this. 2002-02-19 Ulrich Drepper * stdlib/Versions: Move __on_exit to GLIBC_PRIVATE. 2002-02-19 Jakub Jelinek * libio/fileops.c (_IO_file_underflow_mmap): Cast to unsigned char pointer before dereferencing. 2002-02-18 Roland McGrath * sysdeps/mach/hurd/times.c: Fix typo in last change. * sysdeps/mach/hurd/setpriority.c [POLICY_TIMESHARE_BASE_COUNT]: Use task_policy in place of task_priority. * sysdeps/generic/bits/mman.h (MS_ASYNC, MS_SYNC, MS_INVALIDATE): New macros. * sysdeps/mach/msync.c: New file. * sysdeps/mach/powerpc/syscall.S: New file. * mach/msg.c [MACH_MSG_OVERWRITE] (__mach_msg_trap, __mach_msg_overwrite): New functions. * mach/Versions (libc: GLIBC_2.0): Add mach_msg_overwrite and __ name. * sysdeps/mach/configure.in: Check for clock.defs to put into mach_interface_list. * sysdeps/mach/configure: Regenerated. * mach/Makefile (mach-machine): New variable, set from $(base-machine). ($(objpfx)mach-syscalls.mk): Use it in place of $(base-machine). ($(mach-syscalls:%=$(objpfx)%.S) static pattern rule): Use instead of . (mach-shortcuts): Add device_read_overwrite_request, device_read_overwrite, vm_read_overwrite, thread_switch. * configure.in (base_machine): Set to $machine by default. * configure: Regenerated. * sysdeps/mach/configure.in: Check for or and add -DNDR_DEF_HEADER=... to DEFINES. * sysdeps/mach/configure: Regenerated. * mach/mach_init.c [NDR_DEF_HEADER]: #include it. * hurd/hurdfault.c (_hurdsig_fault_init): Add a cast. * hurd/hurd/signal.h: Include for `jmp_buf' decl. * mach/msgserver.c (__mach_msg_server_timeout) [! MACH_RCV_LARGE]: Double MAX_SIZE and don't retry on MACH_RCV_TOO_LARGE. 2002-02-17 Roland McGrath * sysdeps/mach/hurd/times.c [NO_CREATION_TIME] (startup_time): New static variable. [NO_CREATION_TIME] (times_init): New static function in __libc_subinit. (__times) [NO_CREATION_TIME]: Use startup_time in lieu of task creation_time from task_basic_info. (__times): Use __gettimeofday instead of __host_get_time. * hurd/intr-msg.c (_hurd_intr_rpc_mach_msg) [! MACH_MSG_TYPE_BIT]: Use untyped Mach IPC message format. * hurd/catch-exc.c: Include , missing from last change. * hurd/Versions (libc: GLIBC_2.0): Add _S_catch_exception_raise_state, _S_catch_exception_raise_state_identity, _hurdsig_fault_catch_exception_raise_state, _hurdsig_fault_catch_exception_raise_state_identity. * mach/shortcut.awk: Don't apply the /^}$/ rule when $proto == "". * sysdeps/mach/getsysstats.c (__get_avphys_pages) [HOST_VM_INFO]: Use __host_info with HOST_VM_INFO flavor instead of __vm_statistics. * sysdeps/mach/hurd/getpriority.c [TASK_SCHED_TIMESHARE_INFO]: Find `base_priority' in PIP->timeshare_base_info instead of PIP->taskinfo. * sysdeps/mach/hurd/dl-sysdep.c [FMH]: Define for i386 only. (fmh, unfmh): Define these functions only #if FMH. Otherwise define them as no-op macros. [FMH] (ELF_MACHINE_USER_ADDRESS_MASK): Redefine it to zero. (__mmap): Uncomment uses of ELF_MACHINE_USER_ADDRESS_MASK. * sysdeps/powerpc/dl-machine.h (ELF_MACHINE_USER_ADDRESS_MASK): New macro. * hurd/hurdselect.c (_hurd_select) [MACH_MSG_TRAILER_MINIMUM_SIZE]: Use untyped Mach IPC message format. * sysdeps/mach/hurd/ioctl.c (__ioctl) [! MACH_MSG_TYPE_BIT]: Handle untyped Mach IPC message formats. * hurd/catch-exc.c (_S_catch_exception_raise) [EXC_MASK_ALL]: Expect different argument conventions when this is defined. [EXC_MASK_ALL] (_S_catch_exception_raise_state): New stub function. [EXC_MASK_ALL] (_S_catch_exception_raise_state_identity): Likewise. * hurd/hurdfault.c: Likewise for _hurdsig_fault_catch_exception_*. [NDR_CHAR_ASCII] (mig_reply_header_t): #define as mig_reply_error_t for OSF Mach variant. (faulted): Use mig_reply_error_t for REPLY. (_hurdsig_fault_init) [EXC_MASK_ALL]: Use EXCEPTION_STATE_IDENTITY in __thread_set_exception_ports call. (_hurdsig_fault_init) [MACH_PORT_RECEIVE_STATUS]: Use __mach_port_set_attributes in place of __mach_port_set_qlimit. * sysdeps/mach/powerpc/sysdep.h (_MACH_MACHINE_ASM_H): Define this before include , to inhibit on Darwin, which includes bogons. * sysdeps/powerpc/dl-machine.h (elf_machine_rela): Move local variable LOADBASE so it's not declared when it's not used. 2002-02-16 Roland McGrath * sysdeps/mach/hurd/times.c (__times) [NO_CREATION_TIME]: Don't try to use BI.creation_time. * mach/Machrules (MIG): Add -x c to CPP value passed down. * config.h.in: Add #undef HAVE_HOST_PAGE_SIZE. * sysdeps/mach/configure.in: Check for host_page_size RPC to define it. * mach/mach_init.c (__mach_init) [HAVE_HOST_PAGE_SIZE]: Use host_page_size instead of vm_statistics. * sysdeps/mach/Makefile (mach-before-compile): Don't include mach_interface.h here, since not all variants use that name. * sysdeps/mach/configure.in: Add some checks for Mach headers to ensure a sane installation. (mach_interface_list): Define this variable by checking for .defs files found in various variants. * configure.in (mach_interface_list): AC_SUBST this. * config.make.in (mach-interface-list): New substituted variable. * mach/Makefile (user-interfaces): Define this using the value of $(mach-interface-list) instead of mach, mach4. Updated other references to mach_interface to use it as well. * sysdeps/mach/powerpc/machine-lock.h: Avoid multi-line strings. * mach/msgserver.c [NDR_CHAR_ASCII] (mig_reply_header_t): #define as mig_reply_error_t for OSF Mach variant. * mach/Makefile (routines): Remove bootprivport. * mach/bootprivport.c: File removed. It has never been used. * mach/msg-destroy.c (__mach_msg_destroy) [MACH_MSG_PORT_DESCRIPTOR]: Grok the OSF flavor of message format. (mach_msg_destroy_port): For MAKE_SEND and MAKE_SEND_ONCE rights, create an destroy a right to ensure proper no-senders notification. 2002-02-06 Roland McGrath * hurd/Versions (libc: GLIBC_2.0): Move cthread_fork, cthread_detach to here if 2.0 compatibility enabled ... (libc: GLIBC_2.1.3): ... from here. 2002-02-15 Ulrich Drepper * elf/dl-open.c (dl_open_worker): Catch wrap-around of TLS generation counter. * elf/dl-close.c (_dl_close): Likewise. 2002-02-14 Ulrich Drepper * elf/Makefile: Add rules to build and run tst-tls8. * elf/tst-tls8.c: New file. * elf/tst-tlsmod4.c: New file. * stdlib/test-a64l.c (tests): Add more test cases. * sunrpc/rtime.c (rtime): Change type of thetime to uint32_t. Reported by Walter Harms . 2002-02-11 Jes Sorensen * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Add sc_flag bit definitions for struct sigcontext. Suggested by David Mosberger-Tang. 2002-02-13 Ulrich Drepper * elf/dl-close.c (remove_slotinfo): New function. Handles everything for removing reference of module in slotinfo list. (_dl_close): Use remove_slotinfo. * sysdeps/generic/dl-tls.c: General pretty printing. (oom): Define only if SHARED. (_dl_next_tls_modid): Correct starting point for the case we assume there is a gap. Add missing instruction grouping (doh!). Correct tests for reaching maximum index. * elf/Makefile: Add rules to build and run tst-tls7. * elf/tst-tls7.c: New file. * elf/tst-tlsmod3.c: New file. * elf/tst-tlsmod1.c: Move #include "tls-macros.h" instead #ifdef USE_TLS. * elf/tst-tlsmod2.c: Likewise. * elf/dl-close.c (_dl_close): When closing an object using TLS either decrement dl_tls_max_dtv_idx or set dl_tls_dtv_gaps to true. Increment dl_tls_generation only if we closed any TLS-using object. * elf/tst-tls6.c: New file. * elf/Makefile: Add rules to build and run tst-tls6. * po/da.po: Update from translation team. * locale/categories.def: Fix typo [PR libc/2948]. * po/Makefile (BROKEN_LINGUAS): Works with current gettext [PR libc/2949]. * locale/iso-4217.def: Update from official version [PR libc/2950]. * glibcbug.in: Honor TMPDIR [PR libc/2951]. * locale/programs/ld-collate.c (collate_finish): Bail out with a message if input is too confusion instead of using assert. (collate_read): Don't crash on unknown symbol [PR libc/2952]. Patches by Alastair McKinstry . * elf/tst-tls1.c: Move #include "tls-macros.h" instead #ifdef USE_TLS. * elf/tst-tls2.c: Likewise. * elf/tst-tls3.c: Likewise. 2002-02-13 Jakub Jelinek * elf/dl-close.c (free_slotinfo): Only define if TLS supported. 2002-02-13 Ulrich Drepper * elf/dl-open.c (dl_open_worker): Only bump the generation counter if this is really necessary. * elf/dl-close.c (_dl_close): Implement freeing entries in the slotinfo array. (free_mem): Free memory for the slotinfo array if possible. 2002-02-12 Andreas Schwab * csu/gmon-start.c (__gmon_start__): Remove '&' from ENTRY_POINT. 2002-02-12 Ulrich Drepper * sysdeps/generic/dl-tls.c (TLS_DTV_UNALLOCATED): Renamed from TLS_DTV_UNALLOCATE. (oom): New function. (_dl_next_tls_modid): Rewrite to handle dl_tls_dtv_slotinfo_list. (_dl_determine_tlsoffset): Likewise. (_dl_allocate_tls): Likewise. (__TLS_GET_ADDR): Define if not already defined. (_dl_tls_symaddr): New function. (allocate_and_init): New function. (__tls_get_addr): Actually implement handling of generation counter and deferred allocation. * sysdeps/generic/ldsodefs.h (_rtld_global): Remove _dl_initimage_list, add _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and _dl_tls_generation. Define TLS_SLOTINFO_SURPLUS and DTV_SURPLUS. Declare _dl_tls_symaddr. * sysdeps/i386/dl-tls.h: Disable __tls_get_addr handling unless SHARED. * include/link.h (struct link_map): Remove l_tls_nextimage and l_tls_previmage. * elf/dl-sym.c (_dl_sym): After successful lookup call _dl_tls_symaddr instead of DL_SYMBOL_ADDRESS for STT_TLS symbols. (_dl_vsym): Likewise. * elf/rtld.c (_dl_start_final): Adjust initdtv initialization for new layout. (dl_main): Allow PT_TLS be present for empty segment. Remove nextimage list handling. Instead add all modules using TLS to dl_tls_dtv_slotinfo_list. * elf/dl-open.c (dl_open_worker): After successfully loading all objects add those with TLS to the dl_tls_dtv_slotinfo_list list. * elf/dl-load.c (_dl_map_object_from_fd): If PT_TLS entry is for an empty segment don't do anything. Remove handling of initimage list. * elf/Versions [ld] (GLIBC_2.0): Add __libc_memalign. (GLIBC_PRIVATE): Add _dl_tls_symaddr. * elf/dl-minimal.c: Define __libc_memalign. * elf/dl-support.c: Remove _dl_initimage_list. Add _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and _dl_tls_generation. * include/stdlib.h: Declare __libc_memalign. * elf/Makefile: Add rules to build and run tst-tls4 and tst-tls5. * elf/tst-tls4.c: New file. * elf/tst-tls5.c: New file. * elf/tst-tlsmod2.c: New file. * elf/tls-macros.h: asms using ___tls_get_addr destroy %ecx and %edx. * elf/tst-tlsmod1.c: Don't define variables unles USE_TLS. * elf/tst-tls1.c: Use test-skeleton.c. * elf/tst-tls2.c: Likewise. * elf/tst-tls3.c: Likewise. * elf/dl-conflict.c (RESOLVE_MAP): Return NULL not 0. 2002-02-08 Daniel Jacobowitz * sysdeps/mips/machine-gmon.h: Update MCOUNT for current GCC behavior. 2002-02-10 Ulrich Drepper * elf/elf.h: Define R_386_TLS_GD and R_386_TLS_LDM. * elf/tst-tls3.c: New file. * elf/tst-tlsmod1.c: New file. * elf/Makefile: Add rules to build and run tst-tls3. * sysdeps/i386/dl-machine.h: Include . (elf_machine_type_class): Set ELF_RTYPE_CLASS_PLT also for the three TLS relocations. * elf/do-lookup.h (FCT): st_value can be zero for STT_TLS symbols. * po/fr.po: Update from translation team. * elf/tls-macros.h: Add alternative macros for use in PIC. * elf/dl-lookup.c: Include . * elf/do-lookup.h (FCT): Don't discard STT_TLS symbols. * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): More changes required by passing pointer to last element of the list. * elf/dl-load.c (_dl_map_object_from_fd): Move adjustment of l_tls_initimage to a place where it actually is performed. * sysdeps/generic/glob.c (glob): Explicitly set gl_pathc to zero after globfree() calls. * elf/dl-deps.c (struct openaux_args): Add open_mode element. (openaux): Pass open_mode as new last argument to _dl_map_object. (_dl_map_object_deps): Add new argument open_mode. Initialize open_mode element of args variable with it. * elf/dl-open.c (dl_open_worker): Pass __RTLD_DLOPEN flag is set to _dl_map_object_deps. * elf/rtld.c (dl_main): Add zero as last parameter to _dl_map_object_deps call. * sysdeps/generic/ldsodefs.h: Adjust prototype of _dl_map_object_deps. * elf/nodlopen2.c: New file. * elf/nodlopenmod2.c: New file. * elf/Makefile: Add rules to build and run nodlopen2. * elf/tst-tls1.c: Move TLS helper macros to... * elf/tls-macros.h: ...here. New file. * elf/tst-tls2.c: New file. * elf/Makefile (tests): Add tst-tls2. (distribute): Add tls-macros.h. * po/sv.po: Update from translation team. * elf/tst-tls1.c (main): Add complete set of tests. Split architecture specific definitions from the actual test code. * po/tr.po: Update from translation team. 2002-02-09 Ulrich Drepper * elf/Makefile (tests): Add tst-tls1. * elf/tst-tls1.c: New file. * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Don't handle alignment of TCB for now. * elf/rtld.c (dl_main): Use p_vaddr as address of TLS initialization image for the application itself. * sysdeps/generic/dl-tls.c (_dl_allocate_tls): Correctly terminate loop to initialize TLS block. 2002-02-08 Richard Henderson * sysdeps/generic/ldsodefs.h (struct rtld_global): Also include _dl_cpuclock_offset if HP_SMALL_TIMING_AVAIL. * sysdeps/alpha/elf/initfini.c: Use \n\ for multiline string. 2002-02-09 Jakub Jelinek * sysdeps/generic/dl-environ.c (unsetenv): Clear cnt before use. 2002-02-08 Ulrich Drepper * po/ca.po: Update from translation team. * po/sk.po: Likewise. * elf/rtld.c (_dl_start_final): Install DTV explicitly. (dl_main): Move dtv/static TLS handling before relocation. Unconditionally call _dl_tlsoffset. Call _dl_allocate_tls and TLS_INIT_TP to allocate and install the dtv/static TLS block. * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): If no object so far uses TLS initialize GL(dl_tls_static_size) and GL(dl_tls_static_align) to account for the TCB. (_dl_allocate_tls): New function. * sysdeps/generic/ldsodefs.h (rtld_global): Add _dl_initial_dtv_malloced. * configure.in: Test for __builtin_memset more realistically. * csu/version.c (banner): If TLS support is available say so. 2002-02-04 H.J. Lu * sysdeps/mips/dl-machine.h (elf_machine_matches_host): Use __attribute_used__. (__dl_runtime_resolve): Likewise. * sysdeps/mips/machine-gmon.h (_MCOUNT_DECL): Make it a real declaration. 2001-11-15 H.J. Lu * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Don't include , nor . Updated for gdb. * sysdeps/unix/sysv/linux/mips/sys/user.h: New. 2002-02-07 H.J. Lu * sysdeps/mips/atomicity.h (compare_and_swap): Remove ".set noreorder". * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise. 2002-02-07 Ulrich Drepper * sysdeps/unix/sysv/linux/bits/stat.h: Undo last patch. * sysdeps/i386/dl-tls.h (__tls_get_addr): Call ___tls_get_addr_internal. (___tls_get_addr_internal): Define as alias for ___tls_get_addr. * po/ko.po: Update from translation team. 2002-02-07 Jakub Jelinek * sysdeps/unix/sysv/linux/bits/stat.h (struct stat): Remove packed attribute, change __pad{1,2} type to unsigned int. (struct stat64): Remove packed attribute. 2002-02-07 Ulrich Drepper * sysdeps/i386/dl-tls.h: No need for #ifdef USE_TLS. 2002-02-07 Andreas Schwab * configure.in: Fix check for -zcombreloc. 2002-02-06 H.J. Lu * config.h.in (HAVE_BUILTIN_MEMSET): New. * configure.in: Check if __builtin_memset really works. * elf/rtld.c (_dl_start): Check HAVE_BUILTIN_MEMSET instead of __GNUC_PREREQ (2, 96) before using __builtin_memset. 2002-02-06 Jakub Jelinek * io/bug-ftw3.c (main): Don't try the test if root. 2002-02-06 Martin Schwidefsky * sysdeps/unix/sysv/linux/s390/brk.c (__brk): Correct inline assembly constraints. * sysdeps/unix/sysv/linux/s390/s390-32/bits/resource.h (RLIMIT_LOCKS): Add RLIMIT_LOCKS and adjust RLIMIT_NLIMITS. * sysdeps/unix/sysv/linux/s390/s390-64/bits/resource.h (RLIMIT_LOCKS): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (clone): Make clone a weak alias for __clone. * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (clone): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: Fix typo. * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Add framestate. * sysdeps/unix/sysv/linux/s390/s390-64/Versions: New file. * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap64): Make __mmap a weak alias for __mmap64. 2002-02-05 H.J. Lu * sysdeps/mips/atomicity.h (exchange_and_add): Not use branch likely. (atomic_add): Likewise. (compare_and_swap): Likewise. * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise. 2002-02-07 Ulrich Drepper * sysdeps/generic/dl-tls.c: Don't read TLS header if TLS is not needed. * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Account for alignment of the TCB and store total size and alignment of static TLS block in _dl_tls_static_size and _dl_tls_static_align. tls_index is a typedef. * sysdeps/generic/ldsodefs.h: Declare _dl_tls_static_size and _dl_tls_static_align. * sysdeps/i386/dl-tls.h: tls_index is a typedef. * elf/dl-support.c: Define _dl_tls_static_size and _dl_tls_static_align. 2002-02-06 Ulrich Drepper * configure.in: Add --without-tls option. * sysdeps/i386/elf/configure.in: Don't check for TLS support if --without-tls is given. * sysdeps/generic/dl-tls.c: Include . * sysdeps/i386/dl-tls.h: Don't define anything if !USE_TLS. 2002-02-06 Roland McGrath * malloc/hooks.c [! HAVE_MREMAP]: Conditionalize unused decls. * malloc/malloc.c [! HAVE_MREMAP]: Likewise. * scripts/versions.awk: Improve error message for missing version. Each version inherits from the last one only if they have the same nonnumeric prefix, i.e. GLIBC_x.y and GLIBC_x.z or FOO_x and FOO_y but not GLIBC_x and FOO_y. * scripts/firstversions.awk: Handle libraries that don't have each particular version named in the third column of shlib-versions. * scripts/firstversions.awk: Don't mess with GLIBC_PRIVATE. 2002-02-06 Ulrich Drepper * Versions.def [ld]: Add GLIBC_2.3. * elf/Versions [ld]: Add __tls_get_addr to GLIBC_2.3. * elf/Makefile (dl-routines): Add dl-tls. (distribute): Add dl-tls.h. * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove _dl_tls_module_cnt, add _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps. Add prototypes for _dl_next_tls_modid and _dl_determine_tlsoffset. * elf/dl-load.c (_dl_map_object_from_fd): Store alignment requirement along with the other info in the link map. Change queueing of init images for double linked list. Use _dl_next_tls_modid to compute l_tls_modid. * elf/rtld.c (_dl_start_final): Store alignment requirement along with the other info in rtld map and executable map. (dl_main): Add ld.so to the init image list if necessary. Compute final module ID with _dl_next_tls_modid. * include/link.h (struct link_map): Add l_tls_previmage and l_tls_align. * eld/dl-support.c: Define _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps. * sysdeps/i386/elf/Versions: New file. * sysdeps/generic/dl-tls.c: New file. * sysdeps/generic/dl-tls.h: New file. * sysdeps/i386/dl-tls.h: New file. 2002-02-06 Roland McGrath * sysdeps/unix/sysv/linux/netinet/ip.h: Moved to ... * sysdeps/generic/netinet/ip.h: ... here, replacing old file. 2002-01-05 Roland McGrath * sysdeps/mach/configure.in: New file. * sysdeps/mach/configure: New generated file. * mach/Makefile (user-interfaces): Remove default_pager_helper. It has never been used by anything. 2002-02-06 H.J. Lu * sysdeps/mips/elf/ldsodefs.h: Make sure the right is included. 2002-02-06 Ulrich Drepper * sysdeps/unix/sysv/linux/bits/stat.h (struct stat): Add attribute((packed)) to counter stupid people misusing gcc options. (struct stat64): Likewise. 2002-02-05 Ulrich Drepper * elf/rtld.c (dl_main): Correct indentation. Use bool as type for the variables which are used as booleans. 2002-02-06 Andreas Jaeger * include/libc-symbols.h (INTUSE): Renamed from INT. * elf/dl-deps.c: Change users. * sysdeps/generic/dl-sysdep.c: Likewise. * sysdeps/generic/dl-cache.c: Likewise. * elf/dl-reloc.c: Likewise. * elf/rtld.c: Likewise. * elf/dl-version.c: Likewise. * elf/dl-load.c: Likewise. * elf/dl-dst.h: Likewise. * elf/dl-init.c: Likewise. * elf/dl-error.c: Likewise. * elf/dl-fini.c: Likewise. * elf/dl-runtime.c: Likewise. * elf/do-lookup.h: Likewise. * stdio-common/_itoa.h: Undefine SPECIAL to avoid duplicate definition. * stdio-common/_itowa.h: Likewise. 2002-02-05 Ulrich Drepper * elf/dl-minimal.c: Define _itoa_lower_digits. * elf/dynamic-link.h (elf_get_dynamic_info): ld.so can have DT_FLAGS set. * elf/dl-load.c (_dl_map_object_from_fd): Prevent dynamically loading modules with the DF_STATIC_TLS flag set. * elf/dynamic-link.h (elf_get_dynamic_info): Initialize l_flags element. * include/link.h (struct link_map): Add l_flags field. * elf/elf.h (DF_STATIC_TLS): New definition. * dlfcn/Makefile: Add rules to build and run bug-dlopen1. * dlfcn/bug-dlopen1.c: New file. By Bruno Haible. * elf/rtld.c (process_dl_debug): Correct printing help message. * elf/dl-misc.c (_dl_debug_vdprintf): Implement precision handling for %s. * inet/getnetgrent_r.c (innetgr): Add int* parameter to getfct definition and pass &errno in use of this variable. Reported by Simon Wilkinson [PR libc/2911]. 2002-02-04 Andreas Schwab * locale/programs/localedef.h (WITH_CUR_LOCALE): Define. * locale/programs/charmap-dir.c: Wrap calls that output messages with WITH_CUR_LOCALE. Include "localedef.h" first. * locale/programs/charmap.c: Likewise. * locale/programs/ld-address.c: Likewise. * locale/programs/ld-collate.c: Likewise. * locale/programs/ld-ctype.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-telephone.c: Likewise. * locale/programs/ld-time.c: Likewise. * locale/programs/linereader.c: Likewise. * locale/programs/linereader.h: Likewise. * locale/programs/localedef.c: Likewise. * locale/programs/locfile.c: Likewise. * locale/programs/repertoire.c: Likewise. 2002-02-05 Ulrich Drepper * elf/rtld.c (_dl_start_final): Determine load address to locate ehdr with GL(dl_rtld_map).l_map_start. * po/ca.po: Update from translation team. * elf/rtld.c (dl_main): Read PT_TLS entry of the executable. * elf/dl-load.c (_dl_map_object_from_fd): Handle PT_TLS program header entry. * sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_tls_module_cnt. * elf/dl-support.c: Define _dl_initimage_list and _dl_tls_module_cnt. 2002-02-04 Ulrich Drepper * elf/rtld.c (_dl_start): Fill TLS values in link map for rtld. * include/link.h (struct link_map): Add various members for TLS information. * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove _rtld_tlsoffset, add _dl_initimage_list. * sysdeps/i386/dl-lookupcfg.h: New file. * sysdeps/i386/dl-machine.h (elf_machine_rel): Implement missing TLS relocation. When using TLS we now use RESOLVE_MAP. (elf_machine_rela): Use RESOLVE_MAP instead of RESOLVE_MAP if TLS is used. * sysdeps/generic/dl-cache.c (_dl_cache_libcmp): Mark as possibly unused. * elf/rtld.c (_dl_start_final): Allocate TLS and initialize thread-pointer as soon as possible. * sysdeps/generic/ldsodefs.h: Include . Define first TLS elements in rtld_global. * sysdeps/generic/tls.h: New file. * elf/Makefile (distribute): Add tls.h. * sysdeps/i386/dl-machine.h (elf_machine_rel): Add support for TLS relocations. Not complete yet. * resolv/resolv.h: Allow user to define __need_res_state and only define __res_start structure then. * include/resolv.h: Only declare functions if _RESOLV_H_ is defined. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Move dl_cpuclock_offset initialization to _dl_start_final. (_dl_show_auxv): Avoid unnecessary sign extension. * elf/rtld.c (_dl_start_final): Initialize dl_cpuclock_offset. 2002-02-03 Ulrich Drepper * config.h.in: Add HAVE_TLS_SUPPORT. * sysdeps/i386/elf/configure.in: New file. 2002-02-03 Andreas Schwab * sysdeps/posix/readv.c: Use ssize_t for bytes_read. * sysdeps/posix/writev.c: Use ssize_t for bytes_written. Fix comment. 2002-02-03 Thorsten Kukuk * sysdeps/posix/writev.c: Check for ssize_t overflow, don't use alloca if the memory reqirements are too high. 2002-02-03 Ulrich Drepper * elf/dl-load.c (decompose_rpath): Avoid using strstr. * elf/dl-minimal.c (_strerror_r): Use _itoa instead of _itoa_word since the former is available anyway and speed isn't important here. * elf/dl-misc.c (_dl_debug_vdprintf): Likewise. * elf/dl-version.c (match_symbol): Likewise. (_dl_check_map_versions): Likewise. * elf/rtld.c (process_envvars): Likewise. (print_statistics): Likewise. * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Likewise. * elf/dl-minimal.c (_itoa): Always define it. Make it work for all bases. Add assert to catch uses of unimplemented features. (__strsep): Add assert to catch uses of unimplemented features. * elf/dl-object.c (_dl_new_object): Don't use rawmemchr. Use strchr and avoid inline optimization. * elf/rtld.c (process_envvars): Likewise. * elf/dl-open.c: Don't include . * elf/dl-profile.c (_dl_start_profile): Help compiler to avoid ffs. * elf/rtld.c (dl_main): Avoid strsep inline optimization. 2002-02-02 Ulrich Drepper * stdio-common/_itoa.h: Minor simplifications of the code. * stdio-common/_itoa.c: Likewise. * elf/dl-reloc.c (_dl_relocate_object): Use _dl_debug_printf instead of _dl_printf for debugging info output. * manual/examples/mkfsock.c (make_named_socket): Make sure name is always NUL-terminated. Patch by Chris D. Sloan . 2002-02-01 H.J. Lu * sysdeps/mips/atomicity.h (exchange_and_add): Use branch likely. (atomic_add): Likewise. (compare_and_swap): Return 0 only when failed to compare. Use branch likely. * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Use branch likely. 2002-02-03 kaz Kojima * sysdeps/sh/dl-machine.h (elf_machine_rela): Fix a typo. 2002-02-02 Ulrich Drepper * elf/dl-minimal.c (__strsep): New minimal implementation. 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.