2005-06-20 Jakub Jelinek * sysdeps/unix/sysv/linux/sys/quota.h: Add definitions and types for _LINUX_QUOTA_VERSION >= 2. (_LINUX_QUOTA_VERSION): Define if not yet defined. * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_NICE, RLIMIT_RTPRIO): Add. (RLIMIT_NLIMITS): Adjust. * sysdeps/unix/sysv/linux/alpha/bits/resource.h (RLIMIT_NICE, RLIMIT_RTPRIO): Add. (RLIMIT_NLIMITS): Adjust. * sysdeps/unix/sysv/linux/mips/bits/resource.h (RLIMIT_NICE, RLIMIT_RTPRIO): Add. (RLIMIT_NLIMITS): Adjust. * sysdeps/unix/sysv/linux/sparc/bits/resource.h (RLIMIT_NICE, RLIMIT_RTPRIO): Add. (RLIMIT_NLIMITS): Adjust. 2005-06-17 Ulrich Drepper * time/mktime.c: Always include for prototype of implicitly used memcpy. * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c (truncate64): Use __truncate, not truncate. (__have_no_truncate64): Renamed from have_no_truncate64. * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c (__have_no_truncate64): Renamed from have_no_truncate64. * sysdeps/powerpc/fpu/libm-test-ulps: Adjust ulps for complex float functions for gcc 4. 2005-06-10 Jakub Jelinek * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_runtime_setup): Handle prelinked libraries and binaries with new style PLT. 2005-06-07 Jakub Jelinek * elf/elf.h (R_PPC_REL16, R_PPC_REL16_LO, R_PPC_REL16_HI, R_PPC_REL16_HA): Define. 2005-06-14 Alan Modra * config.h.in (HAVE_ASM_PPC_REL16): Add. * elf/elf.h (DT_PPC_GOT, DT_PPC_NUM): Define. * elf/tls-macros.h (PowerPC32): Include config.h. Add variants of TLS_IE, TLS_LD and TLS_GD for new PLT/GOT layout. * sysdeps/powerpc/powerpc32/configure.in: New file, * sysdeps/powerpc/powerpc32/dl-dtprocnum.h: New file. * sysdeps/powerpc/powerpc32/dl-machine.h (DT_PPC): Define. (ppc_got): New inline function. (elf_machine_dynamic): Use ppc_got. Add attribute const. (elf_machine_load_address): Add attribute const. Don't use int vars. Use bcl rather than bl to save trashing branch target stack. Use elf_machine_dynamic rather than duplicating code here. (elf_machine_runtime_setup): New inline function replacing define. Handle new PLT. (elf_machine_fixup_plt): Handle new PLT. (elf_machine_rela): Likewise. * sysdeps/powerpc/powerpc32/sysdep.h: Include config.h. (CALL_MCOUNT): Don't set up counter vars. * sysdeps/powerpc/powerpc32/ppc-mcount.S: Correct comment. * sysdeps/powerpc/powerpc32/elf/start.S (start_addressesp): Don't define when HAVE_ASM_PPC_REL16. (_start): Add HAVE_ASM_PPC_REL16 code. * sysdeps/powerpc/powerpc32/dl-start.S (_dl_start_user): Don't bl into the GOT when HAVE_ASM_PPC_REL16. * sysdeps/powerpc/powerpc32/memset.S (memset): Likewise. * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp): Ditto. * sysdeps/powerpc/powerpc32/fpu/s_ceil.S (__ceil): Likewise. * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S (__ceilf): Likewise. * sysdeps/powerpc/powerpc32/fpu/s_floor.S (__floor): Likewise. * sysdeps/powerpc/powerpc32/fpu/s_floorf.S (__floorf): Likewise. * sysdeps/powerpc/powerpc32/fpu/s_lround.S (__lround): Likewise. * sysdeps/powerpc/powerpc32/fpu/s_rint.S (__rint): Likewise. * sysdeps/powerpc/powerpc32/fpu/s_rintf.S (__rintf): Likewise. * sysdeps/powerpc/powerpc32/fpu/s_round.S (__round): Likewise. * sysdeps/powerpc/powerpc32/fpu/s_roundf.S (__roundf): Likewise. * sysdeps/powerpc/powerpc32/fpu/s_trunc.S (__trunc): Likewise. * sysdeps/powerpc/powerpc32/fpu/s_truncf.S (__truncf): Likewise. * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S (__sigsetjmp): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S (__brk): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S (__getcontext): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S (__setcontext): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S (__swapcontext): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (stackblock): Comment. (__socket): Bomb if NARGS >= 7. Invoke CGOTSETUP and CGOTRESTORE. 2005-06-17 Ulrich Drepper * sysdeps/posix/sigignore.c: Include to tell the compiler to use __GI_memset. * sysdeps/posix/signal.c: Likewise. * sysdeps/posix/sigset.c: Likewise. * sysdeps/posix/sysv_signal.c: Likewise. * sysdeps/unix/sysv/linux/sleep.c: Likewise. * sysdeps/unix/sysv/linux/sysctl.c: Likewise. * sysdeps/unix/sysv/linux/system.c: Likewise. 2005-06-15 Jakub Jelinek * hesiod/hesiod.c (hesiod_init): Don't check for ctx->classes[0] == 0 or both classes equal here. (parse_config_file): If both classes are equal, clear the second one. 2005-06-08 Karl Kelley * hesiod/hesiod_p.h (struct hesiod_p): Add classes array. * hesiod/hesiod.c (hesiod_init): Initialize classes. Fail if no valid classes were given or if both are equal. (hesiod_resolve): Use ctx->classes instead of hardcoded C_IN and C_HS order. (parse_config_file): Handle classes keyword. * hesiod/README.hesiod: Mention addition of the classes keyword. 2005-06-14 Ulrich Drepper * configure.in: Add test for availability of libaudit. * config.h.in: Define HAVE_LIBAUDIT. * config.make.in: Define have-libaudit. * nscd/Makefile: If libaudit is available, link nscd with it. * nscd/selinux.c: If HAVE_LIBAUDIT is defined, log using libaudit. Patch by Steve Grubb . * debug/pread64_chk.c: Use __libc_pread64 instead of __pread64. * sysdeps/posix/posix_fallocate64.c: Likewise. * include/string.h: Use libc_hidden_proto for strnlen. * sysdeps/generic/strnlen.c: Add libc_hidden_def. * include/libintl.h: Use libc_hidden_proto for __dcgettext. * intl/dcgettext.c: Add libc_hidden_def. * include/execinfo.h: Add libc_hidden_proto for __backtrace and __backtrace_symbols_fd. * sysdeps/generic/backtrace.c: Add libc_hidden_def. * sysdeps/generic/backtracesymsfd.c: Likewise. * sysdeps/generic/elf/backtracesymsfd.c: Likewise. * sysdeps/i386/backtrace.c: Likewise. * sysdeps/ia64/backtrace.c: Likewise. * sysdeps/powerpc/powerpc32/backtrace.c: Likewise. * sysdeps/powerpc/powerpc64/backtrace.c: Likewise. * sysdeps/s390/s390-32/backtrace.c: Likewise. * sysdeps/s390/s390-64/backtrace.c: Likewise. 2005-06-13 Ulrich Drepper * sysdeps/unix/clock_gettime.c (clock_gettime): Implement case where HANDLED_REALTIME is not defined. [BZ #966] 2005-06-13 Jakub Jelinek * sysdeps/unix/sysv/linux/netlinkaccess.h (__netlink_sendreq, __netlink_receive): Remove prototypes. (__netlink_request): New prototype. * sysdeps/unix/sysv/linux/ifaddrs.c: Include and . (__netlink_sendreq): Make static. (__netlink_receive): Rename to... (__netlink_request): ... this. Add type argument, call __netlink_sendreq. If MSG_TRUNC is set after recvmsg, retry with a bigger buffer. Don't record buffers that contain no messages we are expecting. (getifaddrs): Use __netlink_request instead of __netlink_sendreq and __netlink_receive pairs. Formatting. * sysdeps/unix/sysv/linux/if_index.c (if_nameindex_netlink): Use __netlink_request instead of __netlink_sendreq and __netlink_receive pair. 2005-06-13 Thorsten Kukuk * sysdeps/unix/sysv/linux/netinet/if_tr.h: Don't include kernel headers, instead copy important structs/defines. 2005-06-13 Jakub Jelinek * elf/rtld.c (dl_main): Move DT_DEBUG setup before first _dl_debug_state call. 2005-06-12 Ulrich Drepper * elf/dl-error.c (_dl_signal_error): Store information about use of real malloc in the catch object. (_dl_catch_error): Forward information about malloc use to caller in new parameter. (_dl_out_of_memory): Make static. * elf/dl-deps.c: Adjust callers of _dl_catch_error. * elf/dl-libc.c: Likewise. * elf/dl-open.c: Likewise. * elf/rtld.c: Likewise. Add new --audit option. * sysdeps/generic/ldsodefs.h: Remove _dl_out_of_memory declaration. (rtld_global_ro._dl_signal_error): Add new parameter. * include/dlfcn.h (_dl_catch_error): Add new parameter. * dlfcn/dlfcn.c (_dlerror_run): Pass additional parameter to _dl_catch_error. Only free if the returned newly value says so. 2005-06-01 Roland McGrath [BZ #959] * posix/tst-mmap.c (main): Fill the test file with enough data for the page size. 2005-05-30 Jakub Jelinek * sysdeps/unix/sysv/linux/dl-osinfo.h (DL_SYSDEP_OSCHECK): If GLRO(dl_osversion) has been already set to a value smaller than _dl_discover_osversion (), don't overwrite it here. 2005-05-24 Thomas Schwinge * sysdeps/mach/i386/syscall.S (syscall): Call END. 2005-05-28 Richard Henderson * elf/elf.h (DT_ALPHA_PLTRO, DT_ALPHA_NUM): New. * sysdeps/alpha/dl-dtprocnum.h: New file. * sysdeps/alpha/dl-machine.h (DT_ALPHA): New. (elf_machine_load_address): Simplify to rely on gprel relocations. (elf_machine_runtime_setup): Handle DT_ALPHA_PLTRO plt format. Remove thread safety workaround for binutils 2.6. (elf_machine_fixup_plt): Handle DT_ALPHA_PLTRO plt format. * sysdeps/alpha/dl-trampoline.S (_dl_runtime_resolve_new): New. (_dl_runtime_profile_new): New. (_dl_runtime_resolve_old): Rename from _dl_runtime_resolve. (_dl_runtime_profile_old): Rename from _dl_runtime_profile. Fix typo in _dl_call_pltexit argument loading. * sysdeps/alpha/div_libc.h (funcnoplt): New. * sysdeps/alpha/divl.S: Use it. * sysdeps/alpha/divq.S: Likewise * sysdeps/alpha/divqu.S: Likewise. * sysdeps/alpha/reml.S: Likewise. * sysdeps/alpha/remq.S: Likewise. * sysdeps/alpha/remqu.S: Likewise. 2005-05-26 Andreas Schwab * locale/Makefile (CFLAGS-loadlocale.c): Don't define. 2005-05-26 Ulrich Drepper * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_DIRECT): Fix value. Reported by Colin Gibbs . [BZ #954] 2005-05-17 Alan Modra * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp): Corrent _dl_hwcap access in PIC && !SHARED case. * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise. 2005-05-25 Dwayne Grant McConnell * gmon/gmon.c: Add space in weak_alias use. * linuxthreads/sysdeps/unix/sysv/linux/mips/vfork.S: Likewise. * sysdeps/alpha/htonl.S: Likewise. * sysdeps/alpha/htons.S: Likewise. * sysdeps/alpha/elf/start.S: Likewise. * sysdeps/i386/i386-mcount.S: Likewise. * sysdeps/ia64/strchr.S: Likewise. * sysdeps/ia64/fpu/e_lgamma_r.c: Likewise. * sysdeps/ia64/fpu/e_lgamma_r.c: Likewise. * sysdeps/ia64/fpu/e_lgammaf_r.c: Likewise. * sysdeps/ia64/fpu/e_lgammaf_r.c: Likewise. * sysdeps/ia64/fpu/e_lgammal_r.c: Likewise. * sysdeps/ia64/fpu/e_lgammal_r.c: Likewise. * sysdeps/ia64/fpu/w_lgamma.c: Likewise. * sysdeps/ia64/fpu/w_lgamma.c: Likewise. * sysdeps/ia64/fpu/w_lgammaf.c: Likewise. * sysdeps/ia64/fpu/w_lgammaf.c: Likewise. * sysdeps/ia64/fpu/w_lgammal.c: Likewise. * sysdeps/ia64/fpu/w_lgammal.c: Likewise. * sysdeps/mach/hurd/readdir64_r.c: Likewise. * sysdeps/mach/hurd/sigaltstack.c: Likewise. * sysdeps/powerpc/fpu/s_fabs.S: Likewise. * sysdeps/powerpc/fpu/s_fabs.S: Likewise. * sysdeps/powerpc/fpu/s_fabs.S: Likewise. * sysdeps/powerpc/fpu/s_fabs.S: Likewise. * sysdeps/powerpc/fpu/s_fmax.S: Likewise. * sysdeps/powerpc/fpu/s_fmax.S: Likewise. * sysdeps/powerpc/fpu/s_fmax.S: Likewise. * sysdeps/powerpc/fpu/s_fmax.S: Likewise. * sysdeps/powerpc/fpu/s_fmin.S: Likewise. * sysdeps/powerpc/fpu/s_fmin.S: Likewise. * sysdeps/powerpc/fpu/s_fmin.S: Likewise. * sysdeps/powerpc/fpu/s_fmin.S: Likewise. * sysdeps/powerpc/powerpc32/fpu/s_copysign.S: Likewise. * sysdeps/powerpc/powerpc32/fpu/s_copysign.S: Likewise. * sysdeps/powerpc/powerpc32/fpu/s_copysign.S: Likewise. * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise. * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise. * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise. * sysdeps/s390/s390-32/s390-mcount.S: Likewise. * sysdeps/s390/s390-64/s390x-mcount.S: Likewise. * sysdeps/sparc/sparc32/memset.S: Likewise. * sysdeps/sparc/sparc32/stpcpy.S: Likewise. * sysdeps/sparc/sparc32/strchr.S: Likewise. * sysdeps/sparc/sparc32/strchr.S: Likewise. * sysdeps/sparc/sparc64/memcmp.S: Likewise. * sysdeps/sparc/sparc64/memcpy.S: Likewise. * sysdeps/sparc/sparc64/memcpy.S: Likewise. * sysdeps/sparc/sparc64/memset.S: Likewise. * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise. * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise. * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise. * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise. * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise. * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise. * sysdeps/unix/sysv/linux/alpha/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise. * sysdeps/unix/sysv/linux/alpha/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise. * sysdeps/unix/sysv/linux/alpha/swapcontext.S: Likewise. * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise. * sysdeps/unix/sysv/linux/readdir64.c: Likewise. * sysdeps/unix/sysv/linux/readdir64_r.c: Likewise. * sysdeps/unix/sysv/linux/hppa/clone.S: Likewise. * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/i386/makecontext.S: Likewise. * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise. * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/mips/clone.S: Likewise. * sysdeps/unix/sysv/linux/mips/vfork.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/swapcontext.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Likewise. * sysdeps/unix/sysv/linux/wordsize-64/getdents.c: Likewise. * sysdeps/unix/sysv/linux/x86_64/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/makecontext.c: Likewise. * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/swapcontext.S: Likewise. * sysdeps/x86_64/_mcount.S: Likewise. 2005-05-24 Roland McGrath * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG, LOAD_PIC_REG): Move these macros ... * sysdeps/i386/sysdep.h [PIC]: ... to here. 2005-05-23 Roland McGrath * sysdeps/arm, sysdeps/unix/arm, sysdeps/unix/sysv/linux/arm: Subdirectories moved to ports repository. * configure.in (base_machine): Remove arm* and thumb* patterns. * shlib-versions (arm.*-.*-linux.*): Remove this pattern. 2005-05-23 Ulrich Drepper * sunrpc/bindrsvprt.c (LOWPORT): Apparently some mountd implementations are broken and don't accept ports < 512. 2005-05-22 Dmitry V. Levin [BZ #961] * io/sys/sendfile.h: Remove __nonnull from sendfile and sendfile64 declarations. 2005-05-23 Ulrich Drepper * sunrpc/pm_getport.c (__get_socket): New function. (pmap_getport): Use it to open a non-reserved socket to the portmapper for TCP. * include/rpc/pmap_clnt.h (__get_socket): Declare. * sunrpc/pm_getmaps.c (pmap_getmaps): Use __get_socket to get an non-reserved socket for the portmapper. Based on a patch by Steve Dickson . * sunrpc/bindrsvprt.c (bindresvport): Try harder to find a port. If we tried looking at the usual range without success extend the range to even lower ports. * sysdeps/unix/clock_gettime.c (clock_gettime): Revert last patch. 2005-05-22 Andreas Schwab * elf/rtld.c: Include . 2005-05-17 Alan Modra * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Don't use JUMPTARGET. Instead append @local to __syscall_error. * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Delete all occurrences of JUMPTARGET. Instead append @local to labels. * sysdeps/powerpc/powerpc32/bsd-setjmp.S: Likewise. * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise. * sysdeps/powerpc/powerpc32/ppc-mcount.S: Likewise. * sysdeps/powerpc/powerpc32/setjmp-common.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Likewise. * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: Use float constants. * sysdeps/powerpc/powerpc32/fpu/s_floor.S: Likewise. * sysdeps/powerpc/powerpc32/fpu/s_rint.S: Likewise. * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Likewise. * sysdeps/powerpc/powerpc32/fpu/s_lround.S: Likewise. Use one GOT slot to access both constants. * sysdeps/powerpc/powerpc32/fpu/s_round.S: Likewise. * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Likewise. * sysdeps/powerpc/powerpc32/fpu/s_ceil.S (TWO52.0): Delete. * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S (TWO23.0): Delete. * sysdeps/powerpc/powerpc32/fpu/s_floor.S (TWO52.0): Delete. * sysdeps/powerpc/powerpc32/fpu/s_floorf.S (TWO23.0): Delete. * sysdeps/powerpc/powerpc32/fpu/s_lround.S: Comment typo. (NEGZERO.0, POINTFIVE.0): Delete. * sysdeps/powerpc/powerpc32/fpu/s_rint.S (TWO52.0): Delete. * sysdeps/powerpc/powerpc32/fpu/s_rintf.S (TWO23.0): Delete. * sysdeps/powerpc/powerpc32/fpu/s_round.S (__round): Code in .text. (TWO52.0, POINTFIVE.0): Delete. * sysdeps/powerpc/powerpc32/fpu/s_roundf.S (__roundf): Code in .text. (TWO23.0, POINTFIVE.0): Delete. * sysdeps/powerpc/powerpc32/fpu/s_trunc.S (__trunc): Code in .text. (TWO52.0): Delete. * sysdeps/powerpc/powerpc32/fpu/s_truncf.S (__truncf): Code in .text. (TWO23.0): Delete. * sysdeps/powerpc/powerpc32/memset.S (memset): Formatting. 2005-05-19 Richard Henderson * sysdeps/unix/clock_gettime.c (clock_gettime): Fix typo around CLOCK_REALTIME. * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_bool_32_acq, __arch_compare_and_exchange_bool_64_acq, __arch_compare_and_exchange_val_32_acq, __arch_compare_and_exchange_val_64_acq, atomic_exchange_and_add): Use __sync builtin without _si or _di suffix. 2005-05-19 Jakub Jelinek [BZ #955] * iconvdata/ibm939.c (BODY): Avoid segfaults with input characters and above. 2005-05-17 Andreas Schwab * sysdeps/unix/sysv/linux/clock_getcpuclockid.c (clock_getcpuclockid): Always return a defined value. 2005-05-17 Neal H. Walfield * sysdeps/posix/getaddrinfo.c (gaih_local): Check [_HAVE_SA_LEN] instead of [SALEN]. (gaih_inet): Likewise. 2005-05-11 Ulrich Drepper * elf/elf.h (Elf32_auxv_t): Make cross-compile safe. (Elf64_auxv_t): Likewise. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Adjust for removal of a_ptr element in ElfXX_auxv_t. * elf/dl-support.c (_dl_aux_init): Likewise. 2005-05-09 Daniel Jacobowitz * sysdeps/unix/sysv/linux/clock_getres.c: Include . * sysdeps/unix/sysv/linux/clock_gettime.c: Likewise. 2005-05-09 Alan Modra * sysdeps/powerpc/powerpc64/dl-machine.h (RTLD_START): Use .pushsection/.popsection in place of .section/.previous. 2005-05-08 Ulrich Drepper * MakeTAGS: Make xgettext not look into test cases. * MakeTAGS: Make sure translations in error calls are marked with c-format by xgettext. 2005-05-07 Ulrich Drepper * intl/libintl.h: Always use __attribute_format_arg__ for gettext functions since gcc sometimes forgets the attribute for the standard functions. 2005-05-06 Jakub Jelinek [BZ #934] * posix/regex_internal.h: Include bits/libc-lock.h or define dummy __libc_lock_* macros if not _LIBC. (struct re_dfa_t): Add lock. * posix/regcomp.c (re_compile_internal): Add __libc_lock_init. * posix/regexec.c (regexec, re_search_stub): Add locking. 2005-05-04 Jakub Jelinek * intl/Makefile (tst-gettext[45].out): Pass also $(run-program-prefix) as argument to the scripts. * intl/tst-gettext2.sh: Use mkdir -p instead of test -d + mkdir. * intl/tst-gettext4.sh: Likewise. Use run_program_prefix argument. * intl/tst-gettext5.sh: Likewise. * intl/tst-translit.sh: Add mkdir -p. * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Use .ifndef/.endif to allow use of this macro more than once per .S file. (LOAD_PIC_REG): New macro. * sysdeps/unix/sysv/linux/i386/makecontext.S: Add call frame information. * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise. * sysdeps/i386/fpu/s_asinh.S: Use LOAD_PIC_REG macro. Add call frame information. * sysdeps/i386/fpu/e_log10f.S: Likewise. * sysdeps/i386/fpu/s_expm1.S: Likewise. * sysdeps/i386/fpu/e_acoshf.S: Likewise. * sysdeps/i386/fpu/e_log2l.S: Likewise. * sysdeps/i386/fpu/s_log1pf.S: Likewise. * sysdeps/i386/fpu/s_lrint.S: Likewise. * sysdeps/i386/fpu/s_llrint.S: Likewise. * sysdeps/i386/fpu/s_ilogbf.S: Likewise. * sysdeps/i386/fpu/s_cbrtl.S: Likewise. * sysdeps/i386/fpu/s_asinhf.S: Likewise. * sysdeps/i386/fpu/e_log.S: Likewise. * sysdeps/i386/fpu/e_atanhf.S: Likewise. * sysdeps/i386/fpu/s_lrintl.S: Likewise. * sysdeps/i386/fpu/e_atanhl.S: Likewise. * sysdeps/i386/fpu/e_scalb.S: Likewise. * sysdeps/i386/fpu/s_log1p.S: Likewise. * sysdeps/i386/fpu/s_nearbyintl.S: Likewise. * sysdeps/i386/fpu/s_frexpl.S: Likewise. * sysdeps/i386/fpu/s_log1pl.S: Likewise. * sysdeps/i386/fpu/s_nearbyintf.S: Likewise. * sysdeps/i386/fpu/s_cbrt.S: Likewise. * sysdeps/i386/fpu/s_expm1l.S: Likewise. * sysdeps/i386/fpu/s_lrintf.S: Likewise. * sysdeps/i386/fpu/e_acosh.S: Likewise. * sysdeps/i386/fpu/s_cexp.S: Likewise. * sysdeps/i386/fpu/s_ilogbl.S: Likewise. * sysdeps/i386/fpu/s_expm1f.S: Likewise. * sysdeps/i386/fpu/e_powl.S: Likewise. * sysdeps/i386/fpu/e_powf.S: Likewise. * sysdeps/i386/fpu/e_scalbf.S: Likewise. * sysdeps/i386/fpu/e_logl.S: Likewise. * sysdeps/i386/fpu/e_acoshl.S: Likewise. * sysdeps/i386/fpu/s_frexp.S: Likewise. * sysdeps/i386/fpu/e_pow.S: Likewise. * sysdeps/i386/fpu/e_logf.S: Likewise. * sysdeps/i386/fpu/e_log2.S: Likewise. * sysdeps/i386/fpu/s_frexpf.S: Likewise. * sysdeps/i386/fpu/s_cexpl.S: Likewise. * sysdeps/i386/fpu/s_llrintf.S: Likewise. * sysdeps/i386/fpu/s_ilogb.S: Likewise. * sysdeps/i386/fpu/e_scalbl.S: Likewise. * sysdeps/i386/fpu/e_atanh.S: Likewise. * sysdeps/i386/fpu/e_log10.S: Likewise. * sysdeps/i386/fpu/s_cbrtf.S: Likewise. * sysdeps/i386/fpu/s_cexpf.S: Likewise. * sysdeps/i386/fpu/s_llrintl.S: Likewise. * sysdeps/i386/fpu/e_log10l.S: Likewise. * sysdeps/i386/fpu/s_nearbyint.S: Likewise. * sysdeps/i386/fpu/s_asinhl.S: Likewise. * sysdeps/i386/fpu/e_log2f.S: Likewise. * sysdeps/i386/addmul_1.S: Various fixes to cfi handling. * sysdeps/i386/mul_1.S: Likewise. * sysdeps/i386/strtok.S: Likewise. * sysdeps/i386/sub_n.S: Likewise. * sysdeps/i386/submul_1.S: Likewise. * sysdeps/i386/i586/addmul_1.S: Likewise. * sysdeps/i386/i586/memcpy.S: Likewise. * sysdeps/i386/i586/mul_1.S: Likewise. * sysdeps/i386/i586/rshift.S: Likewise. * sysdeps/i386/i586/sub_n.S: Likewise. * sysdeps/i386/i586/submul_1.S: Likewise. * sysdeps/i386/i686/memcmp.S: Likewise. * sysdeps/i386/i686/memmove.S: Likewise. * sysdeps/unix/sysv/linux/i386/clone.S: Likewise. * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise. * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise. * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise. 2005-05-03 Ulrich Drepper * sysdeps/i386/add_n.S: Add call frame information. * sysdeps/i386/addmul_1.S: Likewise. * sysdeps/i386/bsd-setjmp.S: Likewise. * sysdeps/i386/lshift.S: Likewise. * sysdeps/i386/memchr.S: Likewise. * sysdeps/i386/memcmp.S: Likewise. * sysdeps/i386/mul_1.S: Likewise. * sysdeps/i386/rawmemchr.S: Likewise. * sysdeps/i386/rshift.S: Likewise. * sysdeps/i386/stpncpy.S: Likewise. * sysdeps/i386/strchr.S: Likewise. * sysdeps/i386/strchrnul.S: Likewise. * sysdeps/i386/strcspn.S: Likewise. * sysdeps/i386/strpbrk.S: Likewise. * sysdeps/i386/strrchr.S: Likewise. * sysdeps/i386/strspn.S: Likewise. * sysdeps/i386/strtok.S: Likewise. * sysdeps/i386/sub_n.S: Likewise. * sysdeps/i386/submul_1.S: Likewise. * sysdeps/i386/elf/bsd-setjmp.S: Likewise. * sysdeps/i386/i486/strcat.S: Likewise. * sysdeps/i386/i586/add_n.S: Likewise. * sysdeps/i386/i586/addmul_1.S: Likewise. * sysdeps/i386/i586/lshift.S: Likewise. * sysdeps/i386/i586/memcpy.S: Likewise. * sysdeps/i386/i586/memset.S: Likewise. * sysdeps/i386/i586/mul_1.S: Likewise. * sysdeps/i386/i586/rshift.S: Likewise. * sysdeps/i386/i586/strchr.S: Likewise. * sysdeps/i386/i586/strcpy.S: Likewise. * sysdeps/i386/i586/sub_n.S: Likewise. * sysdeps/i386/i586/submul_1.S: Likewise. * sysdeps/i386/i686/add_n.S: Likewise. * sysdeps/i386/i686/memcmp.S: Likewise. * sysdeps/i386/i686/memmove.S: Likewise. * sysdeps/i386/i686/mempcpy.S: Likewise. * sysdeps/i386/i686/memset.S: Likewise. * sysdeps/i386/i686/strtok.S: Likewise. * sysdeps/unix/sysv/linux/i386/clone.S: Likewise. * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise. * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise. * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Likewise. * sysdeps/unix/sysv/linux/i386/semtimedop.S: Likewise. * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise. * sysdeps/i386/fpu/libm-test-ulps: Adjust for gcc 4. * sysdeps/unix/sysv/linux/kernel-features.h: waitid is available on ppc in 2.6.12. 2005-04-29 Jakub Jelinek * sysdeps/posix/posix_fallocate.c (posix_fallocate): If len == 0, call ftruncate if offset is bigger than current size. Make sure the file is offset + len bytes long if that is more than current size. Don't overwrite previous content of the file. * sysdeps/posix/posix_fallocate64.c (__posix_fallocate64_l64): Likewise. 2005-05-02 Roland McGrath [BZ #924] * crypt/md5.c [! HAVE_MEMCPY] (memcpy): Yield proper expression value. 2005-04-29 Roland McGrath * timezone/africa: Update from tzdata2005i. * timezone/asia: Likewise. * timezone/northamerica: Likewise. * timezone/yearistype: Likewise. * sysdeps/i386/sysdep.h (CALL_MCOUNT): Fix typo in last change. 2005-04-29 Ulrich Drepper * nis/nis_table.c: Fix realloc handling. * nis/nis_removemember.c: Likewise. 2005-04-28 Ulrich Drepper [BZ #798] * nscd/Makefile: Help losers who use --with-headers. 2005-04-28 Roland McGrath [BZ #796] * sysdeps/unix/sysv/linux/dl-sysdep.h: New file. Define NEED_DL_SYSINFO_DSO for all platforms. * sysdeps/generic/dl-sysdep.h: Remove multiple inclusion protection. * sysdeps/alpha/dl-sysdep.h: Likewise. Use #include_next instead of duplicating generic file's contents. * sysdeps/ia64/dl-sysdep.h: Likewise. * sysdeps/sparc/dl-sysdep.h: Likewise. 2005-03-22 Steven Munroe * sysdeps/powerpc/powerpc64/memset.S (memset): Make ___memset local. 2005-03-07 Steven Munroe [BZ #781] * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_TGKILL): Define for powerpc32/64 starting with 2.6.1. (__ASSUME_UTIMES): Define for powerpc32/64 starting with 2.6.1. (__ASSUME_FADVISE64_64_SYSCALL): Define for powerpc32 only starting with 2.6.1. (__ASSUME_WAITID_SYSCALL): Don't define for powerpc32/64. 2005-04-28 Ulrich Drepper * sysdeps/i386/sysdep.h: Add cfi instrumentation to asm fragments. * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/i386/socket.S: Remove now duplicate cfi_startproc and cfi_endproc. * configure.in: Remove ultrasparc names. * sysdeps/i386/i686/memcmp.S: Move misplaced END. 2005-03-27 Bruno Haible Make it possible for multiple threads to use gettext() in different locales. * intl/dcigettext.c (HAVE_PER_THREAD_LOCALE): New macro. (struct known_translation_t): If HAVE_PER_THREAD_LOCALE, add localename field. (transcmp): If HAVE_PER_THREAD_LOCALE, compare localename fields. (DCIGETTEXT): If HAVE_PER_THREAD_LOCALE, fill the localename field in search and newp. * intl/tst-gettext4.c: New file. * intl/tst-gettext4.sh: New file. * intl/tst-gettext4-de.po: New file. * intl/tst-gettext4-fr.po: New file. * intl/tst-gettext5.c: New file. * intl/tst-gettext5.sh: New file. * intl/Makefile (distribute): Add tst-gettext4.sh, tst-gettext4-de.po, tst-gettext4-fr.po, tst-gettext5.sh. (multithread-test-srcs): New variable. (test-srcs): Add its contents. (tests): Depend on tst-gettext4.out, tst-gettext5.out. (tst-gettext4.out, tst-gettext5.out): New rules. (CFLAGS-tst-gettext4.c, CFLAGS-tst-gettext5.c): New variables. Add rule for linking the multithread-test-srcs with the appropriate thread-library. 2005-04-28 Ulrich Drepper * po/rw.po: New file. From translation team. * scripts/config.guess: Update from upstream. * scripts/config.sub: Likewise. 2005-04-27 Ulrich Drepper * nscd/connections.c (nscd_run): Use time() value in prune_cache call, not timeout value, since the latter might be from another clock. 2005-04-27 Jakub Jelinek * elf/rtld.c (dl_main): Call _dl_init_linuxthreads_paths if GLRO(dl_osversion) <= 0x20413. * elf/dl-load.c (_dl_init_paths): Allocate one extra pointer in rtld_search_dirs.dirs. (_dl_init_linuxthreads_paths): New function. 2005-04-27 Roland McGrath [BZ #877] * posix/unistd.h: Remove __nonnull from acct decl. * rt/tst-cpuclock1.c: New file. * rt/tst-cpuclock2.c: New file. * rt/tst-cputimer1.c: New file. * rt/tst-cputimer2.c: New file. * rt/tst-cputimer3.c: New file. * rt/Makefile (tests): Add them. * sysdeps/unix/sysv/linux/kernel-posix-cpu-timers.h: New file. * sysdeps/unix/sysv/linux/clock_getcpuclockid.c: New file. * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c (HAS_CPUCLOCK): New macro. (clock_getcpuclockid): Function removed. #include the new linux file to define it instead. * sysdeps/unix/clock_gettime.c [HP_TIMING_AVAIL] (hp_timing_gettime): New function, broken out of ... (clock_gettime) [HP_TIMING_AVAIL]: ... here. Call it. (realtime_gettime): New function, broken out of ... (clock_gettime) [! HANDLED_REALTIME]: ... here. Call it. (clock_gettime) [SYSDEP_GETTIME_CPU]: Use new macro in default case. * sysdeps/unix/sysv/linux/clock_gettime.c (SYSCALL_GETTIME): New macro. (SYSDEP_GETTIME_CPUTIME): New macro. (SYSDEP_GETTIME): Use both. [! __ASSUME_POSIX_TIMERS] (maybe_syscall_gettime): New function, broken out of ... (SYSDEP_GETTIME): ... here. Use it. [__NR_clock_gettime] (HANDLED_CPUTIME): Define it. (SYSDEP_GETTIME_CPUTIME): New macro. Handle CPU timers by trying kernel support and falling back to hp-timing code. * sysdeps/posix/clock_getres.c [HP_TIMING_AVAIL] (hp_timing_getres): New function, broken out of ... (clock_getres) [HP_TIMING_AVAIL]: ... here. Call it. (realtime_getres): New function, broken out of ... (clock_getres) [! HANDLED_REALTIME]: ... here. Call it. (clock_getres) [SYSDEP_GETRES_CPU]: Use new macro in default case. * sysdeps/unix/sysv/linux/clock_getres.c (SYSCALL_GETRES): New macro. (SYSDEP_GETRES_CPUTIME): New macro. (SYSDEP_GETRES): Use both. [! __ASSUME_POSIX_TIMERS] (maybe_syscall_getres): New function, broken out of ... (SYSDEP_GETRES): ... here. Use it. [__NR_clock_getres] (HANDLED_CPUTIME): Define it. (SYSDEP_GETRES_CPUTIME): New macro. Handle CPU timers by trying kernel support and falling back to hp-timing code. * sysdeps/unix/sysv/linux/clock_nanosleep.c: Handle CLOCK_PROCESS_CPUTIME_ID and CLOCK_PROCESS_THREAD_ID specially, translating to the kernel clockid_t for our own process/thread clock. 2005-04-27 Ulrich Drepper * stdlib/test-canon.c: Make doesExist a directory and add more tests for the new error case. 2004-06-02 Dmitry V. Levin Ranjani Murthy * stdlib/canonicalize.c (__realpath): Change realpath(3) to return NULL and set errno to ENOTDIR for such pathnames like "/path/to/existing-non-directory/". 2005-04-26 Ulrich Drepper * time/strptime_l.c (__strptime_internal): Handle 'z' to set tm_gmtoff. * time/Makefile (tests): Add tst-strptime2. * time/tst-strptime2.c: New file. 2005-04-26 Jakub Jelinek * elf/dl-close.c: Include stddef.h. (_dl_close): If called recursively, just remember GC needs to be rerun and decrease l_direct_opencount. Avoid GC if l_direct_opencount decreased to 1. Rerun GC at the end if any destructor unloaded some additional libraries. * elf/Makefile: Add rules to build and run unload6 test. * elf/unload6.c: New test. * elf/unload6mod1.c: New file. * elf/unload6mod2.c: New file. * elf/unload6mod3.c: New file. * malloc/hooks.c (mem2chunk_check): Add magic_p argument, set *magic_p if magic_p is not NULL. (top_check): Invoke MALLOC_FAILURE_ACTION if MORECORE failed. (malloc_check): Fail if sz == -1. (free_check): Adjust mem2chunk_check caller. (realloc_check): Likewise. Fail if bytes == -1. If bytes == 0 and oldmem != NULL, call free_check and return NULL. If reallocating and returning NULL, invert magic byte again to make oldmem valid region for further checking. (memalign_check): Fail if bytes == -1. * malloc/Makefile: Add rules to build and run tst-mcheck. * malloc/tst-mcheck.c: New test. 2005-04-26 Ulrich Drepper * stdio-common/vfscanf.c: Correctly account for characters of decimal points right after +-. 2005-04-26 Roland McGrath * elf/rtld-Rules (rtld-all): Test ifndef rtld-modules instead of ifeq ($(subdir),elf) to distinguish main driver from subdir runs. 2005-04-25 Roland McGrath * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (INTERNAL_SYSCALL_ERROR_P): Fix typo in last change. * sunrpc/xdr.c (xdr_u_int): Use `long' for L and cast where needed. * elf/dl-load.c: Revert last change. 2005-04-24 Ulrich Drepper * stdio-common/vfscanf.c: Fix parsing of decimal point after +-. Patch by Hamed Malek . 2005-04-21 Roland McGrath * elf/dl-load.c (_dl_map_object_from_fd): Don't use MAP_DENYWRITE, since Linux ignores it in user mmap calls. 2005-04-17 David S. Miller * sysdeps/sparc/sparc32/elf/start.S: Define __data_start. * sysdeps/sparc/sparc64/elf/start.S: Likewise. 2005-04-15 Roland McGrath * timezone/Makefile (zic-deps): New variable. ($(testdata)/America/New_York): Use it instead of explicit deps. ($(testdata)/Etc/UTC, $(testdata)/Australia/Melbourne): Likewise. ($(testdata)/America/Sao_Paulo, $(testdata)/Asia/Tokyo): Likewise. (%/UTC %/Universal): New pattern rule, replaces ... ($(testdata)/UTC, $(testdata)/Universal): ... these removed targets. ($(testdata)/%/Berlin $(testdata)/%/London): New pattern rule. ($(testdata)/Europe/London, $(testdata)/Europe/Berlin): Removed. 2005-04-14 Roland McGrath * MakeTAGS ($P/$(domain).pot): Depend on distinfo file as well. (extract): Filter-out distinfo file name. [BZ #253] * MakeTAGS (text-srcs): Match %.bash.in files too. [BZ #253] * nscd/Makefile (all-nscd-modules): New variable, include selinux module regardless of configuration. (distribute): Use that instead of $(nscd-modules). 2005-04-13 David S. Miller Add sparc64 TLS and NPTL support. * elf/tls-macros.h: Add Sparc64 defines. * sysdeps/sparc/sparc64/dl-machine.h (sparc64_fixup_plt): Mark as always_inline. (elf_machine_fixup_plt): Likewise. (elf_machine_rela): Handle TLS relocations. (elf_machine_type_cleaa): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (SYSCALL_ERROR_HANDLER_ENTRY): Use sethi/or for GOT reloc. It does not always fit in R_SPARC_GOT13 when building -fPIC. Also, add TLS handling. * sysdeps/unix/sysv/linux/configure.in (arch_minimum_kernel): Increase it to 2.4.21 for sparc64. * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S: NULL terminate backtrace by zero'ing out %fp. Store away flags, func_ptr, and func_arg in global registers not local registers. * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S: Handle PTID, TLS, and CTID arguments properly. Add RESET_PID handling. * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Rework so that we do not invoke __sigprocmask(). We can always assume rt signals are present on sparc64, so just do an inline syscall. 2005-04-13 Jakub Jelinek * sysdeps/sparc/sparc64/dl-machine.h: Add dl_machine_h multiple inclusion guard for the first half of the header. (elf_machine_type_class, ELF_MACHINE_JMP_SLOT, ELF_MACHINE_NO_REL, ELF_MACHINE_PLTREL_OVERLAP, elf_machine_runtime_setup, elf_machine_relplt, DL_STACK_END, RTLD_START): Move into the #ifndef dl_machine_h guarded part of the header. 2005-04-14 Ulrich Drepper [BZ #851] * posix/execvp.c (execvp): Use file name including path when trying to run it with shell. * posix/Makefile: Add rules to build and run tst-execvp3. * posix/tst-execvp3.c: New file. 2005-04-12 Ulrich Drepper * stdlib/random_r.c (__initstate_r): Don't use non-existing state. * string/tst-strfry.c: New file. * string/Makefile (tests): Add tst-strfry. 2005-04-11 James A. Morrison * manual/string.texi: Fix typo in wmemcpy decl. 2005-04-10 David S. Miller * sysdeps/sparc/sparc32/dl-trampoline.S: Use std not stx. 2005-04-08 Carlos O'Donell * FAQ.in: Explain why `make' might fail running rpcgen. * FAQ: Regenerated. 2005-04-07 Roland McGrath * po/libc.pot: Regenerated. 2005-04-07 Roland McGrath * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion) [(NEED_DL_SYSINFO || NEED_DL_SYSINFO_DSO) && SHARED]: Scan GLRO(dl_sysinfo_map) for PT_NOTE giving Linux kernel version, we can skip the uname call if it's there. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't use DL_SYSDEP_OSCHECK here. * elf/rtld.c (dl_main) [DL_SYSDEP_OSCHECK]: Do it here instead. * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Add _dl_sysinfo_map. * elf/rtld.c (dl_main): Don't call _dl_init_paths early in the rtld_is_main case. Call it unconditionally later. Move GLRO(dl_sysinfo_dso) handling earlier, before _dl_init_paths call. Initialize GLRO(dl_sysinfo_map). * elf/dl-load.c (open_path): Bail out if _dl_init_paths wasn't called. * sysdeps/generic/dl-sysdep.c (_DL_FIRST_EXTRA): New macro. (_dl_important_hwcaps) [(NEED_DL_SYSINFO || NEED_DL_SYSINFO_DSO) && SHARED]: Scan GLRO(dl_sysinfo_map) for PT_NOTE giving synthetic hwcap names and bit values. * elf/ldconfig.c (_DL_FIRST_EXTRA): New macro. (hwcap_extra): New static variable. (is_hwcap_platform): Check hwcap_extra for a matching name. Remove tls special case. (path_hwcap): Likewise. (parse_conf): Parse "hwcap" directive to define synthetic hwcap bits and their names, stored in hwcap_extra. (main) [USE_TLS]: Initialize final synthetic hwcap bit as "tls". * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Use uint64_t for _dl_hwcap and _dl_hwcap_mask. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Cast a_val for AT_HWCAP to unsigned long int. * elf/dl-support.c (_dl_aux_init): Likewise. (_dl_hwcap): Update defn. * elf/cache.c (print_entry): Pad hwcap value with 0s in diagnostic. * elf/ldconfig.c (search_dir): Likewise. 2005-04-05 Roland McGrath * NEWS: Copy 2.3.5 section from 2.3 branch. * intl/tst-codeset.sh: Use mkdir -p. Put msgfmt output in temporary file and mv it into place. * intl/tst-gettext3.sh: Likewise. * Makefile (glibc-%.tar rule): Use make -q to ensure configure scripts are up to date in srcdir. Touch all configure scripts after export. * iconv/gconv_int.h: Include and . 2005-04-05 H.J. Lu [BZ #592] * sysdeps/ia64/fpu/e_acosh.S: Update from Intel libm 2005-04-05 (comment changes only). * sysdeps/ia64/fpu/e_acoshl.S: Likewise. * sysdeps/ia64/fpu/e_atanh.S: Likewise. * sysdeps/ia64/fpu/e_cosh.S: Likewise. * sysdeps/ia64/fpu/e_coshf.S: Likewise. * sysdeps/ia64/fpu/e_exp.S: Likewise. * sysdeps/ia64/fpu/e_exp10.S: Likewise. * sysdeps/ia64/fpu/e_exp10f.S: Likewise. * sysdeps/ia64/fpu/e_exp2.S: Likewise. * sysdeps/ia64/fpu/e_exp2f.S: Likewise. * sysdeps/ia64/fpu/e_expf.S: Likewise. * sysdeps/ia64/fpu/e_log.S: Likewise. * sysdeps/ia64/fpu/e_logf.S: Likewise. * sysdeps/ia64/fpu/e_pow.S: Likewise. * sysdeps/ia64/fpu/e_powf.S: Likewise. * sysdeps/ia64/fpu/e_sinh.S: Likewise. * sysdeps/ia64/fpu/e_sinhf.S: Likewise. * sysdeps/ia64/fpu/libm_error.c: Likewise. * sysdeps/ia64/fpu/libm_lgamma.S: Likewise. * sysdeps/ia64/fpu/libm_lgammaf.S: Likewise. * sysdeps/ia64/fpu/libm_lgammal.S: Likewise. * sysdeps/ia64/fpu/libm_sincos.S: Likewise. * sysdeps/ia64/fpu/libm_sincosf.S: Likewise. * sysdeps/ia64/fpu/s_asinh.S: Likewise. * sysdeps/ia64/fpu/s_atanl.S: Likewise. * sysdeps/ia64/fpu/s_cos.S: Likewise. * sysdeps/ia64/fpu/s_cosf.S: Likewise. * sysdeps/ia64/fpu/s_erf.S: Likewise. * sysdeps/ia64/fpu/s_erfc.S: Likewise. * sysdeps/ia64/fpu/s_erfcf.S: Likewise. * sysdeps/ia64/fpu/s_erfcl.S: Likewise. * sysdeps/ia64/fpu/s_erff.S: Likewise. * sysdeps/ia64/fpu/s_expm1.S: Likewise. * sysdeps/ia64/fpu/s_expm1f.S: Likewise. * sysdeps/ia64/fpu/s_log1p.S: Likewise. * sysdeps/ia64/fpu/s_tanf.S: Likewise. * sysdeps/ia64/fpu/s_tanh.S: Likewise. * sysdeps/ia64/fpu/s_tanhf.S: Likewise. * sysdeps/ia64/fpu/w_tgamma.S: Likewise. * sysdeps/ia64/fpu/w_tgammaf.S: Likewise. * sysdeps/ia64/fpu/w_tgammal.S: Likewise. 2005-04-05 Roland McGrath * scripts/config.guess: Update from master, timestamp='2005-03-24'. * scripts/config.sub: Update from master, timestamp='2005-02-10'. 2005-04-04 David S. Miller * sysdeps/sparc/sparc32/dl-trampoline.S: New file. * sysdeps/sparc/sparc32/dl-machine.h: Move PLT trampolines there. Use RESOLVE_MAP instead of RESOLVE to protect relocation code. (elf_machine_runtime_setup): Test for dl_profile non-null. * sysdeps/sparc/sparc64/dl-trampoline.S: New file. (ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): New. * sysdeps/sparc/sparc64/dl-machine.h: Move PLT trampolines there. Use RESOLVE_MAP instead of RESOLVE to protect relocation code. (elf_machine_runtime_setup): Test for dl_profile non-null. * sysdeps/sparc/bits/link.h: New file. * sysdeps/generic/ldsodefs.h (La_sparc32_regs, La_sparc32_retval, La_sparc64_regs, La_sparc64_retval): New. (struct audit_ifaces): Add sparc entries. * elf/tst-auditmod1.c: Add sparc entries. 2005-03-27 Bruno Haible * intl/tst-gettext3.c: New file. * intl/tst-gettext3.sh: New file. * intl/Makefile (distribute): Add tst-gettext3.sh. (test-srcs): Add tst-gettext3. (tests): Depend on tst-gettext3.out. (tst-gettext3.out): New rule. (CFLAGS-tst-gettext3.c): New variable. Fix bug exposed by tst-gettext3. * intl/gettextP.h (struct converted_domain): New type. (struct loaded_domain): Remove the conv, conv_tab fields. Add conversions, nconversions fields. (_nl_init_domain_conv): Remove declaration. (_nl_free_domain_conv): Remove declaration. (_nl_find_msg): Add convert argument. * intl/dcigettext.c (DCIGETTEXT): Call _nl_find_msg with convert=1. (_nl_find_msg): Add convert argument. When a conversion to a different charset is needed, create a new converted_domain element, instead of throwing away the old converted translations. (get_output_charset): New function. * intl/loadmsgcat.c (_nl_init_domain_conv): Remove function. (_nl_free_domain_conv): Remove function. (_nl_load_domain): Initialize the conversions array to empty. Use _nl_find_msg instead of _nl_init_domain_conv to retrieve the header entry. (_nl_unload_domain): Free the conversions array and its contents. * intl/gettextP.h (struct loaded_domain): Remove codeset_cntr field. (struct binding): Likewise. * intl/bindtextdom.c (set_binding_values): Drop codeset_cntr modifications. 2005-04-04 Jakub Jelinek * sunrpc/pmap_rmt.c (xdr_rmtcall_args): Use a dummy arglen instead of trying to encode uninitialized arglen. 2005-04-04 Ulrich Drepper [BZ #825] * timezone/scheck.c: Update from tzcode2005h. * timezone/tzfile.h: Likewise. * timezone/zdump.c: Likewise. * timezone/zic.c: Likewise. [BZ #825] * timezone/antarctica: Update from tzdata2005h. * timezone/asia: Likewise. * timezone/australasia: Likewise. * timezone/etcetera: Likewise. * timezone/europe: Likewise. * timezone/northamerica: Likewise. * timezone/southamerica: Likewise. * timezone/leapseconds: Likewise. * timezone/iso3166.tab: Likewise. 2005-03-31 H.J. Lu [BZ #592] * sysdeps/ia64/fpu/libm_cpu_defs.h: Update copyright. 2005-04-01 Ulrich Drepper * wcsmbs/btowc.c (__btowc): Optimize parameters in ASCII range. * wcsmbs/wctob.c (wctob): Likewise. * wcsmbs/wchar.h (btowc): Add optimized inline function. (wctob): Likewise. 2005-03-31 Jakub Jelinek * sysdeps/unix/sysv/linux/x86_64/getcontext.S: Use functionally equivalent, but shorter instructions. * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/swapcontext.S: Likewise. * sysdeps/unix/x86_64/sysdep.S: Likewise. * sysdeps/x86_64/strchr.S: Likewise. * sysdeps/x86_64/memset.S: Likewise. * sysdeps/x86_64/strcspn.S: Likewise. * sysdeps/x86_64/strcmp.S: Likewise. * sysdeps/x86_64/elf/start.S: Likewise. * sysdeps/x86_64/strspn.S: Likewise. * sysdeps/x86_64/dl-machine.h: Likewise. * sysdeps/x86_64/bsd-_setjmp.S: Likewise. * sysdeps/x86_64/bsd-setjmp.S: Likewise. * sysdeps/x86_64/strtok.S: Likewise. 2005-03-30 H.J. Lu [BZ #592] * sysdeps/ia64/fpu/e_acosf.S: Update from Intel libm 2005-03-21. * sysdeps/ia64/fpu/e_acoshf.S: Likewise. * sysdeps/ia64/fpu/e_acoshl.S: Likewise. * sysdeps/ia64/fpu/e_acosh.S: Likewise. * sysdeps/ia64/fpu/e_acosl.S: Likewise. * sysdeps/ia64/fpu/e_acos.S: Likewise. * sysdeps/ia64/fpu/e_asinf.S: Likewise. * sysdeps/ia64/fpu/e_asinl.S: Likewise. * sysdeps/ia64/fpu/e_asin.S: Likewise. * sysdeps/ia64/fpu/e_atan2f.S: Likewise. * sysdeps/ia64/fpu/e_atan2.S: Likewise. * sysdeps/ia64/fpu/e_atanhf.S: Likewise. * sysdeps/ia64/fpu/e_atanhl.S: Likewise. * sysdeps/ia64/fpu/e_atanh.S: Likewise. * sysdeps/ia64/fpu/e_coshf.S: Likewise. * sysdeps/ia64/fpu/e_coshl.S: Likewise. * sysdeps/ia64/fpu/e_cosh.S: Likewise. * sysdeps/ia64/fpu/e_exp10f.S: Likewise. * sysdeps/ia64/fpu/e_exp10l.S: Likewise. * sysdeps/ia64/fpu/e_exp10.S: Likewise. * sysdeps/ia64/fpu/e_exp2f.S: Likewise. * sysdeps/ia64/fpu/e_exp2l.S: Likewise. * sysdeps/ia64/fpu/e_exp2.S: Likewise. * sysdeps/ia64/fpu/e_expf.S: Likewise. * sysdeps/ia64/fpu/e_exp.S: Likewise. * sysdeps/ia64/fpu/e_fmodf.S: Likewise. * sysdeps/ia64/fpu/e_fmodl.S: Likewise. * sysdeps/ia64/fpu/e_fmod.S: Likewise. * sysdeps/ia64/fpu/e_hypotf.S: Likewise. * sysdeps/ia64/fpu/e_hypotl.S: Likewise. * sysdeps/ia64/fpu/e_hypot.S: Likewise. * sysdeps/ia64/fpu/e_lgammaf_r.c: Likewise. * sysdeps/ia64/fpu/e_lgammal_r.c: Likewise. * sysdeps/ia64/fpu/e_lgamma_r.c: Likewise. * sysdeps/ia64/fpu/e_log2f.S: Likewise. * sysdeps/ia64/fpu/e_log2l.S: Likewise. * sysdeps/ia64/fpu/e_log2.S: Likewise. * sysdeps/ia64/fpu/e_logf.S: Likewise. * sysdeps/ia64/fpu/e_logl.S: Likewise. * sysdeps/ia64/fpu/e_log.S: Likewise. * sysdeps/ia64/fpu/e_powf.S: Likewise. * sysdeps/ia64/fpu/e_powl.S: Likewise. * sysdeps/ia64/fpu/e_pow.S: Likewise. * sysdeps/ia64/fpu/e_remainderf.S: Likewise. * sysdeps/ia64/fpu/e_remainderl.S: Likewise. * sysdeps/ia64/fpu/e_remainder.S: Likewise. * sysdeps/ia64/fpu/e_scalbf.S: Likewise. * sysdeps/ia64/fpu/e_scalbl.S: Likewise. * sysdeps/ia64/fpu/e_scalb.S: Likewise. * sysdeps/ia64/fpu/e_sinhf.S: Likewise. * sysdeps/ia64/fpu/e_sinhl.S: Likewise. * sysdeps/ia64/fpu/e_sinh.S: Likewise. * sysdeps/ia64/fpu/e_sqrtf.S: Likewise. * sysdeps/ia64/fpu/e_sqrtl.S: Likewise. * sysdeps/ia64/fpu/e_sqrt.S: Likewise. * sysdeps/ia64/fpu/libm_error.c: Likewise. * sysdeps/ia64/fpu/libm_lgammaf.S: Likewise. * sysdeps/ia64/fpu/libm_lgammal.S: Likewise. * sysdeps/ia64/fpu/libm_lgamma.S: Likewise. * sysdeps/ia64/fpu/libm_scalblnf.S: Likewise. * sysdeps/ia64/fpu/libm_sincosf.S: Likewise. * sysdeps/ia64/fpu/libm_sincos_large.S: Likewise. * sysdeps/ia64/fpu/libm_sincosl.S: Likewise. * sysdeps/ia64/fpu/libm_sincos.S: Likewise. * sysdeps/ia64/fpu/libm_support.h: Likewise. * sysdeps/ia64/fpu/s_asinhl.S: Likewise. * sysdeps/ia64/fpu/s_asinh.S: Likewise. * sysdeps/ia64/fpu/s_atanf.S: Likewise. * sysdeps/ia64/fpu/s_atanl.S: Likewise. * sysdeps/ia64/fpu/s_cbrtf.S: Likewise. * sysdeps/ia64/fpu/s_cbrtl.S: Likewise. * sysdeps/ia64/fpu/s_cosf.S: Likewise. * sysdeps/ia64/fpu/s_cosl.S: Likewise. * sysdeps/ia64/fpu/s_cos.S: Likewise. * sysdeps/ia64/fpu/s_erfcf.S: Likewise. * sysdeps/ia64/fpu/s_erfcl.S: Likewise. * sysdeps/ia64/fpu/s_erfc.S: Likewise. * sysdeps/ia64/fpu/s_erfl.S: Likewise. * sysdeps/ia64/fpu/s_erf.S: Likewise. * sysdeps/ia64/fpu/s_expm1f.S: Likewise. * sysdeps/ia64/fpu/s_expm1l.S: Likewise. * sysdeps/ia64/fpu/s_expm1.S: Likewise. * sysdeps/ia64/fpu/s_fdimf.S: Likewise. * sysdeps/ia64/fpu/s_fdiml.S: Likewise. * sysdeps/ia64/fpu/s_fdim.S: Likewise. * sysdeps/ia64/fpu/s_frexp.c: Likewise. * sysdeps/ia64/fpu/s_frexpf.c: Likewise. * sysdeps/ia64/fpu/s_frexpl.c: Likewise. * sysdeps/ia64/fpu/s_ilogbf.S: Likewise. * sysdeps/ia64/fpu/s_ilogbl.S: Likewise. * sysdeps/ia64/fpu/s_ilogb.S: Likewise. * sysdeps/ia64/fpu/s_ldexp.c: Likewise. * sysdeps/ia64/fpu/s_ldexpf.c: Likewise. * sysdeps/ia64/fpu/s_ldexpl.c: Likewise. * sysdeps/ia64/fpu/s_libm_ldexpf.S: Likewise. * sysdeps/ia64/fpu/s_libm_ldexpl.S: Likewise. * sysdeps/ia64/fpu/s_libm_ldexp.S: Likewise. * sysdeps/ia64/fpu/s_libm_scalbnf.S: Likewise. * sysdeps/ia64/fpu/s_libm_scalbnl.S: Likewise. * sysdeps/ia64/fpu/s_libm_scalbn.S: Likewise. * sysdeps/ia64/fpu/s_log1pf.S: Likewise. * sysdeps/ia64/fpu/s_log1pl.S: Likewise. * sysdeps/ia64/fpu/s_log1p.S: Likewise. * sysdeps/ia64/fpu/s_logbf.S: Likewise. * sysdeps/ia64/fpu/s_logbl.S: Likewise. * sysdeps/ia64/fpu/s_logb.S: Likewise. * sysdeps/ia64/fpu/s_nearbyintf.S: Likewise. * sysdeps/ia64/fpu/s_nearbyintl.S: Likewise. * sysdeps/ia64/fpu/s_nearbyint.S: Likewise. * sysdeps/ia64/fpu/s_nextafterf.S: Likewise. * sysdeps/ia64/fpu/s_nextafterl.S: Likewise. * sysdeps/ia64/fpu/s_nextafter.S: Likewise. * sysdeps/ia64/fpu/s_nexttowardf.S: Likewise. * sysdeps/ia64/fpu/s_nexttowardl.S: Likewise. * sysdeps/ia64/fpu/s_nexttoward.S: Likewise. * sysdeps/ia64/fpu/s_roundf.S: Likewise. * sysdeps/ia64/fpu/s_roundl.S: Likewise. * sysdeps/ia64/fpu/s_round.S: Likewise. * sysdeps/ia64/fpu/s_scalblnf.c: Likewise. * sysdeps/ia64/fpu/s_scalbn.c: Likewise. * sysdeps/ia64/fpu/s_scalbnf.c: Likewise. * sysdeps/ia64/fpu/s_scalbnl.c: Likewise. * sysdeps/ia64/fpu/s_tanf.S: Likewise. * sysdeps/ia64/fpu/s_tanhl.S: Likewise. * sysdeps/ia64/fpu/s_tanh.S: Likewise. * sysdeps/ia64/fpu/s_tanl.S: Likewise. * sysdeps/ia64/fpu/s_tan.S: Likewise. * sysdeps/ia64/fpu/w_lgamma.c: Likewise. * sysdeps/ia64/fpu/w_lgammaf.c: Likewise. * sysdeps/ia64/fpu/w_lgammal.c: Likewise. * sysdeps/ia64/fpu/w_tgammaf.S: Likewise. * sysdeps/ia64/fpu/w_tgammal.S: Likewise. * sysdeps/ia64/fpu/w_tgamma.S: Likewise. [BZ #592] * sysdeps/ia64/fpu/libm_cpu_defs.h: New file. * sysdeps/ia64/fpu/libm_error_codes.h: New file. [BZ #592] * sysdeps/ia64/fpu/gen_import_file_list: Updated for Intel libm 2005-03-21. * sysdeps/ia64/fpu/import_file.awk: Likewise. * sysdeps/ia64/fpu/import_intel_libm: Likewise. * sysdeps/ia64/fpu/Makefile: Likewise. 2005-03-29 Jakub Jelinek * posix/fnmatch.c (fnmatch): For short patterns or strings attempt to avoid calling mbsrtowcs twice. 2005-03-29 Roland McGrath * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion): New function, inline broken out of ... (DL_SYSDEP_OSCHECK): ... here. Use that. Do the discovery and set GLRO(dl_osversion) if successful, if __LINUX_KERNEL_VERSION <= 0. * elf/dl-load.c: Don't include dl-osinfo.h here. 2005-03-29 Alfred M. Szmidt * manual/install.texi (Tools for Compilation): GNU binutils 2.15 is now needed. 2005-03-19 Bruno Haible * intl/dcigettext.c (struct known_translation_t): Change type of domainname field to 'const char *'. (DCIGETTEXT): Remove const-cast. 2005-03-29 Thorsten Kukuk [BZ #661] * grp/initgroups.c (internal_getgrouplist): Check if we have enough space before adding the primary group to the list. * posix/tst-execle1.c (do_test): Fix execle arguments. * posix/tst-execle2.c (do_test): Likewise. 2005-03-28 Roland McGrath * locale/langinfo.h (_NL_LOCALE_NAME): New macro. [__USE_GNU] (NL_LOCALE_NAME): New macro. * locale/nl_langinfo.c: Grok special item value for _NL_LOCALE_NAME, return locale name string for the category. 2005-03-25 Jakub Jelinek * sysdeps/generic/wcstoul_l.c: Include "wcstol_l.c" rather than . 2005-03-28 Daniel Jacobowitz * sysdeps/mips/atomicity.h: Remove unused file. * sysdeps/mips/dl-machine.h (elf_machine_rel): Add TLS relocations. * sysdeps/mips/dl-tls.h: New file. * sysdeps/mips/libc-tls.c: New file. * sysdeps/mips/tls-macros.h: New file. * sysdeps/mips/bits/atomic.h: New file. * sysdeps/mips/bits/setjmp.h: Protect against multiple inclusion. * sysdeps/mips/elf/configure.in: New file. * sysdeps/mips/elf/configure: Generated. * sysdeps/mips/sys/asm.h: New file. * sysdeps/unix/sysv/linux/mips/vfork.S: New file. * sysdeps/unix/sysv/linux/mips/clone.S: Add NPTL and five-argument clone support. * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h (INTERNAL_SYSCALL_NCS): New. (INTERNAL_SYSCALL): Update for non-constant support. (internal_syscall0): Likewise. (internal_syscall1): Likewise. (internal_syscall2): Likewise. (internal_syscall3): Likewise. (internal_syscall4): Likewise. (internal_syscall5): Likewise. (internal_syscall6): Likewise. (internal_syscall7): Likewise. * sysdeps/unix/sysv/linux/mips/bits/siginfo.h (SIGEV_THREAD): Update to match the kernel. (SIGEV_CALLBACK): Likewise. (SIGEV_THREAD_ID): Likewise. 2005-03-28 Daniel Jacobowitz [BZ #783] * elf/tst-auditmod1.c: Add MIPS support. * sysdeps/generic/ldsodefs.h (La_mips_32_regs): New. (La_mips_32_retval): New. (La_mips_64_regs): New. (La_mips_64_retval): New. (struct audit_ifaces): Add MIPS entries. * sysdeps/mips/dl-machine.h: Check RESOLVE_MAP instead of RESOLVE. (elf_machine_runtime_link_map, ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS, ELF_MACHINE_RUNTIME_TRAMPOLINE): Move to dl-trampoline.c. (RTLD_START): Align the stack before calling _dl_init_internal. Use .ent for _dl_start_user. (ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): Define. (elf_machine_rel, elf_machine_rel_relative, elf_machine_lazy_rel) (elf_machine_runtime_setup): Use "auto inline". (elf_machine_rela, elf_machine_rela_relative): Provide empty versions. (elf_machine_got_rel): Likewise. Use RESOLVE_MAP. * sysdeps/mips/dl-trampoline.c: New file. * sysdeps/mips/bits/link.h: New file. * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h (internal_syscall5): Use register operands instead of non-lvalue memory operands. (internal_syscall6): Likewise. (internal_syscall7): Likewise. 2005-03-27 Andreas Jaeger * debug/warning-nop.c (__builtin___memcpy_chk): Define away to avoid warnings with older compiler. (__builtin___memcpy_chk): Likewise. (__builtin___memmove_chk: Likewise. (__builtin___mempcpy_chk): Likewise. (__builtin___memset_chk): Likewise. (__builtin___stpcpy_chk): Likewise. (__builtin___strcat_chk): Likewise. (__builtin___strcpy_chk): Likewise. (__builtin___strncat_chk): Likewise. (__builtin___strncpy_chk): Likewise. (__builtin_object_size): Likewise. 2005-03-27 Daniel Jacobowitz * elf/tls-macros.h: Correct typo. 2005-03-23 Jakub Jelinek [BZ #822] * nis/ypclnt.c (yp_2_yperr): Revert 2004-11-30 patch. (ypprot_err): Use yp_2_yperr table also for YP_NODOM .. YP_NOMORE. 2005-03-22 Roland McGrath * locale/setlocale.c: Comment typo. * scripts/versions.awk: No errors for GLIBC_PRIVATE. * Versions.def (libdl, librt): Add GLIBC_2.3.4 version. * scripts/versions.awk: Print all errors and die at the end. Use library name in versions array keys. 2005-03-22 Daniel Jacobowitz * elf/elf.h (PT_ARM_EXIDX): New macro. 2005-03-21 Thorsten Kukuk * sunrpc/xdr_stdio.c (xdrstdio_getlong, xdrstdio_putlong): Convert correctly between long/int on 64bit big-endian. 2005-03-21 David Mosberger * sysdeps/ia64/_mcount.S: Newer kernels don't like register-frames with more than 8 output registers. Fix this by passing original ar.pfs to _mcount_ret_helper via r3. 2005-03-15 Jakub Jelinek [BZ #786] * sysdeps/generic/dl-tls.c (_dl_next_tls_modid): Handle GL(dl_tls_static_nelem) == GL(dl_tls_max_dtv_idx). * elf/Makefile: Add rules to build and run tst-tls15. * elf/tst-tls15.c: New test. * elf/tst-tlsmod15a.c: New file. * elf/tst-tlsmod15b.c: New file. 2005-03-20 Ulrich Drepper * elf/rtld.c (dl_main): Always call init_tls if we have audit modules. 2005-03-20 Alfred M. Szmidt * elf/dl-open.c (dl_open_worker): Fix typo. 2005-03-20 Ulrich Drepper * malloc/malloc.c (public_cALLOc): We cannot skip the memory clearing if perturb_byte != 0. 2005-03-20 Jakub Jelinek * posix/bits/unistd.h (pread) [__USE_FILE_OFFSET64]: Use __off64_t instead of __off_t for last argument. * debug/Makefile (tests): Add tst-lfschk{1,2,3}. * debug/tst-lfschk1.c: New test. * debug/tst-lfschk2.c: New test. * debug/tst-lfschk3.c: New test. 2005-02-09 Jakub Jelinek * sysdeps/unix/sysv/linux/bits/termios.h (CMSPAR): Define. * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Add __USE_MISC and __USE_XOPEN guards to match linux/bits/termios.h. * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise. (CMSPAR): Define. * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise. 2005-02-10 H.J. Lu * sysdeps/ia64/elf/initfini.c: Add local _init and _fini labels. 2005-02-27 Denis Barbier [BZ #38] * locale/iso-4217.def: Add CSD currency. 2005-03-19 Ulrich Drepper * inet/test-ifaddrs.c: Use test-skeleton. * inet/test_ifindex.c: Likewise. [BZ #821] * elf/dl-lookup.c (add_dependency): Always search l_initfini if the list exists. [BZ #821] * elf/Makefile: Add rules to build and run order2. * elf/order2.c: New file. * elf/order2mod1.c: New file. * elf/order2mod2.c: New file. * elf/order2mod3.c: New file. * elf/order2mod4.c: New file. 2005-03-19 Jakub Jelinek [BZ #821] * elf/dl-open.c (dl_open_worker): Print exact l_direct_opencount value, it has been incremented before. 2005-03-18 Ulrich Drepper [BZ #821] * elf/dl-fini.c (_dl_fini): Split sorting of the maps in separate function _dl_sort_fini. (_dl_sort_fini): New function. * sysdeps/generic/ldsodefs.h: Declare _dl_sort_fini. * elf/dl-close.c (_dl_close): Call _dl_sort_fini before running destructors to call them in the right order. 2005-02-07 Steven Munroe * sysdeps/powerpc/bits/link.h (La_ppc64_regs): Add lr_vrsave. (La_ppc64_retval): Correct size of lrc_fp. * sysdeps/powerpc/powerpc64/dl-trampoline.S (_dl_profile_resolve): Fix up ABI problems and complete function. 2005-03-10 Jakub Jelinek * math/test-misc.c (main): Add some more tests. 2005-03-17 Jakub Jelinek * posix/regcomp.c (re_compile_fastmap_iter): Fix check for failed __wcrtomb. Check return values of other __wcrtomb calls. * posix/regex_internal.c (build_wcs_buffer, re_string_skip_chars): Change mbclen type to size_t. (build_wcs_upper_buffer): Change mbclen and mbcdlen type to size_t. Handle mb chars whose upper case doesn't have multibyte representation in locale's charset. 2005-03-15 Jakub Jelinek * malloc/malloc.c (_int_icalloc, _int_icomalloc, iALLOc, public_iCALLOc, public_iCALLOc, public_iCOMALLOc): Protect with #ifndef _LIBC. [BZ #779] * malloc/malloc.c (public_mTRIm): Initialize malloc if not yet initialized. 2005-03-10 Jakub Jelinek * misc/sys/cdefs.h (__always_inline): Define. * posix/bits/unistd.h (read, pread, pread64, readlink, getcwd, getwd): Use __always_inline instead of __inline. * socket/bits/socket2.h (recv, recvfrom): Likewise. * libio/bits/stdio2.h (gets, fgets, fgets_unlocked): Likewise. * string/bits/string3.h (__memcpy_ichk, __memmove_ichk, __mempcpy_ichk, __memset_ichk, __strcpy_ichk, __stpcpy_ichk, __strncpy_ichk, __strcat_ichk, __strncat_ichk): Use __always_inline instead of __inline__ __attribute__ ((__always_inline__)). 2005-03-09 Jakub Jelinek * debug/tst-chk1.c: Include sys/socket.h and sys/un.h. (do_test): Add new tests for recv, recvfrom, getcwd, getwd and readlink. Add some more tests for read, pread, pread64, fgets and fgets_unlocked. * posix/bits/unistd.h (read, pread, pread64, readlink, getcwd, getwd): Change macros into extern inline functions. (__read_alias, __pread_alias, __pread64_alias, __readlink_alias, __getcwd_alias, __getwd_alias): New prototypes. * socket/bits/socket2.h (recv, recvfrom): Change macros into extern inline functions. (__recv_alias, __recvfrom_alias): New prototypes. * libio/bits/stdio2.h (gets, fgets, fgets_unlocked): Change macros into extern inline functions. (__gets_alias, __fgets_alias, __fgets_unlocked_alias): New prototypes. * debug/pread_chk.c (__pread_chk): Fix order of arguments passed to __pread. * debug/pread64_chk.c (__pread64_chk): Fix order of arguments passed to __pread64. 2005-03-18 Daniel Jacobowitz * configure.in: Use %function instead of @function. 2005-03-18 Ulrich Drepper [BZ #821] * include/link.h (struct link_map): Remove l_opencount. Add l_removed. Change type of l_idx to int. * elf/dl-close.c: Basically rewrite. Do not use l_opencount to determine whether a DSO has to be unloaded. Instead compute this in this function. * elf/dl-deps.c: No need to manipulate l_opencount anymore. * elf/dl-lookup.c: Likewise. * elf/rtld.c: Likewise * elf/dl-open.c: Likewise. Use l_init_called to determine whether object was just loaded. * elf/dl-fini.c: Bump l_direct_opencount instead of l_opencount. * elf/dl-load.c (_dl_map_object_from_fd): Do not recognize DSO which is about to be unloaded as a match. (_dl_map_object): Likewise. * elf/do-lookup.h (do_lookup_x): Do not look into DSO which is about to be unloaded. * elf/circleload1.c: Don't use l_opencount anymore. * elf/neededtest.c: Likewise. * elf/neededtest2.c: Likewise. * elf/neededtest3.c: Likewise. * elf/neededtest4.c: Likewise. * elf/unload.c: Likewise. * elf/unload2.c: Likewise. * elf/loadtest.c: Likewise. [BZ #821] * elf/rtld.c: Preloading errors are now never fatal. 2005-03-08 Jakub Jelinek [BZ #821] * elf/Makefile: Add rules to build and run unload5 test. * elf/unload5.c: New file. [BZ #821] * elf/Makefile: Add rules to build and run unload4 test. * elf/unload4.c: New file. * elf/unload4mod1.c: New file. * elf/unload4mod2.c: New file. * elf/unload4mod3.c: New file. * elf/unload4mod4.c: New file. 2005-03-17 Roland McGrath * nscd/aicache.c (addhstaiX): Tweak type to avoid warning. 2005-03-16 Richard Henderson * include/libc-symbols.h (__hidden_proto): Remove bogus declaration of internal. (__hidden_def1, __hidden_dot_def1): Remove. (__hidden_def2, __hidden_def3): Remove. (__hidden_ver1): New. (hidden_ver, hidden_def, hidden_weak): Use it. (hidden_data_ver, hidden_data_ver, hidden_data_weak): Use non-data version of the macro. * include/wchar.h (__wcscoll): Remove. * wcsmbs/wcscoll.c: Define wcscoll directly instead of via __wcscoll. * string/strcoll.c: Don't issue libc_hidden_def STRCOLL redefined. 2005-03-16 Daniel Jacobowitz * elf/elf.h: Define MIPS TLS relocations. 2005-03-16 Ulrich Drepper * elf/circleload1.c (main): Pretty printing. 2005-03-15 Jakub Jelinek * sysdeps/generic/wordexp.c (exec_comm_child): Add inline keyword. Patch by Dan Kegel . * elf/dynamic-link.h (elf_machine_rel, elf_machine_rel_relative, elf_machine_rela, elf_machine_rela_relative, elf_machine_lazy_rel): Add inline keyword. * sysdeps/alpha/dl-machine.h (elf_machine_rela, elf_machine_rela_relative, elf_machine_lazy_rel): Add always_inline attribute. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative, elf_machine_lazy_rel): Likewise. Change static inline into auto inline. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative, elf_machine_lazy_rel): Likewise. * sysdeps/generic/dl-machine.h (elf_machine_rel, elf_machine_rela): Likewise. * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rel_relative, elf_machine_rela, elf_machine_rela_relative, elf_machine_lazy_rel): Likewise. 2005-03-15 Jakub Jelinek [BZ #789] * sysdeps/i386/i686/hp-timing.h (HP_TIMING_ACCUM): Fix asm constraints. Remove memory clobber. * sysdeps/x86_64/hp-timing.h (HP_TIMING_ACCUM): Make the addition thread-safe. Subtract GLRO(dl_hp_timing_overhead) from Diff. 2005-03-14 Jakub Jelinek * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Don't include asm/types.h. 2005-03-10 GOTO Masanori * sysdeps/unix/sysv/linux/sh/bits/mman.h: Define MAP_POPULATE and MAP_NONBLOCK. * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise. Correct MAP_GROWSDOWN value. 2005-03-13 Roland McGrath * elf/tls-macros.h: #include_next to get a sysdeps version if there is one. Only #error if macros are then undefined. * sysdeps/generic/tls-macros.h: New file. 2005-03-10 GOTO Masanori * sysdeps/hppa/configure.in: Remove old Makefile leftovers. * sysdeps/hppa/configure: Regenerated. 2005-03-08 Roland McGrath * sysdeps/gnu/errlist-compat.awk: Use NERR in all array decls, so array types match exactly in C alias decls. 2005-03-07 Ulrich Drepper * malloc/arena.c (ptmalloc_init): Recognize MALLOC_PERTURB_ and call mallopt appropriately. * malloc/malloc.h: Define M_PERTURB. * malloc/malloc.c (perturb_byte): New variable. (alloc_perturb, free_perturb): New macros. (_int_malloc): Before returning, overwrite the memory if this is requested. (_int_free): Overwrite freed memory if requested. (mALLOPt): Handle M_PERTURB. * test-skeleton.c: Add call to mallopt with M_PERTURB command. * elf/dl-close.c (_dl_close): Decrement l_opencount before printing debug message. * elf/dl-open.c (dl_open_worker): Always print the new opencount in debug messages. 2005-03-06 Ulrich Drepper * elf/dl-close.c (_dl_close): Unify debug message format. * elf/dl-close.c (_dl_close): Print debug message just before destroying a link map. * elf/do-lookup.h (do_lookup_x): Add namespace info to debug output. * elf/dl-version.c (match_symbol): Likewise. * posix/bits/unistd.h (pread): Fix typo in __USE_FILE_OFFSET64 code. * debug/recv_chk.c (__recv_chk): Always fail if request could overflow the buffer. * debug/recvfrom_chk.c (__recvfrom_chk): Likewise. * socket/bits/socket2.h (recv): Avoid calls to the _chk variant if we know the call succeeds. (recvfrom): Likewise. 2005-03-05 Ulrich Drepper * posix/regexec.c (check_node_accept_bytes): Correct cast to avoid warning. * posix/regex_internal.c (re_string_reconstruct): Add cast to avoid warning. (build_wcs_upper_buffer): Change type of bug to plain char. * locale/weightwc.h (findidx): Add casts to avoid warnings. * time/mktime.c (ranged_convert): Initialize tm to make the compiler happy. * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Add casts to avoid warnings. * wcsmbs/wcsnrtombs.c (__wcsnrtombs): Add casts to avoid warnings. * wcsmbs/mbsnrtowcs.c: Add casts to avoid warnings. * wcsmbs/wcsrtombs.c (__wcsrtombs): Add casts to avoid warnings. * wcsmbs/wcrtomb.c (__wcrtomb): Add casts to avoid warnings. * wcsmbs/mbrtowc.c (__mbrtowc): Use unsigned char for outbuf. * wcsmbs/wctob.c (wctob): Make buf array of unsigned char. * sysdeps/generic/strchrnul.c: Add cast to avoid warning. * libio/iofwide.c: Add casts to avoid warnings. * stdio-common/printf-prs.c (parse_printf_format): Introduce new variable f to avoid warnings. * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext): Fix a few casts to avoid warnings. * iconv/gconv_simple.c (internal_utf8_loop): Make start unsigned to avoid warning. * posix/regex_internal.c [_LIBC] (build_wcs_buffer): Avoid using dynamically sized array. (build_wcs_upper_buffer): Likewise. 2005-03-05 Jakub Jelinek * include/bits/unistd.h: New file. * include/bits/socket2.h: New file. 2005-03-05 Ulrich Drepper * sunrpc/key_call.c: Remove doors support. * sunrpc/Makefile: Remove CPPFLAGS-key_call.c definition. * configure.in: Remove test for doors support which never existed. * config.make.in: Remove have_doors entry. * configure.in: Make sure at least gcc 3.4 is used. Undo last change. * config.make.in: Undo last change. * sysdeps/i386/Makefile (CFLAGS-initfini.s): Unconditionally use -mtune. 2005-03-05 Roland McGrath * sysdeps/generic/ldsodefs.h (_dl_out_of_memory_internal): Remove decl. (_dl_out_of_memory): Use rtld_hidden_proto. * elf/dl-error.c (_dl_out_of_memory): Use rtld_hidden_data_def. (_dl_signal_error): Don't use INTUSE on _dl_out_of_memory. * elf/dl-open.c (_dl_open): Likewise. * elf/dl-deps.c (_dl_map_object_deps): Likewise. * sunrpc/des_impl.c (des_set_key): Make first argument unsigned char *. * elf/dl-addr.c (_dl_addr): Add a cast. [BZ #821] * elf/unload3mod4.c: Declare foo. * elf/testobj2.c: Include . * sysdeps/gnu/errlist.awk: Emit NERR macro for _sys_nerr_internal value constant, and use it in the defn. * sysdeps/gnu/errlist-compat.awk: Use NERR in array decl. Use actual size for compat array decls. * config.make.in (cc-mtune): New substituted variable. * configure.in (libc_cv_cc_mtune): New test for -mtune= switch, done only if libc_mtune_example is defined. * sysdeps/i386/configure.in (libc_mtune_example): Set it. * sysdeps/i386/Makefile (CFLAGS-initfini.s): Use $(cc-mtune). 2005-03-05 Jakub Jelinek * sysdeps/i386/dl-machine.h (ELF_MACHINE_NO_RELA): Define unconditionally to (defined RTLD_BOOTSTRAP). * sysdeps/arm/dl-machine.h (ELF_MACHINE_NO_RELA): Likewise. 2005-03-05 Jakub Jelinek * Makerules ($(inst_libdir)/libc.so): Use $(slibdir) instead of $(inst_slibdir) in AS_NEEDED directive. 2005-03-03 Jakub Jelinek * posix/bits/unistd.h (pread, pread64): Don't swap function arguments. 2005-03-01 H.J. Lu [BZ #776] * iconv/iconvconfig.c: Fix comment for the output file. (write_output): Clear padding in header. 2005-03-03 Ulrich Drepper [BZ #821] * elf/dl-close.c (_dl_close): Don't try to set up new searchpath if the loader is closed. Fixes unload3. * elf/tst-global1.c: New file. * elf/Makefile (tests): Add tst-global1. * elf/testobj2.c (p): New function. 2005-03-03 Jakub Jelinek [BZ #821] * elf/Makefile: Add rules to build and run unload3 test. * elf/unload3.c: New test. * elf/unload3mod1.c: New file. * elf/unload3mod2.c: New file. * elf/unload3mod3.c: New file. * elf/unload3mod4.c: New file. 2005-02-21 Alan Modra * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h (elf_vrreg_t): Don't use __uint128_t. 2005-03-01 Jakub Jelinek * posix/bits/unistd.h (read, pread, pread64): Use __bos0 instead of __bos. * socket/bits/socket2.h (recv, recvfrom): Likewise. 2005-03-01 Roland McGrath [BZ #721] * sysdeps/arm/dl-machine.h (ELF_MACHINE_NO_RELA): Define this outside of [RESOLVE_MAP]. 2005-03-01 Alfred M. Szmidt [BZ #777] * elf/dl-load.c (__stack_prot) [!PROT_GROWSUP && !PROT_GROWSDOWN]: Add missing initializer. [BZ #777] * malloc/arena.c: #include outside of [SHARED && USE_TLS && !USE___THREAD]. 2005-02-26 GOTO Masanori * csu/Makefile: Use printf instead of echo for some shells. 2005-02-28 Roland McGrath * debug/warning-nop.c (__nop): Rename to nop, make it static. (__warndecl): Use alias attribute directly, instead of strong_alias macro. Add attribute_hidden. 2005-02-28 Ulrich Drepper * posix/bits/unistd.h: Avoid calling __*_chk variants if we can determine the call will never trigger a failure. * debug/read_chk.c (__read_chk): Always fail if the buffer is too small. * debug/readlink_chk.c (__readlink_chk): Likewise. * debug/pread64_chk.c (__pread64_chk): Likewise. * debug/pread_chk.c (__pread_chk): Likewise. * sysdeps/i386/i686/memset_chk.S: Remove alias and warning. * sysdeps/x86_64/memset_chk.S: Likewise. 2005-02-24 Roland McGrath * debug/Versions (libc: GLIBC_2.4): Remove __memset_zero_constant_len_parameter. * sysdeps/generic/memset_chk.c: Remove alias and warning. * misc/sys/cdefs.h (__warndecl): New macro. * debug/warning-nop.c: New file. * string/bits/string3.h (memset): Call __warn_memset_zero_len with no arguments, instead of calling __memset_zero_constant_len_parameter. Use __warndecl for __warn_memset_zero_len. * debug/Makefile (routines): Add $(static-only-routines). (static-only-routines): New variable. 2005-02-27 Ulrich Drepper * po/tr.po: Update from translation team. 2005-02-26 Ulrich Drepper * elf/dl-addr.c: Cleanups. Move declaration next to first use. * dlfcn/dlerror.c (check_free): New function. Extract common code from fini and free_key_mem. Check whether this is libdl in the base namespace. 2005-02-25 Ulrich Drepper * elf/dl-lookup.c (_dl_debug_bindings): Add namespace information to debug output. 2004-11-11 Richard Sandiford [BZ #758] * sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h): Only preprocess if it defines ABI-prefixed syscall names like __NR_N32_open. Just include otherwise. * sysdeps/unix/sysv/linux/mips/configure: Regenerate. * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: Delete * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h (SYS_ify): Use the standard __NR prefix. * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h (SYS_ify): Likewise. * sysdeps/unix/sysv/linux/mips/Makefile (syscall-%.h): Rework so that the output file is compatible with both pre-2.6 and 2.6 kernel headers. Extract separate syscall lists for each ABI. 2005-02-23 Ulrich Drepper * Makerules (libc.so): Add AS_NEEDED line for dynamic linker. [BZ #719] * elf/Makefile: Run tst-tls9-static again. 2005-02-22 Ulrich Drepper [BZ #719] * sysdeps/generic/libc-tls.c (static_dtv): Size the same as the slotinfo array. (__libc_setup_tls): Initialize length of DTV based on array length. * elf/dl-load.c: Revert last change. * sysdeps/generic/dl-tls.c: Revert last change. * posix/Makefile (tests): Add tst-execvp1, tst-execvp2, tst-execlp1, tst-execlp2, tst-execv1, tst-execv2, tst-execl1, tst-execl2, tst-execve1, tst-execve2, tst-execle1, and tst-execle2. * posix/tst-execl1.c: New file. * posix/tst-execl2.c: New file. * posix/tst-execle1.c: New file. * posix/tst-execle2.c: New file. * posix/tst-execlp1.c: New file. * posix/tst-execlp2.c: New file. * posix/tst-execv1.c: New file. * posix/tst-execv2.c: New file. * posix/tst-execve1.c: New file. * posix/tst-execve2.c: New file. * posix/tst-execvp1.c: New file. * posix/tst-execvp2.c: New file. 2005-02-22 Roland McGrath * include/signal.h: Revert last change. (__sigemptyset): Use __builtin_memset instead of memset. 2005-02-22 Ulrich Drepper * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_message): Use non-cancelable I/O functions. 2005-02-22 Jakub Jelinek [BZ #769] * nscd/nscd-client.h: Include sys/uio.h. (__readall, __readvall, writeall): New prototypes. * nscd/connections.c (writeall): New function. (handle_request): Use it. * nscd/aicache.c (addhstaiX): Likewise. * nscd/initgrcache.c (addinitgroupsX): Likewise. * nscd/hstcache.c (cache_addhst): Likewise. * nscd/grpcache.c (cache_addgr): Likewise. * nscd/pwdcache.c (cache_addpw): Likewise. * nscd/nscd_helper.c (__readall, __readvall): New functions. * nscd/nscd_getai.c (__nscd_getai): Use them. * nscd/nscd_getpw_r.c (__nscd_getpw_r): Likewise. * nscd/nscd_getgr_r.c (__nscd_getgr_r): Likewise. * nscd/nscd_gethst_r.c (__nscd_gethst_r): Likewise. * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise. 2005-02-22 Roland McGrath * include/sys/socket.h: Declare __recv. * sysdeps/generic/recv.c (recv): Rename to __recv, and add weak alias. * sysdeps/mach/hurd/recv.c: Likewise. * sysdeps/unix/sysv/linux/libc_fatal.c: Include for __backtrace_* decls. * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INTERNAL_SYSCALL_ERROR_P): Evalute VAL. Parenthesize ERR. * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise. * include/signal.h: Include for memset decl. 2005-02-22 Andreas Schwab * posix/execvp.c (execvp): Fix invalid free. 2005-02-22 Jakub Jelinek * malloc/Makefile (CFLAGS-mcheck-init.c): Add. * sunrpc/Makefile: Add $(PIC-ccflag) to CFLAGS-x* for librpcsvc.a objects. 2005-02-21 Ulrich Drepper * iconvdata/ibm930.h: Correct Yen mapping. * iconvdata/ibm939.h: Likewise. * iconvdata/testdata/IBM930..UTF8: Adjust test data. * iconvdata/testdata/IBM939..UTF8: Likewise. Patch by Jiro Sekiba . * iconvdata/Makefile (modules): Add IBM1025, IBM1122, IBM1137, IBM1153, IBM1154, IBM1155, IBM1156, IBM1157, and IBM1158. (distribute): Add ibm1025.c, ibm1025.h, ibm1122.c, ibm1122.h, ibm1137.c, ibm1137.h, ibm1153.c, ibm1153.h, ibm1154.c, ibm1154.h, ibm1155.c, ibm1155.h, ibm1156.c, ibm1156.h, ibm1157.c, ibm1157.h, ibm1158.c, and ibm1158.h. * iconvdata/TESTS: Add IBM1025, IBM1122, IBM1137, IBM1153, IBM1154, IBM1155, IBM1156, IBM1157, and IBM1158. * iconvdata/gconv-modules: Likewise. * iconvdata/ibm1025.c: New file. * iconvdata/ibm1025.h: New file. * iconvdata/ibm1122.c: New file. * iconvdata/ibm1122.h: New file. * iconvdata/ibm1137.c: New file. * iconvdata/ibm1137.h: New file. * iconvdata/ibm1153.c: New file. * iconvdata/ibm1153.h: New file. * iconvdata/ibm1154.c: New file. * iconvdata/ibm1154.h: New file. * iconvdata/ibm1155.c: New file. * iconvdata/ibm1155.h: New file. * iconvdata/ibm1156.c: New file. * iconvdata/ibm1156.h: New file. * iconvdata/ibm1157.c: New file. * iconvdata/ibm1157.h: New file. * iconvdata/ibm1158.c: New file. * iconvdata/ibm1158.h: New file. * iconvdata/testdata/IBM1025: New file. * iconvdata/testdata/IBM1025..UTF8: New file. * iconvdata/testdata/IBM1122: New file. * iconvdata/testdata/IBM1122..UTF8: New file. * iconvdata/testdata/IBM1137: New file. * iconvdata/testdata/IBM1137..UTF8: New file. * iconvdata/testdata/IBM1153: New file. * iconvdata/testdata/IBM1153..UTF8: New file. * iconvdata/testdata/IBM1154: New file. * iconvdata/testdata/IBM1154..UTF8: New file. * iconvdata/testdata/IBM1155: New file. * iconvdata/testdata/IBM1155..UTF8: New file. * iconvdata/testdata/IBM1156: New file. * iconvdata/testdata/IBM1156..UTF8: New file. * iconvdata/testdata/IBM1157: New file. * iconvdata/testdata/IBM1157..UTF8: New file. * iconvdata/testdata/IBM1158: New file. * iconvdata/testdata/IBM1158..UTF8: New file. Contributed by Jiro Sekiba . 2005-02-10 Paolo Bonzini * posix/regcomp.c (lower_subexp): Do not optimize empty subexpressions even with REG_NOSUB. * posix/rxspencer/tests: Add a previously failing testcase. 2005-02-21 Alan Modra [BZ #719] * elf/dl-reloc.c (_dl_nothread_init_static_tls): Assert that dtv array index is within bounds. 2005-02-21 Ulrich Drepper [BZ #719] * elf/dl-load.c: Do not allow PT_TLS in modules loaded in statically linked code. * sysdeps/generic/dl-tls.c [!SHARED]: Don't build _dl_next_tls_modid. * elf/Makefile: Remove rules to build and run tst-tls9-static. [BZ #719] * elf/dl-reloc.c (_dl_nothread_init_static_tls): Avoid using THREAD_DTV multiple times, this minimally reduces code size on some archs. 2005-02-21 Jakub Jelinek [BZ #768] * nscd/nscd_gethst_r.c (nscd_gethst_r): Set *h_errnop to NETDB_INTERNAL if buffer is too small. [BZ #768] * nscd/hstcache.c (INCR): Remove. (addhstbyX): Double buflen in each iteration rather than add INCR. * nscd/grpcache.c: Likewise. * nscd/pwdcache.c: Likewise. 2005-02-21 Ulrich Drepper * sysdeps/unix/sysv/linux/libc_fatal.c: Print backtrace and memory map if requested. * debug/chk_fail.c: Request backtrace and memory map dump. * Versions.def: Add GLIBC_2.4 for libc. * debug/fgets_chk.c: New file. * debug/fgets_u_chk.c: New file. * debug/getcwd_chk.c: New file. * debug/getwd_chk.c: New file. * debug/readlink_chk.c: New file. * debug/read_chk.c: New file. * debug/pread_chk.c: New file. * debug/pread64_chk.c: New file. * debug/recv_chk.c: New file. * debug/recvfrom_chk.c: New file. * debug/Versions: Add all new functions with version GLIBC_2.4. * debug/Makefile (routines): Add fgets_chk, fgets_u_chk, read_chk, pread_chk, pread64_chk, recv_chk, recvfrom_chk, readlink_chk, getwd_chk, and getcwd_chk. Plus appropriate CFLAGS definitions. * debug/tst-chk1.c: Add more tests. * libio/bits/stdio2.h: Add macros for fgets and fgets_unlocked. * include/stdio.h: Declare __fgets_chk and __fgets_unlocked_chk. * posix/unistd.h: Include for fortification. * posix/bits/unistd.h: New file. * posix/Makefile (headers): Add bits/unistd.h. * socket/sys/socket.h: Include for fortification. * socket/bits/socket2.h: New file. * socket/Makefile (headers): Add bits/socket2.h. * string/bits/string3.h: Extend memset macro to check for zero 3rd parameter and use __memset_zero_constant_len_parameter in that case. * sysdeps/generic/memset_chk.c: Add __memset_zero_constant_len_parameter alias and linker warning. * debug/Versions: Add __memset_zero_constant_len_parameter to libc with version GLIBC_2.4. * sysdeps/generic/bits/types.h: Don't unnecessarily use __extension__ in __STD_TYPE definition. 2005-02-21 Jakub Jelinek * malloc/malloc.c (malloc_printerr): If MALLOC_CHECK_={5,7}, print the error message rather than program name. 2005-02-21 Ulrich Drepper [BZ #767] * posix/unistd.h: symlink and readlink are unconditionally available in the 2001 spec. 2005-02-16 Roland McGrath * intl/dcigettext.c (_nl_find_msg): Add a cast. * nis/nis_clone_dir.c (nis_clone_directory): Use char * for ADDR. * nis/nis_clone_obj.c (nis_clone_object): Likewise. * nis/nis_clone_res.c (nis_clone_result): Likewise. * resolv/nss_dns/dns-network.c (getanswer_r): Use const unsigned char * for END_OF_MESSAGE and CP. * resolv/res_send.c (send_dg): Add else branch for case impossible unless `poll' is buggy. * crypt/crypt_util.c (__setkey_r): Add a cast. * locale/programs/linereader.c (get_toplvl_escape): Use size_t for NBYTES, and unsigned char * for BYTES. * locale/programs/charmap.c (charmap_new_char): Use size_t and unsighed char * for NBYTES, BYTES parameters. * sysdeps/generic/dl-hash.h (_dl_elf_hash): Take const char * argument and cast it. * sysdeps/i386/i686/dl-hash.h (_dl_elf_hash): Likewise. * sunrpc/create_xid.c (_create_xid): Don't use unsigned long for RES. * sunrpc/svcauth_des.c (_svcauth_des): Fix cast type. * sunrpc/auth_des.c (authdes_create): Don't use u_char for PKEY_DATA. (authdes_marshal): Don't use unsigned int for LEN. * sunrpc/xdr.c (xdr_hyper): Don't use unsigned long for T2. (xdr_u_hyper): Likewise. (xdr_u_short): Don't use u_long for L. * sunrpc/xdr_intXX_t.c (xdr_int64_t): Don't use uint32_t for T2. * inet/rexec.c (rexec_af): Use socklen_t. * sunrpc/key_call.c (getkeyserv_handle): Likewise. * sunrpc/rtime.c (rtime): Likewise. * resolv/res_send.c (send_vc, send_dg): Likewise. * nis/nis_callback.c (__nis_create_callback): Likewise. * sysdeps/generic/libc-start.c: Use unsigned int for nthreads ptr. * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix type of ADDR local. * libio/libio.h (_IO_BE): Add parenthesis around EXPR. * intl/dcigettext.c (INTVARDEF, INTUSE): Macros removed. (_nl_default_dirname): Use libc_hidden_data_def instead of INTVARDEF. (libc_freeres_fn, DCIGETTEXT): Don't use INTUSE. * intl/bindtextdom.c (INTUSE): Macro removed. (_nl_default_dirname): Use libc_hidden_proto. (set_binding_values): Don't use INTUSE. * include/libintl.h (_libc_intl_domainname_internal): Decl removed. (_libc_intl_domainname): Use libc_hidden_proto. * posix/regex_internal.h (gettext): Remove INTUSE on it. * locale/SYS_libc.c (_libc_intl_domainname): Use libc_hidden_data_def rather than INTDEF. * include/libintl.h (_): Don't use *_internal name. * ctype/ctype-extn.c (__ctype_tolower, __ctype_toupper): Use int32_t, not uint32_t. * locale/lc-ctype.c (_nl_postload_ctype): Likewise for assignments. * iconv/gconv_open.c (__gconv_open): Remove useless cast. [BZ #721] * sysdeps/i386/dl-machine.h (ELF_MACHINE_NO_RELA): Define this outside of [RESOLVE_MAP]. * sysdeps/sh/dl-machine.h (ELF_MACHINE_NO_REL): Likewise. * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rel, elf_machine_rel_relative): Removed. * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rel, elf_machine_rel_relative): Removed. 2005-02-03 Alexandre Oliva [BZ #721] * elf/dynamic-link.h: Don't declare nested auto functions that are not going to be defined. 2004-07-23 Jakub Jelinek [BZ #284] * include/features.h (_POSIX_SOURCE, _POSIX_C_SOURCE): Define if _XOPEN_SOURCE >= 500 even if __STRICT_ANSI__ is defined. 2005-02-16 Roland McGrath * sysdeps/generic/libc-start.c (LIBC_START_MAIN): Move UBP_EV defn inside [! SHARED] where it's used. 2005-02-15 Ulrich Drepper * sysdeps/generic/bits/byteswap.h: Make sure result of all the functions and macros is unsigned. 2005-02-11 Barry deFrese [BZ #722] * sysdeps/mach/hurd/setresgid.c: Use weak_alias. * sysdeps/mach/hurd/setresuid.c: Likewise. 2005-02-14 GOTO Masanori * misc/sys/syslog.h: Fix typo in comment. 2005-02-14 Roland McGrath [BZ #720] * sysdeps/unix/sysv/linux/sys/kd.h: Don't leave _LINUX_TYPES_H defined if it wasn't originally. 2005-02-14 GOTO Masanori * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove the duplicated getpeername entry. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise. 2005-02-11 Jakub Jelinek * scripts/soversions.awk: Only record first WORDSIZE{32,64} matching line. 2005-02-14 Alan Modra * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Define with auto inline, and attribute always_inline. (elf_machine_rela_relative, elf_machine_lazy_rel): Likewise. (elf_machine_rel, elf_machine_rel_relative): Likewise. * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise. (elf_machine_rela_relative, elf_machine_lazy_rel): Likewise. (elf_machine_rel, elf_machine_rel_relative): Likewise. (elf_machine_tprel): Likewise. 2005-02-14 Andreas Schwab * manual/filesys.texi (Random Access Directory): Fix type of file position value for telldir and seekdir. (Attribute Meanings): Fix typo. 2005-02-14 H.J. Lu * csu/elf-init.c (__libc_csu_fini): Enable if LIBC_NONSHARED isn't defined. * sysdeps/generic/libc-start.c (LIBC_START_MAIN): Call fini if SHARED isn't defined. * elf/Makefile (tests-static): Add tst-array1-static. ($(objpfx)tst-array1-static.out): New target. * elf/tst-array1-static.c: New file. 2005-02-11 Jakub Jelinek * debug/chk_fail.c (__chk_fail): Add a while (1) loop around __libc_message to kill GCC warning about noreturn function returning. * elf/rtld.c (dlmain): If LD_TRACE_PRELINKING, clear l_relocated flag before relocating ld.so again. * elf/rtld.c (_dl_start): Set bootstrap_map.l_relocated even for already prelinked ld.so. 2005-02-11 Roland McGrath [BZ #715] * Makefile (installed-stubs): New variable. Set to $(inst_includedir)/gnu/stubs.h if $(biarch) is no, or to $(inst_includedir)/gnu/stubs-$(biarch).h if otherwise. [$(biarch) != no] (install-others-nosubdir): Add $(installed-stubs). ($(inst_includedir)/gnu/stubs.h): Use $(installed-stubs) for this rule's target. ($(inst_includedir)/gnu/stubs.h): New target, install from ... * include/stubs-biarch.h: New file. * shlib-versions (i.86-.*-.*): Add WORDSIZE64 line mapping to x86_64. * Makeconfig ($(common-objpfx)soversions.mk): Depend on Makeconfig. Emit defn for variable `biarch'. * include/stub-tag.h: Update comment. * scripts/soversions.awk: Fix default version set handling. 2005-02-09 Jakub Jelinek * sysdeps/unix/sysv/linux/bits/termios.h (CMSPAR): Define. * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Add __USE_MISC and __USE_XOPEN guards to match linux/bits/termios.h. (CMSPAR): Define. * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Add __USE_MISC and __USE_XOPEN guards to match linux/bits/termios.h. (CMSPAR): Define. * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Add __USE_MISC and __USE_XOPEN guards to match linux/bits/termios.h. 2005-02-10 Roland McGrath [BZ #157] * include/libc-symbols.h (stub_warning): Emit a marker section called .gnu.glibc-stub.NAME. * Makerules ($(objpfx)stubs): Depend on object files, not dep files. Use objdump to collect those marker section names. ($(common-objpfx)shlib.lds): Discard .gnu.glibc-stub.* sections. * Rules (subdir_objs, subdir_stubs): New phony targets. * Makefile (+subdir_targets): Add them. * Makerules ($(common-objpfx)Versions.all): Grok new leading column in soversions.i. * scripts/lib-names.awk: Consider [0-9].* a "number", not just [0-9]+. Reported by H.J. Lu . * scripts/lib-names.awk: Always print WORDSIZE32 section first when doing two. 2005-02-10 Jakub Jelinek * sysdeps/powerpc/powerpc32/bits/link.h: Removed. * sysdeps/powerpc/powerpc64/bits/link.h: Moved to... * sysdeps/powerpc/bits/link.h: ... here. New file. 2005-02-09 Jakub Jelinek [BZ #710] * stdlib/random_r.c (__initstate_r): Save old state. * stdlib/Makefile (tests): Add tst-random2. * stdlib/tst-random2.c: New test. Reported by Peter Bergner . 2005-01-25 H.J. Lu * dlfcn/dlfcn.c (init): Put it in .init_array section. 2005-02-10 Roland McGrath [BZ #632] * scripts/soversions.awk: Expect cpu, vendor, os as separate variables from command line. Grok shlib-versions lines with WORDSIZE* in second column. Add new leading column to output, DEFAULT for existing output lines. Also emit lines with WORDSIZE* for alternate configurations. * Makeconfig ($(common-objpfx)soversions.i): Pass those variables. ($(common-objpfx)soversions.mk): Grok new column, use only DEFAULT. ($(common-objpfx)gnu/lib-names.stmp): Depend on soversions.i instead of soversions.mk; replace inline shell script with use of ... * scripts/lib-names.awk: New file. If input has non-DEFAULT lines, emit multiple sets of macros under #if. * shlib-versions (x86_64-.*-.*): Add WORDSIZE32 line mapping to i686. (s390x-.*-.*): Likewise for s390. (powerpc64-.*-.*): Likewise for powerpc. (sparc64-.*-.*): Likewise for sparc. (s390-.*-.*, powerpc.*-.*-.*, sparc.*-.*-.*): Add WORDSIZE64 entries for these mapping back to the above. 2005-02-08 Jakub Jelinek * elf/dl-load.c (_dl_map_object_from_fd): Fix a typo. 2005-02-08 Andreas Schwab * sysdeps/m68k/dl-machine.h (elf_machine_rela): Remove use of RESOLVE. 2005-02-07 Richard Henderson * iconvdata/jis0208.h (struct jisx0208_ucs_idx): Move before use. 2005-02-08 Kaz Kojima * sysdeps/sh/dl-machine.h (elf_machine_rela): Remove code using RESOLVE. 2005-02-07 Ulrich Drepper * elf/dl-load.c (_dl_map_object_from_fd): Make sure registers are set correctly. 2005-01-07 Richard Henderson * math/math_private.h (__copysign): Define as builtin for gcc 4. (__copysignf, __copysignl): Likewise. * sysdeps/alpha/fpu/bits/mathinline.h (copysign): Don't define for gcc 4.0. (copysignf, copysignl, fabsf, fabs): Likewise. (__copysign, __copysignf, __copysignl): Remove. (__fabs, __fabsf): Remove. 2005-01-07 Jakub Jelinek [BZ #738] * elf/dl-load.c (open_path): If rtld_search_dirs is in RELRO segment, avoid writing to it if none of the standard search directories exist. 2005-02-07 Steven Munroe [BZ #700] * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S (__novec_setcontext, __setcontext): Fix typo so CCR is restored. Load MSR as a doubleword. * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S (__novec_swapcontext, __swapcontext): Likewise. 2005-02-07 Ulrich Drepper * iconv/iconv_prog.c (main): Provide more help in case on an error. * sysdeps/unix/sysv/linux/i386/sysdep.h (check_consistency): Define. 2005-02-07 Jakub Jelinek [BZ #741] * nscd/nscd.c (termination_handler): Avoid segfault if some database is not enabled. [BZ #741] * nscd/nscd_getai.c (__nscd_getai): If ai_resp->found == -1, set __nss_not_use_nscd_hosts and return -1. * nscd/nscd_initgroups.c (__nscd_getgrouplist): If initgr_resp->found == -1, set __nss_not_use_nscd_group and return -1. Avoid leaking sockets. 2005-01-28 Andreas Schwab H.J. Lu [BZ #677] * elf/dl-runtime.c (fixup): Change return type to DL_FIXUP_VALUE_TYPE. Use DL_FIXUP_VALUE_TYPE, DL_FIXUP_MAKE_VALUE and DL_FIXUP_VALUE_CODE_ADDR for relocation values. Use DL_FIXUP_VALUE_ADDR and DL_FIXUP_ADDR_VALUE to store and retrieve relocation values. (profile_fixup): Likewise. * include/link.h (link_map): Use DL_FIXUP_VALUE_TYPE for l_reloc_result. * sysdeps/generic/dl-fptr.h (link_map): Forward declaration. * sysdeps/generic/dl-lookupcfg.h (DL_FIXUP_VALUE_TYPE): New. (DL_FIXUP_MAKE_VALUE): Likewise. (DL_FIXUP_VALUE_CODE_ADDR): Likewise. (DL_FIXUP_VALUE_ADDR): Likewise. (DL_FIXUP_ADDR_VALUE): Likewise. * sysdeps/ia64/dl-lookupcfg.h: Include for "struct fdesc". (DL_FIXUP_VALUE_TYPE): New. (DL_FIXUP_MAKE_VALUE): Likewise. (DL_FIXUP_VALUE_CODE_ADDR): Likewise. (DL_FIXUP_VALUE_ADDR): Likewise. (DL_FIXUP_ADDR_VALUE): Likewise. * sysdeps/ia64/dl-machine.h (elf_machine_profile_fixup_plt): Removed. (elf_machine_profile_plt): Removed. (elf_machine_fixup_plt): Change return type and type of value parameter to struct fdesc. (elf_machine_plt_value): Likewise. (elf_machine_rela): Use DL_FIXUP_MAKE_VALUE to construct argument for elf_machine_fixup_plt. 2005-02-07 Jakub Jelinek [BZ #742] * nscd/nscd.init (reload): Print Reloading nscd: before and a newline after the status string printed by killproc. 2004-11-18 Alexandre Oliva * manual/.cvsignore: Add dir-add.texi. 2005-02-06 Richard Henderson * sysdeps/alpha/dl-machine.h (elf_machine_rela): Use RESOLVE_MAP all the time. 2004-11-03 Marcus Brinkmann * configure.in (sysnames): Append sysdeps/generic for each add-on. * configure: Regenerated. 2005-02-02 Alfred M. Szmidt * sysdeps/mach/hurd/tls.h: Include (dtv_t): Change pointer type to be a struct which also contains information whether the memory pointed to is static TLS or not. * sysdeps/generic/syslog.c (send_flags) [!send_flags]: Define it. * shadow/sgetspent_r.c (FALSE): Macro renamed to ... (FALSEP): ... this. Updated all references. [BZ #765] * libio/fmemopen.c: Include . 2005-01-30 Ulrich Drepper * nscd/nscd_helper.c (get_mapping): Use MSG_NOSIGNAL if available. * nscd/connections.c (send_ro_fd): Likewise. 2005-01-28 H.J. Lu * elf/tst-auditmod1.c: Add ia64 entries. * sysdeps/generic/ldsodefs.h (La_ia64_regs): New. (La_ia64_retval): New. (audit_ifaces): Add ia64 entries. * sysdeps/ia64/bits/link.h: New file. * sysdeps/ia64/dl-machine.h (elf_machine_runtime_setup): Test for dl_profile non-null. (ARCH_LA_PLTENTER): New. (ARCH_LA_PLTEXIT): New. * sysdeps/ia64/dl-trampoline.S (_dl_runtime_resolve): Allocate only 2 output registers. Allocate stack to save/restore 8 incoming fp registers. Call _dl_fixup instead of fixup. (_dl_runtime_profile): Rewrite. 2005-01-28 Martin Schwidefsky * sysdeps/s390/bits/link.h: New file. * sysdeps/s390/s390-32/dl-trampoline.S: New file. * sysdeps/s390/s390-64/dl-trampoline.S: New file. * sysdeps/s390/s390-32/dl-machine.h: Move PLT trampolines to dl-trampoline.S. Use RESOLVE_MAP instead of RESOLVE to protect relocation code. (elf_machine_runtime_setup): Test for dl_profile non-null. (elf_machine_rela): Remove code using RESOLVE. (ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): New. * sysdeps/s390/s390-64/dl-machine.h: Likewise. * sysdeps/generic/ldsodefs.h (La_s390_32_regs, La_s390_32_retval, La_s390_64_regs, La_s390_64_retval): New. * elf/tst-auditmod1.c: Add s390 entries. [BZ #743] * sysdeps/s390/bits/string.h (strlen, strncpy, strcat, strncat, strncat, memchr, strcmp): Add missing memory clobber. 2005-01-27 Ulrich Drepper * sysdeps/unix/sysv/linux/alpha/oldglob.c (__old_globfree): Also copy gl_offs. Patch by Sergey Tikhonov . 2005-01-27 Paolo Bonzini [BZ #558] * posix/regcomp.c (calc_inveclosure): Return reg_errcode_t. Initialize the node sets in dfa->inveclosures. (analyze): Initialize inveclosures only if it is needed. Check errors from calc_inveclosure. * posix/regex_internal.c (re_dfa_add_node): Do not initialize the inveclosure node set. * posix/regexec.c (re_search_internal): If nmatch includes unused subexpressions, reset them to { rm_so: -1, rm_eo: -1 } here. * posix/regcomp.c (parse_bracket_exp) [!RE_ENABLE_I18N]: Do build a SIMPLE_BRACKET token. * posix/regexec.c (transit_state_mb): Do not examine nodes where ACCEPT_MB is not set. 2005-01-27 Jakub Jelinek * stdlib/tst-fmtmsg.c: Include stdlib.h. * stdio-common/tst-fmemopen2.c: Include string.h. * posix/execvp.c: Include stdbool.h. 2004-12-13 Paolo Bonzini Separate parsing and creation of the NFA. Avoided recursion on the (very unbalanced) parse tree. [BZ #611] * posix/regcomp.c (struct subexp_optimize, analyze_tree, calc_epsdest, re_dfa_add_tree_node, mark_opt_subexp_iter): Removed. (optimize_subexps, duplicate_tree, calc_first, calc_next, mark_opt_subexp): Rewritten. (preorder, postorder, lower_subexps, lower_subexp, link_nfa_nodes, create_token_tree, free_tree, free_token): New. (analyze): Accept a regex_t *. Invoke the passes via the preorder and postorder generic visitors. Do not initialize the fields in the re_dfa_t that represent the transitions. (free_dfa_content): Use free_token. (re_compile_internal): Analyze before UTF-8 optimizations. Do not include optimization of subexpressions. (create_initial_state): Fetch the DFA node index from the first node's bin_tree_t *. (optimize_utf8): Abort on unexpected nodes, including OP_DUP_QUESTION. Return on COMPLEX_BRACKET. (duplicate_node_closure): Fix comment. (duplicate_node): Do not initialize the fields in the re_dfa_t that represent the transitions. (calc_eclosure, calc_inveclosure): Do not handle OP_DELETED_SUBEXP. (create_tree): Remove final argument. All callers adjusted. Rewritten to use create_token_tree. (parse_reg_exp, parse_branch, parse_expression, parse_bracket_exp, build_charclass_op): Use create_tree or create_token_tree instead of re_dfa_add_tree_node. (parse_dup_op): Likewise. Also free the tree using free_tree for "{0}", and lower OP_DUP_QUESTION to OP_ALT: "a?" is equivalent to "a|". Adjust invocation of mark_opt_subexp. (parse_sub_exp): Create a single SUBEXP node. * posix/regex_internal.c (re_dfa_add_node): Remove last parameter, always perform as if it was 1. Do not initialize OPT_SUBEXP and DUPLICATED, and initialize the DFA fields representing the transitions. * posix/regex_internal.h (re_dfa_add_node): Adjust prototype. (re_token_type_t): Move OP_DUP_PLUS and OP_DUP_QUESTION to the tokens section. Add a tree-only code SUBEXP. Remove OP_DELETED_SUBEXP. (bin_tree_t): Include a full re_token_t for TOKEN. Turn FIRST and NEXT into pointers to trees. Remove ECLOSURE. 2004-12-28 Paolo Bonzini [BZ #605] * posix/regcomp.c (parse_bracket_exp): Do not modify DFA nodes that were already created. * posix/regex_internal.c (re_dfa_add_node): Set accept_mb field in the token if needed. (create_ci_newstate, create_cd_newstate): Set accept_mb field from the tokens' field. * posix/regex_internal.h (re_token_t): Add accept_mb field. (ACCEPT_MB_NODE): Removed. * posix/regexec.c (proceed_next_node, transit_states_mb, build_sifted_states, check_arrival_add_next_nodes): Use accept_mb instead of ACCEPT_MB_NODE. 2005-01-26 Ulrich Drepper * debug/chk_fail.c (__chk_fail): Print program name in final message. * sysdeps/unix/sysv/linux/kernel-features.h: Found reference to MSG_NOSIGNAL being in 2.2 kernels. 2005-01-26 Jakub Jelinek * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER_TLS_STORE): Remove unnecessary 0 imm. [BZ #693] * posix/regex_internal.h (DUMMY_CONSTRAINT): Rename to... (WORD_DELIM_CONSTRAINT): ...this. (NOT_WORD_DELIM_CONSTRAINT): Define. (re_context_type): Add INSIDE_NOTWORD and NOT_WORD_DELIM, change WORD_DELIM to use WORD_DELIM_CONSTRAINT. * posix/regcomp.c (peek_token): For \B create NOT_WORD_DELIM anchor instead of INSIDE_WORD. (parse_expression): Handle NOT_WORD_DELIM constraint. * posix/bug-regex19.c (tests): Adjust tests that relied on \B being inside word instead of not word delim. * posix/tst-rxspencer.c (mb_frob_pattern): Don't frob escaped characters. * posix/rxspencer/tests: Add some new tests. 2005-01-14 GOTO Masanori * sunrpc/rpc_main.c (s_output): Generate #include irrespective of Cflag. * manual/memory.texi (sbrk): Fix definition. * manual/string.texi (strcasestr): Fix example typo. 2005-01-25 Roland McGrath * sysdeps/generic/syslog.c [NO_SIGPIPE]: Protect sigpipe_handler decl. 2005-01-23 Roland McGrath [BZ #737] * sysdeps/i386/Makefile (defines): If -mno-tls-direct-seg-refs appears in $(CFLAGS), add -DNO_TLS_DIRECT_SEG_REFS. * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD] (SYSCALL_ERROR_HANDLER) [NO_TLS_DIRECT_SEG_REFS]: Load thread pointer from %gs:0 and add to that value, rather that direct %gs:OFFSET access. * sysdeps/unix/i386/sysdep.S [NO_TLS_DIRECT_SEG_REFS]: Likewise. 2005-01-25 Jakub Jelinek [BZ #731] * stdlib/fmtmsg.c (addseverity): Remove new_string variable. (free_mem): Don't free string. * stdlib/tst-fmtmsg.c: Include string.h. (main): Add some more tests. 2005-01-25 Andreas Schwab [BZ #736] * timezone/asia: Update from tzdata2005c. * timezone/backward: Likewise. * timezone/europe: Likewise. * timezone/leapseconds: Likewise. * timezone/northamerica: Likewise. * timezone/southamerica: Likewise. [BZ #736] * timezone/private.h: Update from tzcode2005c. * timezone/tzfile.h: Likewise. * timezone/zdump.c: Likewise. * timezone/zic.c: Likewise. 2005-01-25 Ulrich Drepper * sysdeps/i386/dl-machine.h (elf_machine_rel): Remove code using RESOLVE. * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Remove code using RESOLVE. * elf/rtld.c (_dl_start): Remove RESOLVE definition. 2005-01-25 Alan Modra * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Test sym_map, not sym, against zero. 2005-01-24 Ulrich Drepper [BZ #671] * misc/syslog.c: Moved to... * sysdeps/generic/syslog.c: ...here. [NO_SIGIPE]: Don't install SIGPIPE handler. * sysdeps/unix/sysv/linux/syslog.c: New file. * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_MSG_NOSIGNAL. 2005-01-22 Richard Henderson * sysdeps/alpha/dl-trampoline.S: New file. * sysdeps/alpha/dl-machine.h: Move PLT trampolines there. Use RESOLVE_MAP instead of RESOLVE to protect relocation code. (elf_machine_runtime_setup): Test for dl_profile non-null. (ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): New. * sysdeps/alpha/bits/link.h: New file. * sysdeps/generic/ldsodefs.h (La_alpha_regs, La_alpha_retval): New. (struct audit_ifaces): Add alpha entries. * elf/tst-auditmod1.c: Add alpha entries. 2005-01-22 Ulrich Drepper * sysdeps/ia64/dl-machine.h: Remove PLT trampolines here. * sysdeps/ia64/dl-trampoline.S: New file. * sysdeps/x86_64/bits/link.h: Use namespace-safe identifiers in La_x86_64_xmm definition. * posix/Makefile: Use CFLAGS-*.os instead of CFLAGS-*.c for frame pointer option. * stdlib/Makefile (CFLAGS-system.os): Use this instead of CFLAGS-system.c for frame pointer option. 2005-01-21 Roland McGrath * elf/dl-runtime.c (_dl_profile_fixup): Remove const from REGS. * sysdeps/i386/dl-machine.h: Update decl. 2005-01-21 Jakub Jelinek [BZ #735] * elf/Makefile: Add rules to build and run tst-align2. * elf/tst-align2.c: New test. * elf/tst-alignmod2.c: New file. * sysdeps/powerpc/tst-stack-align.h: New file. * sysdeps/i386/dl-machine.h (RTLD_START): Align stack and clear frame pointer before calling _dl_init. * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise. 2005-01-20 Ulrich Drepper * posix/execl.c: Do not allocate potentially large buffers on the stack. * posix/execle.c: Likewise. * posix/execlp.c: Likewise. * posix/execvp.c: Likewise. (script_execute): Removed. (allocate_scripts_argv): New function. Called at most once to allocate memory, not every time a script is run. Adjust caller. * sysdeps/generic/wordexp.c (exec_comm): Add a few TEMP_FAILURE_RETRY. Reorganize code to avoid multiple calls to exec_comm_child. (exec_comm_child): Can now be inlined. * posix/Makefile: Add -fomit-frame-pointer for a few more files. * stdlib/Makefile: Likewise. 2005-01-19 Roland McGrath [BZ #681] * sunrpc/openchild.c (_openchild): Use NULL instead of 0 for trailing argument to execlp. Reported by Marcus Meissner . 2005-01-19 Jakub Jelinek * hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Fix a typo in assert. * iconv/strtab.c (strtabfinalize): Likewise. * libio/iofopncook.c (_IO_cookie_seekoff): Add prototype. 2005-01-17 Roland McGrath [BZ #745] * nscd/Makefile (LDLIBS-nscd): New variable. ($(objpfx)nscd): Use that instead of selinux-LIBS. * Makeconfig (link-extra-libs): Define just as $(LDLIBS-$(@F)). (link-extra-libs-static): Define to $(link-extra-libs). (link-extra-libs-bounded): Likewise. 2005-01-17 Ulrich Drepper * include/link.h: Remove stray definition of pltenter. 2005-01-16 GOTO Masanori [BZ #734] * sysdeps/unix/rewinddir.c: Reset filepos. * dirent/tst-seekdir.c: Check telldir value after calling rewinddir. 2005-01-15 Ulrich Drepper * elf/tst-auditmod1.c: Reduce duplication. 2005-01-16 Andreas Schwab * sysdeps/m68k/dl-machine.h: Remove trampoline code. Define ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT. (elf_machine_runtime_setup): If profile != 0 does not anymore mean GLRO(dl_profile) != NULL. * sysdeps/m68k/dl-trampoline.S: New file. * sysdeps/m68k/bits/link.h: New file. * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add m68k variants. * elf/tst-auditmod1.c: Add m68k support. 2005-01-14 Ulrich Drepper * posix/regcomp.c [!_LIBC] (init_dfa): Fix determining of relevant LC_* variable. Patch by Aharon Robbins . [BZ #731] * stdlib/fmtmsg.c (internal_addseverity): Remove incorrect free call. * stdlib/tst-fmtmsg.c (main): Add another addseverity test. 2005-01-12 Ulrich Drepper * elf/dl-load.c (_dl_map_object_from_fd): We don't have to allow callers from libc anymore. * elf/dl-open.c (dl_open_worker): Pass __RTLD_AUDIT flag from caller to _dl_map_object_deps. * elf/dl-load.c (_dl_map_object_from_fd): Don't change memory protections when loading auditing modules. * dlfcn/dlopen.c (dlopen_doit): Catch invalid mode arguments and fail. * 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. * debug/catchsegv.sh: Likewise. 2005-01-11 Thorsten Kukuk [BZ #733] * sunrpc/svc_tcp.c (svctcp_create): Call listen with SOMAXCONN as backlog. * sunrpc/svc_unix.c (svcunix_create): Likewise. * grp/putgrent.c (putgrent): Don't write 0 as group ID if groupname starts with + or -. * pwd/putpwent.c (putpwent): Don't write 0 as user or group ID if user name starts with + or -. 2005-01-09 Kaz Kojima * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add sh variants. * sysdeps/elf/tst-auditmod1.c: Add sh support. * sysdeps/sh/bits/link.h: New. * sysdeps/sh/dl-machine.h: Remove trampoline code here. Define ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT. Remove obsolete comments. (RTLD_START): Define __fpscr_values. * sysdeps/sh/dl-trampoline.S: New file. * sysdeps/sh/sh4/dl-trampoline.S: New file. * sysdeps/sh/sh4/Versions [ld]: Add __fpscr_values. * sysdeps/sh/sh4/dl-machine.h: Remove. 2005-01-10 Jakub Jelinek [BZ #732] * time/tst-strptime.c (day_tests): Add 2 new tests. (test_tm, main): Issue an error instead of segfaulting if strptime returns NULL. 2005-01-10 H.J. Lu * sysdeps/alpha/libc-tls.c (__tls_get_addr): Updated for dtv_t union. * sysdeps/ia64/libc-tls.c (__tls_get_addr): Likewise. 2005-01-11 Ulrich Drepper * malloc/malloc.h: Remove no-glibc support. 2005-01-12 GOTO Masanori [BZ #650] * malloc/malloc.h: Always include features.h. 2005-01-10 Roland McGrath * sysdeps/ia64/fpu/e_logl.c: File removed. * dlfcn/dlfcn.c (init): Fix typo in attribute decl. 2005-01-10 Ulrich Drepper * sysdeps/generic/dl-tls.c (_dl_next_tls_modid): Fix assertion and recognition of last entry. 2005-01-09 Ulrich Drepper * elf/dl-runtime.c: Include . * elf/Makefile (headers): Add bits/link.h. 2005-01-09 Andreas Schwab * elf/rtld.c (dl_main): Create main_map with __RTLD_OPENEXEC. 2005-01-09 Andreas Jaeger [BZ #732] * time/strptime_l.c (__strptime_internal): Add braces to avoid warning. * sysdeps/x86_64/bits/link.h: Use vector_size for GCC 4.0. * elf/rtld.c (dl_main): Call _dl_add_to_slotinfo only if USE_TLS. 2005-01-08 Jakub Jelinek * elf/Makefile (generated): Add tst-pie1{,.out,.o}. 2005-01-09 Ulrich Drepper * elf/dl-fini.c (_dl_fini): Call destructors of audit DSOs after those of all the regular objects. * elf/dl-debug.c (_dl_debug_initialize): Take extra parameter and use it to select the r_debug structure for that namespace. * elf/dl-close.c (_dl_close): Adjust call to _dl_debug_initialize. * elf/dl-load.c (_dl_map_object_from_fd): Likewise. * elf/dl-open.c (_dl_open): Likewise. * elf/rtld.c (dl_main): Likewise. * sysdeps/generic/ldsodefs.h (struct link_namespaces): Add _ns_debug member. (_dl_debug_initialize): Add new parameter in declaration. * elf/dl-close.c (_dl_close): Make sure auditing callbacks are not called for the auditing objects themselves. * elf/dl-load.c (_dl_map_object_from_fd): Likewise. 2005-01-07 Ulrich Drepper * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_runtime_setup): If profile != 0 does not anymore mean GLRO(dl_profile) != NULL. * sysdeps/powerpc/powerpc64/bits/link.h (struct la_ppc64_regs): Add padding. * sysdeps/powerpc/powerpc64/dl-trampoline.S: (_dl_profile_resolve): Extend _dl_prof_resolve to add pass extra parameters to _dl_profile_fixup and set up structure with register content. * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_machine_runtime_setup): If profile != 0 does not anymore mean GLRO(dl_profile) != NULL. * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_prof_resolve): Extend _dl_prof_resolve to add pass extra parameters to _dl_profile_fixup and set up structure with register content. * sysdeps/powerpc/powerpc32/bits/link.h: Fix types of some fields in the register and result structures. * sysdeps/powerpc/powerpc64/bits/link.h: Fix types of some fields in the 32-bit register and result structures. * sysdeps/powerpc/powerpc64/dl-trampoline.S: Use register names. * sysdeps/powerpc/powerpc32/dl-trampoline.S: New file. * sysdeps/powerpc/powerpc32/dl-machine.h: Remove trampoline code here. Define ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT. * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add ppc32 variants. * elf/tst-auditmod1.c: Add ppc32 support. * sysdeps/powerpc/powerpc32/bits/link.h: New file. * sysdeps/powerpc/powerpc64/bits/link.h: Add ppc32 definitions. * malloc/malloc.c (malloc_printerr): Print program name as part of error message. * misc/sys/cdefs.h (__attribute_warn_unused_result__): Define. * stdlib/stdlib.h: Make realloc with __attribute_warn_unused_result__ instead of __wur. * malloc/malloc.h: Add __wur and __attribute_warn_unused_result__ markers as in . * libio/stdio.h: Remove __wur from rename and remove. * posix/unistd.h: Remove __wur from dup2. 2005-01-03 Andreas Jaeger * elf/Makefile (tests): Revert patch from 2005-01-03. 2005-01-07 Ulrich Drepper * sysdeps/unix/sysv/linux/init-first.c (__libc_init_first): Don't make __libc_init_first hidden. * elf/rtld.c [!DONT_USE_BOOTSTRAP_MAP] (_dl_start_final): Initialize l_relocated of rtld map. * sysdeps/powerpc/powerpc64/dl-trampoline.S: New file. * sysdeps/powerpc/powerpc64/dl-machine.h: Remove trampoline code here. Define ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT. * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add ppc64 variants. * elf/tst-auditmod1.c: Add ppc64 support. * sysdeps/powerpc/powerpc64/bits/link.h: New file. 2005-01-06 Roland McGrath [BZ #633] * sysdeps/unix/sysv/linux/futimes.c (__futimes): Catch errno values indicating file-name lookup errors, and return ENOSYS or EBADF instead. 2005-01-06 Ulrich Drepper * csu/elf-init.c (__libc_csu_fini): Don't do anything here. * sysdeps/generic/libc-start.c: Don't register program destructor here. * dlfcn/Makefile: Add rules to build dlfcn.c. (LDFLAGS-dl.so): Removed. * dlfcn/dlclose.c: _dl_close is now in ld.so, use function pointer table. * dlfcn/dlmopen.c: Likewise for _dl_open. * dlfcn/dlopen.c: Likewise. * dlfcn/dlopenold.c: Likewise. * elf/dl-libc.c: Likewise for _dl_open and _dl_close. * elf/Makefile (routines): Remove dl-open and dl-close. (dl-routines): Add dl-open, dl-close, and dl-trampoline. Add rules to build and run tst-audit1. * elf/tst-audit1.c: New file. * elf/tst-auditmod1.c: New file. * elf/Versions [libc]: Remove _dl_open and _dl_close. * elf/dl-close.c: Change for use inside ld.so instead of libc.so. * elf/dl-open.c: Likewise. * elf/dl-debug.c (_dl_debug_initialize): Allow reinitialization, signaled by nonzero parameter. * elf/dl-init.c: Fix use of r_state. * elf/dl-load.c: Likewise. * elf/dl-close.c: Add auditing checkpoints. * elf/dl-open.c: Likewise. * elf/dl-fini.c: Likewise. * elf/dl-load.c: Likewise. * elf/dl-sym.c: Likewise. * sysdeps/generic/libc-start.c: Likewise. * elf/dl-object.c: Allocate memory for auditing information. * elf/dl-reloc.c: Remove RESOLV. We now always need the map. Correctly initialize slotinfo. * elf/dynamic-link.h: Adjust after removal of RESOLV. * sysdeps/hppa/dl-lookupcfg.h: Likewise. * sysdeps/ia64/dl-lookupcfg.h: Likewise. * sysdeps/powerpc/powerpc64/dl-lookupcfg.h: Removed. * elf/dl-runtime.c (_dl_fixup): Little cleanup. (_dl_profile_fixup): New parameters to point to register struct and variable for frame size. Add auditing checkpoints. (_dl_call_pltexit): New function. Don't define trampoline code here. * elf/rtld.c: Recognize LD_AUDIT. Load modules on startup. Remove all the functions from _rtld_global_ro which only _dl_open and _dl_close needed. Add auditing checkpoints. * elf/link.h: Define symbols for auditing interfaces. * include/link.h: Likewise. * include/dlfcn.h: Define __RTLD_AUDIT. Remove prototypes for _dl_open and _dl_close. Adjust access to argc and argv in libdl. * dlfcn/dlfcn.c: New file. * sysdeps/generic/dl-lookupcfg.h: Remove all content now that RESOLVE is gone. * sysdeps/generic/ldsodefs.h: Add definitions for auditing interfaces. * sysdeps/generic/unsecvars.h: Add LD_AUDIT. * sysdeps/i386/dl-machine.h: Remove trampoline code here. Adjust for removal of RESOLVE. * sysdeps/x86_64/dl-machine.h: Likewise. * sysdeps/generic/dl-trampoline.c: New file. * sysdeps/i386/dl-trampoline.c: New file. * sysdeps/x86_64/dl-trampoline.c: New file. * sysdeps/generic/dl-tls.c: Cleanups. Fixup for dtv_t change. Fix updating of DTV. * sysdeps/generic/libc-tls.c: Likewise. * sysdeps/arm/bits/link.h: Renamed to ... * sysdeps/arm/bits/linkmap.h: ...this. * sysdeps/generic/bits/link.h: Renamed to... * sysdeps/generic/bits/linkmap.h: ...this. * sysdeps/hppa/bits/link.h: Renamed to... * sysdeps/hppa/bits/linkmap.h: ...this. * sysdeps/i386/bits/link.h: Renamed to... * sysdeps/i386/bits/linkmap.h: ...this. * sysdeps/ia64/bits/link.h: Renamed to... * sysdeps/ia64/bits/linkmap.h: ...this. * sysdeps/s390/bits/link.h: Renamed to... * sysdeps/s390/bits/linkmap.h: ...this. * sysdeps/sh/bits/link.h: Renamed to... * sysdeps/sh/bits/linkmap.h: ...this. * sysdeps/x86_64/bits/link.h: Renamed to... * sysdeps/x86_64/bits/linkmap.h: ...this. * posix/unistd.h: Declare ftruncate for POSIX 2003. [BZ #640] 2004-12-22 Steven Munroe [BZ #602] * math/libm-test.inc (rint_test_tonearest): New test. (rint_test_towardzero): New test. (rint_test_downward): New test. (rint_test_upward): New test. * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: Fix -0.0 case. Remove redundant const values. * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: Fix -0.0 case. Remove redundant const values. Use float const. * sysdeps/powerpc/powerpc32/fpu/s_floor.S: Fix -0.0 case. * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: Fix -0.0 case. Use float const. * sysdeps/powerpc/powerpc32/fpu/s_rint.S: Fix -0.0 case. * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: Fix -0.0 case. Use float const. * sysdeps/powerpc/powerpc32/fpu/s_round.S: Fix -0.0 case. Remove redundant const values. * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Fix -0.0 case. Remove redundant const values. Use float const. * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Fix -0.0 case. Remove redundant const values. * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: Fix -0.0 case. Remove redundant const values. Use float const. * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Use EALIGN for Quadword alignment. Fix -0.0 case. Remove redundant const values. * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Use EALIGN for Quadword alignment. Fix -0.0 case. Remove redundant const values. Use float const. * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Use EALIGN for Quadword alignment. Fix -0.0 case. * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Use EALIGN for Quadword alignment. Fix -0.0 case. Use float const. * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Use EALIGN for Quadword alignment. Fix -0.0 case. * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Use EALIGN for Quadword alignment. Fix -0.0 case. Use float const. * sysdeps/powerpc/powerpc64/fpu/s_round.S: Use EALIGN for Quadword alignment. Fix -0.0 case. Remove redundant const values. * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Use EALIGN for Quadword alignment. Fix -0.0 case. Remove redundant const values. Use float const. * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Use EALIGN for Quadword alignment. Fix -0.0 case. * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Use EALIGN for Quadword alignment. Fix -0.0 case. Remove redundant const values. Use float const. 2005-01-06 Ulrich Drepper * misc/sys/cdefs.h: Define __wur. * libio/stdio.h: Use __wur for a number of interfaces. * posix/unistd.h: Likewise. * stdlib/stdlib.h: Likewise. 2004-12-29 Jakub Jelinek [BZ #592] * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Use libc_hidden_proto instead of HIDDEN_PROTO. * sysdeps/ia64/fpu/libm-symbols.h (HIDDEN_PROTO): Remove. (__libm_error_support): If ASSEMBLER and in libc, define to HIDDEN_JUMPTARGET(__libm_error_support). 2004-12-28 David Mosberger [BZ #592] * sysdeps/ia64/fpu/Makefile (duplicated-routines): New macro. (sysdep_routines): Replace libm_ldexp{,f,l} and libm_scalbn{,f,l} with $(duplicated-routines). (libm-sysdep_routines): Likewise, but substitute "s_" prefix for "m_" prefix. 2004-12-27 David Mosberger [BZ #592] * sysdeps/ia64/fpu/libm-symbols.h: Add include of and undefine "ret" macro. Add __libm_error_support hidden definitions. [BZ #592] * sysdeps/ia64/fpu/e_lgamma_r.c: Remove CVS-id comment. Add missing portion of copyright statement. * sysdeps/ia64/fpu/e_lgammaf_r.c: Likewise. * sysdeps/ia64/fpu/e_lgammal_r.c: Likewise. [BZ #592] * sysdeps/ia64/fpu/w_lgamma.c: Remove CVS-id comment. Add missing portion of copyright statement. (__ieee754_lgamma): Rename from lgamma(). Make lgamma() a weak alias. (__ieee754_gamma): Likewise. * sysdeps/ia64/fpu/w_lgammaf.c: Likewise. * sysdeps/ia64/fpu/w_lgammal.c: Likewise. 2004-12-09 H.J. Lu [BZ #592] * sysdeps/ia64/fpu/s_nextafterl.c: Remove. * sysdeps/ia64/fpu/s_nexttoward.c: Likewise. * sysdeps/ia64/fpu/s_nexttowardf.c: Likewise. * sysdeps/ia64/fpu/e_atan2l.S: Remove (duplicate of e_atan2l.c). * sysdeps/ia64/fpu/e_expl.S: Likewise. * sysdeps/ia64/fpu/e_logl.c: Remove (conflicts with e_logl.S). 2004-11-18 David Mosberger [BZ #592] * sysdeps/ia64/fpu/README: New file. * sysdeps/ia64/fpu/gen_import_file_list: New file. * sysdeps/ia64/fpu/import_check: Likewise. * sysdeps/ia64/fpu/import_diffs: Likewise. * sysdeps/ia64/fpu/import_file.awk: Likewise. * sysdeps/ia64/fpu/import_intel_libm: Likewise. * sysdeps/ia64/fpu/libm-symbols.h: Likewise. [BZ #592] * sysdeps/ia64/fpu/e_acos.S: Update from Intel libm v2.1+. * sysdeps/ia64/fpu/e_acosf.S: Likewise. * sysdeps/ia64/fpu/e_acosl.S: Likewise. * sysdeps/ia64/fpu/e_asin.S: Likewise. * sysdeps/ia64/fpu/e_asinf.S: Likewise. * sysdeps/ia64/fpu/e_asinl.S: Likewise. * sysdeps/ia64/fpu/e_atan2.S: Likewise. * sysdeps/ia64/fpu/e_atan2f.S: Likewise. * sysdeps/ia64/fpu/e_cosh.S: Likewise. * sysdeps/ia64/fpu/e_coshf.S: Likewise. * sysdeps/ia64/fpu/e_coshl.S: Likewise. * sysdeps/ia64/fpu/e_exp.S: Likewise. * sysdeps/ia64/fpu/e_expf.S: Likewise. * sysdeps/ia64/fpu/e_fmod.S: Likewise. * sysdeps/ia64/fpu/e_fmodf.S: Likewise. * sysdeps/ia64/fpu/e_fmodl.S: Likewise. * sysdeps/ia64/fpu/e_hypot.S: Likewise. * sysdeps/ia64/fpu/e_hypotf.S: Likewise. * sysdeps/ia64/fpu/e_hypotl.S: Likewise. * sysdeps/ia64/fpu/e_log.S: Likewise. * sysdeps/ia64/fpu/e_log2.S: Likewise. * sysdeps/ia64/fpu/e_log2f.S: Likewise. * sysdeps/ia64/fpu/e_log2l.S: Likewise. * sysdeps/ia64/fpu/e_logf.S: Likewise. * sysdeps/ia64/fpu/e_pow.S: Likewise. * sysdeps/ia64/fpu/e_powf.S: Likewise. * sysdeps/ia64/fpu/e_powl.S: Likewise. * sysdeps/ia64/fpu/e_remainder.S: Likewise. * sysdeps/ia64/fpu/e_remainderf.S: Likewise. * sysdeps/ia64/fpu/e_remainderl.S: Likewise. * sysdeps/ia64/fpu/e_scalb.S: Likewise. * sysdeps/ia64/fpu/e_scalbf.S: Likewise. * sysdeps/ia64/fpu/e_scalbl.S: Likewise. * sysdeps/ia64/fpu/e_sinh.S: Likewise. * sysdeps/ia64/fpu/e_sinhf.S: Likewise. * sysdeps/ia64/fpu/e_sinhl.S: Likewise. * sysdeps/ia64/fpu/e_sqrt.S: Likewise. * sysdeps/ia64/fpu/e_sqrtf.S: Likewise. * sysdeps/ia64/fpu/e_sqrtl.S: Likewise. * sysdeps/ia64/fpu/libm_error.c: Likewise. * sysdeps/ia64/fpu/libm_reduce.c: Likewise. * sysdeps/ia64/fpu/libm_support.h: Likewise. * sysdeps/ia64/fpu/s_atan.S: Likewise. * sysdeps/ia64/fpu/s_atanf.S: Likewise. * sysdeps/ia64/fpu/s_atanl.S: Likewise. * sysdeps/ia64/fpu/s_cbrt.S: Likewise. * sysdeps/ia64/fpu/s_cbrtf.S: Likewise. * sysdeps/ia64/fpu/s_cbrtl.S: Likewise. * sysdeps/ia64/fpu/s_ceil.S: Likewise. * sysdeps/ia64/fpu/s_ceilf.S: Likewise. * sysdeps/ia64/fpu/s_ceill.S: Likewise. * sysdeps/ia64/fpu/s_cos.S: Likewise. * sysdeps/ia64/fpu/s_cosf.S: Likewise. * sysdeps/ia64/fpu/s_cosl.S: Likewise. * sysdeps/ia64/fpu/s_expm1.S: Likewise. * sysdeps/ia64/fpu/s_expm1f.S: Likewise. * sysdeps/ia64/fpu/s_expm1l.S: Likewise. * sysdeps/ia64/fpu/s_fabs.S: Likewise. * sysdeps/ia64/fpu/s_fabsf.S: Likewise. * sysdeps/ia64/fpu/s_fabsl.S: Likewise. * sysdeps/ia64/fpu/s_floor.S: Likewise. * sysdeps/ia64/fpu/s_floorf.S: Likewise. * sysdeps/ia64/fpu/s_floorl.S: Likewise. * sysdeps/ia64/fpu/s_frexp.c: Likewise. * sysdeps/ia64/fpu/s_frexpf.c: Likewise. * sysdeps/ia64/fpu/s_frexpl.c: Likewise. * sysdeps/ia64/fpu/s_ilogb.S: Likewise. * sysdeps/ia64/fpu/s_ilogbf.S: Likewise. * sysdeps/ia64/fpu/s_ilogbl.S: Likewise. * sysdeps/ia64/fpu/s_log1p.S: Likewise. * sysdeps/ia64/fpu/s_log1pf.S: Likewise. * sysdeps/ia64/fpu/s_log1pl.S: Likewise. * sysdeps/ia64/fpu/s_logb.S: Likewise. * sysdeps/ia64/fpu/s_logbf.S: Likewise. * sysdeps/ia64/fpu/s_logbl.S: Likewise. * sysdeps/ia64/fpu/s_modf.S: Likewise. * sysdeps/ia64/fpu/s_modff.S: Likewise. * sysdeps/ia64/fpu/s_modfl.S: Likewise. * sysdeps/ia64/fpu/s_nearbyint.S: Likewise. * sysdeps/ia64/fpu/s_nearbyintf.S: Likewise. * sysdeps/ia64/fpu/s_nearbyintl.S: Likewise. * sysdeps/ia64/fpu/s_rint.S: Likewise. * sysdeps/ia64/fpu/s_rintf.S: Likewise. * sysdeps/ia64/fpu/s_rintl.S: Likewise. * sysdeps/ia64/fpu/s_round.S: Likewise. * sysdeps/ia64/fpu/s_roundf.S: Likewise. * sysdeps/ia64/fpu/s_roundl.S: Likewise. * sysdeps/ia64/fpu/s_significand.S: Likewise. * sysdeps/ia64/fpu/s_significandf.S: Likewise. * sysdeps/ia64/fpu/s_significandl.S: Likewise. * sysdeps/ia64/fpu/s_tan.S: Likewise. * sysdeps/ia64/fpu/s_tanf.S: Likewise. * sysdeps/ia64/fpu/s_tanl.S: Likewise. * sysdeps/ia64/fpu/s_trunc.S: Likewise. * sysdeps/ia64/fpu/s_truncf.S: Likewise. * sysdeps/ia64/fpu/s_truncl.S: Likewise. [BZ #592] * sysdeps/ia64/fpu/e_acosh.S: New file from Intel libm v2.1+. * sysdeps/ia64/fpu/e_acoshf.S: Likewise. * sysdeps/ia64/fpu/e_acoshl.S: Likewise. * sysdeps/ia64/fpu/e_atanh.S: Likewise. * sysdeps/ia64/fpu/e_atanhf.S: Likewise. * sysdeps/ia64/fpu/e_atanhl.S: Likewise. * sysdeps/ia64/fpu/e_exp10.S: Likewise. * sysdeps/ia64/fpu/e_exp10f.S: Likewise. * sysdeps/ia64/fpu/e_exp10l.S: Likewise. * sysdeps/ia64/fpu/e_exp2.S: Likewise. * sysdeps/ia64/fpu/e_exp2f.S: Likewise. * sysdeps/ia64/fpu/e_exp2l.S: Likewise. * sysdeps/ia64/fpu/e_lgamma_r.S: Likewise. * sysdeps/ia64/fpu/e_lgammaf_r.S: Likewise. * sysdeps/ia64/fpu/e_lgammal_r.S: Likewise. * sysdeps/ia64/fpu/e_logl.S: Likewise. * sysdeps/ia64/fpu/libm_frexp.S: Likewise. * sysdeps/ia64/fpu/libm_frexpf.S: Likewise. * sysdeps/ia64/fpu/libm_frexpl.S: Likewise. * sysdeps/ia64/fpu/s_libm_ldexp.S: Likewise. * sysdeps/ia64/fpu/s_libm_ldexpf.S: Likewise. * sysdeps/ia64/fpu/s_libm_ldexpl.S: Likewise. * sysdeps/ia64/fpu/s_libm_scalbn.S: Likewise. * sysdeps/ia64/fpu/s_libm_scalbnf.S: Likewise. * sysdeps/ia64/fpu/s_libm_scalbnl.S: Likewise. * sysdeps/ia64/fpu/libm_lgamma.S: Likewise. * sysdeps/ia64/fpu/libm_lgammaf.S: Likewise. * sysdeps/ia64/fpu/libm_lgammal.S: Likewise. * sysdeps/ia64/fpu/libm_sincos.S: Likewise. * sysdeps/ia64/fpu/libm_sincos_large.S: Likewise. * sysdeps/ia64/fpu/libm_sincosf.S: Likewise. * sysdeps/ia64/fpu/libm_sincosl.S: Likewise. * sysdeps/ia64/fpu/libm_scalblnf.S: Likewise. * sysdeps/ia64/fpu/s_asinh.S: Likewise. * sysdeps/ia64/fpu/s_asinhf.S: Likewise. * sysdeps/ia64/fpu/s_asinhl.S: Likewise. * sysdeps/ia64/fpu/s_erf.S: Likewise. * sysdeps/ia64/fpu/s_erfc.S: Likewise. * sysdeps/ia64/fpu/s_erfcf.S: Likewise. * sysdeps/ia64/fpu/s_erfcl.S: Likewise. * sysdeps/ia64/fpu/s_erff.S: Likewise. * sysdeps/ia64/fpu/s_erfl.S: Likewise. * sysdeps/ia64/fpu/s_fdim.S: Likewise. * sysdeps/ia64/fpu/s_fdimf.S: Likewise. * sysdeps/ia64/fpu/s_fdiml.S: Likewise. * sysdeps/ia64/fpu/s_fma.S: Likewise. * sysdeps/ia64/fpu/s_fmaf.S: Likewise. * sysdeps/ia64/fpu/s_fmal.S: Likewise. * sysdeps/ia64/fpu/s_fmax.S: Likewise. * sysdeps/ia64/fpu/s_fmaxf.S: Likewise. * sysdeps/ia64/fpu/s_fmaxl.S: Likewise. * sysdeps/ia64/fpu/s_ldexp.c: Likewise. * sysdeps/ia64/fpu/s_ldexpf.c: Likewise. * sysdeps/ia64/fpu/s_ldexpl.c: Likewise. * sysdeps/ia64/fpu/s_nextafter.S: Likewise. * sysdeps/ia64/fpu/s_nextafterf.S: Likewise. * sysdeps/ia64/fpu/s_nextafterl.S: Likewise. * sysdeps/ia64/fpu/s_nexttoward.S: Likewise. * sysdeps/ia64/fpu/s_nexttowardf.S: Likewise. * sysdeps/ia64/fpu/s_nexttowardl.S: Likewise. * sysdeps/ia64/fpu/s_tanh.S: Likewise. * sysdeps/ia64/fpu/s_tanhf.S: Likewise. * sysdeps/ia64/fpu/s_tanhl.S: Likewise. * sysdeps/ia64/fpu/s_scalblnf.c: Likewise. * sysdeps/ia64/fpu/w_lgamma.c: Likewise. * sysdeps/ia64/fpu/w_lgammaf.c: Likewise. * sysdeps/ia64/fpu/w_lgammal.c: Likewise. * sysdeps/ia64/fpu/w_tgamma.S: Likewise. * sysdeps/ia64/fpu/w_tgammaf.S: Likewise. * sysdeps/ia64/fpu/w_tgammal.S: Likewise. [BZ #592] * sysdeps/ia64/fpu/e_gamma_r.c: New empty dummy-file. * sysdeps/ia64/fpu/e_gammaf_r.c: Likewise. * sysdeps/ia64/fpu/e_gammal_r.c: Likewise. * sysdeps/ia64/fpu/w_acosh.c: Likewise. * sysdeps/ia64/fpu/w_acoshf.c: Likewise. * sysdeps/ia64/fpu/w_acoshl.c: Likewise. * sysdeps/ia64/fpu/w_atanh.c: Likewise. * sysdeps/ia64/fpu/w_atanhf.c: Likewise. * sysdeps/ia64/fpu/w_atanhl.c: Likewise. * sysdeps/ia64/fpu/w_exp10.c: Likewise. * sysdeps/ia64/fpu/w_exp10f.c: Likewise. * sysdeps/ia64/fpu/w_exp10l.c: Likewise. * sysdeps/ia64/fpu/w_exp2.c: Likewise. * sysdeps/ia64/fpu/w_exp2f.c: Likewise. * sysdeps/ia64/fpu/w_exp2l.c: Likewise. * sysdeps/ia64/fpu/w_expl.c: Likewise. * sysdeps/ia64/fpu/e_expl.S: Likewise. * sysdeps/ia64/fpu/w_lgamma_r.c: Likewise. * sysdeps/ia64/fpu/w_lgammaf_r.c: Likewise. * sysdeps/ia64/fpu/w_lgammal_r.c: Likewise. * sysdeps/ia64/fpu/w_log2.c: Likewise. * sysdeps/ia64/fpu/w_log2f.c: Likewise. * sysdeps/ia64/fpu/w_log2l.c: Likewise. * sysdeps/ia64/fpu/w_sinh.c: Likewise. * sysdeps/ia64/fpu/w_sinhf.c: Likewise. * sysdeps/ia64/fpu/w_sinhl.c: Likewise. [BZ #592] * sysdeps/ia64/fpu/libm_atan2_reg.S: Remove. * sysdeps/ia64/fpu/s_ldexp.S: Likewise. * sysdeps/ia64/fpu/s_ldexpf.S: Likewise. * sysdeps/ia64/fpu/s_ldexpl.S: Likewise. * sysdeps/ia64/fpu/s_scalbn.S: Likewise. * sysdeps/ia64/fpu/s_scalbnf.S: Likewise. * sysdeps/ia64/fpu/s_scalbnl.S: Likewise. [BZ #592] * sysdeps/ia64/fpu/s_sincos.c: Make it an empty dummy-file. * sysdeps/ia64/fpu/s_sincosf.c: Likewise. * sysdeps/ia64/fpu/s_sincosl.c: Likewise. [BZ #592] * sysdeps/ia64/fpu/e_atan2l.S: Add "Not needed" comment. [BZ #592] * sysdeps/ia64/fpu/s_copysign.S: Add __libm_copysign{,f,l} alias for use by libm_error.c [BZ #592] * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove libm_atan2_reg, libm_tan, libm_frexp4{f,l}. Mention s_erfc{,f,l}, libm_frexp{,f,l}, libm_ldexp{,f,l}, libm_sincos{,f,l}, libm_sincos_large, libm_lgamma{,f,l}, libm_scalbn{,f,l}, libm_scalblnf. (sysdep_routines): Remove libm_frexp4{,f,l}. Mention libm_frexp{,f,l}, libm_ldexp{,f,l}, and libm_scalbn{,f,l}. (sysdep-CPPFLAGS): Add -include libm-symbols.h, -D__POSIX__, _D_LIB_VERSIONIMF=_LIB_VERSION, -DSIZE_LONG_INT_64, and -DSIZE_LONG_LONG_INT_64. 2005-01-05 Steven Munroe [BZ #729] * elf/rtld.c (dl_main) [NEED_DL_SYSINFO_DSO]: Insure l_map_end and l_text_end are set for a VDSO with a single PT_LOAD entry. 2005-01-05 Ulrich Drepper [BZ #730] * libio/iofopncook.c (_IO_cookie_seekoff): Define. Mark offset as invalid to disable optimizations in fileops which won't work here. (_IO_cookie_jumps): Use it. (_IO_old_cookie_jumps): Likewise. * libio/fmemopen.c (fmemopen_seek): Result must be returned in *P, not the return value. * stdio-common/Makefile (tests): Add tst-fmemopen2. * stdio-common/tst-fmemopen2.c: New file. * sysdeps/unix/sysv/linux/bits/waitflags.h: Define __WNOTHREAD. 2005-01-05 Roland McGrath * configure.in (libc_cv_cpp_asm_debuginfo): Checked moved ... * sysdeps/i386/configure.in: ... here. New file. 2005-01-03 Ulrich Drepper [BZ #727] * sysdeps/generic/libc-start.c [SHARED] (__libc_start_main): Don't initialize __environ again. * stdlib/Makefile: Add rules to build and run tst-putenv. * stdlib/tst-putenv.c: New file. * stdlib/tst-putenvmod.c: New file. * sysdeps/unix/sysv/linux/init-first.c: Clean file up. Don't define unnecessary wrappers or aliases of static functions. 2005-01-03 Andreas Jaeger * csu/Makefile (generated): Add start.os and start.ob. * elf/Makefile (tests): Change rule for tst-pie1 so that make clean works. 2004-12-29 Roland McGrath [BZ #626] * sysdeps/unix/alarm.c (alarm): Round return value to nearest rather than always up; when nearest is zero, round up to one. 2004-12-28 Ulrich Drepper * po/es.po: Update from translation team. [BZ #726] * sysdeps/generic/dl-tls.c (__tls_get_addr): Fix typo. 2004-12-27 Ulrich Drepper [BZ #744] * include/signal.h: Define __sigemptyset. 2004-04-27 Paolo Bonzini * posix/regex_internal.h (struct re_dfastate_t): Make word_trtable a pointer to the 512-item transition table. * posix/regexec.c (build_trtable): Fill in either state->trtable or state->word_trtable. Return a boolean indicating success. (transit_state): Expect state->trtable to be a 256-item transition table. Reorganize code to have less tests in the common case, and to save an indentation level. * posix/regex_internal.c (free_state): Free word_trtable. 2004-12-21 Jakub Jelinek [BZ #723] * sysdeps/unix/sysv/linux/i386/clone.S (__clone): Make sure %esp when calling fn is 16 byte aligned. * sysdeps/i386/tst-stack-align.h: New file. [BZ #725] * misc/efgcvt_r.c (FLOAT_MIN_10_EXP, FLOAT_MIN_10_NORM): Define. (ecvt_r): Special case denormals. * misc/qefgcvt_r.c (FLOAT_MIN_10_EXP, FLOAT_MIN_10_NORM): Define. * misc/tst-efgcvt.c: Include float.h. (ecvt_tests): Add 2 new tests. 2004-12-20 Roland McGrath * version.h (RELEASE, VERSION): development, 2.3.90 * include/features.h (__GLIBC_MINOR__): Now 4. See ChangeLog.15 for earlier changes.