2004-07-25 Ulrich Drepper * inet/Versions [libc, GLIBC_2.3.4]: Add getipv4sourcefilter, getsourcefilter, setipv4sourcefilter, and setsourcefilter. * inet/Makefile (routines): Likewise. * inet/netinet/in.h: Add prototypes for getipv4sourcefilter, getsourcefilter, setipv4sourcefilter, and setsourcefilter. * sysdeps/generic/getipv4sourcefilter.c: New file. * sysdeps/generic/setipv4sourcefilter.c: New file. * sysdeps/generic/getsourcefilter.c: New file. * sysdeps/generic/setsourcefilter.c: New file. 2004-07-17 Steven Munroe * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling for POWER4 machines. 2004-07-21 Jakub Jelinek [BZ #274] * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Fix used >= BITS_PER_MP_LIMB shifting up. * stdlib/tst-strtod.c (main): Add new tests. 2004-07-23 Jakub Jelinek [BZ #282] * libio/iopopen.c (_IO_new_popen): Use _IO_init instead of _IO_no_init. Remove wd from struct locked_FILE. (_IO_wproc_jumps): Remove. Reported by Andrew Josey . * stdio-common/Makefile (tests): Add tst-popen. * stdio-common/tst-popen.c: New test. 2004-07-23 Ulrich Drepper * posix/bits/posix1_lim.h: Fix values for _POSIX_CHILD_MAX and _POSIX_OPEN_MAX. Add _POSIX_HOST_NAME_MAX, _POSIX_SYMLINK_MAX, _POSIX_SYMLOOP_MAX, and _POSIX_RE_DUP_MAX. Reported by Andrew Josey. * include/features.h: Document _POSIX_C_SOURCE == 200112L. * grp/grp.h: Define gid_t if __USE_XOPEN2K is defined. * pwd/pwd.h: Define uid_t and gid_t if __USE_XOPEN2K is defined. * io/sys/stat.h: Define dev_t, gid_t, ino_t, mode_t, nlink_t, off_t, time_t, and uid_t if __USE_XOPEN2K is defined. * signal/signal.h: Define pid_t if __USE_XOPEN2K is defined. * posix/unistd.h: Define gid_t, off_t, pid_t, uid_t, and useconds_t if __USE_XOPEN2K is defined. * io/utime.h: Define time_t if __USE_XOPEN2K is defined. * libio/stdio.h: Declare fseeko and ftello if __USE_XOPEN2K is defined. 2004-07-19 Thorsten Kukuk * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't allocate memory for large temporary variables with alloca. 2004-07-22 Ulrich Drepper * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Compatibility code must have version GLIBC_2.0. Patch by Dwayne McConnell. * nscd/nscd_getgr_r.c (nscd_getgr_r): Avoid read call with NULL pointer and zero length. 2004-07-21 Ulrich Drepper * nscd/cache.c (prune_cache): Print correct list when debugging. 2004-07-21 Jakub Jelinek * resolv/res_libc.c (res_init): If RES_INIT is set and _res.nscount > 0, call __res_nclose and free nsaddrs. * resolv/Makefile: Add rules to build and run tst-leaks2. * resolv/tst-leaks2.c: New test. 2004-07-21 Ulrich Drepper * intl/libintl.h: Don't define macros for C++. Patch by Goto Masanori. 2004-07-22 GOTO Masanori [BZ #276] * include/arpa/inet.h: Change inet_aton type from in_addr_t to int. * inet/arpa/inet.h: Likewise. * resolv/inet_addr.c: Likewise. 2004-07-21 Alexandre Oliva * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: Add semtimedop. 2004-07-20 Roland McGrath * configure.in (add_ons): Substitute this. Move $add_ons handling after AC_CANONICAL_HOST and default setting of $machine et al. Don't set $subdirs from $add_ons. Instead, source add-on/configure fragments early on. (base_machine): If it's already set, don't set it based on $machine. (libc_config_ok): New variable, set to no. If an add-on fragment sets it to yes, skip the tuple sanity check as if --enable-hacker-mode. (sysnames): Try appending add-on names after machine as well. * config.make.in (add-ons): Set from @add_ons@ instead of @subdirs@. * Makeconfig ($(common-objpfx)config.status): Also depend on configure files in $(add_ons) dirs. * sysdeps/unix/sysv/linux/bits/in.h (struct ip_mreq): Remove definition, now in netinet/in.h proper. 2004-07-20 Alexandre Oliva * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h): Sort by syscalls. Make sure we get headers such as sgidefs.h from the build tree before just-installed ones. * sysdeps/mips/atomicity.h: Use standard names for ABI macros, include sgidefs.h where appropriate. * sysdeps/mips/dl-machine.h: Likewise. * sysdeps/mips/machine-gmon.h: Likewise. * sysdeps/mips/bits/setjmp.h: Likewise. * sysdeps/mips/fpu/bits/mathdef.h: Likewise. * sysdeps/mips/mips64/__longjmp.c: Likewise. * sysdeps/mips/mips64/setjmp_aux.c: Likewise. * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise. * sysdeps/unix/sysv/linux/mips/pread.c: Likewise. * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise. * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise. * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise. * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise. * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise. * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise. * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise. * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise. * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise. * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise. * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise. * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise. * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h): Likewise. * sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h): Likewise. * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Update to use _dl_lookup_symbol_x. (elf_machine_runtime_link_map): Don't INTUSE _dl_signal_error. 2004-07-20 Ulrich Drepper * inet/netinet/in.h: Define struct ip_mreq and struct ip_mreq_source. Define struct group_req and struct group_source_req. * sysdeps/unix/sysv/linux/bits/in.h: Define IP_UNBLOCK_SOURCE, IP_BLOCK_SOURCE, IP_ADD_SOURCE_MEMBERSHIP, IP_DROP_SOURCE_MEMBERSHIP, IP_MSFILTER, MCAST_JOIN_GROUP, MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, MCAST_LEAVE_GROUP, MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP, and MCAST_MSFILTER. Define MCAST_INCLUDE and MCAST_EXCLUDE. * iconvdata/gconv-modules: Add alias for IBM874 [BZ #244]. 2004-07-19 Jakub Jelinek [BZ #258] * math/libm-test.inc (max_value, min_value): New variables. (initialize): Initialize them. (pow_test): Add a couple of new tests. * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Don't generate invalid exception if |y| >= 1U<<31. * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Don't generate invalid exception if |y| >= 1L<<63. * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise. If y*log2(x) overflows to +-inf, return still +inf/+0 instead of NaN. * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise. 2004-07-18 Ulrich Drepper * nscd/pwdcache.c (cache_addpw): Optimize case of unsuccessful lookup a bit. * nscd/grpcache.c (cache_addgr): Likewise. * nscd/hstcache.c (cache_addhst): Likewise. 2004-07-10 GOTO Masanori * sysdeps/s390/s390-32/elf/start.S: Remove symbol _fp_hw. * sysdeps/s390/s390-64/elf/start.S: Likewise. 2004-04-16 Andreas Schwab * sysdeps/ia64/bits/atomic.h: Cast first argument of __sync_bool_compare_and_swap_si correct to void*. 2004-07-17 Ulrich Drepper * iconv/iconv_prog.c (print_known_names): Make machine-readable output even less cluttered. 2004-07-16 Steven Munroe [BZ #269] * setjmp/Makefile (tests): Add bug269-setjmp. * setjmp/bug269-setjmp.c: New file. * sysdeps/powerpc/powerpc64/__longjmp-common.S [SHARED && !IS_IN_rtld]: Store R2 from jmpbuf in callers TOC save area. * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [SHARED && !IS_IN_rtld]: Store R2 in TOC save area. * sysdeps/powerpc/powerpc64/setjmp-common.S [SHARED && !IS_IN_rtld]: Copy TOC save area from previous frame as R2 (TOC) in jmpbuf. 2004-07-16 Jakub Jelinek * locale/newlocale.c: Include bits/libc-lock.h. (__libc_setlocale_lock): Extern decl. (__newlocale): Use it. Reported by Ulrich Weigand . 2004-07-15 Jakub Jelinek * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Remove static inline __attribute ((always_inline)). Don't define if NO_CANCELLATION. (__libc_fcntl): Use INLINE_SYSCALL directly instead of __fcntl_nocancel. * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c (__fcntl_nocancel): Remove static inline __attribute ((always_inline)). Don't define if NO_CANCELLATION. (__libc_fcntl): Use INLINE_SYSCALL directly instead of __fcntl_nocancel. * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Define to __libc_fcntl if NO_CANCELLATION and __ASSUME_FCNTL64 == 0. Don't define at all if NO_CANCELLATION and __ASSUME_FCNTL64 > 0. (__libc_fcntl): Don't define if __fcntl_nocancel is a macro. [BZ #262] * sysdeps/i386/elf/start.S (_start): Use @GOT instead of @GOTOFF for main. * elf/Makefile: Add rules to build and run tst-pie1. * elf/tst-pie1.c: New test. * elf/tst-piemod1.c: New file. 2004-07-14 Jakub Jelinek [BZ #266] * manual/string.texi (l64a): Note that the static buffer is 7 bytes long. Rewrite example code so that it takes into account l64a output shorter than 6 characters. Reported by Julian Graham . 2004-07-14 Kaz Kojima * sysdeps/sh/dl-machine.h: Don't reset _dl_starting_up here. (elf_machine_rela_relative): Remove unused valiable. 2004-07-12 Paul Eggert [BZ #263] * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Don't store outside the buffer if the read returns 0. __strtod_l can't set endp to NULL, so remove a test for that case. 2004-07-12 Roland McGrath * manual/signal.texi (Interrupted Primitives): Make clear that TEMP_FAILURE_RETRY evaluates its expression as long int and compares it to -1 to define "failure". 2004-07-10 Ulrich Drepper * elf/ldconfig.c: Define PROCINFO_CLASS as static before including ldsodefs.h. * sysdeps/generic/ldsodefs.h: Only define PROCINFO_CLASS if it is not already defined. * sysdeps/i386/dl-procinfo.c: Define PROCINFO_CALLS only if not already defined. * elf/rtld.c (print_statistics): Mark with noinline attribute. * sysdeps/i386/dl-machine.h (elf_machine_rel): Mark with always_inline attribute. (elf_machine_rel_relative): Likewise. * include/string.h: Add libc_hidden_proto for __strtok_r and __strsep_g. * sysdeps/generic/strsep.c: Add libc_hidden_def. * sysdeps/generic/strtok_r.c: Likewise. * sysdeps/i386/strtok_r.S: Add alias for internal symbol. * sysdeps/i386/i686/strtok_r.S: Likewise. * sysdeps/x86_64/strtok_r.S: Likewise. 2004-07-09 Alexandre Oliva * inet/getnetgrent_r.c (internal_setnetgrent): Make it hidden instead of internal-linkage, such that we can alias to it. (internal_endnetgrent, internal_getnetgrent_r): Likewise. 2004-07-09 Ulrich Drepper * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute to the front for gcc 3.5+. * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise. * include/fcntl.h: Don't declare __fcntl_nocancel here if NO_CANCELLATION is defined. 2004-07-07 Jakub Jelinek * elf/dl-fini.c (_dl_fini): Add nloaded variable, load GL(dl_nloaded) into it while still in critical section. 2004-07-06 Thorsten Kukuk * nss/getent.c (print_group, print_passwd): Use %lu format for `unsigned long int' values. * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Fix syntax error typos in goto statements. 2004-07-07 Roland McGrath * Makefile (dist-separate): New variable. (glibc-%.tar rule): Make separate tar files for add-ons listed there. Depend on their configure files. (dist-do-separate-dirs): New canned sequence to do that. (dist-separate-libidn, dist-separate-linuxthreads): New variables. (dist): Depend on add-on tar files based on $(dist-separate). (dist-version): New variable, default to $(version). (tag-for-dist, dist): Use that in place of $(version) in deps. 2004-07-07 Ulrich Drepper * elf/dl-fini.c (_dl_fini): Move the unlock of the ld.so lock before the loop running the destructors. 2004-05-18 Andreas Schwab * elf/dl-load.c (_dl_map_object_from_fd): Use the end address of the first segment for mprotect, not l_text_end. 2004-07-05 Ulrich Drepper * elf/dl-profile.c (_dl_start_profile): Compact error handling. Remove hashfraction variable. Make kcount and kcountsize local variables. * elf/dl-init.c: Don't define and use _dl_starting_up if HAVE_INLINED_SYSCALLS is defined and the variable is not used. * elf/dl-support.c: Likewise. * elf/rtld.c: Likewise. * elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly if HAVE_INLINED_SYSCALLS is defined. * sysdeps/powerpc/powerpc64/dl-machine.h: Don't reset _dl_starting_up here. * sysdeps/powerpc/powerpc32/dl-start.S: Likewise. * sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS. * config.h.in: Add entry for HAVE_INLINED_SYSCALLS. * sysdeps/posix/profil.c: If compiled for ld.so, omit code which is needed to stop profiling. * elf/dl-open.c (dl_open_worker): If a newly opened object is to be profile make sure it cannot be unloaded. * sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall. * sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation support, make sure the helper function is inlined. * sysdeps/unix/sysv/linux/pread.c: Likewise. * sysdeps/unix/sysv/linux/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise. 2004-07-05 Jakub Jelinek * include/string.h (ffs): Add libc_hidden_builtin_proto. * sysdeps/rs6000/ffs.c (ffs): Add libc_hidden_builtin_def. * sysdeps/alpha/alphaev67/ffs.S (ffs): Likewise. * sysdeps/alpha/ffs.S (ffs): Likewise. * sysdeps/s390/ffs.c (ffs): Likewise. * sysdeps/powerpc/ffs.c (ffs): Likewise. * sysdeps/i386/ffs.c (ffs): Likewise. * sysdeps/i386/i686/ffs.c (ffs): Likewise. * sysdeps/m68k/ffs.c (ffs): Likewise. * sysdeps/generic/ffs.c (ffs): Likewise. * sysdeps/m88k/ffs.c (ffs): Likewise. * sysdeps/am29k/ffs.c (ffs): Likewise. * sysdeps/i960/ffs.c (ffs): Likewise. * sysdeps/x86_64/ffs.c (ffs): Likewise. * Makerules (check-abi): Use diff -p -U 0 instead of diff -pu0. * sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp, __libc_siglongjmp): Remove symbol_version. * sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp): Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4. * sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias unconditionally. * sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove. * sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use strong_alias instead of default_symbol_version, remove symbol_version. * sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise. * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change into strong_alias to __novmxsetjmp. (__vmx__setjmp): Similarly with __vmxsetjmp. (__setjmp): Make it strong_alias to __vmx__setjmp, remove default_symbol_version and symbol_version. * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change into strong_alias to __novmxsetjmp. (__vmx__setjmp): Similarly with __vmxsetjmp. (__setjmp): Make it strong_alias to __vmx__setjmp, remove default_symbol_version and symbol_version. * nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h. 2004-07-05 Ulrich Drepper * elf/rtld.c (dl_main): Mark dyn_temp with attribute_relro. 2004-07-04 Matthew Reppert * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Use libc_hidden_ver instead of libc_hidden_def. 2004-07-01 Roland McGrath * aclocal.m4: Add provide for AC_CONFIG_AUX_DIR_DEFAULT. * Makeconfig ($(common-objpfx)shlib-versions.v.i): Move top-level $(..)shlib-versions file to last in deps list. This lets add-ons give more-specific matches that override defaults in the top-level file. * sysdeps/unix/sysv/linux/configure.in: If arch_minimum_kernel was already set, don't set it or libc_cv_gcc_unwind_find_fde. * sysdeps/unix/sysv/linux/configure: Regenerated. 2004-07-01 Martin Schwidefsky * sysdeps/s390/fpu/bits/mathinline.h [__LIBC_INTERNAL_MATH_INLINES] (__ieee754_sqrt): Define as __MATH_INLINE using sqdbr instruction. (__ieee754_sqrtf): Define as __MATH_INLINE using sqebr instruction. * sysdeps/s390/fpu/e_sqrt.c: New file. * sysdeps/s390/fpu/e_sqrtf.c: New file. * sysdeps/s390/Implies: New file. * sysdeps/s390/s390-32/Implies: Remove ieee754, move ieee754/dbl-64 and ieee754/flt-32 to s390/Implies. * sysdeps/s390/s390-64/Implies: Likewise. 2004-06-30 Jakub Jelinek * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Include tls.h. * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (thread_start): DO_CALL (exit, 1) instead of branching to _exit. * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (thread_start): Likewise. * sysdeps/s390/fpu/bits/mathinline.h: New file. * include/glob.h (glob64): Add libc_hidden_proto. * sysdeps/generic/glob64.c (glob64): Add libc_hidden_def. * sysdeps/gnu/glob64.c (glob64): Likewise. * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Likewise. 2004-06-11 Jakub Jelinek * sysdeps/i386/fpu/libm-test-ulps: Update for GCC 3.4. * sysdeps/s390/fpu/libm-test-ulps: Likewise. 2004-06-11 Dwayne Grant McConnell * sysdeps/powerpc/fpu/s_lround.c: Removed. * sysdeps/powerpc/fpu/s_lroundf.c: Removed. * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: New file. * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: New file. * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: New file. * sysdeps/powerpc/powerpc32/fpu/s_floor.S: New file. * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: Removed. * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: New file. * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: New file. * sysdeps/powerpc/powerpc32/fpu/s_lround.S: New file. * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: New file. * sysdeps/powerpc/powerpc32/fpu/s_rint.S: New file. * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: New file. * sysdeps/powerpc/powerpc32/fpu/s_round.S: New file. * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: New file. * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: New file. 2004-06-30 Ulrich Drepper * include/net/if.h: Handle if_nameindex and if_freenameindex with libc_proto_hidden. * sysdeps/unix/sysv/linux/netlinkaccess.h: New file. * sysdeps/unix/sysv/linux/ifaddrs.c: Export netlink handling functions. * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Implement using netlink if possible. Fall back on ioctl method if necessary. * sysdeps/unix/sysv/linux/Dist: Add netlinkaccess.h. * include/unistd.h: Declare __truncate. * sysdeps/generic/truncate.c: Also define __truncate. * sysdeps/mach/hurd/truncate.c: Likewise. * sysdeps/unix/common/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/truncate64.c: Use __truncate, not truncate. 2004-06-29 Ulrich Drepper * stdio-common/printf-parsemb.c (__parse_one_specmb): Initialize info.extra. Patch by Marcus Meissner. 2004-06-29 Kaz Kojima * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER): Fix branch offset for a PLT entry. 2004-06-20 Jim Meyering * malloc/obstack.h (obstack_base): Cast to `void *', to align with documentation. 2004-06-28 Ulrich Drepper * inet/bug-if1.c (do_test): Simply use 0 as invalid index. Workaround for [BZ #232]. * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Use extend_alloca. 2004-06-28 GOTO Masanori * iconv/gconv_simple.c: Use get16/put16 for user given buffer in ucs2/ucs2reverse when unaligned memory access is attempted. * iconv/tst-iconv5.c: New file. * iconv/Makefile (tests): Add tst-iconv5. 2004-06-28 Jakub Jelinek * inet/bug-if1.c: Include . 2004-06-19 Roland McGrath * sysdeps/posix/waitid.c (do_waitid) [DO_WAITID]: Define function under this macro name instead. [NO_DO_WAITID]: Don't define it at all. (do_waitid) [WNOWAIT, WEXITED]: If these POSIX.1 waitid flag bits are defined, then return ENOTSUP for combinations of selection bits other than WEXITED and WEXITED|WSTOPPED, which this version cannot support. * posix/tst-waitid.c: New file. * posix/Makefile (tests): Add it. 2004-06-28 Jakub Jelinek * sysdeps/unix/alpha/sysdep.h (inline_syscall6): Fix a typo. [BZ #231] * sysdeps/unix/alpha/sysdep.S (__syscall_error): Avoid !samegp relocation in librt.so. [BZ #230] * sysdeps/alpha/dl-machine.h (_dl_start_user): Use ldah/ldl to load _dl_skip_args. Patch by Jakub Bogusz . 2004-06-27 Ulrich Drepper * elf/ldconfig.c (add_dir): Take chroot into account. Based on changes by HJ Lu and Hideki Iwamoto. * nscd/connections.c (invalidate_cache): If the host cache has to be invalidated, re-read resolv.conf. * resolv/resolv.h (RES_NOIP6DOTINT): Define. * resolv/res_init.c (res_setoptions): Handle no-ip6-dotint option. * resolv/gethnamaddr.c (gethostbyaddr): Don't lookup with .ip6.int if RES_NOIP6DOTINT flag is set. * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise. 2004-06-25 Jakub Jelinek * sysdeps/unix/sysv/linux/powerpc/fcntl.c: Move to... * sysdeps/unix/sysv/linux/powerpc/powerpc32/fcntl.c: ... here. * sysdeps/unix/sysv/linux/powerpc/lockf64.c: Move to... * sysdeps/unix/sysv/linux/powerpc/powerpc32/lockf64.c: ... here. * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: New file. * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_GETLK, F_SETLK, F_SETLKW): Fix values for -m32 -D_FILE_OFFSET_BITS=64. 2004-06-21 Jakub Jelinek [BZ #231] * sysdeps/unix/alpha/Makefile: New file. * sysdeps/unix/alpha/rt-sysdep.S: New file. Reported by Jakub Bogusz . 2004-06-18 Ulrich Drepper * sysdeps/posix/getaddrinfo.c (gaih_inet): For AI_CANONNAME, determine the canonical name only for the first returned entry. * inet/bug-if1.c: New file. * inet/Makefile (tests): Add bug-if1. 2004-06-18 Roland McGrath * Makerules (compile-mkdep-flags): Add -MT $@. * Makefile (dist, tag-for-dist): New targets. (files-for-dist, tag-of-stem): New variables. (glibc-%.tar glibc-linuxthreads-%.tar): New pattern rule. Make tar files using cvs export. (%.bz2, %.gz, tag-%): New pattern rules. (distribute): Variable removed. (+subdir_targets): Remove distinfo targets. (echo_subdirs, echo-distinfo, parent_echo-distinfo): Targets removed. (rpm/%): Pattern rule removed. * rpm/Makefile, rpm/rpmrc, rpm/template: Ancient cruft files removed. * Rules (subdir_echo-headers, subdir_echo-distinfo, subdir_dist): Targets removed. * Makerules (dist, subdir_distinfo): Targets removed. ($(objpfx)distinfo): Depend on $(distribute). * Make-dist: File removed. * NEWS: Fix a typo. Update bug-reporting instructions. 2004-06-17 Thorsten Kukuk * sysdeps/unix/sysv/linux/sched_setaffinity.c (__sched_setaffinity_new): Set errno to EINVAL and return -1 if cpuset is wrongly set. 2004-06-15 Steven Munroe * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling for POWER4 machines. 2004-06-14 Jakub Jelinek [BZ #218] * sunrpc/pmap_prot2.c (xdr_pmaplist): When freeing, remember pml_next in a local variable, point rp to that local variable afterwards. 2004-06-11 Jakub Jelinek * sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Handle special cases properly. 2004-06-17 Ulrich Drepper * sysdeps/unix/sysv/linux/if_index.c (if_indextoname): Correct error value for unknown interface. [BZ #198] 2004-06-13 Jakub Jelinek * sysdeps/i386/bits/string.h (memcpy): Add () around arguments. (memchr, __memrchr, strlen, strcmp, strncmp, __strchr_g, __strchr_c, __strchrnul_g, __strchrnul_c, strspn, strcspn, strpbrk): Add memory the asm uses as its input, either of size __n where __n is known or 0xfffffff. (strstr): Add "memory" clobber. 2004-06-14 Jakub Jelinek [BZ #219] * nss/nsswitch.c (free_mem): Don't try to close a library handle if the handle is invalid. Patch by David Kimdon . 2004-06-11 Dmitry V. Levin [BZ #217] * debug/xtrace.sh: Fix typo in error diagnostics. 2004-06-14 Andreas Schwab * stdio-common/psignal.c (psignal): Don't use BUF when asprintf failed. 2004-06-15 Steven Munroe * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Fix pasto that clobbers r19. Fix pasto that overflowed sigcontext.v_reserve. * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Fix pasto that clobbers r19. * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Fix pasto that clobbers r19. Fix pasto that overflowed sigcontext.v_reserve. * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Fix setting of sigcontext.v_regs. Fix pasto that clobbers r19. Fix pasto that overflowed sigcontext.v_reserve. * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Fix pasto that clobbers r19. * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Fix setting of sigcontext.v_regs. Fix pasto that clobbers r19. Fix pasto that overflowed sigcontext.v_reserve. 2004-05-04 H.J. Lu [BZ #150] * sysdeps/generic/strtol_l.c (DEF): Use ".gnu.linkonce.r." instead of ".gnu.linkonce.ro." as the prefix for linkonce read-only section name. 2004-06-14 Richard Henderson * sysdeps/alpha/div_libc.h (_ITOFS): Use "sp" not "$sp". (_ITOFT, _FTOIT, _ITOFT2): Likewise. 2004-06-08 Jakub Jelinek * sysdeps/s390/s390-32/backtrace.c (init): Guard with #ifdef SHARED. (unwind_backtrace, unwind_getip): Define #ifndef SHARED. (__backtrace): Don't call init #ifndef SHARED. * sysdeps/s390/s390-64/backtrace.c (init): Guard with #ifdef SHARED. (unwind_backtrace, unwind_getip): Define #ifndef SHARED. (__backtrace): Don't call init #ifndef SHARED. * sysdeps/ia64/backtrace.c (init): Guard with #ifdef SHARED. (unwind_backtrace, unwind_getip): Define #ifndef SHARED. (__backtrace): Don't call init #ifndef SHARED. 2004-06-11 Roland McGrath * sysdeps/arm/strlen.S [__ARMEB__]: Compute correctly for big-endian. From Krzysztof Halasa . 2004-06-10 Jakub Jelinek * elf/tls-macros.h [__s390x__] (TLS_LD, TLS_GD): Clobber also r14. 2004-06-08 Jakub Jelinek [BZ #199] * crypt/md5-crypt.c (__md5_crypt): Only update buflen if realloc succeeds. Reported by Miles Ohlrich . * elf/chroot_canon.c (chroot_canon): Avoid segfault if first malloc fails. Avoid memory leak if realloc fails. 2004-06-09 Jakub Jelinek * sysdeps/generic/setenv.c (setenv): Return -1/EINVAL if name is NULL, "" or contains '=' character in it. Reported by Michael T Kerrisk . * stdlib/tst-environ.c: Include errno.h. (main): Add tests for these arguments to setenv/unsetenv. 2004-06-07 Roland McGrath * NEWS: Update bug reporting instructions. Fix some typos. 2004-06-05 Ulrich Drepper * stdio-common/_itoa.h: Don't expand _itoa inline for libc. * stdio-common/_itoa.c: Add _itoa implementation. * nscd/nscd_gethst_r.c (__nscd_open_socket): Change implementation to also send request. Add parameter to allow this. Change callers. * nscd/nscd_getgr_r.c: Change __nscd_open_socket caller. * nscd/nscd_getpw_r.c: Likewise. * nscd/nscd-client.h: Change __nscd_open_socket prototype. 2004-06-05 Andreas Jaeger * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext): Handle more than 6 args correctly. Based on a patch by Masahide Washizawa . 2004-06-04 Ulrich Drepper * nscd/nscd_gethst_r.c (nscd_gethst_r): Use __nss_not_use_nscd_hosts in all places, not __nss_not_use_nscd_group. Reported by Philippe Gregoire. 2004-06-03 Ulrich Drepper * sysdeps/i386/i486/bits/atomic.h: Optimize a bit. 2004-05-07 Dmitry V. Levin * argp/argp-help.c (__argp_error, __argp_failure): Check result of __asprintf call and don't use string if it failed. * stdio-common/psignal.c (psignal): Likewise. * locale/programs/localedef.c (more_help): Likewise. * resolv/res_hconf.c (arg_service_list, arg_trimdomain_list, arg_bool, parse_line): Check result of __asprintf calls and don't use string if they failed. * sunrpc/svc_simple.c (registerrpc, universal): Likewise. * elf/ldconfig.c (parse_conf_include): Check result of __asprintf call and exit if it failed. 2004-05-10 Jakub Jelinek * sysdeps/posix/sysconf.c (__sysconf) : Return _POSIX_* value instead of 1. * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) : Return _POSIX_VERSION instead of 1. 2004-05-07 Jeroen Dekkers * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Add -momit-leaf-frame-pointer. * inet/test-ifaddrs.c (addr_string): Surround AF_PACKET case with #ifdef AF_PACKET. * sysdeps/mach/hurd/getcwd.c (_hurd_canonicalize_directory_name_intern): Only realloc when size is <= 0. * sysdeps/mach/hurd/mmap.c (__mmap): Fail when addr or offset isn't page aligned. * sysdeps/mach/hurd/spawni.c (EXPAND_DTABLE): Set dtablesize to new size. * sysdeps/mach/hurd/Versions (GLIBC_PRIVATE): Add __libc_read, __libc_write and __libc_lseek64. 2004-05-29 Roland McGrath * elf/Makefile (shared-only-routines): Add dl-caller. 2004-05-28 Ulrich Drepper * sysdeps/powerpc/configure.in: New file. 2004-05-28 Steven Munroe * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Add .machine "altivec" to enable VMX instructions. * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise. * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise. * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.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/powerpc64/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise. 2004-05-27 Jakub Jelinek * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Define using __builtin_expm1l for GCC 3.5+. (__expl): Define using __builtin_expl for GCC 3.4+. (exp, expf, expl): Don't define for GCC 3.4+. (tan, tanf, tanl): Don't define for GCC 3.5+. (__atan2l): Define using __builtin_atan2l for GCC 3.4+. (atan2, atan2f, atan2l): Don't define for GCC 3.4+ or !__FAST_MATH__. (fmod, fmodf, fmodl): Don't define for GCC 3.5+ or !__FAST_MATH__. (fabsf, fabsl): Only provide if __USE_MISC or __USE_ISOC99. (sin, sinf, sinl, cos, cosf, cosl, log, logf, logl): Don't define for GCC 3.4+. (log10, log10f, log10l, asin, asinf, asinl, acos, acosf, acosl): Don't define for GCC 3.5+. (atan, atanf, atanl): Don't define for GCC 3.4+ or !__FAST_MATH__. (log1p, log1pf, log1pl, logb, logbf, logbl, log2, log2f, log2l): Don't define for GCC 3.5+. (drem, dremf, dreml): Don't define for GCC 3.5+ or !__FAST_MATH__. * sysdeps/sparc/fpu/bits/mathinline.h (sqrt, sqrtf, sqrtl): Don't define for GCC 3.2+. 2004-05-27 Jakub Jelinek * string/bits/string2.h (__bzero): Define even for GCC 3.0+. * sysdeps/alpha/stpcpy.S (stpcpy): Add libc_hidden_builtin_def. * sysdeps/alpha/alphaev67/stpcpy.S (stpcpy): Likewise. * sysdeps/powerpc/powerpc32/stpcpy.S (stpcpy): Likewise. * sysdeps/powerpc/powerpc64/stpcpy.S (stpcpy): Likewise. * sysdeps/sparc/sparc32/stpcpy.S (stpcpy): Likewise. * sysdeps/sparc/sparc64/stpcpy.S (stpcpy): Likewise. * sysdeps/i386/stpcpy.S (stpcpy): Likewise. * sysdeps/i386/i586/stpcpy.S (stpcpy): Likewise. * sysdeps/generic/stpcpy.c (stpcpy): Likewise. * sysdeps/x86_64/stpcpy.S (stpcpy): Likewise. * sysdeps/i386/i586/memcpy.S (memcpy): Remove libc_hidden_builtin_def if MEMPCPY_P. * sysdeps/x86_64/memcpy.S (memcpy): Likewise. * sysdeps/i386/i686/mempcpy.S (mempcpy): Add libc_hidden_builtin_def. * sysdeps/i386/i586/mempcpy.S (mempcpy): Likewise. * sysdeps/generic/mempcpy.c (mempcpy): Likewise. * sysdeps/x86_64/mempcpy.S (mempcpy): Likewise. 2004-05-26 Roland McGrath * sysdeps/generic/bits/in.h (IMPLINK_IP, IMPLINK_LOWEXPER, IMPLINK_HIGHEXPER): Macros removed. These are long obsolete in BSD systems where they originated. * conform/data/netinet/in.h-data: Remove `allow IMPLINK_*' 2004-05-26 Jakub Jelinek * include/string.h (mempcpy, stpcpy): Add libc_hidden_builtin_proto. * string/bits/string2.h (memset): Disable macro for GCC 3.0+. (__mempcpy): Use __builtin_mempcpy for GCC 3.4+. (strchr): For GCC 3.2+, only use __rawmemchr if second argument is constant '\0' and first argument is not constant. (__stpcpy): Use __builtin_stpcpy for GCC 3.4+. (strncpy): Remove #ifdef _USE_STRING_ARCH_mempcpy variant. For GCC 3.2+ use __builtin_strncpy. (strncat): For GCC 3.2+ use __builtin_strncat. (strcmp): For GCC 3.2+ use __builtin_strcmp if both arguments are constant. (strcspn, strspn, strpbrk): For GCC 3.2+, use builtin function if both arguments are constant. 2004-05-26 Ulrich Drepper * nss/nss_files/files-hosts.c: Fix condition for looking up IPv4 mapped addresses in gethostbyaddr. 2004-05-25 Ulrich Drepper * nss/digits_dots.c (__nss_hostname_digits_dots): Remove typep and flags parameter, convert afp to simple int parameter. Adjust code. typep was never != NULL and flags therefore also unused. *afp is never modified. * nss/nsswitch.h: Adjust __nss_hostname_digits_dots prototype. * nss/getXXbyYY.c: Remove HAVE_TYPE handling. Adjust af parameter handling for __nss_hostname_digits_dots calls. * nss/getXXbyYY_r.c: Likewise. * elf/dl-load.c (_dl_map_object_from_fd): Map DSOs with MAP_DENYWRITE. 2004-05-25 Steven Munroe * sysdeps/powerpc/fpu/Makefile: Make ld.so a dependency of libm.so. * sysdeps/powerpc/fpu/bits/mathinline.h [__LIBC_INERNAL_MATH_INLINES] (__ieee754_sqrt): Define as __MATH_INLINE using fsqrt instruction. (__ieee754_sqrtf): Define as __MATH_INLINE using fsqrts instruction. * sysdeps/powerpc/fpu/e_sqrt.c (__slow_ieee754_sqrt): Moved implementation from w_sqrt.c. * sysdeps/powerpc/fpu/e_sqrtf.c (__slow_ieee754_sqrtf): Moved implementation from w_sqrtf.c. * sysdeps/powerpc/fpu/w_sqrt.c (__sqrt): Wrapper implementation using inline __ieee754_sqrt(). * sysdeps/powerpc/fpu/w_sqrtf.c (__sqrtf): Wrapper implementation using inline __ieee754_sqrtf(). * sysdeps/powerpc/powerpc32/sysdep.h [__ASSEMBLER__]: Include independent of __ASSEMBLER__. * sysdeps/powerpc/sysdep.h [__ASSEMBLER__] (PPC_FEATURE_*): Define PPC_FEATURE_* independent of __ASSEMBLER__. 2004-05-25 Jakub Jelinek * sysdeps/pthread/aio_notify.c: Use <> instead of "" for aio_misc.h include. (aio_start_notify_thread): Define if not defined. (notify_func_wrapper): Use it. * sysdeps/pthread/aio_misc.c: Use <> instead of "" for aio_misc.h include. (aio_create_helper_thread): Define if not defined. (__aio_create_helper_thread): New function. (__aio_enqueue_request): Use aio_create_helper_thread. * nis/ypclnt.c (ypall_data, ypall_foreach): Remove. (struct ypresp_all_data): New type. (__xdr_ypresp_all): Change second argument to struct ypresp_all_data *. Replace ypall_foreach and ypall_data with objp->foreach and objp->data. (yp_all): Remove status variable, add data. Replace all uses of status with data.status. Initialize data.foreach and data.data instead of ypall_foreach and ypall_data. 2004-05-24 Jakub Jelinek * elf/dl-lookup.c (add_dependency): Set DF_1_NODELETE bit in l_flags_1, not in l_flags. 2004-04-10 Robert Millan * sysdeps/unix/sysv/linux/bits/in.h: Cosmetic fixes to get in sync with sysdeps/generic/bits/in.h. 2004-05-25 Roland McGrath * sysdeps/generic/unwind-dw2-fde-glibc.c: Change copyright terms from GCC GPL to standard glibc LGPL. 2004-05-24 Ulrich Drepper * manual/string.texi (Copying and Concatenation): Fixed second concat example. Reported by Fabian Pietsch . 2004-05-23 Ulrich Drepper * malloc/obstack.c: Don't allow linking with _obstack. 2004-05-23 Andreas Schwab * sysdeps/m68k/m68020/bits/atomic.h: Use "+m" constraint instead of separate "m" constraints. 2004-05-15 Chris Demetriou * sysdeps/mips/dl-machine.h (ELF_DL_FRAME_SIZE) (ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS): For the N32 and 64 ABIs, save and restore regs $10 and $11 (a6 and a7). 2004-05-20 Paul Eggert * malloc/obstack.c (_obstack) [!defined _LIBC]: Remove; not used. Add comment explaining why libc still defines it. 2004-05-19 Paul Eggert * malloc/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast, obstack_alignment_mask, obstack_alloc, obstack_base, obstack_blank, obstack_blank_fast, obstack_chunk_size, obstack_copy, obstack_copy0, obstack_finish, obstack_grow, obstack_grow0, obstack_init, obstack_int_grow, obstack_int_grow_fast, obstack_make_room, obstack_memory_used, obstack_next_free, obstack_object_size, obstack_ptr_grow, obstack_ptr_grow_fast, obstack_room): Remove declarations of nonexistent functions. 2004-05-18 Steven Munroe * sysdeps/powerpc/powerpc64/sysdep.h [__ASSEMBLER__]: Include independent of __ASSEMBLER__. [PIC]: Redundent for powerpc64, removed. (ENTRY): Generate size and alignment for opd entry. (EALIGN): Generate size and alignment for opd entry. (END): Use DOT_LABEL in ASM_SIZE_DIRECTIVE. (END_GEN_TB): Use DOT_LABEL in ASM_SIZE_DIRECTIVE. 2004-05-19 Ulrich Drepper * misc/regexp.h: Say the functions have been withdrawn. * wcsmbs/tst-wcpncpy.c: Add more tests. 2004-05-18 Roland McGrath * sysdeps/generic/unwind.h: Change copyright terms from GCC GPL to standard glibc LGPL. * sysdeps/generic/unwind-dw2.c: Likewise. * sysdeps/generic/unwind-dw2-fde.c: Likewise. * sysdeps/generic/unwind-dw2-fde.h: Likewise. * sysdeps/generic/unwind-pe.h: Likewise. 2004-05-15 Petter Reinholdtsen * locale/iso-3166.def: Remove YUGOSLAVIA and insert "SERBIA AND MONTENEGRO" which have taken over the code 819. Patch from Danilo Segan. [BZ #40] 2004-05-15 Jakub Jelinek * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (SYSCALL_ERROR_HANDLER): Rename __sparc.get_pic.l7 to __sparc_get_pic_l7. 2004-05-15 Joseph S. Myers * catgets/gencat.c: Update bug reporting instructions. * csu/version.c: Likewise. * debug/catchsegv.sh: Likewise. * debug/pcprofiledump.c: Likewise. * debug/xtrace.sh: Likewise. * elf/ldd.bash.in: Likewise. * iconv/iconv_prog.c: Likewise. * iconv/iconvconfig.c: Likewise. * locale/programs/locale.c: Likewise. * locale/programs/localedef.c: Likewise. * login/programs/pt_chown.c: Likewise. * malloc/memusage.sh: Likewise. * malloc/memusagestat.c: Likewise. * malloc/mtrace.pl: Likewise. * manual/crypt.texi: Likewise. * manual/install.texi: Likewise. * nss/makedb.c: Likewise. 2004-05-14 Jakub Jelinek * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Only CHECK_STATIC_TLS if sym != NULL. * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise. * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise. 2004-05-12 Andreas Schwab * posix/regex_internal.c (build_wcs_buffer): Also set pstr->mbs when translating. 2004-05-13 H.J. Lu * Rules (xtests): Depend on tests. 2004-05-13 Jakub Jelinek * libio/genops.c (_IO_default_xsputn): Avoid one overflow per char if count is negative, yet write_ptr < write_end. (_IO_default_xsgetn): Avoid one underflow per char if count is negative, yet read_ptr < read_end. 2004-05-12 Steven Munroe * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (XTABS): Define XTABS equal to TAB3. 2004-05-12 Ulrich Drepper * elf/dl-lookup.c (_dl_lookup_symbol_x): Correct _dl_signal_cerror call. 2004-05-10 Roland McGrath * hurd/hurdlookup.c (__hurd_file_name_split): Return ENOENT for "". (__hurd_directory_name_split): Likewise. 2004-05-10 Ulrich Drepper * po/fr.po: Update from translation team. 2004-05-10 Andreas Jaeger * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext): Correctly compute alignment. Patch by Michael Matz . 2004-05-09 Ulrich Drepper * sysdeps/generic/sigpause.c: Prevent sigpause prototype. * sysdeps/posix/sigpause.c: Likewise. * signal/signal.h: Don't define sigpause macro unless needed. 2004-05-08 Jakub Jelinek * configure.in (libc_cv_libgcc_s_suffix): New check. (libc_cv_as_needed): Use -lgcc_s$libc_cv_libgcc_s_suffix. * config.make.in (libgcc_s_suffix): Set. * Makeconfig (libgcc_eh): Use -lgcc_s$(libgcc_s_suffix). 2004-05-08 Ulrich Drepper * signal/signal.h: Use BSD sigpause only if BSD behavior is preferred. 2004-04-29 Steven Munroe * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6): Load argument values into temporary variables. * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6): Likewise. 2004-05-07 Ulrich Drepper * sysdeps/unix/sysv/linux/Makefile: mq_send.c and mq_receive.c need to be compiled with exceptions. 2004-05-06 Ulrich Drepper * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Fix memory handling. * sysdeps/generic/ifreq.c (__ifreq): Fix memory handling. * resolv/res_hconf.c (_res_hconf_reorder_addrs): Make clear that realloc cannot fail. * nss/nss_files/files-netgrp.c (EXPAND): Free buffer which cannot be expanded. * nis/nis_table.c: Clean up memory handling. * nis/nis_subr.c (nis_getnames): Clean up memory handling. * nis/nis_removemember.c (nis_removemember): Add comment explaining use of realloc. * math/tgmath.h (fabs): Use __TGMATH_UNARY_REAL_IMAG_RET_REAL. (carg): Likewise. Patch by Lev S Bishop . * math/bug-tgmath1.c (main): Test fabs and carg as well. 2004-05-06 Richard Henderson * elf/elf.h (AT_L1I_CACHESHAPE, AT_L1D_CACHESHAPE, AT_L2_CACHESHAPE, AT_L3_CACHESHAPE): New. * sysdeps/unix/sysv/linux/alpha/Versions: Export __libc_alpha_cache_shape as a private symbol. * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c: New file. * sysdeps/unix/sysv/linux/alpha/sysconf.c: New file. 2004-05-06 Richard Henderson * sysdeps/alpha/div_libc.h (_ITOFS, _ITOFT, _FTOIT, _ITOFT2): New. * sysdeps/alpha/divl.S: Use them. * 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. 2004-05-06 Ulrich Drepper * math/tgmath.h (__TGMATH_UNARY_REAL_IMAG_RET_REAL):Define. (cimag): Use it. (creal): Likewise. * math/Makefile (tests): Add bug-tgmath1. * math/bug-tgmath1.c: New file. 2004-05-05 Jakub Jelinek * sysdeps/alpha/atomicity.h: Remove. * sysdeps/generic/atomicity.h: Remove. 2004-05-05 H.J. Lu * sysdeps/i386/i486/bits/string.h (strpbrk): Cast return to char *. 2004-04-22 David Mosberger * sysdeps/unix/sysv/linux/ia64/Makefile (librt-routines): Mention rt-sysdep. * sysdeps/unix/sysv/linux/ia64/rt-sysdep.S: New file. * sysdeps/ia64/strcat.c: New file. * sysdeps/ia64/strcat.S: Delete. 2004-05-04 Jakub Jelinek * sysdeps/unix/sysv/linux/ia64/sysdep.S (USE___THREAD): Remove defined. 2004-04-23 Jakub Jelinek * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Add libc_hidden_proto. Define to __GI___libm_error_support for assembly going into libc.so. * sysdeps/ia64/fpu/libc_libm_error.c (__libm_error_support): Add libc_hidden_def. * include/libc-symbols.h (HIDDEN_BUILTIN_JUMPTARGET): Define. * sysdeps/ia64/bcopy.S (bcopy): Use it for jump to memmove. * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Access gprel errno if RTLD_PRIVATE_ERRNO or __thread __libc_errno/errno if USE___THREAD. 2004-05-03 Jakub Jelinek * sysdeps/unix/bsd/bits/fcntl.h (F_SETOWN, F_GETOWN): Define if __USE_BSD or __USE_UNIX98. * sysdeps/unix/bsd/ultrix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/bsd/bsd4.4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/common/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/aix/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/irix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/generic/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * sysdeps/mach/hurd/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise. * io/sys/stat.h (S_ISSOCK, S_IFSOCK): Likewise. 2004-05-01 Jakub Jelinek * posix/Versions (libc): Remove __libc_wait, __libc_waitpid, __libc_pause, __libc_nanosleep, __libc_pread, __libc_pread64, __libc_pwrite64, __waitid and __pselect @@GLIBC_PRIVATE. * stdlib/Versions (libc): Remove __on_exit@@GLIBC_PRIVATE. * sysdeps/unix/sysv/linux/Versions (libc): Remove __libc_sigaction@@GLIBC_PRIVATE. * sysdeps/unix/sysv/linux/x86_64/Versions (libc): Remove __modify_ldt@@GLIBC_PRIVATE. * socket/Versions (libc): Remove __libc_accept, __libc_send, __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv, __libc_sendto and __libc_connect @@GLIBC_PRIVATE. * stdio-common/Versions (libc): Remove _itoa_upper_digits@@GLIBC_PRIVATE. * resolv/Versions (libresolv): Remove __ns_samename@@GLIBC_PRIVATE. * misc/Versions (libc): Remove __libc_fsync, __libc_msync, __libc_readv and __libc_writev @@GLIBC_PRIVATE. * termios/Versions (libc): Remove __libc_tcdrain@@GLIBC_PRIVATE. * io/Versions (libc): Remove __libc_open, __libc_close, __libc_read, __libc_write, __libc_lseek, __libc_fcntl, __libc_open64 and __libc_lseek64 @@GLIBC_PRIVATE. 2004-04-30 Jakub Jelinek * elf/dl-load.c (open_verify): Move e_phentsize check after e_type check. 2004-04-29 Steven Munroe * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_floor.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: Removed. * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Removed. * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_llround.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_lround.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_rint.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_round.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: New file. * math/test-misc.c [LDBL_MANT_DIG == 106](main): Correct LDBL_MAX mantissa for AIX long double format. * misc/qefgcvt.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Define for AIX long double format. * misc/qefgcvt_r.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Likewise. * stdlib/fpioconst.c [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024] (_fpioconst_pow10): AIX long double format has same exponent range as double. * stdlib/fpioconst.h [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024] (LDBL_MAX_10_EXP_LOG): AIX long double format has same exponent range as double. 2004-04-23 Art Haas * sysdeps/unix/sysv/linux/kernel-features.h: Add 'defined'. 2004-04-28 Carlos O'Donell * sysdeps/unix/sysv/linux/mq_getattr.c: Include . * sysdeps/unix/sysv/linux/mq_notify.c: Likewise. * sysdeps/unix/sysv/linux/mq_open.c: Likewise. * sysdeps/unix/sysv/linux/mq_receive.c: Likewise. * sysdeps/unix/sysv/linux/mq_send.c: Likewise. 2004-04-29 Philip Blundell * sysdeps/arm/dl-machine.h (RTLD_START): Avoid unnecessary GOT entries. 2004-04-29 Jakub Jelinek * manual/resource.texi (sched_setaffinity, sched_getaffinity): Fix prototypes and description [BZ #131]. * string/bits/string2.h (strpbrk): Cast NULL to char * [BZ #130]. Patch by Ed Catmur . * string/tst-inlcall.c (main): Add test for strpbrk. [BZ #140] * sysdeps/unix/sysv/linux/sys/sysctl.h: Remove linux/compiler.h include. (_LINUX_KERNEL_H, _LINUX_TYPES_H, _LINUX_LIST_H): Only define if not yet defined, #undef back after including linux/sysctl.h if defined here. (__LINUX_COMPILER_H, __user): Define if not yet defined, #undef back after including linux/sysctl.h if defined here. * sysdeps/sparc/sparc64/soft-fp/qp_qtoi.c (_Qp_qtoi): Use %f31 for single precision register, add it to __asm clobbers [BZ #139]. * sysdeps/sparc/sparc64/soft-fp/qp_qtoui.c (_Qp_qtoui): Use %f31 for single precision register, add it to __asm clobbers. * sysdeps/sparc/sparc64/soft-fp/qp_qtoux.c (_Qp_qtoux): Use fqtox instead of fqtoi in QP_HANDLE_EXCEPTIONS. * sysdeps/sparc/sparc64/soft-fp/qp_qtox.c (_Qp_qtox): Likewise. Reported by M. H. VanLeeuwen . 2004-04-23 Andreas Schwab * sysdeps/unix/sysv/linux/m68k/register-dump.h: Use __attribute_used__. 2004-04-22 Philip Blundell * sysdeps/arm/dl-machine.h (elf_machine_rela): Don't use INTUSE when calling _dl_signal_error. (elf_machine_rel): Likewise. 2004-04-21 Ulrich Drepper * sysdeps/unix/sysv/linux/ia64/setjmp.S: Define _GI___sigsetjmp and use it internally instead of __sigsetjmp. * sysdeps/ia64/fpu/s_frexpf.c (frexpf): Use _GI___libm_frexp_4f. * sysdeps/ia64/fpu/s_frexpl.c (frexpl): Use _GI___libm_frexp_4l. * sysdeps/ia64/fpu/libm_frexp4.S: Define _GI___libm_frexp_4. * sysdeps/ia64/fpu/libm_frexp4f.S: Define _GI___libm_frexp_4f. * sysdeps/ia64/fpu/libm_frexp4l.S: Define _GI___libm_frexp_4l. * sysdeps/ia64/fpu/s_frexp.c (frexp): Use _GI___libm_frexp_4. * sysdeps/ia64/fpu/libm_support.h: Declare _GI___libm_frexp_4, _GI___libm_frexp_4f, _GI___libm_frexp_4l. * sysdeps/ia64/fpu/bits/mathinline.h: New file. * sysdeps/unix/sysv/linux/ia64/__start_context.S: Use HIDDEN_JUMPTARGET for exit call. * sysdeps/unix/sysv/linux/ia64/clone2.S: Use HIDDEN_JUMPTARGET for _exit call. * sysdeps/ia64/bcopy.S: Use HIDDEN_JUMPTARGET for memmove call. * sysdeps/ia64/strcat.S: Use HIDDEN_JUMPTARGET for strlen and strcpy calls. 2004-04-21 Jakub Jelinek * posix/tst-chmod.c (do_test): Fix a typo. * elf/lateglobal.c (main): Fix error checks. Patch by Stephen Clarke . * manual/ctype.texi (isblank, iswblank): Mark as ISO functions, mention they have been added in ISO C99. Reported by Ben Pfaff . 2004-03-31 H.J. Lu * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: Fix typo. 2004-04-20 Jakub Jelinek * sysdeps/unix/sysv/linux/shm_open.c (shm_unlink): Change EPERM into EACCES. 2004-04-20 Jakub Jelinek * stdio-common/vfscanf.c (_IO_vfscanf): Revert last %% whitespace handling change. * stdio-common/tst-sscanf.c (int_tests): Adjust. * nis/nss-nis.c: Include stdlib.h. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Shut up a warning. * sysdeps/sparc/sparc64/memcmp.S (memcmp): Remove BP_SYM () from libc_hidden_builtin_def. 2004-04-20 Jim Meyering * misc/error.c (error_tail): Don't leak upon realloc failure. 2004-04-20 Martin Schwidefsky * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable): Use RETURN_ADDRESS instead of __builtin_return_address. 2004-04-19 Ulrich Drepper * sysdeps/unix/sysv/linux/mq_unlink.c: Rewrite to produce more compact code. 2004-04-20 Jakub Jelinek * stdio-common/vfscanf.c (_IO_vfscanf): When skipping whitespace, do input_error () instead of conv_error () and don't look at errno. Don't eat any whitespace before %% if skip_space == 0. * stdio-common/tst-sscanf.c (int_tests): New array. (main): Run int_tests. See ChangeLog.14 for earlier changes.