diff options
author | Ulrich Drepper <drepper@redhat.com> | 2010-05-06 04:42:46 -0700 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2010-05-06 04:42:46 -0700 |
commit | 5f24d53acb2cd02ffb4ac925c0244e4f1f854499 (patch) | |
tree | 003e29b340698e10773e68adc30f8dcf8f345b5a /ChangeLog.17 | |
parent | d84acf388ed8b3f162dda0512139095bfc268beb (diff) | |
download | glibc-5f24d53acb2cd02ffb4ac925c0244e4f1f854499.tar.gz |
Fix race in free sanity check.
Diffstat (limited to 'ChangeLog.17')
-rw-r--r-- | ChangeLog.17 | 15321 |
1 files changed, 15321 insertions, 0 deletions
diff --git a/ChangeLog.17 b/ChangeLog.17 new file mode 100644 index 0000000000..b3d22b851e --- /dev/null +++ b/ChangeLog.17 @@ -0,0 +1,15321 @@ +2010-05-04 Andreas Schwab <schwab@redhat.com> + + * posix/regexec.c (find_collation_sequence_value): Fix skipping + the wide char sequence of the collating element. + +2010-05-05 Ulrich Drepper <drepper@redhat.com> + + [BZ #11571] + * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): Handle + too small buffers according to the standard. + + * sysdeps/unix/sysv/linux/kernel-features.h: Alpha doesn't have to be + handled here anymore. + Patch mostly by Matt Turner <mattst88@gmail.com>. + +2010-05-03 Ulrich Drepper <drepper@redhat.com> + + * version.h (VERSION): Bump for 2.12 release. + * include/features.h (__GLIBC_MINOR__): Bump to 12. + + [BZ #11149] + * elf/ldconfig.c (search_dir): Fix handling of symlinks in chroot. + + * elf/chroot_canon.c (chroot_canon): Use xmalloc and xrealloc. + + * elf/ldconfig.c (parse_conf_include): Don't fall back to + directories named in config file outside the chroot. + +2010-02-02 Andreas Schwab <schwab@redhat.com> + + * sysdeps/generic/ldsodefs.h (struct rtld_global): Add + _dl_load_write_lock. + * elf/rtld.c (_rtld_global): Initialize it. + * elf/dl-support.c (_dl_load_write_lock): Define . + * elf/dl-close.c (_dl_close_worker): Lock GL(dl_load_write_lock) + when modifying the list of loaded objects. + * elf/dl-load.c (lose): Likewise. + * elf/dl-object.c (_dl_new_object): Likewise. + * elf/dl-iteratephdr.c (__dl_iterate_phdr): Lock + GL(dl_load_write_lock) instead of GL(dl_load_lock). + +2010-05-03 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-iteratephdr.c (__dl_iterate_phdr): Remove unnecessary + assignment. + +2010-05-02 Ulrich Drepper <drepper@redhat.com> + + * misc/mntent_r.c (encode_name): The slow loop handles newlines so we + should recognize them as an abort condition. + Patch by Jan Lieskovsky <jlieskov@redhat.com>. + +2010-04-25 Bruno Haible <bruno@clisp.org> + + [BZ #11538] + * sysdeps/unix/bsd/ptsname.c (__ptsname_r): Use __ttyname_r's return + value instead of errno. + * sysdeps/unix/getlogin.c (getlogin): Likewise. + + [BZ #11537] + * sysdeps/mach/hurd/ttyname_r.c (__ttyname_r): Upon failure, return + errno, not -1. + +2010-04-24 Emilio Pozuelo Monfort <pochu27@gmail.com> + + * hurd/lookup-at.c (__file_name_lookup_at): Fix error return value. + +2010-04-22 Ulrich Drepper <drepper@redhat.com> + + * po/vi.po: Update from translation team. + +2010-04-21 Ulrich Drepper <drepper@redhat.com> + + * po/bg.po: Update from translation team. + +2010-04-19 Roland McGrath <roland@redhat.com> + + * elf/Makefile ($(objpfx)noload): Depend on libdl.so. + + * Makeconfig (as-needed, no-as-needed): New variables. + (link-libc): Add ld.so inside --as-needed. + + * stdio-common/tst-fmemopen.c (TEST_FILE): Macro removed. + (main): Take arguments. Construct test file name from ARGV[0]. + +2010-04-15 H.J. Lu <hongjiu.lu@intel.com> + + * string/test-strncmp.c (check_result): New function. + (do_one_test): Use it. + (check1): New function. + (test_main): Use it. + * sysdeps/i386/i686/multiarch/strcmp-sse4.S (crosspage): Properly + update source and destination. + * sysdeps/i386/i686/multiarch/strcmp-ssse3.S (gobble_ashr_12): + Properly check and update counter. + +2010-04-14 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/elf/configure.in: Move AVX test to .... + * sysdeps/i386/configure.in: ...here. + * sysdeps/i386/i686/multiarch/Makefile (libm-sysdep_routines): Define. + (CFLAGS-s_fma-fma.c): Define. + (CFLAGS-s_fmaf-fma.c): Define. + * sysdeps/i386/i686/multiarch/Versions: New file. + * sysdeps/i386/i686/multiarch/s_fma-fma.c: New file. + * sysdeps/i386/i686/multiarch/s_fma.c: New file. + * sysdeps/i386/i686/multiarch/s_fmaf-fma.c: New file. + * sysdeps/i386/i686/multiarch/s_fmaf.c: New file. + + * sysdeps/x86_64/multiarch/memcmp-sse4.S: Check + DATA_CACHE_SIZE_HALF instead of SHARED_CACHE_SIZE_HALF. + +2010-04-14 Andreas Schwab <schwab@redhat.com> + + * elf/dl-version.c (_dl_check_map_versions): Avoid index overflow + when dependencies are missing. + +2010-04-14 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/multiarch/memcmp-sse4.S: Optimized for unaligned + data. + +2010-04-12 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + memcmp-sse4. + * sysdeps/x86_64/multiarch/memcmp-sse4.S: New file. + * sysdeps/x86_64/multiarch/memcmp.S: New file. + * sysdeps/x86_64/multiarch/rtld-memcmp.c: New file. + +2010-04-13 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/multiarch/init-arch.h: Pretty printing. + Add SSE 4.1 macros. + +2010-04-10 Matt Fleming <matt@console-pimps.org> + + * elf/elf.h: Add SH specific ELF header flags. + +2010-04-13 Andreas Schwab <schwab@redhat.com> + + * sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c: Fix setup of + overflow area. + * sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c: Likewise. + +2010-04-12 Andreas Schwab <schwab@redhat.com> + + * stdlib/tst-makecontext3.c (main): Initialize ucontext_t objects + only with getcontext. Test for unimplemented makecontext by + checking errno. + +2010-04-09 Ulrich Drepper <drepper@redhat.com> + + * nscd/aicache.c (addhstaiX): Correct passing memory to address + list to gethostbyname4_r functions. + + * resolv/nss_dns/dns-host.c (gaih_getanswer_slice): Optimize + copying of h_name. + +2010-04-09 Roland McGrath <roland@redhat.com> + + * Makerules ($(common-objpfx)libc-abis.h): Depend on libc-abis.stamp. + ($(common-objpfx)libc-abis.stamp): New target, rule moved from + libc-abis.h target. Use a stamp file to avoid repeating no-op + move-if-change on every run. + + * posix/Makefile (tst-chmod-ARGS): Pass $(objdir), not `pwd`. + +2010-04-08 Ulrich Drepper <drepper@redhat.com> + + [BZ #10915] + * nscd/nscd_stat.c (struct statdata): Add reload_count field. + (send_stats): Fill in reload_count. + (receive_print_stats): Print reload_count. + + * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): When + reading the loginuid file use a buffer which is always large enough. + NUL-terminate the string. + + * malloc/malloc.c (_int_malloc): Return NULL if printing error message + returns. + +2010-04-07 Andreas Schwab <schwab@redhat.com> + + * sysdeps/unix/sysv/linux/i386/fallocate.c: Set errno on error. + * sysdeps/unix/sysv/linux/i386/fallocate64.c: Likewise. + +2010-04-08 Andreas Jaeger <aj@suse.de> + + [BZ #10401] + * math/s_cprojl.c (__cprojl): Fix implementation to follow C99 + standard. + * math/s_cprojf.c (__cprojf): Likewise. + * math/s_cproj.c (__cproj): Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_cprojl.c (__cprojl): Likewise. + * math/libm-test.inc (cproj_test): Fix test. + +2010-04-08 Roland McGrath <roland@redhat.com> + + * Makerules (libc-abis): Variable removed. + ($(common-objpfx)libc-abis.h): Depend on Makerules too. + Use automatic variables in commands. + Depend on first libc-abis from $(sysdirs) or $(..). + +2010-04-07 Ulrich Drepper <drepper@redhat.com> + + * posix/bug-getopt1.c: New file. + * posix/bug-getopt2.c: New file. + * posix/bug-getopt3.c: New file. + * posix/bug-getopt4.c: New file. + * posix/bug-getopt5.c: New file. + +2009-12-01 Eric Blake <ebb9@byu.net> + + [BZ #11039] + * posix/getopt.c (_getopt_internal_r): Skip optional - or + before + checking lead byte of optstring for :. + + [BZ #11040] + * posix/getopt.c (_getopt_internal_r): Reject '-;' as short + option, since it conflicts with "W;" optstring extension. + +2009-12-02 Eric Blake <ebb9@byu.net> + + [BZ #11041] + * posix/getopt.c (_getopt_internal_r): Handle '-Wfoo' identically + to '--foo', with optional argument or non-ambiguous prefix. + +2010-04-07 Ulrich Drepper <drepper@redhat.com> + + [BZ #11134] + * nis/libnsl.h (NSS_FLAG_ADJUNCT_AS_SHADOW): Define. + * nis/nss: Document new ADJUNCT_AS_SHADOW variable. + * nis/nss-default.c: Handle ADJUNCT_AS_SHADOW variable. + * nis/nss_nis/nis-pwd.c (internal_nis_endpwent): Minor cleanups. + (internal_nis_getpwent_r): Don't fill in password from adjunct table + if NSS_FLAG_ADJUNCT_AS_SHADOW is set. + (_nss_nis_getpwnam_r): Likewise. + (_nss_nis_getpwuid_r): Likewise. + * nis/nss_nis/nis-spwd.c (ent_adjunct_used): New global variable. + (_nss_nis_setspent): Also reset ent_adjunct_used. + (internal_nis_getspent_r): If new_start is set and shadow.byname table + does not exist and NSS_FLAG_ADJUNCT_AS_SHADOW is set, try to get + passwd.adjunct.byname table. If new_start is not set get next entry + from the initially used table. Synthesize shadow.byname table if + necessary by adding two empty fields. + (_nss_nis_getspnam_r): If shadow.byname table does not exist and + NSS_FLAG_ADJUNCT_AS_SHADOW is set, try to get passwd.adjunct.byname + table and synthesize shadow.byname table. + +2010-04-06 H.J. Lu <hongjiu.lu@intel.com> + + * Makerules (libc-abis): Add $(..) to libc-abis. + +2010-04-06 Joseph Myers <joseph@codesourcery.com> + + * Makerules (libc-abis): Fix search for libc-abis in add-ons. + +2010-04-05 Thomas Schwinge <thomas@schwinge.name> + + * sysdeps/gnu/unwind-resume.c: New, moved from nptl/sysdeps/pthread/. + * sysdeps/gnu/rt-unwind-resume.c: Likewise. + * sysdeps/gnu/Makefile: Add sections for csu and rt subdirs to + build unwind-resume code, previously in nptl/sysdeps/pthread/Makefile. + +2010-04-05 Roland McGrath <roland@redhat.com> + + * elf/dl-cache.c (_dl_load_cache_lookup): Obey dl_hwcap_mask. + + * elf/dl-support.c (_dl_hwcap_mask): New variable. + + * elf/rtld.c (dl_main) [HAVE_AUX_VECTOR]: Add a cast. + +2010-03-30 Paul Pluzhnikov <ppluzhnikov@google.com> + + * Makeconfig: Propagate -fdebug-prefix-map from CFLAGS to ASFLAGS. + +2010-03-30 Joseph Myers <joseph@codesourcery.com> + + * elf/elf.h (ELFOSABI_ARM_AEABI): Define. + +2010-04-05 Ulrich Drepper <drepper@redhat.com> + + * po/nl.po: Update from translation team. + + [BZ #11010] + * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname3_r): Handle + timeouts from servers. + + [BZ #11149] + * elf/ldconfig.c (main): Respect chroot setting when looking for + the aux cache. + +2010-04-04 Ulrich Drepper <drepper@redhat.com> + + [BZ #11043] + * posix/getopt.c (_getopt_internal_r): Fix arguments printed in error + messages. + + [BZ #11070] + * resolv/netdb.h: Declare iruserok and iruserok_af. + + * argp/Makefile: Add rules to build and run bug-argp2. + * argp/bug-argp2.c: New file. + +2010-02-05 Sergey Poznyakoff <gray@gnu.org.ua> + + [BZ #11254] + * argp/argp-parse.c (convert_options): Fix improper use of `|' + between character values. + +2010-04-04 Ulrich Drepper <drepper@redhat.com> + + [BZ #11276] + * sysdeps/posix/remove.c (IS_NO_DIRECTORY_ERROR): Define. + (remove): Use IS_NO_DIRECTORY_ERROR to check for file being no + directory. + * sysdeps/unix/sysv/linux/remove.c: New file. + + * conform/data/sys/stat.h-data: Fix testing of S_IS* macros. + + [BZ #11279] + * io/sys/stat.h: Always define S_ISSOCK for XPG6 and up. + + [BZ #11287] + * csu/Makefile ($(objpfx)version-info.h): Handle newer kernel headers + which don't define UTS_RELEASE. + +2010-04-04 H.J. Lu <hongjiu.lu@intel.com> + Ulrich Drepper <drepper@redhat.com> + + [BZ #11292] + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Allow + concurrent initialization and use of __cpu_features. + +2010-04-04 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/multiarch/init-arch.h (cpu_features): Add tag to + the enum. + +2010-04-03 Ulrich Drepper <drepper@redhat.com> + + [BZ #11333] + * sysdeps/unix/readdir_r.c (__READDIR_R): Add support for platforms + which include unnecessary padding in d_reclen. + * sysdeps/unix/sysv/linux/i386/readdir64_r.c: Select work-around for + unnecessary padding. + + [BZ #11387] + * sysdeps/unix/sysv/linux/ifaddrs.c (map_newlin): Don't abort on + unknown interface, return -1. + (getifaddrs_internal): Rename from getifaddrs. Handle errors in + map_newlink be returning -EAGAIN. + (getifaddrs): If -EAGAIN is returned from getifaddrs_internal try + again. + +2010-03-25 Ryan S. Arnold <rsa@us.ibm.com> + + * sysdeps/unix/sysv/linux/getsysstats.c (next_line): Remove + redundant and incorrect else block which overwrites current line + with the partial next line. + +2010-04-03 Ulrich Drepper <drepper@redhat.com> + + [BZ #11438] + * posix/gai.conf: Document problems with IPv4 site-local addresses and + NATs. + + [BZ #11449] + * crypt/crypt_util.c (__init_des_r): Add memory barrier before setting + small_tables_initialized. + + * malloc/malloc.c (_int_free): Add one more sanity check for fastbins. + + * malloc/malloc.c (set_max_fast): Fix computation of the value. + +2010-03-30 David S. Miller <davem@davemloft.net> + + * sysdeps/unix/sysv/linux/mmap64.c (__mmap64): Fix + MMAP2_PAGE_SHIFT test. + +2010-03-29 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/socket.h: Define MSG_WAITFORONE. + +2010-03-28 Thomas Schwinge <thomas@schwinge.name> + + * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Adapt to auxv + changes in the generic code. + * elf/rtld.c (dl_main): Conditionalize the code that dereferences auxv + to [HAVE_AUX_VECTOR]. + +2010-03-27 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/getpagesize.c (__getpagesize): If + __ASSUME_AT_PAGESIZE we can rely on the value being set. + + * include/wchar.h: Undefine __need_mbstate_t and __need_wint_t + unconditionally in the end. + + * posix/glob.c (glob): Initialize oldcount early, too. + +2010-03-26 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/i386/fcntl.c: Define miss_F_GETOWN_EX + only if needed. + Patch mostly by Paul Pluzhnikov <ppluzhnikov@google.com>. + +2010-03-26 Richard Henderson <rth@redhat.com> + + * sysdeps/generic/ldsodefs.h (_dl_random): Mark attribute_relro; + + * stdio-common/psiginfo.c (psiginfo): Fix printf format + warning for si_band. + + * locale/setlocale.c (free_category): Finish renaming + struct locale_data to __locale_data. + + * csu/gmon-start.c (ENTRY_POINT, etext): Declare as char[], not void. + * elf/dl-sysdep.c (_end): Likewise. + * sysdeps/unix/sysv/dl-sysdep.c (frob_brk): Likewise with locally + declared _end, and associated variables. + +2010-03-26 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't assume success always + means aborting the loop over the NSS methods. + +2010-03-25 Andreas Schwab <schwab@redhat.com> + + [BZ #11001] + * sysdeps/posix/getaddrinfo.c (gaih_inet): Reset no_data before + each action. + +2010-03-26 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c: Remove stale reference to website. + +2010-03-24 Ulrich Drepper <drepper@redhat.com> + + [BZ #11389] + * bits/time.h: Define CLOCK_MONOTONIC_RAW, CLOCK_REALTIME_COARSE, and + CLOCK_MONOTONIC_COARSE. + * sysdeps/unix/sysv/linux/clock_getres.c: Handle CLOCK_MONOTONIC_RAW, + CLOCK_REALTIME_COARSE, and CLOCK_MONOTONIC_COARSE. + * sysdeps/unix/sysv/linux/clock_gettime.c: Likewise. + * sysdeps/unix/sysv/linux/clock_settime.c: Likewise. + +2010-03-25 Andreas Schwab <schwab@redhat.com> + + * sysdeps/posix/cuserid.c: Fix typo. + +2010-03-16 Chris Demetriou <cgd@google.com> + + [BZ #11394] + * locale/programs/simple-hash.c: Include inttypes.h. + (hashval_t): Defined to be uint32_t. + * locale/programs/simple_hash.h: Include inttypes.h. + (compute_hashval): Change return type to uint32_t. + +2010-03-24 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/getlogin_r.c: New file. + * sysdeps/unix/sysv/linux/getlogin.c: New file. + * sysdeps/unix/getlogin_r.c: Allow compiling getlogin as static + function. + * sysdeps/unix/getlogin.c: Likewise. Move name variable to toplevel. + * include/unistd.h: Declare __getlogin_r_loginuid. + + [BZ #11397] + * sysdeps/posix/cuserid.c (cuserid): Make sure the returned string + is NUL terminated. + Patch by Jonathan Geisler <jgeisler@cse.taylor.edu>. + + * sysdeps/unix/sysv/linux/mmap64.c: Allow variable shift values. + +2010-03-24 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/multiarch/strpbrk-c.c: Define only if SHARED + is defined. + +2010-03-22 H.J. Lu <hongjiu.lu@intel.com> + + * string/test-memcmp.c (check_result): New function. + (do_one_test): Use it. + (check1): New function. + (test_main): Use it. + +2010-03-24 Ulrich Drepper <drepper@redhat.com> + + * posix/tst-gnuglob.c: Add tests with empty patterns. For this + rewrite the tests to add support for failing glob calls. + Some other minor cleanups. + * posix/bug-glob3.c: New file. + * posix/Makefile (tests): Add bug-glob3. + +2010-03-24 Ulrich Drepper <drepper@redhat.com> + Andreas Schwab <andreas@redhat.com> + + * posix/glob.c (glob): Clean up gl_pathc and gl_pathv earlier. + If pattern is "" bail out early + +2010-03-23 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-lookup.c (do_lookup_x): If tab->entries is NULL, + but tab->size != 0, just unlock and goto success, without + allocating anything or entering anything into the hash table. + (_dl_debug_bindings): Temporarily set tab->entries to NULL + around do_lookup_x in undef_map->l_local_scope[0]. If + undef_map->l_symbolic_in_local_scope, lookup also in + symbolic_searchlist of following libraries in l_local_scope + that have DT_SYMBOLIC set. + * elf/dl-deps.c (_dl_map_object_deps): Compute + l_symbolic_in_local_scope. + * include/link.h (struct link_map): Add l_symbolic_in_local_scope + bitfield. + +2010-03-24 Ulrich Drepper <drepper@redhat.com> + + [BZ #11410] + * wctype/wctype.h: Use <wchar.h> to get the wint_t definition. + + * wcsmbs/wchar.h: Correct preprocessor directive indentation. Move + C++ prototype handling to a better place. + +2010-03-18 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-load.c (open_verify): Extend expected to the full size of the + e_ident array. When loading, check that the fields in e_ident we don't + know are zero to allow future extensions. + +2010-03-18 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i686/multiarch/memcmp-ssse3.S: Update %xmm3 + when exit from loop. + +2010-03-16 Andreas Schwab <schwab@redhat.com> + + * resolv/res_send.c (__libc_res_nsend): Fix printing of server + address in debug statement. + (send_dg): Pass correct buffer pointer to DprintQ. + +2010-03-17 Ulrich Drepper <drepper@redhat.com> + + * libc-abis: Add a few more entries. + +2010-03-16 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-load.c (VALID_ELF_ABIVERSION): Add additional osabi parameter. + Not used here. + (open_verify): Modify for extended VALID_ELF_ABIVERSION macro + interface. + * sysdeps/unix/sysv/linux/ldsodefs.h (VALID_ELF_ABIVERSION): Add + additional osabi parameter. Only acceept nonzero ABI versions if osabi + is Linux. + Fix includes. + (expected2): Don't explicitly initialize EI_ABIVERSION byte. + + * sysdeps/unix/sysv/linux/ldsodefs.h (VALID_ELF_ABIVERSION): Update + definition to follow generic code. + +2010-03-15 Ulrich Drepper <drepper@redhat.com> + + * posix/getconf.c: Update copyright year. + * nss/getent.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. + + * Makerules: Add rule for libc-abis.h. + * csu/version.c: Use LIBC_ABIS_STRING string if available. + * elf/dl-load.c (VALID_ELF_ABIVERSION): Check using LIBC_ABI_MAX. + (open_verify): Only check EI_ABIVERSION bytes using VALID_ELF_HEADER. + Add extra call to VALID_ELF_ABIVERSION. + +2010-03-12 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/sys/mount.h (UMOUNT_NOFOLLOW): Define. + +2010-03-12 Andreas Schwab <schwab@redhat.com> + + * elf/dl-dst.h: Include "trusted-dirs.h". + (DL_DST_REQUIRED): Take $LIB into account. + +2010-03-11 Roland McGrath <roland@redhat.com> + + * elf/elf.h (R_X86_64_GOT64, R_X86_64_GOTPCREL64): New macros. + (R_X86_64_GOTPC64, R_X86_64_GOTPLT64, R_X86_64_PLTOFF64): New macros. + +2010-03-10 Luis Machado <luisgpm@br.ibm.com> + + * sysdeps/powerpc/powerpc64/power7/memcpy.S: New file. + * sysdeps/powerpc/powerpc32/power7/memcpy.S: New file. + +2010-03-09 David S. Miller <davem@davemloft.net> + + * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Handling + of R_SPARC_TLS_LE_* needs to use 32-bit loads and stores, not + 64-bit ones. + + * sysdeps/sparc/sparc32/memcpy.S: Fix build. + + * sysdeps/sparc/sparc32/strlen.S: Optimize. + * sysdeps/sparc/sparc64/strlen.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/strlen.S (ASI_PNF, ASI_BLK_P, + XCC): Delete definitions, not needed. + +2010-03-07 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags): + Little follow-up patch from last change. + +2010-03-06 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/internal_statvfs.c: Handle ext4 and logfs. + * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add entry for logfs. + +2010-02-18 Yann Droneaud <yann@droneaud.fr> + + * resolv/res_send.c: Fixed DEBUG statements. + Moved tmpbuf declaration to block beginning and + updated pointer names used in multiple DprintQ() calls + +2010-02-18 H.J. Lu <hongjiu.lu@intel.com> + + * config.make.in (config-asflags-i686): Define. + * configure.in: Substitute libc_cv_as_i686. + * sysdeps/i386/configure.in: Check if assembler supports -mtune=i686. + * sysdeps/i386/i686/Makefile (CFLAGS-.oX): Add -Wa,-mtune=i686 + if assembler supports -mtune=i686. + (ASFLAGS-.oX): Likewise. + +2010-03-04 Ulrich Drepper <drepper@redhat.com> + + * elf/elf.h (R_X86_64_SIZE32): Define. + (R_X86_64_SIZE64): Define. + +2010-03-02 Richard Guenther <rguenther@suse.de> + + * sysdeps/x86_64/dl-machine.h (elf_machine_rela): R_X86_64_PC32 + is sign-extending. + +2010-03-03 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/in.h: Add a few more definitions from + the kernel headers. + +2010-03-04 David S. Miller <davem@davemloft.net> + + * sysdeps/sparc/sparc64/Implies: Add ieee754/dbl-64/wordsize-64 entry. + + * sysdeps/sparc/sparc32/sparcv8/udiv_qrnnd.S: Delete. + * sysdeps/sparc/sparc32/udiv_qrnnd.S: Delete. + +2010-03-03 David S. Miller <davem@davemloft.net> + + * math/math_private.h (INSERT_WORDS64): Fix argument order. + +2010-03-03 Aurelien Jarno <aurelien@aurel32.net> + + * sysdeps/unix/sysv/linux/sparc/sparc64/msgrcv.c: New file. + +2010-03-03 David S. Miller <davem@davemloft.net> + + * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_lazy_rel): Must + pass '1' for 't' argument to sparc_fixup_plt. + * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_lazy_rel): + Likewise. + * sysdeps/sparc/sparc32/dl-plt.h (OPCODE_BA_PT): Define. + (sparc_fixup_plt): Document 't' argument. Enable branch + optimization and use v9 branches when possible. Explain why we + cannot unconditionally patch the branch into the first PLT + instruction. + * sysdeps/sparc/sparc64/dl-plt.h (sparc64_fixup_plt): Document 't' + argument. Use v9 branches when possible. Explain why we can in + fact unconditionally use a branch in the first PLT instruction + here. + +2010-02-28 Roland McGrath <roland@redhat.com> + + * elf/elf.h (NT_X86_XSTATE): New macro. + +2010-02-25 David S. Miller <davem@davemloft.net> + + * sysdeps/sparc/sparc64/Makefile: Add align-cpy rule. + * sysdeps/sparc/sparc64/align-cpy.S: New. + * sysdeps/sparc/sparc64/memcpy.S (__align_cpy_1, __align_cpy_2, + __align_cpy_4, __align_cpy_8, __align_cpy_16): Remove. + * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (__align_cpy_1, + __align_cpy_2, __align_cpy_4, __align_cpy_8, __align_cpy_16): + Remove. + * sysdeps/sparc/sparc64/sparcv9v/memcpy.S (__align_cpy_1, + __align_cpy_2, __align_cpy_4, __align_cpy_8, __align_cpy_16): + Remove. + * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S (__align_cpy_1, + __align_cpy_2, __align_cpy_4, __align_cpy_8, __align_cpy_16): + Remove. + + * sysdeps/sparc/sparc32/bcopy.c: Delete. + * sysdeps/sparc/sparc32/memmove.c: Delete. + * sysdeps/sparc/sparc32/sparcv9/bcopy.c: Delete. + * sysdeps/sparc/sparc32/sparcv9/memmove.c: Delete. + * sysdeps/sparc/sparc64/bcopy.c: Delete. + * sysdeps/sparc/sparc64/memmove.c: Delete. + * sysdeps/sparc/sparc64/memcopy.h: New. + * sysdeps/sparc/sparc32/memcpy.S (bcopy, memmove): Remove. + * sysdeps/sparc/sparc64/memcpy.S (bcopy, memmove): Likewise. + * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (bcopy, memmove): Likewise. + * sysdeps/sparc/sparc64/sparcv9v/memcpy.S (bcopy, memmove): Likewise. + * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S (bcopy, memmove): Likewise. + + * sysdeps/sparc/elf/rtld-global-offsets.sym: New file. + * sysdeps/sparc/Makefile (csu): Add rtld-global-offsets.sym to + gen-as-const-headers. + * sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile: New file. + * sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy.S: New file. + * sysdeps/sparc/sparc32/sparcv9/multiarch/memset.S: New file. + * sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: Move to... + * sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy-ultra3.S: ...here. + * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: Move to... + * sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy-niagara1.S: ...here. + * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: Move to... + * sysdeps/sparc/sparc32/sparcv9/multiarch/memset-niagara1.S: ...here. + * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memcpy.S: Move to... + * sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy-niagara2.S: ...here. + * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memset.S: Removed. + * sysdeps/sparc/sparc64/multiarch/Makefile: New file. + * sysdeps/sparc/sparc64/sparcv9v/memcpy.S: Move to... + * sysdeps/sparc/sparc64/multiarch/memcpy-niagara1.S: ...here. + * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: Move to... + * sysdeps/sparc/sparc64/multiarch/memcpy-niagara2.S: ...here. + * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Move to... + * sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S: ...here. + * sysdeps/sparc/sparc64/sparcv9v/memset.S: Move to... + * sysdeps/sparc/sparc64/multiarch/memset-niagara1.S: ...here. + * sysdeps/sparc/sparc64/sparcv9v2/memset.S: Removed. + * sysdeps/sparc/sparc64/multiarch/memcpy.S: New file. + * sysdeps/sparc/sparc64/multiarch/memset.S: New file. + +2010-02-20 H.J. Lu <hongjiu.lu@intel.com> + + [BZ #11332] + * sysdeps/i386/i686/multiarch/strcmp-sse4.S: Use cfi_remember_state + and cfi_restore_state only if USE_AS_STRNCMP is defined. + +2010-02-24 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/Implies: Add ieee754/dbl-64/wordsize-64 entry. + +2010-02-24 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S + (bk_write_less32bytes_2): Renamed to ... + (bk_write_less48bytes): This. + Use unsigned conditional jumps. + Correct unwind info. + Use add/sub instead of lea if possible. + (shl_0_gobble_cache_loop_tail): Removed. + (large_page): Properly adjust ECX. + + * sysdeps/i386/i686/multiarch/memcpy-ssse3.S: Use unsigned + conditional jumps. + Correct unwind info. + + * sysdeps/i386/i686/multiarch/memset-sse2-rep.S: Remove redundant + punpcklbw. + Use unsigned conditional jumps. + (128bytesormore_nt): Renamed to ... + (128bytesormore_endof_L1): This. + Use add instead of lea if possible. + Correct unwind info. + * sysdeps/i386/i686/multiarch/memset-sse2.S: Remove redundant + punpcklbw. + Use unsigned conditional jumps. + Use add instead of lea if possible. + Correct unwind info. + +2010-02-24 Ulrich Drepper <drepper@redhat.com> + + [BZ #11319] + * libio/iovdprintf.c (_IO_vdprintf): Explicitly flush stream before + undoing the stream because _IO_FINISH doesn't report failures. + + [BZ #5553] + * malloc/malloc.c (public_vALLOc): Set ar_ptr when trying main_arena. + (public_pVALLOc): Likewise. + Patch by Petr Baudis. + +2010-02-22 Jim Meyering <meyering@redhat.com> + + * manual/math.texi (BSD Random): Fix a typo: s/are/is/ + + * manual/charset.texi: Adjust grammar. + + * manual/errno.texi (Error Messages): Fix doubled-words and typos. + * manual/charset.texi (Selecting the Conversion): Likewise. + * manual/getopt.texi (Getopt Long Options): Likewise. + * manual/memory.texi (Resizing the Data Segment): Likewise. + * manual/message.texi (GUI program problems): Likewise. + * manual/resource.texi (CPU Affinity): Likewise. + * manual/stdio.texi (Streams and Threads): Likewise. + * manual/time.texi (High Accuracy Clock): Likewise. + +2009-02-20 David S. Miller <davem@davemloft.net> + + * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): + Adjust rela->r_offset by l->l_addr when rewriting PLT. + + * sysdeps/sparc/sparc64/memchr.S: Use unsigned branch on greater to + test end of buffer. + + * sysdeps/unix/sysv/linux/sparc/sparc32/makecontext.c + (__makecontext): Adjust arg counter properly when copying arg + stack slots. + +2009-02-20 Joseph Myers <joseph@codesourcery.com> + + * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_runtime_setup): + Adjust rela->r_offset by l->l_addr when rewriting PLT. + +2010-02-19 Carl Fredrik Hammar <hammy.lite@gmail.com> + + * hurd/hurdioctl.c (tiocsctty): Call `do_tiocsctty' instead of + non-existent `tiocsctty_port'. + +2010-02-16 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i686/multiarch/memcmp.S (memcmp): Use CPUID_OFFSET + instead of FEATURE_OFFSET. + * sysdeps/i386/i686/multiarch/strcmp.S (strcmp): Likewise. + + * sysdeps/i386/i686/multiarch/memcmp-sse4.S: Add alignnments. + Fix one unwind info problem. + + * sysdeps/i386/i686/multiarch/memcmp-ssse3.S (less1bytes): Add CFI_POP. + + * sysdeps/i386/i686/multiarch/strcmp-sse4.S: Simplify unwind info. + +2010-02-17 H.J. Lu <hongjiu.lu@intel.com> + Ulrich Drepper <drepper@redhat.com> + + * sysdeps/i386/i686/multiarch/strcmp-ssse3.S: Fix typo in unwind info. + Clean up a bit. + +2010-02-17 Carl Fredrik Hammar <hammy.lite@gmail.com> + + * hurd/hurdioctl.c (tiocsctty): Only get FD ports, do work in... + (tiocsctty_port): ...this new function. + + * hurd/hurd/ioctl.h (_HURD_HANDLE_IOCTLS_1): Cast to + `ioctl_handler_t'. + +2010-02-15 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/i386/i686/multiarch/memcmp-sse4.S: Fix unwind info. + * sysdeps/i386/i686/multiarch/memcmp-ssse3.S: Likewise. + * sysdeps/i386/i686/multiarch/strcmp-sse4.S: Likewise. + * sysdeps/i386/i686/multiarch/strcmp-ssse3.S: Likewise. + + * sysdeps/i386/i686/multiarch/strcmp-sse4.S: Don't fall through to + undefined code. + +2010-02-12 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add + strcmp-ssse3, strcmp-sse4, strncmp-c, strncmp-ssse3, strncmp-sse4, + memcmp-c, memcmp-ssse3, and memcmp-sse4. + * sysdeps/i386/i686/multiarch/memcmp-sse4.S: New file. + * sysdeps/i386/i686/multiarch/memcmp-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/memcmp.S: New file. + * sysdeps/i386/i686/multiarch/strcmp-sse4.S: New file. + * sysdeps/i386/i686/multiarch/strcmp-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/strcmp.S: New file. + * sysdeps/i386/i686/multiarch/strncmp-c.c: New file. + * sysdeps/i386/i686/multiarch/strncmp-sse4.S: New file. + * sysdeps/i386/i686/multiarch/strncmp-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/strncmp.S: New file. + +2010-02-12 Luis Machado <luisgpm@br.ibm.com> + + * sysdeps/powerpc/powerpc32/dl-machine.h: Removed old PPC_REL16 check. + * sysdeps/powerpc/powerpc32/dl-machine.h: Likewise. + * sysdeps/powerpc/powerpc32/elf/start.S: Likewise. + * sysdeps/powerpc/powerpc32/memset.S: Likewise. + * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S: Likewise. + * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S: Likewise. + * sysdeps/powerpc/powerpc32/configure.in: Fail if R_PPC_REL16 + is not supported. + * sysdeps/powerpc/powerpc32/fpu/s_round.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_floor.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_lround.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_rint.S: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S: Likewise. + * sysdeps/powerpc/powerpc32/dl-start.S: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S: Likewise. + +2010-02-12 Alan Modra <amodra@gmail.com> + + * elf/tls-macros.h [__powerpc__] (__TLS_CALL_CLOBBERS): Remove r3. + Define and use for __powerpc64__ too. + [__powerpc__] (TLS_LD): Add r3 to clobbers. + [__powerpc__] (TLS_GD): Set asm output. Make __result r3 reg. + [__powerpc64__] (TLS_GD): Make __result r3 reg. + [__powerpc64__] (TLS_IE): Relax output constraint. + +2010-02-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> + + * sysdeps/s390/s390-64/utf8-utf16-z9.c: Disable hardware + instructions cu21 and cu24. Add well-formedness checking + parameter and adjust the software implementation. + * sysdeps/s390/s390-64/utf16-utf32-z9.c: Likewise. + +2010-02-10 Ulrich Drepper <drepper@redhat.com> + + [BZ #11271] + * io/ftw.c (ftw_startup): Close descriptor for initial directory + after changing back to it. + +2010-02-05 David S. Miller <davem@davemloft.net> + + * elf/elf.h (R_SPARC_JMP_IREL, R_SPARC_IRELATIVE): Define. + * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Handle new + ifunc relocs. + (elf_machine_lazy_rel): Likewise. + (sparc_fixup_plt): Pull out to... + * sysdeps/sparc/sparc32/dl-plt.h: ...here. + * sysdeps/sparc/sparc32/dl-irel.h: New file. + * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Handle new + ifunc relocs. + (elf_machine_lazy_rel): Likewise. + (sparc64_fixup_plt): Pull out to... + * sysdeps/sparc/sparc64/dl-plt.h: ...here. + * sysdeps/sparc/sparc64/dl-irel.h: New file. + +2010-02-09 Maxim Kuvyrkov <maxim@codesourcery.com> + + * elf/elf.h: Define m68k TLS relocations. + +2010-02-10 Luis Machado <luisgpm@br.ibm.com> + + * sysdeps/powerpc/powerpc64/power7/Implies: Removed. + * sysdeps/powerpc/powerpc64/power7/fpu/Implies: Removed. + * sysdeps/powerpc/powerpc32/power7/Implies: Removed. + * sysdeps/powerpc/powerpc32/power7/fpu/Implies: Removed. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/fpu/Implies: Add + 64-bit power7 fpu path. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/fpu/Implies: Add + 32-bit power7 fpu math. + +2010-02-09 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/i386/rshift.S: More compact unwind information. + + * sysdeps/i386/lshift.S: Fix unwind information. + +2010-02-08 Luis Machado <luisgpm@br.ibm.com> + + * sysdeps/powerpc/powerpc64/power7/fpu/s_isnan.S: New file. + * sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S: New file. + * sysdeps/powerpc/powerpc64/power7/fpu/s_isnanf.S: New file. + * sysdeps/powerpc/powerpc32/power7/fpu/s_isnanf.S: New file. + * sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S: New file. + * sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S: New file. + * sysdeps/powerpc/powerpc64/power7/fpu/s_isinff.S: New file. + * sysdeps/powerpc/powerpc32/power7/fpu/s_isinff.S: New file. + * sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S: New file. + * sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S: New file. + * sysdeps/powerpc/powerpc64/power7/fpu/s_finitef.S: New file. + * sysdeps/powerpc/powerpc32/power7/fpu/s_finitef.S: New file. + +2010-02-08 Andreas Schwab <schwab@redhat.com> + + * include/fenv.h: Add hidden proto for fegetenv. + * math/fegetenv.c: Add hidden alias. + * sysdeps/i386/fpu/fegetenv.c: Likewise. + * sysdeps/ia64/fpu/fegetenv.c: Likewise. + * sysdeps/powerpc/fpu/fegetenv.c: Likewise. + * sysdeps/sh/sh4/fpu/fegetenv.c: Likewise. + * sysdeps/sparc/fpu/fegetenv.c: Likewise. + * sysdeps/x86_64/fpu/fegetenv.c: Likewise + * sysdeps/s390/fpu/fegetenv.c: Likewise. Remove unused headers. + +2010-02-05 H.J. Lu <hongjiu.lu@intel.com> + + [BZ #11230] + * sysdeps/ia64/memchr.S: Don't read beyond the last byte + during recovery. + +2010-01-26 Andreas Schwab <schwab@redhat.com> + + * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c: Use internal + interface. + * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h: Declare internal + utmpx interface. + + * sysdeps/unix/sysv/linux/sparc/Versions: Add new errlist compat + entry for 2.12. + +2010-02-03 Ulrich Drepper <drepper@redhat.com> + + [BZ #11235] + * sysdeps/unix/sysv/linux/sys/mount.h: Remove S_WRITE, S_APPEND, + S_IMMUTABLE. Add MS_DIRSYNC, MS_MOVE, MS_SILENT, MS_REC, + MS_POSIXACL, MS_UNBINDABLE, MS_PRIVATE, MS_SLAVE, MS_SHARED, + MS_RELATIME, MS_KERNMOUNT, MS_I_VERSION, MS_STRICTATIME, + MS_ACTIVE, and MS_NOUSER. + (MS_RMT_MASK): Update according to current kernels. + + [BZ #11242] + * misc/getusershell.c (initshells): Allocate one more byte in input + buffer so that fgets doesn't loop undefinitely. + +2010-02-02 Ulrich Drepper <drepper@redhat.com> + + * stdlib/setenv.c (__add_to_environ): Don't use alloca if + __libc_use_alloca tells us not to. Fix memory leak in an error + situation. Based partially on patch by Jim Meyering. + +2010-01-26 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * sysdeps/mach/getsysstats.c (get_nprocs_conf, get_nprocs, + get_phys_pages, get_avphys_pages): Add weak aliases. + +2010-01-25 Andreas Schwab <schwab@redhat.com> + + * iconv/iconv_prog.c (write_output): Fix check for open failure. + +2010-01-22 Ulrich Drepper <drepper@redhat.com> + + [BZ #11200] + * locale/loadlocale.c (_nl_load_locale): Fix recognition of genuine + mmap resource problem. Patch by Joe Landers <jlanders@vmware.com>. + +2010-01-22 Jim Meyering <jim@meyering.net> + + [BZ #11193] + * posix/regexec.c (extend_buffers): Avoid overflow in realloc + buffer length computation. + + [BZ #11192] + * posix/regexec.c (re_copy_regs): Don't leak when allocation + of the start buffer succeeds but allocation of the "end" one fails. + + [BZ #11191] + * posix/regexec.c (re_search_2_stub): Check for overflow + when adding the sizes of the two strings. + + [BZ #11190] + * posix/regexec.c (re_search_internal): Avoid overflow + in computing re_malloc buffer size. + + [BZ #11189] + * posix/regexec.c (prune_impossible_nodes): Avoid overflow + in computing re_malloc buffer size. + + [BZ #11188] + * posix/regexec.c (build_trtable): Avoid arithmetic overflow + in size calculation. + + [BZ #11187] + * posix/regexec.c (re_search_2_stub): Use simpler method than + boolean for freeing internal storage. + +2010-01-22 Ulrich Drepper <drepper@redhat.com> + + * posix/regex_internal.c (re_string_skip_chars): Simplify test for + failed mbrtowc call. + +2010-01-22 Jim Meyering <jim@meyering.net> + + [BZ #11186] + * posix/regex_internal.c (re_string_skip_chars): Don't assume WEOF + fits in wchar_t. Problem reported by Eric Blake. + + [BZ #11185] + * posix/regex_internal.c (re_string_reconstruct): Remove declaration + and stores into set-but-not-used local, "q". + + [BZ #11184] + * posix/regex_internal.c (re_dfa_add_node): Extend the overflow + detection test. Patch by Paul Eggert. + + [BZ #11183] + * posix/regex_internal.c (re_string_realloc_buffers): + Detect and handle internal overflow. Patch by Paul Eggert + +2010-01-20 Andreas Schwab <schwab@redhat.com> + + * sysdeps/unix/sysv/linux/s390/s390-32/____longjmp_chk.c + (CHECK_SP): Fix check for alternate stack. + * sysdeps/unix/sysv/linux/s390/s390-64/____longjmp_chk.c + (CHECK_SP): Likewise. + +2010-01-19 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i686/multiarch/memmove.S: Also check + bit_Fast_Rep_String when SHARED isn't defined. + +2010-01-19 Ulrich Drepper <drepper@redhat.com> + + [BZ #11194] + * misc/bits/syslog.h (syslog, vsyslog): Remove unnecessary return. + +2010-01-17 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * sysdeps/mach/hurd/bits/libc-lock.h + (__rtld_lock_recursive_t): New type. + (__rtld_lock_initialize): New macro. + +2010-01-14 Ryan S. Arnold <rsa@us.ibm.com> + + * sysdeps/powerpc/powerpc32/cell/memcpy.S: New file. + * sysdeps/powerpc/powerpc64/cell/memcpy.S: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/cell/fpu/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/cell/fpu/Implies: New file. + +2010-01-18 Andreas Schwab <schwab@redhat.com> + + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Remove duplicate + definitions of O_DSYNC and O_RSYNC. + + * elf/dynamic-link.h (elf_get_dynamic_info): Use correct type when + casting d_tag. + + * elf/dynamic-link.h (elf_get_dynamic_info): Ignore negative + dynamic entry types. + +2010-01-16 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/ieee754/ldbl-128/s_ceill.c (huge): Add L suffix to the + constant. + * sysdeps/ieee754/ldbl-128/s_floorl.c (huge): Likewise. + * sysdeps/ieee754/ldbl-128/s_expm1l.c (big): Decrease to avoid + overflow. + * sysdeps/ieee754/ldbl-128/s_log1pl.c (big): Remove unused variable. + + * sysdeps/ieee754/ldbl-128/s_nexttowardf.c (__nexttowardf): Use + math_opt_barrier and math_force_eval macros. + +2010-01-15 Ulrich Drepper <drepper@redhat.com> + + * posix/regcomp.c: Fix a few more cases of ignored return values. + * posix/regex_internal.c: Likewise. + * posix/regexec.c: Likewise. + + * include/features.h: _XOPEN_SOURCE_EXTENDED is not defined to be + used without _XOPEN_SOURCE. Don't base any decisions on this macro + if _XOPEN_SOURCE is not defined as well. + +2010-01-15 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> + + * sysdeps/s390/s390-32/elf/start.S (_start): Added check for the + high gprs kernel facility. + * sysdeps/s390/s390-32/dl-machine.h (elf_machine_matches_host): + Added high gprs check for DSOs. + * elf/elf.h (EF_S390_HIGH_GPRS): Added macro definition for the + new elf header flag. + +2010-01-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> + + * elf/dl-sysdep.c (_dl_sysdep_start): Added the auxv parameter to + dl_main. + * elf/dl-open.c (_dl_sysdep_start): Likewise.. + * sysdeps/generic/ldsodefs.h (_dl_sysdep_start): Likewise. + * elf/rtld.c (dl_main): Added new parameter auxv. Adjust the + AT_PHDR, AT_PHNUM and AT_ENTRY fields if the ld.so is directly + started. + +2010-01-14 Ulrich Drepper <drepper@redhat.com> + + [BZ #11027] + * sysdeps/generic/netinet/ip.h: Define IPTOS_CLASS_* macros according + to RFC 2474. + Patch by Philip Prindeville <philipp@redfish-solutions.com>. + + [BZ #11141] + * resolv/res_send.c (reopen): Don't use IPv6 sockets for IPv4 + addresses. + + [BZ #11127] + * posix/regcomp.c (alc_eclosure_iter): Do not ignore + re_node_set_insert failure; return REG_ESPACE. + Patch by Paul Eggert. + + [BZ #10864] + * bits/confname.h: Make pre-C99-safe. + +2010-01-14 Ryan S. Arnold <rsa@us.ibm.com> + + * Makeconfig (+prector, +postctor, +prectorS, +postctorS): Add + $(sysdep-LDFLAGS) to pre and post ctors so that the proper .o + files are found by GCC. + +2010-01-14 Ulrich Drepper <drepper@redhat.com> + + * posix/unistd.h: Relax conditions for ualarm, usleep, getwd, vfork, + brk, and sbrk. + + * string/strings.h: Relax condition for bcmp, bcopy, bzero, ffs, + index, and rindex. + + * stdlib/stdlib.h: Relax conditions for *cvt functions and valloc. + + * Versions.def: Add GLIBC_2.12 for libpthread. + + [BZ #11126] + * malloc/malloc.c (malloc_info): Initialize malloc if not already + done. Handle empty bin lists. + + * posix/unistd.h: Change getpagesize and getdtablesize declaration + visibility some more. + + * resolv/netdb.h: Relax condition to elide obsolete resolver constants. + + * posix/unistd.h: Declare getpagesize in _GNU_SOURCE mode. + + [BZ #11120] + * sysdeps/x86_64/strcmp.S: Prevent silent errors should strncmp be + needed outside libc. + +2010-01-13 Ulrich Drepper <drepper@redhat.com> + + * stdlib/stdlib.h: Parameter of unsetenv must not be NULL. + +2010-01-12 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/multiarch/strlen.S: Unroll the loop. + +2010-01-13 Ulrich Drepper <drepper@redhat.com> + + * stdlib/stdlib.h: Be a bit more relaxed about obsoleted mktemp symbol. + +2010-01-12 Ulrich Drepper <drepper@redhat.com> + + * conform/data/complex.h-data: Test for POSIX2008. + + * conform/data/ctype.h-data: Fix POSIX testing. + + * conform/data/dirent.h-data: ino_t only needed for XSI. + + * grp/grp.h: Declare getgrent and endgrent for XPG7. + + * conform/data/inttypes.h-data: Use same types as the headers. + + * resolv/netdb.h: Don't define old resolver macros for XPG7. + + * conform/data/sys/uio.h-data: Don't exclude POSIX2008. + + * conform/conformtest.pl: Implement tag for allow-header. + Fix newline handling in allow-header implementation. + + * conform/data/time.h-data: Use allow-header instead of duplicating + information. + + * conform/data/time.h-data: Allow sigevent tag. + + * posix/sched.h: Define time_t and pid_t for XPG7. + +2010-01-12 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i686/bcopy.S: New file. + + * sysdeps/i386/i686/cacheinfo.c (__x86_64_data_cache_size): Define. + + * sysdeps/i386/i686/memcpy.S (__memcpy_chk): Use ENTRY_CHK + and END_CHK. + * sysdeps/i386/i686/memmove.S (__memmove_chk): Likewise. + * sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise. + * sysdeps/i386/i686/memset.S (__memset_chk): Likewise. + + * sysdeps/i386/i686/memmove.S: Support USE_AS_BCOPY. + + * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add + bzero-sse2 memset-sse2 memcpy-ssse3 mempcpy-ssse3 memmove-ssse3 + memcpy-ssse3-rep mempcpy-ssse3-rep memmove-ssse3-rep + bcopy-ssse3 bcopy-ssse3-rep memset-sse2-rep bzero-sse2-rep + * sysdeps/i386/i686/multiarch/bcopy-ssse3-rep.S: New file. + * sysdeps/i386/i686/multiarch/bcopy-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/bcopy.S: New file. + * sysdeps/i386/i686/multiarch/bzero-sse2-rep.S: New file. + * sysdeps/i386/i686/multiarch/bzero-sse2.S: New file. + * sysdeps/i386/i686/multiarch/bzero.S: New file. + * sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S: New file. + * sysdeps/i386/i686/multiarch/memcpy-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/memcpy.S: New file. + * sysdeps/i386/i686/multiarch/memcpy_chk.S: New file. + * sysdeps/i386/i686/multiarch/memmove-ssse3-rep.S: New file. + * sysdeps/i386/i686/multiarch/memmove-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/memmove.S: New file. + * sysdeps/i386/i686/multiarch/memmove_chk.S: New file. + * sysdeps/i386/i686/multiarch/mempcpy-ssse3-rep.S: New file. + * sysdeps/i386/i686/multiarch/mempcpy-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/mempcpy.S: New file. + * sysdeps/i386/i686/multiarch/mempcpy_chk.S: New file. + * sysdeps/i386/i686/multiarch/memset-sse2-rep.S: New file. + * sysdeps/i386/i686/multiarch/memset-sse2.S: New file. + * sysdeps/i386/i686/multiarch/memset.S: New file. + * sysdeps/i386/i686/multiarch/memset_chk.S: New file. + + * sysdeps/i386/sysdep.h (ENTRY_CHK): New. + (END_CHK): Likewise. + + * sysdeps/i386/i686/multiarch/ifunc-defines.sym: Add + FEATURE_OFFSET, FEATURE_SIZE and FEATURE_INDEX_1. + * sysdeps/x86_64/multiarch/ifunc-defines.sym: Likewise. + + * sysdeps/x86_64/cacheinfo.c (intel_02_cache_info): Add entries + for 0x0e and 0x80. + (__x86_64_data_cache_size): New. + (init_cacheinfo): Set __x86_64_data_cache_size. + + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Turn + on bit_Fast_Rep_String for Intel Core i7. + + * sysdeps/x86_64/multiarch/init-arch.h (bit_Fast_Rep_String): New. + (index_Fast_Rep_String): Likewise. + (FEATURE_INDEX_1): Likewise. + (FEATURE_INDEX_MAX): Likewise. + (cpu_features): Add feature. + +2010-01-12 Ulrich Drepper <drepper@redhat.com> + + * conform/data/sys/select.h-data: Fix up for XPG7. + +2010-01-12 Jakub Jelinek <jakub@redhat.com> + + * posix/sys/wait.h: Don't define W* macros etc. if + stdlib.h has been included with _POSIX_C_SOURCE >= 200809L. + +2010-01-11 Ulrich Drepper <drepper@redhat.com> + + * io/sys/stat.h: Declare fchmod for XPG7. + * conform/data/sys/stat.h-data: Fix up for XPG7. + + * termios/termios.h: Define pid_t for XPG7. + + * conform/data/math.h-data: Fix up for XPG6 and XPG7. + * conform/data/tgmath.h-data: Likewise. + + * conform/data/time.h-data: Fix POSIX tests. + + * conform/data/wchar.h-data: Fix up XPG7 tests. + + * include/features.h: Fix __USE_ISOC95 handling. + + * conform/data/wordexp.h-data: Fix typo in last change. + + * conform/data/unistd.h-data: Fix up older POSIX tests. + + * stdlib/stdlib.h: Fix handling symbols removed in XPG7. + * posix/unistd.h: Likewise. + + * posix/unistd.h: Include environments.h also for XPG6 and up. + Define intptr_t for XPG6 and up. + Fix up for XPG7. + * conform/data/unistd.h-data: Fix up for XPG6 and XPG7. + + * conform/data/sys/types.h-data: Fix up for XPG7. + + * sysdeps/unix/bsd/bits/stat.h: Fix double-inclusion problem. + * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise. + * sysdeps/unix/sysv/bits/stat.h: Likewise. + * sysdeps/mach/hurd/bits/stat.h: Likewise. + + * bits/confname.h: Fix typo in last change. + + * conform/data/unistd.h-data: lockf-constants Not needed for POSIX. + +2010-01-10 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/sigaction.h: SA_RESTART, SA_NODEFER, + and SA_RESETHAND now available in Base. + * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/sigaction.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/sigaction.h: Likewise. + * conform/data/signal.h-data: Update for XPG7. + + * posix/sys/types.h: Define id_t, clock_t, blksize_t for XPG7. + + * string/strings.h: Don't declare obsolete functions for XPG7. + Declare ffs only for XSI. + * conform/data/strings.h-data: Update for XPG7. + +2010-01-10 Jakub Jelinek <jakub@redhat.com> + + [BZ #11125] + * libio/stdio.h: Define va_list, off_t, and ssize_t. + + * posix/glob.h: Define size_t. + + * posix/sys/wait.h: Define idtype_t and declare waitid for XPG7. + + * signal/signal.h: Define size_t, mcontext_t, and ucontext_t for XPG7. + +2010-01-10 Ulrich Drepper <drepper@redhat.com> + + * conform/conformtest.pl: For XPG7 testing the headers are supposed to + be self-contained. + + * conform/data/stdio.h-data: Expect off_t and ssize_t. + +2010-01-09 Ulrich Drepper <drepper@redhat.com> + + * libio/stdio.h: Define va_list also for XPG7. + + * conform/conformtest.pl: Update for XPG7 and some bug fixes. + * conform/data/ctype.h-data: Likewise. + * conform/data/dirent.h-data: Likewise. + * conform/data/errno.h-data: Likewise. + * conform/data/fcntl.h-data: Likewise. + * conform/data/fmtmsg.h-data: Likewise. + * conform/data/fnmatch.h-data: Likewise. + * conform/data/ftw.h-data: Likewise. + * conform/data/glob.h-data: Likewise. + * conform/data/grp.h-data: Likewise. + * conform/data/iconv.h-data: Likewise. + * conform/data/langinfo.h-data: Likewise. + * conform/data/libgen.h-data: Likewise. + * conform/data/limits.h-data: Likewise. + * conform/data/locale.h-data: Likewise. + * conform/data/math.h-data: Likewise. + * conform/data/monetary.h-data: Likewise. + * conform/data/mqueue.h-data: Likewise. + * conform/data/ndbm.h-data: Likewise. + * conform/data/netdb.h-data: Likewise. + * conform/data/pthread.h-data: Likewise. + * conform/data/pwd.h-data: Likewise. + * conform/data/regex.h-data: Likewise. + * conform/data/sched.h-data: Likewise. + * conform/data/search.h-data: Likewise. + * conform/data/semaphore.h-data: Likewise. + * conform/data/setjmp.h-data: Likewise. + * conform/data/signal.h-data: Likewise. + * conform/data/spawn.h-data: Likewise. + * conform/data/stdio.h-data: Likewise. + * conform/data/stdlib.h-data: Likewise. + * conform/data/string.h-data: Likewise. + * conform/data/strings.h-data: Likewise. + * conform/data/sys/ipc.h-data: Likewise. + * conform/data/sys/msg.h-data: Likewise. + * conform/data/sys/resource.h-data: Likewise. + * conform/data/sys/sem.h-data: Likewise. + * conform/data/sys/shm.h-data: Likewise. + * conform/data/sys/socket.h-data: Likewise. + * conform/data/sys/stat.h-data: Likewise. + * conform/data/sys/time.h-data: Likewise. + * conform/data/sys/types.h-data: Likewise. + * conform/data/sys/uio.h-data: Likewise. + * conform/data/sys/wait.h-data: Likewise. + * conform/data/syslog.h-data: Likewise. + * conform/data/tar.h-data: Likewise. + * conform/data/termios.h-data: Likewise. + * conform/data/time.h-data: Likewise. + * conform/data/ulimit.h-data: Likewise. + * conform/data/unistd.h-data: Likewise. + * conform/data/utmpx.h-data: Likewise. + * conform/data/wchar.h-data: Likewise. + * conform/data/wctype.h-data: Likewise. + * conform/data/wordexp.h-data: Likewise. + + * io/fcntl.h: Define mode_t macros instead of including sys/stat.h. + * sysdeps/unix/bsd/bits/stat.h: Enable using from fcntl.h. + * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise. + * sysdeps/unix/sysv/bits/stat.h: Likewise. + * sysdeps/mach/hurd/bits/stat.h: Likewise. + + * stdlib/stdlib.h: Define wait-related bits for XPG7. + Don't declare valloc, mktemp, ecvt, fcvt, gcvt for XPG6 and up. + Declare mkstemp and getsubopt for XPG7. + Declare posix_openpt for XPG6 XSI. + + * include/features.h: Define __USE_XOPEN2KXSI for _XOPEN_SOURCE >= 600 + and __USE_XOPEN2K8XSI for _XOPEN_SOURCE >= 700. + + * string/string.h: Declare strdup for XPG7. + +2010-01-08 Ulrich Drepper <drepper@redhat.com> + + * bits/confname.h: Define _CS_V6_ENV and _CS_V7_ENV. + * posix/confstr.c: Implement _CS_V6_ENV and _CS_V7_ENV. + + * dirent/dirent.h: Really fix feature selection. + + * locale/localeinfo.h: Rename struct locale_data to __locale_data. + Fix all users. + * locale/C-address.c: Fix all users. + * locale/C-collate.c: Likewise. + * locale/C-ctype.c: Likewise. + * locale/C-identification.c: Likewise. + * locale/C-measurement.c: Likewise. + * locale/C-messages.c: Likewise. + * locale/C-monetary.c: Likewise. + * locale/C-name.c: Likewise. + * locale/C-numeric.c: Likewise. + * locale/C-paper.c: Likewise. + * locale/C-telephone.c: Likewise. + * locale/C-time.c: Likewise. + * locale/findlocale.c: Likewise. + * locale/global-locale.c: Likewise. + * locale/loadarchive.c: Likewise. + * locale/loadlocale.c: Likewise. + * locale/nl_langinfo_l.c: Likewise. + * locale/setlocale.c: Likewise. + * locale/xlocale.c: Likewise. + * locale/xlocale.h: Likewise. + * stdio-common/vfscanf.c: Likewise. + * stdlib/strfmon_l.c: Likewise. + * stdlib/strtod_l.c: Likewise. + * stdlib/strtol_l.c: Likewise. + * string/strcoll_l.c: Likewise. + * string/strxfrm_l.c: Likewise. + * time/alt_digit.c: Likewise. + * time/asctime.c: Likewise. + * time/era.c: Likewise. + * time/lc-time-cleanup.c: Likewise. + * time/strftime_l.c: Likewise. + * time/strptime_l.c: Likewise. + * wcsmbs/wcsmbsload.c: Likewise. + * wcsmbs/wcsmbsload.h: Likewise. + + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Define O_DIRECTORY, + O_NOFOLLOW, O_CLOEXEC, F_DUPFD_CLOEXEC, F_SETOWN, and F_GETOWN + for XPG7. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + +2010-01-07 Roland McGrath <roland@redhat.com> + + * elf/elf.h (PN_XNUM): New macro. + + * elf/dl-sysdep.c (_dl_important_hwcaps): Use NT_GNU_HWCAP instead of + literal 2. + +2010-01-06 Ulrich Drepper <drepper@redhat.com> + + * dirent/dirent.h: Fix typo in feature selection macro use. + +2009-12-15 Maciej W. Rozycki <macro@codesourcery.com> + + [BZ #11115] + * stdlib/tst-makecontext3.c: New file. + * stdlib/Makefile (tests): Add new test. + + * stdlib/tst-setcontext.c (check_called): Fix a typo. + +2009-12-17 H.J. Lu <hongjiu.lu@intel.com> + + * configure.in: Enable multi-arch by default if the assembler + supports gnu_indirect_function symbol type and the architecture + supports it. + +2009-12-23 Ulrich Drepper <drepper@redhat.com> + + * include/stdlib.h: Exclude some includes and prototypes if _ISOMAC + is defined. + +2009-12-22 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * hurd/hurdioctl.c (_hurd_locked_install_cttyid): Set newctty to + MACH_PORT_NULL when id != cttyid. + +2009-12-20 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * sysdeps/mach/hurd/getcwd.c (cleanup): Do not call + __mach_port_deallocate on rootdevid. + +2009-12-17 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Handle + R_390_PC32DBL. Remove unneeded R_390_PLT16DBL. + * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Remove + unneeded R_390_PLT16DBL and R_390_PLT32DBL. + +2009-12-21 Ulrich Drepper <drepper@redhat.com> + + [BZ #10992] + * sysdeps/unix/sysv/linux/futimens.c: Handle AT_FDCWD. + Patch by Eric Blake <ebb9@byu.net>. + +2009-12-15 Ulrich Drepper <drepper@redhat.com> + + [BZ #11093] + * bits/poll.h: Define POLLRDNORM, POLLRDBAND, POLLWRNORM, and + POLLWRBAND also for POSIX 2008. + * sysdeps/unix/sysv/linux/bits/poll.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/poll.h: Likewise. + + * include/link.h (struct link_map): Move l_used into its own word. + * elf/dl-lookup.c (_dl_lookup_symbol_x): Only update l_used when it is + still zero. + * elf/dl-object.c (_dl_new_object): Set dl_used if we know it is + never really used. + +2009-12-13 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i686/multiarch/strcspn.S Include <init-arch.h> + instead of <ifunc-defines.h>. Use bit_XXX and index_XXX to + check processor feature. + * sysdeps/i386/i686/multiarch/strlen.S: Likewise. + * sysdeps/i386/i686/multiarch/strspn.S: Likewise. + * sysdeps/x86_64/multiarch/init-arch.h (bit_SSE2): New definition. + (index_SSE2): Likewise. + +2009-12-09 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/multiarch/init-arch.h: Include <ifunc-defines.h> + if __ASSEMBLER__ is defined. + (bit_SSSE3): New. Defined for __ASSEMBLER__. + (bit_SSE4_2): Likewise. + (index_SSSE3): Likewise. + (index_SSE4_2): Likewise. + * sysdeps/x86_64/multiarch/rawmemchr.S: Include <init-arch.h> + instead of <ifunc-defines.h>. Use bit_XXX and index_XXX to + check processor feature. + * sysdeps/x86_64/multiarch/strchr.S: Likewise. + * sysdeps/x86_64/multiarch/strcmp.S: Likewise. + * sysdeps/x86_64/multiarch/strcpy.S: Likewise. + * sysdeps/x86_64/multiarch/strcspn.S: Likewise. + * sysdeps/x86_64/multiarch/strlen.S: Likewise. + * sysdeps/x86_64/multiarch/strrchr.S: Likewise. + * sysdeps/x86_64/multiarch/strspn.S: Likewise. + +2009-12-08 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * sysdeps/sh/elf/initfini.c: Update according to generic/initfini.c. + +2009-12-01 Mike Frysinger <vapier@gentoo.org> + + * sysdeps/sh/sh4/fpu/fpu_control.h (__set_fpscr): New prototype. + +2009-12-11 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Redefine O_SYNC and + O_DSYNC to match 2.6.33+ kernels. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + +2009-12-10 Ulrich Drepper <drepper@redhat.com> + + [BZ #11000] + * nis/nss_nis/nis-hosts.c (_nss_nis_gethostbyname4_r): Always set + *herrnop before returning. + * nis/nss_nisplus/nisplus-hosts.c (internal_gethostbyname2_r): + Likewise. + * nss/nss_files/files-hosts.c (_nss_files_gethostbyname4_r): Handle + TRYAGAIN errors separately. + * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix error handling of + *name4_r after functions. + +2009-12-09 Ulrich Drepper <drepper@redhat.com> + + [BZ #11046] + * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_internal): Fix kernel + version check. + +2009-11-05 Bruno Haible <bruno@clisp.org> + + [BZ #11056] + * posix/unistd.h (execve, fexecve, execv, execvp, execvpe): Mark the + argv argument as non-NULL. + (execle, execl, execlp): Mark the first ARG argument as non-NULL. + +2009-12-08 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/socket.h: Define mmsghdr and declare + recvmmsg. + * sysdeps/unix/sysv/linux/syscalls.list: Add entry for recvmmsg. + * sysdeps/unix/sysv/linux/Versions: Add recvmmsg for GLIBC_2.12. + +2009-12-04 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> + + * sysdeps/s390/s390-64/dl-trampoline.S: Add CFI for the call saved + registers. + * sysdeps/s390/s390-32/dl-trampoline.S: Likewise. + * sysdeps/s390/s390-32/s390-mcount.S: Add CFI. + * sysdeps/s390/s390-64/s390x-mcount.S: Add CFI. + +2009-11-30 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/sched.h: Define SCHED_IDLE and + SCHED_RESET_ON_FORK. + +2009-11-26 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_internal): Avoid code + only used on truly ancient kernel if configuration requires a more + recent kernel. + +2009-11-24 Ulrich Drepper <drepper@redhat.com> + + [BZ #3662] + * stdlib/random_r.c: Fix comments for __initstate_r and __setstate_r. + Patch by Christopher Neufeld <glibcbugs0000@cneufeld.ca>. + + * sysdeps/unix/grantpt.c (pts_name): Take additional parameter, + pass it on to __ptsname_internal. + (grantpt): Pass stat64 pointer to pts_name. Remove stat call here. + * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_internal): New function. + All the code from __ptsname_r but take additional parameter. Use that + instead of pointer to local stat64 variable. + (__ptsname_r): Call __ptsname_internal with pointer to local stat64 + variable. + * include/stdlib.h: Declare __ptsname_internal. + + * sysdeps/unix/grantpt.c (grantpt): Use CLOSE_ALL_FDS is available + before the exec. + * sysdeps/unix/sysv/linux/grantpt.c: New file. + * login/programs/pt_chown.c (main): Don't print message on errors + when doing real work. + + * sysdeps/unix/grantpt.c (grantpt): Only get tty group information + once. + + * csu/elf-init.c (__libc_csu_irel): New function. Code to perform + irel relocations split out from... + (__libc_csu_init): ...here. + * csu/libc-start.c [!SHARED]: Call __libc_csu_irel early. + +2009-11-23 Andreas Schwab <schwab@redhat.com> + + * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Use struct timespec + for timestamps also if __USE_XOPEN2K8. + * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/bits/stat.h: Likewise. + +2009-11-22 Ulrich Drepper <drepper@redhat.com> + + * nscd/connections.c (restart): Try harder to re-exec. + + * sunrpc/create_xid.c (_create_xid): Reinitialize state after fork. + + * sysdeps/unix/sysv/linux/ntp_gettimex.c: New file. + * sysdeps/unix/sysv/linux/Makefile: Add rules to build ntp_gettimex. + * sysdeps/unix/sysv/linux/Versions: Export ntp_gettimex for GLIBC_2.12. + * sysdeps/unix/sysv/linux/sys/timex.h (ntptimeval): Add tai member and + some placeholders. Redirect ntp_gettime to ntp_gettimex. + * sysdeps/unix/sysv/linux/ntp_gettime.c: Adjust for header change. + + * sysdeps/unix/sysv/linux/sys/timex.h (MOD_TAI, MOD_MICRO, MOD_NANO): + Define. + (STA_RONLY): Add STA_NANO, STA_MODE, and STA_CLK. + +2009-11-18 H.J. Lu <hongjiu.lu@intel.com> + + [BZ #10162] + * sysdeps/ia64/memchr.S: Don't use a simple loop on data shorter + than software pipeline. Properly recover from shorter read. + +2009-11-19 Ulrich Drepper <drepper@redhat.com> + + [BZ #10958] + * libio/libio.h (_IO_getwc_unlocked): Check for _wide_data being + initialized before using it. + (_IO_putwc_unlocked): Likewise. + + [BZ #10918] + * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ISSET_S): Use __const + in cast to not throw away const-ness of parameters. + (__CPU_EQUAL_S): Likewise. + (__CPU_OP_S): Likewise. + + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Introduce new symbol + F_OWNER_PGRP and mark F_OWNER_GID obsolete. The kernel people made + this gratuitous change and we have to keep compatibility. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + +2009-11-17 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Change misleading names + of parameters of sync_file_range. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + +2009-11-16 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/sync_file_range.c (sync_file_range): + Implement using sync_file_range2 syscall if __NR_sync_file_range2 + is defined. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/sync_file_range.c: New + file. + +2009-11-17 Paolo Bonzini <bonzini@gnu.org> + + * posix/bug-regex30.c: New file. + * posix/Makefile: Add rules to build and run bug-regex30. + * posix/regcomp.c (re_compile_fastmap_iter): Add all multibyte + character lead bytes when there is a range in a COMPLEX_BRACKET. + Reported by Oleg Bylatov. + +2009-11-17 Ulrich Drepper <drepper@redhat.com> + + [BZ #10969] + * locale/duplocale.c (__duplocale): Handle LC_GLOBAL_LOCALE special. + * locale/tst-duplocale.c: New file. + * locale/Makefile (tests): Add tst-duplocale. + + [BZ #10968] + * locale/langinfo.h (_NL_LOCALE_NAME): Correct definition. + Patch by Bruno Haible <bruno@clisp.org>. + * locale/tst-locname.c: New file. + * locale/Makefile (tests): Add tst-locname. + + [BZ #10972] + * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Add new MADV_* + constants from recent kernels. + * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise. + +2009-11-09 H.J. Lu <hongjiu.lu@intel.com> + + [BZ #10162] + * sysdeps/ia64/memchr.S: Use a simple loop on data shorter than + software pipeline. + +2009-11-09 Mike Frysinger <vapier@gentoo.org> + + * sysdeps/unix/sysv/linux/i386/fallocate.c: Include errno.h. + (fallocate): Return ENOSYS if __NR_fallocate is not defined. + * sysdeps/unix/sysv/linux/i386/fallocate64.c: Likewise. + +2009-11-06 Mike Frysinger <vapier@gentoo.org> + + * posix/bug-regex29.c: Include stdio.h. + +2009-11-14 Ulrich Drepper <drepper@redhat.com> + + [BZ #10939] + * Versions.def: Define GLIBC_2.12 for libc. + * manual/errno.texi: Add ERFKILL entry. + * sysdeps/unix/sysv/linux/Versions: Add new errlist compat entries + for 2.12. + * sysdeps/unix/sysv/linux/bits/errno.h: Define ERFKILL is not done. + * sysdeps/unix/sysv/linux/sparc/bits/errno.h: Likewise. + + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Update F_SETOWN_EX and + F_GETOWN_EX definitions according to corrected kernel definitions. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + +2009-11-12 Ulrich Drepper <drepper@redhat.com> + + * version.h: Bump for 2.12 development. + +2009-11-10 Andreas Schwab <schwab@redhat.com> + + * resolv/mapv4v6hostent.h (map_v4v6_hostent): Return non-zero if + out of buffer space. + * resolv/nss_dns/dns-host.c (getanswer_r): Check for + map_v4v6_hostent running out of space. + +2009-11-10 Ulrich Drepper <drepper@redhat.com> + + * string/bits/string3.h (memset): If the second parameter is constant + and zero there is likely no transposition. + Patch by Caolan McNamara <caolanm@redhat.com. + +2009-11-04 Philippe De Muyter <phdm@macqel.be> + + * sysdeps/powerpc/fpu/e_sqrt.c: Fix spelling of (Newton-)Raphson. + * sysdeps/powerpc/fpu/e_sqrtf.c: Likewise. + +2009-10-30 Holger Hans Peter Freyther <zecke@selfish.org> + + * malloc/memusagestat.c (main): Fix spelling in an error message. + +2009-11-01 H.J. Lu <hongjiu.lu@intel.com> + + * elf/dl-sym.c (do_sym): Properly handle STT_GNU_IFUNC symbols. + * elf/ifuncmain3.c (main): Test dlopen STT_GNU_IFUNC symbol. + +2009-11-03 Andreas Schwab <schwab@redhat.com> + + * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Add + readahead. + +2009-11-03 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/powerpc/powerpc64/dl-machine.h (resolve_ifunc): Don't + relocate opd entry when resolving prelink conflicts. + +2009-11-04 Jakub Jelinek <jakub@redhat.com> + + * misc/sys/uio.h (preadv, pwritev): Fix type of last argument + when -D_FILE_OFFSET_BITS=64. + + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (fallocate): Fix types + of last two arguments when -D_FILE_OFFSET_BITS=64. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (fallocate): Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (fallocate): Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (fallocate): Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (fallocate): Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (fallocate): Likewise. + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (fallocate): Likewise. + +2009-11-03 Andreas Schwab <schwab@linux-m68k.org> + + [BZ #4457] + * sysdeps/generic/libgcc_s.h: New file. + * sysdeps/generic/framestate.c: Include it and use LIBGCC_S_SO. + +2009-11-01 Ulrich Drepper <drepper@redhat.com> + + * malloc/hooks.c (free_check): Restore locking and call _int_free + appropriately. + +2009-10-30 Ulrich Drepper <drepper@redhat.com> + + * version.h (VERSION): Bump for 2.11 release. + * include/features.h (__GLIBC_MINOR__): Bump to 11. + + * elf/tst-execstack.c (do_test): Add cast to avoid warning. + + * stdio-common/scanf13.c (main): Remove unused variable wbuf. + + * stdlib/tst-strtol.c (tests): Mark one more constant as unsigned + to avoid warning. + * stdlib/tst-strtoll.c (tests): Likewise. + + [BZ #9986] + * time/strftime_l.c (__strftime_internal): Allow %OC. + + * misc/mkostemps.c: New file. + * misc/mkostemps64.c: New file. + +2009-10-30 Andreas Schwab <schwab@redhat.com> + + * locale/programs/locale-spec.c: Include <error.h> and + <libintl.h>. + + * sysdeps/unix/sysv/linux/readlinkat.c: Fix last change. + +2009-10-28 Roland McGrath <roland@redhat.com> + + * Makefile (dist-prepare): New target. + (tag-for-dist): Target removed. + (glibc-%.tar): Pattern rule removed. + (%.tar): New pattern rule, does simple use of git archive. + (dist-version): Remove variable definition. + (dist): Just depend on that. Add .tar.xz dependency. + If dist-version variable not set on command line, depend on + dist-prepare, re-invoke with dist-version set via git describe. + + * Makerules (%.xz): New pattern rule. + +2009-10-28 Alan Modra <amodra@bigpond.net.au> + + * elf/ifuncdep2.c: Include ifunc-sel.h. + (global): Delete. + (foo1_ifunc, foo2_ifunc, foo3_ifunc): Use ifunc_sel. + * elf/ifuncmain1.c (global): Delete. + * elf/ifuncmain1vis.c: Likewise. + * elf/ifuncmain2.c: Likewise. + * elf/ifuncmain5.c: Likewise. + * elf/ifuncmod3.c: Likewise. + * elf/ifuncmain6pie.c: Include ifunc-sel.h. + (foo_ifunc): Use ifunc_one. + * elf/ifuncmain7.c: Likewise. + * elf/ifuncmod1.c: Include ifunc-sel.h. + (global): Define protected var. + (foo_ifunc, foo_hidden_ifunc, foo_protected_ifunc): Use ifunc_sel. + * elf/ifuncmod5.c: Likewise. + * sysdeps/generic/elf/ifunc-sel.h: New file. + * sysdeps/powerpc/elf/ifunc-sel.h: New file. + +2009-07-30 Alan Modra <amodra@bigpond.net.au> + + * elf/elf.h (R_PPC_NUM, R_PPC64_NUM): Delete unused and incorrect. + (R_PPC_REL16*): Correct comments. + (R_PPC_IRELATIVE, R_PPC64_IRELATIVE, R_PPC64_JMP_IREL): Define. + (R_PPC64_REL16, R_PPC64_REL16_LO, R_PPC64_REL16_HI, + R_PPC64_REL16_HA): Define. + * sysdeps/powerpc/powerpc32/dl-irel.h: New file. + * sysdeps/powerpc/powerpc64/dl-irel.h: New file. + * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_machine_fixup_plt): + Delete unused "reloc" param. + (__process_machine_rela): Handle R_PPC_IRELATIVE. + * sysdeps/powerpc/powerpc32/dl-machine.h (__elf_machine_fixup_plt): + Delete "reloc" param. + (elf_machine_rela): Handle STT_GNU_IFUNC functions and + R_PPC_IRELATIVE. + * sysdeps/powerpc/powerpc64/dl-machine.h (resolve_ifunc): New function. + (elf_machine_rela): Handle STT_GNU_IFUNC functions and new ifunc + relocations. + +d2009-10-30 Ulrich Drepper <drepper@redhat.com> + + [BZ #10315] + * sysdeps/gnu/netinet/udp.h: Define UDP_CORK, UDP_ENCAP, + UDP_ENCAP_ESPINUDP_NON_IKE, UDP_ENCAP_ESPINUDP, and + UDP_ENCAP_L2TPINUDP. + + [BZ #10349] + * sysdeps/posix/tempname.c (__gen_tempname): Take new second + parameter, specifying length of prefix. + * stdio-common/tempname.c: Likewise. + * include/stdio.h: Adjust prototypes. + * libio/oldtmpfile.c: Adjust caller. + * misc/mkdtemp.c: Likewise. + * misc/mkostemp.c: Likewise. + * misc/mkostemp64.c: Likewise. + * misc/mkstemp.c: Likewise. + * misc/mkstemp64.c: Likewise. + * misc/mktemp.c: Likewise. + * stdio-common/tempnam.c: Likewise. + * stdio-common/tmpfile.c: Likewise. + * stdio-common/tmpnam.c: Likewise. + * stdio-common/tmpnam_r.c: Likewise. + * misc/mkstemps.c: New file. + * misc/mkstemps64.c: New file. + * stdlib/stdlib.h: Add prototypes. + * misc/Makefile (routines): Add mkstemps and mkstemps64. + * misc/Versions: Export mkstemps and mkstemps64 for GLIBC_2.11. + +2009-10-29 Ulrich Drepper <drepper@redhat.com> + + * locale/iso-639.def: Add sml entry. + + [BZ #10391] + * resolv/res_send.c (send_dg): Initialize resplen. + + [BZ #10446] + * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Match sigevent + definition to the kernel's. + * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise. + +2009-08-18 Anders Johansson <ajohansson@novell.com> + + * nscd/aicache.c: Fix mixing up dataset and dataset->resp + offsets and record sizes in assert()s and response sending. + * nscd/grpcache.c: Likewise. + * nscd/hstcache.c: Likewise. + * nscd/initgrcache.c: Likewise. + * nscd/pwdcache.c: Likewise. + +2009-10-29 Ulrich Drepper <drepper@redhat.com> + + [BZ #10540] + * nss/nss_files/files-hosts.c (_nss_files_gethostbyname4_r): If + /etc/hosts does not exist set errnop and herrnop appropriately. + Patch by Steve Langasek <vorlon@debian.org>. + + [BZ #10553] + * malloc/malloc.c (malloc_info): Fix typos in format strings. + Patch by John Sullivan <jsrhbz@kanargh.force9.co.uk>. + + [BZ #10564] + * login/utmp_file.c (TIMEOUT): Increase to 10. + + [BZ #10609] + * sysdeps/unix/sysv/linux/faccessat.c: Fix handling of empty parameters + for file names in case the syscall is not available. + * sysdeps/unix/sysv/linux/fchmodat.c: Likewise. + * sysdeps/unix/sysv/linux/fchownat.c: Likewise. + * sysdeps/unix/sysv/linux/futimesat.c: Likewise. + * sysdeps/unix/sysv/linux/fxstatat.c: Likewise. + * sysdeps/unix/sysv/linux/fxstatat64.c: Likewise. + * sysdeps/unix/sysv/linux/i386/fchownat.c: Likewise. + * sysdeps/unix/sysv/linux/i386/fxstatat.c: Likewise. + * sysdeps/unix/sysv/linux/linkat.c: Likewise. + * sysdeps/unix/sysv/linux/mkdirat.c: Likewise. + * sysdeps/unix/sysv/linux/openat.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/fchownat.c: Likewise. + * sysdeps/unix/sysv/linux/readlinkat.c: Likewise. + * sysdeps/unix/sysv/linux/renameat.c: Likewise. + * sysdeps/unix/sysv/linux/symlinkat.c: Likewise. + * sysdeps/unix/sysv/linux/unlinkat.c: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/fxstatat.c: Likewise. + * sysdeps/unix/sysv/linux/xmknodat.c: Likewise. + + [BZ #10643] + * sysdeps/pthread/aio_misc.c (__aio_enqueue_request): If thread + creation filed, remove the request from the 'requests' list and signal + the caller that the request is finished. + + [BZ #10692] + * nis/nss_nis/nis-grp.c (internal_nis_getgrent_r): Don't free buffer + in error if batch_read. Patch by Joe Landers <jlanders@vmware.com>. + + [BZ #10713] + * nis/nss_nis/nis-grp.c (internal_nis_endgrent): Start freeing blocks + from intern.start. Patch by Joe Landers <jlanders@vmware.com>. + + [BZ #10780] + * libio/ioputs.c (_IO_puts): Make sure to not return a number which + overflows the int return type. + + [BZ #10717] + * malloc/memusagestat.c (main): Fix repairing of trace files. We also + have to compute maxsize_total, we have to update the variables, and + the also_total handling must happen after the repair. + + [BZ #10742] + * nscd/dbg_log.c (dbg_log): Print timestamp before the message text. + Based on patch by Jeffrey Bastian <jbastian@redhat.com>. + +2009-10-27 Andreas Schwab <schwab@redhat.com> + + * sysdeps/unix/sysv/linux/getpt.c (__posix_openpt): Make sure + errno is always set when returning unsuccessfully. + +2009-10-29 Andreas Schwab <schwab@redhat.com> + + * malloc/memusage.c (update_data): Fix index wraparound handling + so that buffer_cnt is actually reset. + +2009-10-29 Ulrich Drepper <drepper@redhat.com> + + [BZ #10784] + * sysdeps/unix/sysv/linux/ttyname.c (getttyname): Always copy name + of the directory we look at into the static buffer if there is one + at the start of the loop. + + [BZ #10789] + * sysdeps/generic/netinet/ip.h: Define IPTOS_ENC* and IPTOS_DSCP* + macros. Patch by Philip Prindeville <philipp@redfish-solutions.com>. + + [BZ #10840] + * sysdeps/unix/sysv/linux/kernel-features.h: Define + __ASSUME_F_GETOWN_EX. + * sysdeps/unix/sysv/linux/fcntl.c: Implement F_GETOWN using F_GETOWN_EX + if possible. + * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise. + + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Define F_OWNER_* + and f_owner_ex. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + + [BZ #10847] + * sysdeps/gnu/getutmp.c: Allow compatibility code to play around with + getutmpx symbol. + + [BZ #10823] + * resolv/res_send.c (__libc_res_nsend): Fix copying of IPv4 server + addresses. Patch by Petar Bogdanovic <petar@smokva.net>. + +2009-10-24 Joseph Myers <joseph@codesourcery.com> + + * sysdeps/ieee754/ldbl-128/w_expl.c: Add hidden_def (__expl). + +2009-10-27 Jakub Jelinek <jakub@redhat.com> + + [BZ #10817] + * math/w_coshl.c (__coshl): Use __finitel instead of __finite. + Reported by Ray Chason. + +2009-10-21 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + strend-sse4. + * sysdeps/x86_64/multiarch/strchr.S: New file. + * sysdeps/x86_64/multiarch/strend-sse4.S: New file. + * sysdeps/x86_64/multiarch/strrchr.S: New file. + +2009-10-21 Andreas Schwab <schwab@redhat.com> + + * elf/dl-sym.c (do_sym): Resolve STT_GNU_IFUNC symbols. + +2009-10-19 Andreas Schwab <schwab@redhat.com> + + * include/math.h: Add hidden protos for __exp/__expf/__expl. + * sysdeps/ieee754/dbl-64/w_exp.c: Add hidden alias. + * sysdeps/ieee754/flt-32/w_expf.c: Likewise. + * sysdeps/ieee754/ldbl-96/w_expl.c: Likewise. + * sysdeps/i386/fpu/s_expm1.S: Call __exp to handle overflow. + * sysdeps/i386/fpu/s_expm1f.S: Call __expf to handle overflow. + * sysdeps/i386/fpu/s_expm1l.S: Call __expl instead of + __ieee751_expl to handle overflow. + +2009-10-14 David S. Miller <davem@davemloft.net> + + * sysdeps/unix/sysv/linux/sparc/sparc32/____longjmp_chk.S: New file. + * sysdeps/unix/sysv/linux/sparc/sparc64/____longjmp_chk.S: New file. + +2009-10-13 Andreas Schwab <schwab@redhat.com> + + * csu/elf-init.c (__libc_csu_init): Run preinit array even if + !USE_MULTIARCH. + +2009-10-08 Ulrich Drepper <drepper@redhat.com> + + [BZ #10730] + * stdlib/random_r.c (__initstate_r): Remove duplicate __set-errno. + Patch in part by Steve Ward <planet36@gmail.com>. + + [BZ #10731] + * stdlib/rand_r.c: Fix typo. + + * po/cs.po: Update from translation team. + +2009-10-06 Andreas Schwab <schwab@redhat.com> + + * elf/dl-load.c (_dl_map_object_from_fd): Close fd before + returning if RTLD_NOLOAD. + +2009-10-06 Roland McGrath <roland@redhat.com> + + * sysdeps/x86_64/multiarch/strstr-c.c + [! SHARED]: Omit libc_hidden_builtin_def fiddling. + + * sysdeps/x86_64/multiarch/strcasestr-c.c: Remove + libc_hidden_builtin_def fiddling, does not apply to strcasestr at all. + + * sysdeps/x86_64/multiarch/init-arch.h + [NOT_IN_libc] (__get_cpu_features): Define it as a macro. + (HAS_CPU_FEATURE): New macro. + (HAS_SSE2, HAS_POPCOUNT, HAS_SSE4_2, HAS_FMA): Use it. + * sysdeps/x86_64/multiarch/init-arch.c + (__get_cpu_features): #undef it before definition. + +2009-10-05 Andreas Schwab <schwab@redhat.com> + + * locale/C-time.c: Revert week-1stday back to 19971130 and set + first_weekday to 1 and first_workday to 2. + +2009-10-01 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Define F_SETOWN_EX and + F_GETOWN_EX. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + +2009-09-28 Andreas Schwab <schwab@redhat.com> + + * stdio-common/printf_fp.c: Check for and avoid integer overflows. + * stdio-common/vfprintf.c: Likewise. + +2009-09-27 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * sysdeps/mach/hurd/mkdirat.c: Include <hurd/fd.h>. + (mkdirat): Call __directory_name_split_at instead of + __directory_name_split. + +2009-09-28 Ulrich Drepper <drepper@redhat.com> + + * locale/programs/locale-spec.c (locale_special): If nothing matches + fail with an appropriate message. + +2009-09-10 H.J. Lu <hongjiu.lu@intel.com> + + * configure.in: Exclude binutils 2.X. Support binutils 2.100 + and XX. + +2009-09-25 Andreas Schwab <schwab@redhat.com> + + * elf/dl-reloc.c (RESOLVE_MAP): Always pass + DL_LOOKUP_ADD_DEPENDENCY to _dl_lookup_symbol_x. + +2009-09-28 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * bits/termios.h [__USE_UNIX98] (IXANY): Define macro. + +2009-09-20 Andreas Schwab <schwab@linux-m68k.org> + + * iconvdata/iso646.c (gconv_init): Correctly initialize the + character size elements in step data. + +2009-09-20 Ulrich Drepper <drepper@redhat.com> + + * po/hu.po: Update from translation team. + * po/vi.po: Likewise. + +2009-09-19 Roland McGrath <roland@redhat.com> + + * libio/wfileops.c (_IO_wfile_seekoff): Remove unused variables. + +2009-09-15 Roland McGrath <roland@redhat.com> + + * aclocal.m4 (GLIBC_PROVIDES): Add _AS_ECHO_PREPARE. + * nptl/sysdeps/pthread/configure: Regenerated. + * nptl/sysdeps/x86_64/configure: Regenerated. + * sysdeps/unix/sysv/linux/configure: Regenerated. + * sysdeps/x86_64/elf/configure: Regenerated. + + * Makefile (autoconf-it): Set execute bit only on top-level configure. + + * configure.in: Let add-ons set $libc_add_on_config_subdirs to have + the effect of AC_CONFIG_SUBDIRS relative to the add-on directory. + * aclocal.m4 (GLIBC_PROVIDES): Add AC_CONFIG_SUBDIRS. + * configure: Regenerated. + +2009-09-09 Ulrich Drepper <drepper@redhat.com> + + * posix/getconf.c (main): Handle -- on command line. + +2009-09-05 H.J. Lu <hongjiu.lu@intel.com> + + * configure.in: Support binutils 2.100 and 3.0. + +2009-09-08 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/s390/s390-32/____longjmp_chk.c: Removed. + * sysdeps/s390/s390-64/____longjmp_chk.c: Removed. + * sysdeps/unix/sysv/linux/s390/s390-32/____longjmp_chk.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-64/____longjmp_chk.c: New file. + +2009-09-07 Ulrich Drepper <drepper@redhat.com> + + * locale/programs/ld-collate.c (struct locale_collate_t): Add + unnamed_section_defined field. + (collate_read): Test and set unnamed_section_defined. + + * posix/getconf.c (vars): Handle POSIX2_LINE_MAX in addition to + _POSIX2_LINE_MAX. + +2009-09-04 H.J. Lu <hongjiu.lu@intel.com> + + * configure.in: Support binutils 2.20. + +2009-09-03 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/i386/i686/multiarch/strstr-c.c (__strstr_sse42, + __strstr_ia32): Add attribute_hidden. + +2009-09-01 Andreas Schwab <schwab@redhat.com> + + * hesiod/nss_hesiod/hesiod-grp.c (internal_gid_from_group): Fix + parsing of group entry. + +2009-09-02 Andreas Schwab <schwab@redhat.com> + + * libio/wfileops.c (_IO_wfile_seekoff): Account for readahead in + external buffer. Always discard readahead in internal buffer. + * libio/Makefile (tests): Add bug-wsetpos. + * libio/bug-wsetpos.c: New file. + +2009-09-02 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/x86_64/multiarch/strstr-c.c (__strstr_sse42, __strstr_sse2): + Add attribute_hidden. + * sysdeps/x86_64/multiarch/strcasestr-c.c (__strcasestr_sse42, + __strcasestr_sse2): Likewise. + * sysdeps/x86_64/multiarch/s_fma.c (__fma_sse2): Add attribute_hidden. + (__fma_fma): Make static. + * sysdeps/x86_64/multiarch/s_fmaf.c (__fmaf_sse2): Add attribute_hidden. + (__fmaf_fma): Make static. + +2009-08-31 Andreas Schwab <schwab@redhat.com> + + * libio/wfileops.c (_IO_wfile_seekoff): Remove dead code and + reformulate in-buffer optimisation check to match code in + _IO_new_file_seekoff. + +2009-08-31 Joshua W. Boyer <jwboyer@linux.vnet.ibm.com> + + * sysdeps/powerpc/powerpc32/power6/memcpy.S: Change srdi instruction + to srwi in 32-bit memcpy for power6. + +2009-09-01 Andreas Schwab <schwab@redhat.com> + + * include/stdio.h: Declare hidden proto for fflush. + * libio/iofflush.c: Add hidden weak alias for fflush. + +2009-09-01 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/x86_64/fpu/bits/mathinline.h: Include bits/wordsize.h. + (__signbitf, __signbit): Only use SSE inline asm for 64-bit. + +2009-08-31 Andreas Schwab <schwab@redhat.com> + + * sysdeps/x86_64/fpu/bits/mathinline.h: Use __asm instead of asm. + +2009-08-31 Ulrich Drepper <drepper@redhat.com> + + [BZ #10560] + * malloc/malloc.c: Add local assert definition to avoid problems with + memory allocation in the real one. + +2009-08-27 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i686/multiarch/init-arch.c (ENABLE_SSSE3_ON_ATOM): + Removed. + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Don't + turn off SSSE3 on Atom. + +2009-08-28 Ulrich Drepper <drepper@redhat.com> + + * stdlib/tst-strtol.c (tests): More tests. + * stdlib/tst-strtoll.c (tests): Likewise. + +2009-08-26 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/ieee754/dbl-64/wordsize-64/s_isinf.c: New file. + + * sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c: New file. + +2009-08-25 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c: Add llround aliases. + * sysdeps/ieee754/dbl-64/wordsize-64/s_llround.c: New file. + + * sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c: New file + + * sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c: New file. + + * sysdeps/ieee754/dbl-64/wordsize-64/s_round.c: New file. + +2009-08-25 Joseph Myers <joseph@codesourcery.com> + + * math/s_fdiml.c (__fdiml): Use fpclassify instead of fpclassifyl. + +2009-08-25 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/fpu/s_scalbln.c: New file. + * sysdeps/x86_64/fpu/s_scalbn.c: New file. + + * sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c: New file. + + * sysdeps/x86_64/fpu/s_signbit.S: New file. + * sysdeps/x86_64/fpu/s_signbitf.S: New file. + + * sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c: New file. + * sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c: New file. + + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Remove + leftover YMM_SIZE definition. + +2009-08-24 Ulrich Drepper <drepper@redhat.com> + + * math/math_private.h (ieee_double_shape_type): Add uint64_t word to + union. + (EXTRACT_WORDS64, INSERT_WORDS64): Define. + * sysdeps/x86_64/fpu/math_private.h (EXTRACT_WORDS64, INSERT_WORDS64): + Redefine. + * sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c: New file. + + * sysdeps/x86_64/fpu/math_private.h: Add specialized GET_FLOAT_WORD + and SET_FLOAT_WORD definitions. + +2009-08-24 Roland McGrath <roland@redhat.com> + + * sysdeps/unix/syscall-template.S: New file. + * sysdeps/unix/make-syscalls.sh: Generate rules to use it. + * sysdeps/unix/Makefile (omit-deps): Do not omit syscall stubs' deps. + (compile-syscall): Pass mkdep and -g options as normal. + (s-proto.d, s-proto-cancel.d): Don't "-include" these. + (common-generated): Don't add them here. + +2009-08-24 Ulrich Drepper <drepper@redhat.com> + + * math/s_fdim.c: In case of overflows set errno. + * math/s_fdimf.c: Likewise. + * math/s_fdiml.c: Likewise. + + * math/math.h: Define math_errhandling of __FAST_MATH__ is not defined. + * sysdeps/i386/fpu/bits/mathinline.h: Undefine math_errhandling if we + are using the inline optimizations. + + * sysdeps/x86_64/fpu/bits/mathinline.h (__signbit): Optimize. + (__signbitf): Likewise. + +2009-08-23 Ulrich Drepper <drepper@redhat.com> + + * posix/regcomp.c (parse_dup_op): Verify the expression is correctly + terminated. + * posix/Makefile (tests): Add bug-regex29. + * posix/bug-regex29.c: New file. + + * posix/unistd.h: Define _POSIX_VERSION and _POSIX2_* correctly if + older POSIX versions are selected. + + * stdio-common/printf_fp.c: ISO C expects to print the sign of NaN + as well. + * stdio-common/printf_fphex.c: Likewise. + * stdio-common/tstdiomisc.c: Add more tests. + + * locale/locale.h: Include xlocale.h and the thread-local locale + declarations for XPG7, not XPG6. + +2009-08-21 Andreas Schwab <schwab@redhat.com> + + * sysdeps/powerpc/powerpc32/____longjmp_chk.S: Removed. + * sysdeps/powerpc/powerpc64/____longjmp_chk.S: Removed. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S: New file. + * sysdeps/powerpc/powerpc32/__longjmp-common.S: Move CHECK_SP earlier. + * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise. + +2009-08-20 Roland McGrath <roland@redhat.com> + + * sysdeps/generic/elf/backtracesyms.c (__backtrace_symbols): + Use l_addr instead of l_map_start (dli_fbase). + Print "FILE([+-]OFFSET) [ADDRESS]" with the file-relative + address when there is no proximate symbol. + * sysdeps/generic/elf/backtracesymsfd.c (__backtrace_symbols_fd): + Likewise. + +2009-08-16 Ulrich Drepper <drepper@redhat.com> + + * scripts/gen-as-const.awk: Fix test for 64-bit platform. + +2009-08-14 Ulrich Drepper <drepper@redhat.com> + + * test-skeleton.c (signal_handler): Renamed from timeout_handler. + Also handle SIGINT. In that case only do the cleanup and then + re-raise the signal. + (main): Install handler for SIGINT. + +2009-08-10 SUGIOKA Toshinobu <sugioka@itonet.co.jp> + + * stdlib/longlong.h [__sh__] (udiv_qrnnd, sub_ddmmss): Add "t" to + clobber list. + +2009-08-01 H.J. Lu <hongjiu.lu@intel.com> + + * elf/Makefile (distribute): Add tst-audit6.c tst-auditmod6a.c + tst-auditmod6b.c tst-auditmod6c.c tst-audit7.c tst-auditmod7a.c + tst-auditmod7b.c. + (tests): Add tst-audit6 tst-audit7. + (modules-names): Add st-auditmod6a tst-auditmod6b tst-auditmod6c + tst-auditmod7a tst-auditmod7b. + ($(objpfx)tst-audit6): New. + ($(objpfx)tst-audit6.out): Likewise. + ($(objpfx)tst-audit7): Likewise. + ($(objpfx)tst-audit7.out): Likewise. + (tst-audit6-ENV): Likewise. + (tst-audit7-ENV): Likewise. + (CFLAGS-tst-auditmod6b.c): Likewise. + (CFLAGS-tst-auditmod6c.c): Likewise. + (CFLAGS-tst-auditmod7b.c): Likewise. + * elf/tst-audit6.c: New file. + * elf/tst-audit7.c: New file. + * elf/tst-auditmod6a.c: New file. + * elf/tst-auditmod6b.c: New file. + * elf/tst-auditmod6c.c: New file. + * elf/tst-auditmod7a.c: New file. + * elf/tst-auditmod7b.c: New file. + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Move + saving and restoring SSE/AVX registers to ... + * sysdeps/x86_64/dl-trampoline.h: This. New file. + +2009-08-07 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i686/multiarch/strcspn.S (STRCSPN): Use PIC + only if SHARED is defined. + * sysdeps/i386/i686/multiarch/strspn.S (strspn): Likewise. + +2009-08-03 Jim Meyering <meyering@redhat.com> + + * sysdeps/i386/configure.in: Use AC_HEADER_CHECK. + +2009-08-08 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/multiarch/strlen.S: Move SSE4.2 version into the same + section as the other functions for this architecture. + * sysdeps/x86_64/multiarch/rawmemchr.S: Likewise. + +2009-08-07 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/strcmp.S: Add support to compile with + USE_SSSE3. In this case palignr is used. + * sysdeps/x86_64/multiarch/strcmp.S (strcmp): If SSE4.2 is not + available but SSSE3 is, pick __str{,n}cmp_ssse3. + * sysdeps/x86_64/multiarch/Makefile [subdir=string] (sysdep_routines): + Add strcmp-ssse3 and strncmp-ssse3. + * sysdeps/x86_64/multiarch/strcmp-ssse3.S: New file. + * sysdeps/x86_64/multiarch/strncmp-ssse3.S: New file. + + * sysdeps/x86_64/multiarch/strcspn-c.c (STRCSPN_SSE42): Avoid + warning through fake initialization. + +2009-08-07 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i686/multiarch/strlen.S (ENTRY): Add the missing "; \". + +2009-08-07 Andreas Schwab <schwab@redhat.com> + + * elf/dl-lookup.c (do_lookup_x): Enter correct name into table of + unique symbols. + +2009-08-05 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Properly use + EBX from EAX = 1. Handle EAX = 11. + +2009-08-07 Andreas Schwab <schwab@redhat.com> + + * Makefile (TAGS): Use separate sed -e expressions to avoid \ + inside ''. + +2009-08-03 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i686/multiarch/strcspn.S: Add comments for no + hidden IFUNC functions. + * sysdeps/i386/i686/multiarch/strspn.S: Likewise. + + * sysdeps/i386/i686/multiarch/strlen.S: New file. + + * sysdeps/i386/i686/multiarch/Makefile [subdir=string] + (sysdep_routines): Add strcspn-c, strpbrk-c, strspn-c, strstr-c, and + strcasestr-c. + (CFLAGS-strcspn-c.c): Define. + (CFLAGS-strpbrk-c.c): Define. + (CFLAGS-strspn-c.c): Define. + (CFLAGS-strstr.c): Define. + (CFLAGS-strcasestr.c): Define. + * sysdeps/i386/i686/multiarch/strcspn-c.c: New file. + * sysdeps/i386/i686/multiarch/strcspn.S: New file. + * sysdeps/i386/i686/multiarch/strpbrk-c.c: New file. + * sysdeps/i386/i686/multiarch/strpbrk.S: New file. + * sysdeps/i386/i686/multiarch/strspn-c.c: New file. + * sysdeps/i386/i686/multiarch/strspn.S: New file. + * sysdeps/i386/i686/multiarch/strstr-c.c: New file. + * sysdeps/i386/i686/multiarch/strstr.c: New file. + * sysdeps/i386/i686/multiarch/strcasestr-c.c: New file. + * sysdeps/i386/i686/multiarch/strcasestr.c: New file. + * sysdeps/x86_64/multiarch/strcspn-c.c (STRCSPN_SSE42): Use + -16L instead of 0xfffffffffffffff0L. + * sysdeps/x86_64/multiarch/strspn-c.c (__strspn_sse42): Likewise. + +2009-08-02 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/i386/configure.in: Add test for <cpuid.h>. + +2009-07-31 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S (longjmp_msg): Yet + another rewrite. Much smaller and faster. + * sysdeps/unix/sysv/linux/i386/____longjmp_chk.S: Likewise. + + * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S (longjmp_msg): Get + ss_flags from the correct location. + +2009-07-31 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i686/Makefile (sysdep_routines): Add cacheinfo. + * sysdeps/i386/i686/cacheinfo.c: New file. + * sysdeps/i386/i686/multiarch/Makefile: New file. + * sysdeps/i386/i686/multiarch/ifunc-defines.sym: New file. + * sysdeps/i386/i686/multiarch/init-arch.c: New file. + * sysdeps/i386/i686/multiarch/init-arch.h: New file. + * sysdeps/i386/i686/multiarch/sched_cpucount.c: New file. + * sysdeps/unix/sysv/linux/i386/i686/sysconf.c: New file. + * sysdeps/x86_64/cacheinfo.c: Include <cpuid.h>. + (__cpuid_count): New. Provide the default. + (__x86_64_prefetchw): Define only if DISABLE_PREFETCHW is not defined. + (__x86_64_preferred_memory_instruction): Define only if + DISABLE_PREFERRED_MEMORY_INSTRUCTION is not defined. + (intel_check_word): Use __cpuid. + (handle_intel): Likewise. + (handle_amd): Likewise. + (__cache_sysconf): Likewise. + (init_cacheinfo): Updated. Use __cpuid and __cpuid_count. + (__cache_sysconf): Likewise. + (init_cacheinfo): Updated. Use __cpuid and __cpuid_count. + * sysdeps/x86_64/multiarch/init-arch.c: Include <cpuid.h>. + (get_common_indeces): Use __cpuid. + (__init_cpu_features): Likewise. Disable SSSE3 on Atom only + if ENABLE_SSSE3_ON_ATOM is not defined. + * sysdeps/x86_64/multiarch/init-arch.h (HAS_SSE2): Define. + * sysdeps/x86_64/multiarch/sched_cpucount.c (POPCNT): Use + popcnt instead of popcntq. + +2009-07-31 Jakub Jelinek <jakub@redhat.com> + + * malloc/Makefile (CFLAGS-obstack.c): Add $(uses-callbacks). + +2009-07-30 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/i386/____longjmp_chk.S: New file. + * sysdeps/i386/____longjmp_chk.S: Remove all code. This is now a file + which always causes a compile error. + + * sysdeps/i386/__longjmp.S: Remove bound-checking pointer support. + + * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S: New file. Content + comes from... + * sysdeps/x86_64/____longjmp_chk.S: ...here. This is now a file + which always causes a compile error. + + * debug/Makefile (tests): Add tst-longjmp_chk2. + * debug/tst-longjmp_chk2.c: New file. + + * sysdeps/x86_64/__longjmp.S: Remove CHECK_RSP handling. Fix CFI. + Remove incorrect use of BP_SYM. + * sysdeps/x86_64/____longjmp_chk.S: Rewrite. Complete implementation + here now since it is more complex than just a simple check. + + * sysdeps/ia64/backtrace.c (backtrace_helper): Stop backtrace when + we make no more progress. + +2009-07-29 Ulrich Drepper <drepper@redhat.com> + + * math/s_fma.c: Don't define alias if __fma is a macro. + * math/s_fmaf.c: Likewise. + * sysdeps/x86_64/multiarch/s_fma.c: New file. + * sysdeps/x86_64/multiarch/s_fmaf.c: New file. + Partially based on a patch by H.J. Lu <hongjiu.lu@intel.com>. + + * sysdeps/x86_64/multiarch/init-arch.h (__get_cpu_features): Declare. + (HAS_POPCOUNT, HAS_SSE4_2): Add variants which work outside libc. + New macro HAS_FMA. + * sysdeps/x86_64/multiarch/init-arch.c (__get_cpu_features): New + function. + * include/libc-symbols.h (libm_ifunc): Define. + * sysdeps/x86_64/multiarch/Versions: New file. + + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Improve CFI. + +2009-07-28 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/dl-trampoline.S: Properly restore AVX registers. + +2009-07-29 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-runtime.c (_dl_fixup): Indicate before _dl_lookup_symbol_x + call that registers used in calling conventions need to be preserved. + * elf/dl-lookup.c (do_lookup_x): Use RTLD_*_FOREIGN_CALL macros + to preserve register content if necessary. + * sysdeps/x86_64/dl-trampoline.S (_dl_x86_64_save_sse): New function. + (_dl_x86_64_restore_sse): New function. + * sysdeps/x86_64/tst-xmmymm.sh: There is now one more function that + is allowed to modify xmm/ymm registers. + + * stdio-common/scanf15.c: Undefine _LIBC. We want to test from an + application's perspective. + * stdio-common/scanf17.c: Likewise. + +2009-07-28 Ulrich Drepper <drepper@redhat.com> + + * csu/libc-tls.c (__libc_setup_tls) [TLS_TCB_AT_TP]: Don't add TCB + size to memsz. + (init_static_tls) [TLS_TCB_AT_TP]: Add it to GL(dl_tls_static_size) + here. + * elf/dl-reloc.c (_dl_try_allocate_static_tls): Compute freebytes in + two steps to catch bugs. + +2009-07-27 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/tst-xmmymm.sh: Refine testing. The script now + determines which files are used in runtime lookups and only checks + those for SSE use. + * sysdeps/x86_64/rtld-memchr.c: Removed. Not needed with refined + testing. + * sysdeps/x86_64/rtld-rawmemchr.c: Removed. + * sysdeps/x86_64/multiarch/rtld-rawmemchr.c: Removed + * sysdeps/x86_64/Makefile: Emit warning that tst-xmmymm.sh might + take a while. + + * elf/dl-open.c: Move _dl_scope_free to... + * elf/dl-scope.c: ...here. New file. + * elf/Makefile (dl-routines): Add scope. + + * resolv/resolv.h (RES_USE_DNSSEC): Define. + * resolv/res_debug.c (p_option): Handle RES_USE_EDNS0 and + RES_USE_DNSSEC. + * resolv/res_mkquery.c (__res_nopt): Set flags for RES_USE_DNSSEC. + * resolv/res_query.c (__libc_res_nquery): Handle RES_USE_DNSSEC in + all the places we handled RES_USE_EDNS0 only before. + Patch by Adam Tkac <atkac@redhat.com>. + +2009-07-27 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-lookup.c (do_lookup_x): Fix check for table more than + 3/4 full. Pass size + 1 rather than size to _dl_higher_prime_number. + Update size when reallocating. + +2009-07-26 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/tst-xmmymm.sh: New file. Check whether any of the + functions used in ld.so modify xmm/ymm registers. + * sysdeps/x86_64/Makefile: Hook new test up. + * sysdeps/x86_64/rtld-memchr.c: New file. + * sysdeps/x86_64/rtld-memcmp.c: New file. + * sysdeps/x86_64/rtld-rawmemchr.c: New file. + * sysdeps/x86_64/rtld-strchr.S: New file. + * sysdeps/x86_64/rtld-strlen.S: New file. + * sysdeps/x86_64/multiarch/rtld-rawmemchr.c: New file. + * sysdeps/x86_64/multiarch/rtld-strlen.S: New file. + +2009-07-26 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Remove + strncmp-c. + * sysdeps/x86_64/multiarch/strcmp.S (aftertail): Removed. + (exit): Likewise. + (Byte1): Likewise. + (Byte2): Likewise. + (Byte3): Likewise. + (Byte4): Likewise. + (Byte5): Likewise. + (Byte6): Likewise. + (next_8_bytes): Likewise. + (Byte0): Remove commented out codes. + (unaligned_table): Align jump table at 8 bytes. + Add _sse4_2 to all labels. Always include "../strcmp.S". + * sysdeps/x86_64/multiarch/strncmp-c.c: Removed. + * sysdeps/x86_64/strcmp.S: Add SSE2 support. + * sysdeps/x86_64/strncmp.S: New file. + +2009-07-26 Ulrich Drepper <drepper@redhat.com> + + [BZ #10422] + * sysdeps/unix/sysv/linux/eventfd.c: Add compatibility for old + kernels, dropped when eventfd2 support was added. + * sysdeps/unix/sysv/linux/signalfd.c: Add compatibility for old + kernels, dropped when signalfd4 support was added. + * sysdeps/unix/sysv/linux/kernel-features.h: More CLOEXEC syscalls + added, name them. + + [BZ #10452] + * resolv/res_send.c (send_dg): Pass full SERVFAIL, NOTIMP, REFUSED + replies up. + + * elf/elf.h: Define NT_GNU_GOLD_VERSION. + +2009-07-25 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/multiarch/strcmp.S: Some more optimizations for + modern processor versions. Patch by H.J. Lu <hongjiu.lu@intel.com>. + + [BZ #10448] + * sysdeps/posix/getaddrinfo.c (gaih_inet): If NSS module contains no + callback we must touch the status to avoid using stale value. + + * sysdeps/x86_64/multiarch/strcmp.S: Exclude unused code from being + compiled in. + +2009-07-24 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/configure.in: Don't automatically include + /lib/modules/* headers anymore. We have sane headers in the standard + place now. + +2009-06-16 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> + + * sysdeps/s390/dl-procinfo.c (_dl_s390_cap_flags): "hpage", + "etf3enh" and "highgprs" added. + (_dl_s390_platforms): "z10" added. + * sysdeps/s390/dl-procinfo.h (_DL_HWCAP_COUNT, _DL_PLATFORMS_COUNT): + Increased for the new entries. + (HWCAP enum): HWCAP_S390_HPAGE, HWCAP_S390_ETF3EH and + HWCAP_S390_HIGH_GPRS added. + + * sysdeps/s390/s390-64/Makefile: Adjusted to build the new modules. + * sysdeps/s390/s390-64/iso-8859-1_cp037_z900.c: New file. + * sysdeps/s390/s390-64/utf16-utf32-z9.c: New file. + * sysdeps/s390/s390-64/utf8-utf16-z9.c: New file. + * sysdeps/s390/s390-64/utf8-utf32-z9.c: New file. + +2009-07-23 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/cacheinfo.c [USE_MULTIARCH]: Rearrange code to + avoid additional cpuid instructions. Most of the information is + stored somewhere. + + * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Add more + cache descriptors. + * sysdeps/x86_64/cacheinfo.c (intel_02_known): Likewise. + + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Reset + SSSE3 bit for Atoms. + * sysdeps/x86_64/multiarch/strcpy.S: New need to perform Atom test + here anymore. + + * posix/tst-rfc3484.c (do_test): Initialize entire sockaddr_in + structure before copying it to avoid warning. + * posix/tst-rfc3484-2.c (do_test): Likewise. + * posix/tst-rfc3484-3.c (do_test): Likewise. + + [BZ #10416] + * include/unistd.h: Make header file suitable for C++ test cases. + Patch by Duncan Simpson <dps@simpson.demon.co.uk>. + + * sysdeps/unix/sysv/linux/i386/makecontext.S: Ensure we preserve the + stack alignment in the exit code. + + * elf/dl-lookup.c (dl_lookup_x): The hashval for unique symbol can + potentially be zero. + + * elf/tst-unique1.c: Extend test to check for unloading DSO with + unique symbol definition. + Patch by Jakub Jelinek. + * elf/dl-lookup.c (do_lookup_x): When entering a new unique symbol, + make sure the object with the definition cannot be unloaded. Adjust + a few types. + * sysdeps/generic/ldsodefs.h (struct rtld_global): The map element in + the unique symbol hash table should not be const. + +2009-07-21 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/multiarch/strstr.c: Minor cleanups. Remove + unnecesary variables. Comment fixes. + +2009-07-20 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/multiarch/strstr.c [USE_AS_STRCASESTR] (STRSTR_SSE42): + Use NONASCII_CASE information provided by the locale to determine + whether optimized string load function can be used. Minor cleanups. + +2009-07-20 H.J. Lu <hongjiu.lu@intel.com> + + * string/strcasestr.c (STRCASESTR): New macro. + (__strcasestr): Renamed to .. + (STRCASESTR): ...this. + * string/strstr.c (STRSTR): New macro. + (strstr): Renamed to .. + (STRSTR): ...this. + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + strstr-c strcasestr-c + (CFLAGS-strstr.c): New. + (CFLAGS-strcasestr.c): Likewise. + * sysdeps/x86_64/multiarch/strcasestr-c.c: New file. + * sysdeps/x86_64/multiarch/strcasestr.c: New file. + * sysdeps/x86_64/multiarch/strstr-c.c: New file. + * sysdeps/x86_64/multiarch/strstr.c: New file. + +2009-07-20 Ulrich Drepper <drepper@redhat.com> + + * locale/localeinfo.h (LIMAGIC): Update value for LC_CTYPE. + * locale/langinfo.h: Define _NL_CTYPE_NONASCII_CASE. + * locale/C-ctype.c (_nl_C_LC_CTYPE): Add initializer for + _NL_CTYPE_NONASCII_CASE. + * locale/programs/ld-ctype.c (locale_ctype_t): Add nonascii_case + field. + (ctype_finish): Check whether there are any 8-bit characters outside + the range ASCII has or whether the mapping isn't the same as for + ASCII (±0x20). Set nonascii_case appropriately. + (ctype_output): Add output handler for nonascii_case. + +2009-07-17 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/generic/sysdep.h: Define cfi_personality, cfi_lsda, + CFI_PERSONALITY, CFI_LSDA, and DW_EH_PE_* constants. + +2009-07-16 Ulrich Drepper <drepper@redhat.com> + + [BZ #10360] + * resolv/res-mkquery.c (__res_nopt): If anslen is > 0xffff store + 0xffff in the EDNS0 record. + +2009-07-16 Ulrich Drepper <drepper@redhat.com> + + * nscd/cache.c (cache_add): Use atomic_compare_and_exchange_bool_rel + instead of atomic_compare_and_exchange_bool_acq to ensure pointer + is written before the list head update. + Patch by Andreas Schwab <aschwab@redhat.com>. + +2009-07-16 Ulrich Drepper <drepper@redhat.com> + Jakub Jelinek <jakub@redhat.com> + + * malloc/malloc.c [ATOMIC_FASTBINS] (_int_free): Make check for + corruption thread-safe. + +2009-07-13 Jakub Jelinek <jakub@redhat.com> + + * include/atomic.h (catomic_compare_and_exchange_val_rel): If arch + overrides atomic_compare_and_exchange_val_rel, define to + atomic_compare_and_exchange_val_rel by default, otherwise default + to catomic_compare_and_exchange_val_acq. + (catomic_compare_and_exchange_bool_rel): If arch overrides + atomic_compare_and_exchange_bool_rel, define to + atomic_compare_and_exchange_bool_rel by default. + * malloc/malloc.c (_int_free): Revert 2009-07-02 change. + Use catomic_compare_and_exchange_val_rel instead of + catomic_compare_and_exchange_val_acq. + +2009-07-16 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/generic/ldsodefs.h: Add prototype for + _dl_higher_prime_number. + * elf/dl-misc.c (_dl_higher_prime_number): Mark with internal_function. + + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Optimize + restoring of ymm registers a bit. + +2009-07-15 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/memcmp.S: New file. + +2009-07-15 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86-64/dl-trampoline.h: Remove after integrating code into... + * sysdeps/x86-64/dl-trampoline.S: ...here. Rewrite to avoid function + pointers in writable memory. + +2009-07-07 H.J. Lu <hongjiu.lu@intel.com> + + * config.h.in: Add HAVE_AVX_SUPPORT entry. + * config.make.in: Add config-cflags-avx entry. + * configure.in: Substitute libc_cv_cc_avx. + * elf/Makefile: Add rules to build and run tst-audit4 and tst-audit5. + * elf/tst-audit4.c: New file. + * elf/tst-audit5.c: New file. + * elf/tst-auditmod4a.c: New file. + * elf/tst-auditmod4b.c: New file. + * elf/tst-auditmod5a.c: New file. + * elf/tst-auditmod5b.c: New file. + * sysdeps/x86_64/Makefile (gen-as-const-headers): Add + link-defines.sym. + * sysdeps/x86_64/bits/link.h (La_x86_64_ymm): New. + (La_x86_64_vector): Likewise. + (La_x86_64_regs): Append lr_vector. + (La_x86_64_retval): Append lr_vector0/lrv_vector1. + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Move + saving and restoring SSE registers to ... + * sysdeps/x86_64/dl-trampoline.h: This. New file. + * sysdeps/x86_64/dl-trampoline.S: Include <config.h> and + <link-defines.h>. + (_dl_runtime_profile): Use LR_SIZE to allocate space for + La_x86_64_regs. Allocate extra space and jump to memory at + save_and_restore_vector if HAVE_AVX_SUPPORT is defined. + (save_and_restore_vector_sse): New. + (save_and_restore_vector_avx): Likewise. + (check_avx): Likewise. + (save_and_restore_vector): Likewise. + * sysdeps/x86_64/elf/configure.in: Set libc_cv_cc_avx and + HAVE_AVX_SUPPORT. + * sysdeps/x86_64/link-defines.sym: New file. + +2009-07-10 Ulrich Drepper <drepper@redhat.com> + + * elf/do-lookup.h: Removed after folding content into... + * elf/dl-lookup.c: ...here. + + * sysdeps/unix/sysv/linux/sys/epoll.h: Fix comment. + +2009-07-09 Ulrich Drepper <drepper@redhat.com> + + * configure.in: Check for gnu_unique_symbol symbol type. + * config.h.in: Add HAVE_ASM_UNIQUE_OBJECT entry. + * elf/do-lookup.h (do_lookup_x): Take new parameter with link map of + the undefined symbol. Handle STB_GNU_UNIQUE binding of found symbol. + * elf/dl-lookup.c (_dl_lookup_symbol_x): Adjust callers for do_lookup_x + change. + * sysdeps/generic/ldsodefs.h (struct rtld_global): Add definitions for + unique symbol table. + * elf/rtld.c (rtld_global): Initialize lock of unique symbol hash table + for first namespace. + * elf/dl-open.c (_dl_open): For new namespace, initialize lock for + unique symbol hash table. + * elf/Makefile: Add rules to build and run tst-unique1 and tst-unique2. + * elf/tst-unique1.c: New file. + * elf/tst-unique1mod1.c: New file. + * elf/tst-unique1mod2.c: New file. + * elf/tst-unique2.c: New file. + * elf/tst-unique2mod1.c: New file. + * elf/tst-unique2mod2.c: New file. + +2009-07-07 Ulrich Drepper <drepper@redhat.com> + + * elf/elf.h (STB_GNU_UNIQUE): Define. + + * elf/dl-misc.c (_dl_higher_prime_number): New function. Moved here + from... + * include/inline-hashtab.h: ...here. + (htab_expand): Adjust for renamed function. Correct memory handling. + +2009-07-06 Ulrich Drepper <drepper@redhat.com> + + * elf/do-lookup.h (do_lookup_x): Optimize test for valid symbol types. + +2009-07-03 Andreas Schwab <aschwab@redhat.com> + + * sysdeps/powerpc/sysdep.h (PPC_FEATURE_ARCH_2_06): Fix value. + (PPC_FEATURE_HAS_VSX): Likewise. + +2009-07-03 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/multiarch/strcspn-c.c: Minor cleanups. + * sysdeps/x86_64/multiarch/strspn-c.c: Likewise. + + * sysdeps/x86_64/multiarch/strcmp.S: Make sure functions are all + aligned to 16 byte boundaries. + * sysdeps/x86_64/multiarch/strcpy.S: Likewise. + * sysdeps/x86_64/multiarch/strlen.S: Likewise. + * sysdeps/x86_64/multiarch/rawmemchr.S: Likewise. + +2009-07-02 H.J. Lu <hongjiu.lu@intel.com> + + * config.h.in (HAVE_SSE4_SUPPORT): New macro. + * config.make.in (config-cflags-sse4): New variable. + * configure.in: Substitute libc_cv_cc_sse4. + * sysdeps/i386/configure.in: Set libc_cv_cc_sse4 and + HAVE_SSE4_SUPPORT. + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + strcspn-c, strpbrk-c, strspn-c for string if gcc supports SSE4. + * sysdeps/x86_64/multiarch/strcspn-c.c: New file. + * sysdeps/x86_64/multiarch/strcspn.S: New file. + * sysdeps/x86_64/multiarch/strpbrk-c.c: New file. + * sysdeps/x86_64/multiarch/strpbrk.S: New file. + * sysdeps/x86_64/multiarch/strspn-c.c: New file. + * sysdeps/x86_64/multiarch/strspn.S: New file. + +2009-06-30 H.J. Lu <hongjiu.lu@intel.com> + + * elf/Makefile (distribute): Remove tst-audit.sh. Add + tst-audit2.c, tst-audit3.c, tst-auditmod3a.c, tst-auditmod3b.c. + (tests): Add tst-audit3 for x86_64. + (modules-names): Add tst-auditmod3a, tst-auditmod3b. + ($(objpfx)tst-audit3): Define. + ($(objpfx)tst-audit3.out): Define. + (tst-audit3-ENV): Define. + * elf/tst-audit3.c: New file. + * elf/tst-auditmod3a.c: New file. + * elf/tst-auditmod3b.c: New file. + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Save + and restore xmm6. + + * string/stpncpy.c (STPNCPY): New. Defined if not defined. + (__stpncpy): Renamed to ... + (STPNCPY): This. + (stpncpy): Create alias only if STPNCPY is not defined. + * string/strncpy.c (STRNCPY): New. Defined to strncpy if not + defined. + (strncpy): Renamed to ... + (STRNCPY): This. + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + stpncpy-c strncpy-c for string. + * sysdeps/x86_64/multiarch/stpcpy.S: New file. + * sysdeps/x86_64/multiarch/stpncpy-c.c: New file. + * sysdeps/x86_64/multiarch/stpncpy.S: New file. + * sysdeps/x86_64/multiarch/strcpy.S: New file. + * sysdeps/x86_64/multiarch/strncpy-c.c: New file. + * sysdeps/x86_64/multiarch/strncpy.S: New file. + +2009-07-02 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c [ATOMIC_FASTBINS] (_int_free): Add full barrier when + adding to fast bin list. + +2009-07-01 Ulrich Drepper <drepper@redhat.com> + + * nis/nss_nis/nis-network.c (_nss_nis_getnetbyaddr_r): Don't use + inet_makeaddr. This worked only with class-based networks. + * nis/nss_nisplus/nisplus-network.c (_nss_nisplus_getnetbyaddr_r): + Likewise. + + * nss/nss_files/files-network.c (netbyaddr): If type is AF_UNSPEC, + recognize all types. + * nss/getent.c (networks_keys): Pass AF_UNSPEC instead of AF_UNIX + to getnetbyaddr. Fix network parameter to getnetbyaddr. It must + be in host byte order. + +2009-06-26 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/multiarch/ifunc-defines.sym (FAMILIY_OFFSET): Define. + (MODEL_OFFSET): Define. + * sysdeps/x86_64/multiarch/init-arch.h (cpu_features): Add + family and model. + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Break + out common code into new function get_common_indeces. Determine + extended family and model for Intel processors. + +2009-06-26 Ulrich Drepper <drepper@redhat.com> + + * resolv/resolv.h: Define RES_SNGLKUPREOP. + * resolv/res_init.c (res_setoptions): Recognize single-request-reopen + option. + * resolv/res_send.c (reopen): New function. Broken out of... + (send_dg): ... here. Recognize RES_SNGLKUPREOP. Implement second + fallback mechanism. If single-request fails switch to + single-request-reopen mode which opens a new socket for the second + request. + +2009-06-25 Andreas Schwab <aschwab@redhat.com> + + * sysdeps/powerpc/powerpc32/____longjmp_chk.S (LOAD_ARG): Define. + (CHECK_SP): Use it. + +2009-06-24 Andreas Schwab <aschwab@redhat.com> + + * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S: Fix cfa offset + for saved registers. + * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S: Likewise. + * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S: Likewise. + * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S: Likewise. + +2009-06-23 Andreas Schwab <aschwab@redhat.com> + + * time/tzfile.c (__tzfile_read): Don't use an empty TZ string. + +2009-06-22 Ulrich Drepper <drepper@redhat.com> + + * po/id.po: Update from translation team. + + * po/bg.po: Update from translation team. + +2009-06-22 H.J. Lu <hongjiu.lu@intel.com> + + * string/strncmp.c (STRNCMP): New. Defined to strncmp if not + defined. + (strncmp): Renamed to STRNCMP. + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + strncmp-c for string. + * sysdeps/x86_64/multiarch/init-arch.h (HAS_SSE4_2): Define. + * sysdeps/x86_64/multiarch/strcmp.S: New file. + * sysdeps/x86_64/multiarch/strncmp.S: New file. + * sysdeps/x86_64/multiarch/strncmp-c.c: New file. + +2009-06-19 H.J. Lu <hongjiu.lu@intel.com> + + * elf/Makefile (distribute): Add ifuncmain1staticpie.c, + ifuncmain5.c, ifuncmain5pic.c, ifuncmain5picstatic.c, + ifuncmain5pie.c, ifuncmain5static.c, ifuncmain5staticpic.c, + ifuncdep5.c, ifuncdep5pic.c, ifuncmod5.c, ifuncmain7.c, + ifuncmain7pic.c, ifuncmain7picstatic.c, ifuncmain7pie.c, and + ifuncmain7static.c. + (tests-static): Add ifuncmain5static, ifuncmain5picstatic, + ifuncmain7static, and ifuncmain7picstatic. + (tests): Also depend on $(objpfx)ifuncmain1staticpie.out, + $(objpfx)ifuncmain5pie.out, $(objpfx)ifuncmain6pie.out, and + $(objpfx)ifuncmain7pie.out. + (modules-names): Add ifuncmod5 ifuncmod6 + (ifuncmod5.so-no-z-defs): Define. + (ifuncmod6.so-no-z-defs): Define. + (CFLAGS-ifuncmain5pic.c): Define. + (CFLAGS-ifuncmain5picstatic.c): Define. + (CFLAGS-ifuncmain5staticpic.c): Define. + (CFLAGS-ifuncdep5pic.c): Define. + (CFLAGS-ifuncmain7pic.c): Define. + (CFLAGS-ifuncmain7picstatic.c): Define. + (CFLAGS-ifuncmain1staticpie.c): Define. + (CFLAGS-ifuncmain5pie.c): Define. + (CFLAGS-ifuncmain6pie.c): Define. + (CFLAGS-ifuncmain7pie.c): Define. + ($(objpfx)ifuncmain1staticpie.out): Define. + ($(objpfx)ifuncmain1staticpie): Define. + ($(objpfx)ifuncmain5pie.out): Define. + ($(objpfx)ifuncmain5pie): Define. + ($(objpfx)ifuncmain6pie.out): Define. + ($(objpfx)ifuncmain6pie): Define. + ($(objpfx)ifuncmain5): Define. + ($(objpfx)ifuncmain5pic): Define. + ($(objpfx)ifuncmain5static): Define. + ($(objpfx)ifuncmain5staticpic): Define. + ($(objpfx)ifuncmain5picstatic): Define. + (generated): Add ifuncmain1staticpie, ifuncmain1staticpie.out, + ifuncmain5pie, ifuncmain5pie.out, ifuncmain6pie, and + ifuncmain6pie.out. + * elf/b/elf/ifuncmain1staticpie.c: New file. + * elf/ifuncdep5.c: New file. + * elf/ifuncdep5pic.c: New file. + * elf/ifuncmain5.c: New file. + * elf/ifuncmain5pic.c: New file. + * elf/ifuncmain5picstatic.c: New file. + * elf/ifuncmain5pie.c: New file. + * elf/ifuncmain5static.c: New file. + * elf/ifuncmain5staticpic.c: New file. + * elf/ifuncmain6pie.c: New file. + * elf/ifuncmain7.c: New file. + * elf/ifuncmain7pic.c: New file. + * elf/ifuncmain7picstatic.c: New file. + * elf/ifuncmain7pie.c: New file. + * elf/ifuncmain7static.c: New file. + * elf/ifuncmod5.c: New file. + * elf/ifuncmod6.c: New file. + +2009-06-20 Ulrich Drepper <drepper@redhat.com> + + [BZ #10085] + * nis/nss_compat/compat-initgroups.c (nss_setgrent): New variable. + (nss_endgrent): New variable. + (struct ent_t): Add need_endgrent and skip_initgroups_dyn + fields. Change type of files to bool and adjust all users. + (init_nss_interface): Initialize nss_setgrent and nss_endgrent. + (internal_endgrent): Call nss_endgrent if necessary. + (add_group): New function. Broken out of... + (check_and_add_group): ...here. + (getgrent_next_nss): Remove test that any callback is available. + Use skip_initgroups_dyn to determine whether to use initgroups_dyn + callback. If there is no blacklist we can trust the results returned + by the initgroups_dyn callback. In case there is a callback and we + find a group entry for the group ID but it doesn't contain the + correct member, switch to the slow mode and use getgrent_r. + (internal_getgrent_r): When we see a +: entry, determine whether + there is any callback and which we can use the initgroups_dyn + callback. + +2009-06-18 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (_int_malloc): Add some consistency checks. + (_int_free): Likewise. + + * sysdeps/unix/sysv/linux/bits/socket.h: Define PF_IEEE802154 and + AF_IEEE802154. + * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise. + * sysdeps/unix/sysv/linux/net/if_arp.h: Define ARPHRD_IEEE802154 + and ARPHRD_IEEE802154_PHY. + + * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Add missing definitions + relative to generic Linux version. + +2009-06-17 H.J. Lu <hongjiu.lu@intel.com> + + * elf/Makefile ($(objpfx)ifuncmain1pie): Use $(+link-pie). + ($(objpfx)ifuncmain1vispie): Likewise. + +2009-06-16 Ulrich Drepper <drepper@redhat.com> + + * login/Makefile: Build pt_chown as PIE. + +2009-06-15 Andreas Schwab <aschwab@redhat.com> + + * debug/xtrace.sh (do_help): Don't treat bug reporting message as + a format string. + * elf/sln.c (usage): Likewise. + * malloc/memusage.sh (do_help): Likewise. + * nss/getent.c (more_help): Likewise. + * posix/getconf.c (main): Likewise. + * sunrpc/rpcinfo.c (usage): Likewise. + * sysdeps/unix/sysv/linux/lddlibc4.c (main): Likewise. + +2009-06-16 Ulrich Drepper <drepper@redhat.com> + + * login/programs/pt_chown.c: Use libcap to drop privileges other than + those needed. + * login/Makefile: If necessary link pt_chown with -lcap. + * sysdeps/generic/pty-private.h: Define FAIL_ENOMEM. + * sysdeps/unix/grantpt.c: Handle FAIL_ENOMEM. + +2009-06-16 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/x86_64/memchr.S (memchr): Use unsigned instead of signed + comparisons. + * string/test-memchr.c (do_random_tests): Test very large lengths + as well. + +2009-06-02 H.J. Lu <hongjiu.lu@intel.com> + + * Makeconfig (+link-pie): Define. + (+prectorS): Define. + (+postctorS): Define. + * elf/Makefile ($(objpfx)tst-pie1): Use $(+link-pie). + * nscd/Makefile ($(objpfx)nscd): Likewise. + +2009-04-22 Ryan S. Arnold <rsa@us.ibm.com> + + [BZ #10107] + * sysdeps/powerpc/powerpc32/power6/memcpy.S (memcpy): Replace cmpldi + with cmplwi. + * sysdeps/powerpc/powerpc32/power6/memset.S (memset): Likewise. + +2009-06-16 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/grantpt.c: Remove file after folding changes + into ... + * sysdeps/unix/grantpt.c: ...here. + +2009-06-15 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/grantpt.c (grantpt): Only call chown and + chmod if it is necessary. + + [BZ #10166] + * sysdeps/unix/sysv/linux/grantpt.c: Remove shortcut which was used + when the slave device is in devpts or devfs. + + [BZ #10183] + * posix/tst-cpucount.c: Don't try more than CPU_SETSIZE bits. + + [BZ #10195] + * inet/netinet/icmp6.h (struct nd_opt_home_agent_info): Change type + of nd_opt_home_agent_info_preference to uint16_t. + Patch by Arnaud Ebalard <arno@natisbad.org>. + + [BZ #10207] + * nss/getent.c: Add support for printing gshadow data. + + [BZ #10203] + * nis/nss_nis/nis-pwd.c (internal_nis_endpwent): Free all buffers, + not just the currently used one and those which follow. + Patch by Joe Landers <jlanders@vmware.com>. + + [BZ #10196] + * libio/tst-fgetwc.c (do_test): Use de_DE.UTF-8 as locale name. + * libio/Makefile: Run tst-fgetwc with necessary envvar. + Patch by Bruce Dubbs <bdubbs@linuxfromscratch.org>. + + [BZ #10217] + * stdlib/abort.c: Define variable __abort_msg. + * stdlib/Versions: Export __abort_msg with GLIBC_PRIVATE version. + * include/stdlib.h: Declare __abort_msg. + * assert/assert-perr.c: Don't free buffer for message immediately. + Store atomically in __abort_msg and free old buffer if necessary. + * assert/assert.c: Likewise. + * sysdeps/posix/libc_fatal.c: Allocate buffer for message, copy it, + store pointer in __abort_msg, and possibly free old string. + * sysdeps/unix/sysv/linux/libc_fatal.c: Likewise. + + * time/tzfile.c (__tzfile_read): Correct computation of tzspec_len. + + [BZ #10211] + * time/tzfile.c (__tzfile_compute): If we use the envvar format still + handle leap seconds if they are available. + Patch by Akinori Hattori <hattya@gentoo.org>. + + * timezone/tzselect.ksh: Update from tzcode2009i. + * timezone/zdump.c: Likewise. + * timezone/zic.c: Likewise. + + * timezone/africa: Update from tzdata2009i. + * timezone/antarctica: Likewise. + * timezone/asia: Likewise. + * timezone/australasia: Likewise. + * timezone/backward: Likewise. + * timezone/etcetera: Likewise. + * timezone/europe: Likewise. + * timezone/factory: Likewise. + * timezone/iso3166.tab: Likewise. + * timezone/leapseconds: Likewise. + * timezone/northamerica: Likewise. + * timezone/pacificnew: Likewise. + * timezone/solar87: Likewise. + * timezone/solar88: Likewise. + * timezone/solar89: Likewise. + * timezone/southamerica: Likewise. + * timezone/systemv: Likewise. + * timezone/yearistype: Likewise. + * timezone/zone.tab: Likewise. + +2009-06-15 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-lookup.c (_dl_debug_bindings): When resolving to + STT_GNU_IFUNC symbol or in 8 into type_class. + + * sysdeps/i386/dl-irel.h (elf_irel): Use Elf32_Addr type + instead of Elf64_Addr. + +2009-06-14 Ulrich Drepper <drepper@redhat.com> + + * po/sv.po: Update from translation team. + + [BZ #10229] + * misc/sys/select.h (__NFDBITS): Expression should have type int. + * sysdeps/x86_64/bits/select.h: Remove asm versions for __FD_SET, + __FD_CLR, and __FD_ISSET. gcc nowadays generates better code from + the C version. + +2009-06-12 Ulrich Drepper <drepper@redhat.com> + + * Versions.def: Add GLIBC_2.11 for libpthread. + +2009-06-11 Ulrich Drepper <drepper@redhat.com> + + * resolv/res_send.c (send_dg): Remember we switched to + single-request mode. + +2009-06-09 Ulrich Drepper <drepper@redhat.com> + + * dlfcn/dlfcn.h: Remove comma at end of enum. + Patch by J.H.M. Dassen <rdassen@redhat.com>. + + * libio/fileops.c (_IO_new_file_fopen): Don't prematurely stop + parsing mode string. + +2009-06-05 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/rawmemchr.S: Minor optimization. + + * sysdeps/x86_64/multiarch/rawmemchr.S: New file. + + * sysdeps/x86_64/multiarch/strlen.S: New file. + * sysdeps/x86_64/multiarch/ifunc-defines.sym: New file. + * sysdeps/x86_64/multiarch/Makefile: Add rule to build ifunc-defines.h. + * sysdeps/x86_64/multiarch/init-arch.h: Name structure with register + content. + + * csu/elf-init.c: Only compile in IFUNC functionality if USE_MULTIARCH + is defined. + +2009-06-04 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/strlen.S: Minor optimizations. + +2009-06-02 H.J. Lu <hongjiu.lu@intel.com> + + * elf/Makefile (distribute): Add ifuncmain1.c, ifuncmain1pic.c, + ifuncmain1vis.c, ifuncmain1vispic.c, ifuncmain1static.c, + ifuncmain1staticpic.c, ifuncmain1picstatic.c, ifuncdep1.c, + ifuncdep1pic.c, ifuncmod1.c, ifuncmain1pie.c, ifuncmain1vispie.c, + ifuncmain2.c, ifuncmain2static.c, ifuncdep2.c, + funcmain2pic.c, ifuncmain2picstatic.c, ifuncdep2pic.c, + ifuncmain3.c, ifuncmod3.c,. + ifuncmain4.c, ifuncmain4static.c, ifuncmain4picstatic.c. + (tests-static): Add ifuncmain1static, ifuncmain1picstatic, + ifuncmain2static, ifuncmain2picstatic, ifuncmain4static, + ifuncmain4picstatic. + (tests): Add ifuncmain1, ifuncmain1pic, ifuncmain1vis, + ifuncmain1vispic, ifuncmain1staticpic, ifuncmain2, ifuncmain2pic, + ifuncmain3, ifuncmain4. + (tests): Depend on $(objpfx)ifuncmain1pie.out and + $(objpfx)ifuncmain1vispie.out. + (modules-names): Add ifuncmod1 ifuncmod3. + (generated): Add ifuncmain1pie ifuncmain1pie.out + ifuncmain1vispie ifuncmain1vispie.out. + Define rules to build and run the tests. + * elf/ifuncdep1.c: New file. + * elf/ifuncdep1pic.c: New file. + * elf/ifuncdep2.c: New file. + * elf/ifuncdep2pic.c: New file. + * elf/ifuncmain1.c: New file. + * elf/ifuncmain1pic.c: New file. + * elf/ifuncmain1picstatic.c: New file. + * elf/ifuncmain1pie.c: New file. + * elf/ifuncmain1static.c: New file. + * elf/ifuncmain1staticpic.c: New file. + * elf/ifuncmain1vis.c: New file.. + * elf/ifuncmain1vispic.c: New file.. + * elf/ifuncmain1vispie.c: New file. + * elf/ifuncmain2.c: New file. + * elf/ifuncmain2pic.c: New file. + * elf/ifuncmain2picstatic.c: New file. + * elf/ifuncmain2static.c: New file. + * elf/ifuncmain3.c: New file. + * elf/ifuncmain4.c: New file. + * elf/ifuncmain4picstatic.c: New file. + * elf/ifuncmain4static.c: New file. + * elf/ifuncmod1.c: New file. + * elf/ifuncmod3.c: New file. + +2009-06-03 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-sysdep.c (_dl_show_auxv): Terminate correct string. + +2009-06-02 Ulrich Drepper <drepper@redhat.com> + + [BZ #10221] + * posix/Makefile (routines): Add execvpe. + * posix/Versions: Export execvpe for GLIBC_2.11. + * posix/execvp.c: Now only a wrapper. Move code to... + * posix/execvpe.c: ...here. New file. + * posix/unistd.h: Declare execvpe. + +2009-06-01 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/i386/dl-machine.h (elf_machine_rel): Reorder conditions + for STT_GNU_IFUNC handling for efficiency. + * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise. + + * sysdeps/i386/dl-irel.h (elf_irel): Use __libc_fatal instead of just + _exit. + * sysdeps/x86_64/dl-irel.h (elf_irela): Likewise. + +2009-05-31 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/multiarch/sched_cpucount.c: Also use optimized code + for !SHARED. + +2009-05-29 H.J. Lu <hongjiu.lu@intel.com> + + * csu/elf-init.c: Include <link.h> and <dl-irel.h> if LIBC_NONSHARED + is not defined. + (__rela_iplt_start): New declaration. + (__rela_iplt_end): Likewise. + (__rel_iplt_start): Likewise. + (__rel_iplt_end): Likewise. + (__libc_csu_init): Process __rela_iplt_start and __rel_iplt_start. + * elf/elf.h (R_386_IRELATIVE): New macro. + (R_X86_64_IRELATIVE): New macro. + (R_386_NUM): Updated. + (R_X86_64_NUM): Likewise. + * include/libc-symbols.h (libc_ifunc_hidden_def1): New macro. + (libc_ifunc_hidden_def): New macro. + * sysdeps/generic/dl-irel.h: New file. + * sysdeps/i386/dl-irel.h: New file. + * sysdeps/x86_64/dl-irel.h: New file. + * sysdeps/i386/dl-machine.h (elf_machine_rel): Handle R_386_IRELATIVE. + (elf_machine_rela): Check SHN_UNDEF for STT_GNU_IFUNC symbol. + Handle R_386_IRELATIVE. + (elf_machine_lazy_rel): Handle R_386_IRELATIVE. + (elf_machine_lazy_rela): Likewise. + * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Handle + R_X86_64_IRELATIVE. + (elf_machine_lazy_rel): Handle R_X86_64_IRELATIVE. + +2009-05-31 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/multiarch/init-arch.h: Define COMMON_CPUID_INDEX_1 + instead of INTEL_CPUID_INDEX_1 and AMD_CPUID_INDEX_1. So far there + are no differences. If an architecture has bits in CPUID index 1 + meaning different things the values for the COMMON_CPUID_INDEX_1 + index must not be set. + (INTEL_HAS_POPCOUNT, AMD_HAS_POPCOUNT): Removed in favor of... + (HAS_POPCOUNT): ...this. New macro. + * sysdeps/x86_64/multiarch/init-arch.c: Use COMMON_CPUID_INDEX_1 + instead of INTEL_CPUID_INDEX_1 and AMD_CPUID_INDEX_1. Unify code + to set the value for Intel and AMD architectures. + * sysdeps/x86_64/cacheinfo.c: Use COMMON_CPUID_INDEX_1 instead of + INTEL_CPUID_INDEX_1. + * sysdeps/x86_64/multiarch/sched_cpucount.c: Adjust for HAS_POPCOUNT + change. + +2009-05-30 Andreas Schwab <schwab@linux-m68k.org> + + * configure.in: Move AC_CANONICAL_HOST before first use of $host + and $build. + +2009-05-29 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/ieee754/ldbl-128/s_expm1l.c: Include <errno.h>. + (__expm1l): Set errno to ERANGE on overflow. + * sysdeps/ieee754/ldbl-128/s_tanl.c: Include <errno.h>. + (__tanl): Set errno to EDOM for ±Inf. + * sysdeps/ieee754/ldbl-128/s_cosl.c: Include <errno.h>. + (__cosl): Set errno to EDOM for ±Inf. + * sysdeps/ieee754/ldbl-128/s_sinl.c: Include <errno.h>. + (__sinl): Set errno to EDOM for ±Inf. + + * sysdeps/s390/s390-32/__longjmp.c (__longjmp): If CHECK_SP is + defined, use it. + * sysdeps/s390/s390-64/__longjmp.c (__longjmp): Likewise. + * sysdeps/s390/s390-32/____longjmp_chk.c: New file. + * sysdeps/s390/s390-64/____longjmp_chk.c: New file. + +2009-05-29 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/cacheinfo.c: Compact intel_02_known array. Adjust + code accessing it. + * sysdeps/unix/sysv/linux/i386/sysconf.c: Likewise. + +2009-05-22 Andreas Schwab <schwab@linux-m68k.org> + + * sysdeps/ieee754/ldbl-128ibm/s_sinl.c: Set errno for ±Inf. + * sysdeps/ieee754/ldbl-128ibm/s_cosl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_tanl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_expm1l.c: Set errno for overflow. + + * sysdeps/powerpc/powerpc32/____longjmp_chk.S: New file. + * sysdeps/powerpc/powerpc64/____longjmp_chk.S: New file. + * sysdeps/powerpc/powerpc32/__longjmp-common.S: Use CHECK_SP if + defined. + * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise. + * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise. + +2009-05-22 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/accept4.c: Include kernel-features.h. + (accept4): If __NR_accept4 is not defined, but __NR_socketcall + is, either do nothing at all if __ASSUME_ACCEPT4, or + call __internal_accept4 and handle EINVAL -> ENOSYS translation. + * sysdeps/unix/sysv/linux/internal_accept4.S: New file. + * sysdeps/unix/sysv/linux/i386/accept4.S (SOCKOP_accept4): Don't + define. + * sysdeps/unix/sysv/linux/i386/internal_accept4.S: New file. + * sysdeps/unix/sysv/linux/Makefile (sysdep-routines): Add + internal_accept4 in socket directory. + +2009-05-20 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/ia64/configure.in: New file. + +2009-05-21 H.J. Lu <hongjiu.lu@intel.com> + + [BZ #10162] + * sysdeps/ia64/memchr.S: Use speculative load. + + * sysdeps/unix/sysv/linux/ia64/____longjmp_chk.S: New file. + * sysdeps/unix/sysv/linux/ia64/__longjmp.S: If CHECK_RSP is defined, + use it. + + * sysdeps/i386/__longjmp.S: Add .text. + * sysdeps/x86_64/__longjmp.S: Likewise. + +2009-05-21 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/kernel-features.h: Don't define + __ASSUME_ACCEPT4 for IA-64. + +2009-05-21 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/accept4.c (__NR_accept4): Don't define. + + * sysdeps/unix/sysv/linux/socketcall.h (SOCKOP_paccept): Remove. + (SOCKOP_accept4): Define. + +2009-05-20 Ulrich Drepper <drepper@redhat.com> + + Sun approved the change of the license. + * sunrpc/auth_des.c: Replace license text. + * sunrpc/auth_none.c: Likewise. + * sunrpc/auth_unix.c: Likewise. + * sunrpc/authdes_prot.c: Likewise. + * sunrpc/authuxprot.c: Likewise. + * sunrpc/bindrsvprt.c: Likewise. + * sunrpc/clnt_gen.c: Likewise. + * sunrpc/clnt_perr.c: Likewise. + * sunrpc/clnt_raw.c: Likewise. + * sunrpc/clnt_simp.c: Likewise. + * sunrpc/clnt_tcp.c: Likewise. + * sunrpc/clnt_udp.c: Likewise. + * sunrpc/clnt_unix.c: Likewise. + * sunrpc/des_crypt.c: Likewise. + * sunrpc/des_soft.c: Likewise. + * sunrpc/get_myaddr.c: Likewise. + * sunrpc/getrpcport.c: Likewise. + * sunrpc/key_call.c: Likewise. + * sunrpc/key_prot.c: Likewise. + * sunrpc/openchild.c: Likewise. + * sunrpc/pm_getmaps.c: Likewise. + * sunrpc/pm_getport.c: Likewise. + * sunrpc/pmap_clnt.c: Likewise. + * sunrpc/pmap_prot.c: Likewise. + * sunrpc/pmap_prot2.c: Likewise. + * sunrpc/pmap_rmt.c: Likewise. + * sunrpc/rpc/auth.h: Likewise. + * sunrpc/rpc/auth_unix.h: Likewise. + * sunrpc/rpc/clnt.h: Likewise. + * sunrpc/rpc/des_crypt.h: Likewise. + * sunrpc/rpc/key_prot.h: Likewise. + * sunrpc/rpc/netdb.h: Likewise. + * sunrpc/rpc/pmap_clnt.h: Likewise. + * sunrpc/rpc/pmap_prot.h: Likewise. + * sunrpc/rpc/pmap_rmt.h: Likewise. + * sunrpc/rpc/rpc.h: Likewise. + * sunrpc/rpc/rpc_des.h: Likewise. + * sunrpc/rpc/rpc_msg.h: Likewise. + * sunrpc/rpc/svc.h: Likewise. + * sunrpc/rpc/svc_auth.h: Likewise. + * sunrpc/rpc/types.h: Likewise. + * sunrpc/rpc/xdr.h: Likewise. + * sunrpc/rpc_clntout.c: Likewise. + * sunrpc/rpc_cmsg.c: Likewise. + * sunrpc/rpc_common.c: Likewise. + * sunrpc/rpc_cout.c: Likewise. + * sunrpc/rpc_dtable.c: Likewise. + * sunrpc/rpc_hout.c: Likewise. + * sunrpc/rpc_main.c: Likewise. + * sunrpc/rpc_parse.c: Likewise. + * sunrpc/rpc_parse.h: Likewise. + * sunrpc/rpc_prot.c: Likewise. + * sunrpc/rpc_sample.c: Likewise. + * sunrpc/rpc_scan.c: Likewise. + * sunrpc/rpc_scan.h: Likewise. + * sunrpc/rpc_svcout.c: Likewise. + * sunrpc/rpc_tblout.c: Likewise. + * sunrpc/rpc_util.c: Likewise. + * sunrpc/rpc_util.h: Likewise. + * sunrpc/rpcinfo.c: Likewise. + * sunrpc/rpcsvc/bootparam_prot.x: Likewise. + * sunrpc/rpcsvc/key_prot.x: Likewise. + * sunrpc/rpcsvc/klm_prot.x: Likewise. + * sunrpc/rpcsvc/mount.x: Likewise. + * sunrpc/rpcsvc/nfs_prot.x: Likewise. + * sunrpc/rpcsvc/rex.x: Likewise. + * sunrpc/rpcsvc/rstat.x: Likewise. + * sunrpc/rpcsvc/rusers.x: Likewise. + * sunrpc/rpcsvc/sm_inter.x: Likewise. + * sunrpc/rpcsvc/spray.x: Likewise. + * sunrpc/rpcsvc/yppasswd.x: Likewise. + * sunrpc/rtime.c: Likewise. + * sunrpc/svc.c: Likewise. + * sunrpc/svc_auth.c: Likewise. + * sunrpc/svc_authux.c: Likewise. + * sunrpc/svc_raw.c: Likewise. + * sunrpc/svc_run.c: Likewise. + * sunrpc/svc_simple.c: Likewise. + * sunrpc/svc_tcp.c: Likewise. + * sunrpc/svc_udp.c: Likewise. + * sunrpc/svc_unix.c: Likewise. + * sunrpc/svcauth_des.c: Likewise. + * sunrpc/xcrypt.c: Likewise. + * sunrpc/xdr.c: Likewise. + * sunrpc/xdr_array.c: Likewise. + * sunrpc/xdr_float.c: Likewise. + * sunrpc/xdr_mem.c: Likewise. + * sunrpc/xdr_rec.c: Likewise. + * sunrpc/xdr_ref.c: Likewise. + * sunrpc/xdr_sizeof.c: Likewise. + * sunrpc/xdr_stdio.c: Likewise. + + * po/da.po: Update from translation team. + +2009-05-18 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * sysdeps/sh/____longjmp_chk.S: New file. + * sysdeps/sh/sh3/__longjmp.S: If CHECK_SP is defined, use it. + * sysdeps/sh/sh4/__longjmp.S: Likewise. + +2009-05-18 Jakub Jelinek <jakub@redhat.com> + Ulrich Drepper <drepper@redhat.com> + + * nscd/nscd_helper.c (MINIMUM_HASHENTRY_SIZE): Define. + (__nscd_cache_search): Assume each entry in the + hash chain needs one hashentry and half of datahead. Use + MINIMUM_HASHENTRY_SIZE instead of sizeof(hashentry). + +2009-05-16 Ulrich Drepper <drepper@redhat.com> + + * posix/sys/wait.h: Fix typos. Pretty printing. + * stdlib/stdlib.h: Likewise. Correct comments. + + [BZ #10159] + * stdlib/stdlib.h (__WAIT_INT): Match the definition in <sys/wait.h>. + + * nscd/nscd_helper.c (__nscd_cache_search): Fix exit condition in last + patch. + +2009-05-15 Ulrich Drepper <drepper@redhat.com> + + * nscd/nscd_helper.c (__nscd_cache_search): Introduce loop counter. + Use it if we absolutely cannot reach any more correct list elements + because that many do not fit into the currently mapped database. + +2009-05-14 Jakub Jelinek <jakub@redhat.com> + + * nscd/nscd_helper.c: Include stddef.h. + (__nscd_cache_search): Add datalen argument. Use atomic_forced_read + in a couple of places. Return NULL if trail is not less than + datasize, don't consider dataheads with length smaller than + offsetof (struct datahead, data) + datalen. + * nscd/nscd_client.h (__nscd_cache_search): Adjust prototype. + * nscd/nscd_gethst_r.c (nscd_gethst_r): Adjust callers. + * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise. + * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise. + * nscd/nscd_getai.c (__nscd_getai): Likewise. + * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise. + * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise. + + * sysdeps/unix/sysv/linux/i386/fallocate64.c (__fallocate64_l64): + Rename ... + (fallocate64): ... to this. + * sysdeps/unix/sysv/linux/fallocate64.c (__fallocate64_l64): + Rename ... + (fallocate64): ... to this. + * sysdeps/unix/sysv/linux/Versions (libc): Remove fallocate64. + * sysdeps/unix/sysv/linux/wordsize-64/Versions (libc): Add + fallocate64@@GLIBC_2.10. + * sysdeps/unix/sysv/linux/i386/Versions (libc): Add + fallocate64@@GLIBC_2.11. + * sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise. + * sysdeps/unix/sysv/linux/sh/Versions (libc): Likewise. + + * nscd/selinux.c (nscd_avc_destroy): Removed. + * nscd/selinux.h (nscd_avc_destroy): Likewise. + * nscd/nscd.c (termination_handler): Don't call + nscd_avc_destroy. + +2009-05-12 Jakub Jelinek <jakub@redhat.com> + + * include/atomic.h: Formatting. + (catomic_compare_and_exchange_val_acq): Don't define if already + defined by bits/atomic.h. + +2009-05-15 Ulrich Drepper <drepper@redhat.com> + + * math/libm-test.inc (expm1_test): Add test for range error. + + * Versions.def: Add GLIBC_2.11 for libc. + * debug/Makefile (routines): Add longjmp_chk. + Add rules to build and run tst-longjmp_chk. + * debug/Versions: Export __longjmp_chk for GLIBC_2.11. + * debug/longjmp_chk.c: New file. + * debug/tst-longjmp_chk.c: New file. + * include/bits/setjmp2.: New file. + * include/stdio.h: Mark __fortify_fail as internal_function. + * setjmp/Makefile (headers): Add bits/setjmp2.h. + * setjmp/bits/setjmp2.h: New file. + * setjmp/longjmp.c: If __libc_siglongjmp is defined, don't define any + of the aliases. + * setjmp/setjmp.h: Include <bits/setjmp2.h> if _FORTIFY_SOURCE is + defined. + * sysdeps/i386/____longjmp_chk.S: New file. + * sysdeps/x86_64/____longjmp_chk.S: New file. + * sysdeps/i386/__longjmp.S: If CHECK_ESP is defined, use it. + * sysdeps/x86_64/__longjmp.S: Likewise. + + * version.h: Bump for 2.11 development. + + * elf/check-execstack.c: New file. + * elf/Makefile: Add rules to build and run check-execstack. + +2009-05-10 Ulrich Drepper <drepper@redhat.com> + + * version.h (VERSION): Bump to 2.10.1. + + * nss/getXXbyYY_r.c: If NO_COMPAT_NEEDED is defined don't define any + compatibility functions. + * nss/getXXent_r.c: Likewise. + * gshadow/getsgent_r.c: Define NO_COMPAT_NEEDED. + * gshadow/getsgnam_r.c: Likewise. + * gshadow/Version: Remove duplicate entries. + + * sysdeps/x86_64/cacheinfo.c (intel_02_cache_info): Add missing entries + for recent processor. + * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_cache_info): + Likewise. + +2009-05-09 Ulrich Drepper <drepper@redhat.com> + + * version.h (VERSION): Bump for 2.10 release. + * include/features.h (__GLIBC_MINOR__): Bump to 10. + + * Makeconfig: Undo last change. Add asflags-cpu to ASFLAGS in the + same place we add ASFLAGS-config. + +2009-05-05 Aurelien Jarno <aurelien@aurel32.net> + + [BZ #10128] + * resolv/res_query.c (__libc_res_nquery): If one query returns NOTIMP + or FORMERR and the other NOERROR, don't raise an error. + +2009-05-06 Ryan S. Arnold <rsa@us.ibm.com> + + [BZ #10118] + * Makeconfig (+asflags): New variable based upon ASFLAG or + asflags-cpu. + (ASFLAGS): Add override to set ASFLAGS to +asflags. + * config.make.in (asflags-cpu): Add variable based upon + @libc_cv_cc_submachine@ to propagate -mcpu=CPU from --with-cpu=CPU to + the assembler. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/setcontext.S: + Remove unneeded file now that the assembler emits _ARCH_PWR6 and + recognizes power6 instruction set due to passing -mcpu=power6 from + --with-cpu=power6 when compiling .S files. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/swapcontext.S: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/setcontext.S: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/swapcontext.S: + Likewise. + +2009-05-09 Jakub Jelinek <jakub@redhat.com> + + * string/stratcliff.c (do_test): Test for zero length + STRNLEN, MEMCHR, STRNCPY, STPNCPY, MEMCPY, MEMPCPY and memccpy + at the end of the page. + +2009-05-08 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_AT_RANDOM. + + * sysdeps/x86_64/memchr.S: Handle invalid buffer pointers when + count is zero. + + * po/da.po: Update from translation team. + +2009-05-05 Jakub Jelinek <jakub@redhat.com> + + * io/sys/stat.h (fstatat64): Guard prototype with __USE_LARGEFILE64, + guard __extern_inline wrapper with __USE_ATFILE instead of __USE_GNU. + +2009-05-05 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/sys/personality.h: Add ADDR_COMPAT_LAYOUT + and READ_IMPLIES_EXEC. + +2009-05-04 Ulrich Drepper <drepper@redhat.com> + + * po/da.po: Update from translation team. + +2009-04-29 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/ifaddrs.c: Revert unintended 2008-08-12 + comment change. + +2009-04-27 Jakub Jelinek <jakub@redhat.com> + + * locale/programs/locarchive.c (create_archive): Add MAP_PRIVATE + to MAP_ANON in PROT_NONE mmap64 call. + (open_archive): Likewise. + (file_data_available_p): Use mmap64 instead of mremap. + (enlarge_archive): Likewise. Update head if ah->addr changed. + Attempt to reserve address space after mmap64 region. + +2009-04-26 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/ieee754/dbl-64/s_expm1.c: Set errno for overflow. + * sysdeps/ieee754/flt-32/s_expm1f.c: Likewise. + * sysdeps/x86_64/fpu/s_expm1l.S: Likewise. + + * sysdeps/ieee754/k_standard.c (__kernel_standard): Pole errors in + atanh should set ERANGE. + + [BZ #10087] + * elf/dl-runtime.c (_dl_fixup): Use DL_FIXUP_VALUE_ADDR to access + result of lookup to make call to implement STT_GNU_IFUNC. + (_dl_profile_fixup): Likewise. + Patch by H.J. Lu <hjl.tools@gmail.com>. + + * nscd/connections.c (send_ro_fd): Define temporary variable to avoid + warning. + + * sysdeps/unix/sysv/linux/dl-osinfo.h (dl_fatal): Remove inline + from definition. + + * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Don't define + label if it is not used. + + * elf/dl-profile.c (_dl_start_profile): Define real-type variant + of gmon_hist_hdr and gmon_hdr structures and use them. + * elf/sprof.c: Likewise. + + * elf/dl-load.c (open_verify): Add temporary variable to avoid + warning. + + * nscd/nscd_helper.c (get_mapping): Avoid casts to avoid warnings. + + * sunrpc/clnt_raw.c (clntraw_private_s): Use union in definition + to avoid cast. + + * inet/rexec.c (rexec_af): Make sa2 a union to avoid warnings. + * inet/rcmd.c (rcmd_af): Make from a union of the various needed types + to avoid warnings. + (iruserok_af): Use ss_family instead of casts. + + * gmon/gmon.c (write_hist): Define real-type variant of + gmon_hist_hdr structure and use it. + (write_gmon): Likewise for gmon_hdr. + + * sysdeps/unix/sysv/linux/readv.c: Avoid declaration of replacement + function if we are not going to define it. + * sysdeps/unix/sysv/linux/writev.c: Likewise. + + * inet/inet6_option.c (option_alloc): Add temporary variable to + avoid warning. + + * libio/strfile.h (struct _IO_streambuf): Use correct type and + name of VTable element. + * libio/iovsprintf.c: Avoid casts to avoid warnings. + * libio/iovsscanf.c: Likewise. + * libio/vasprintf.c: Likewise. + * libio/vsnprintf.c: Likewise. + * stdio-common/isoc99_vsscanf.c: Likewise. + * stdlib/strfmon_l.c: Likewise. + * debug/vasprintf_chk.c: Likewise. + * debug/vsnprintf_chk.c: Likewise. + * debug/vsprintf_chk.c: Likewise. + + * nss/nsswitch.c (__nss_lookup_function): En/Decrypt cached + function pointers. + +2009-04-26 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/ieee754/dbl-64/s_tan.c (tan): Fix -Wsequence-point warnings. + +2009-04-25 Ulrich Drepper <drepper@redhat.com> + + * posix/bits/posix1_lim.h: Cleanup namespace a bit. + + * sysdeps/i386/fpu/s_tan.S: Set errno for ±Inf. + * sysdeps/i386/fpu/s_tanf.S: Likewise. + * sysdeps/i386/fpu/s_tanl.S: Likewise. + * sysdeps/ieee754/dbl-64/s_tan.c: Likewise. + * sysdeps/ieee754/flt-32/s_tanf.c: Likewise. + * sysdeps/x86_64/fpu/s_tanl.S: Likewise. + * math/libm-test.inc: Add tests for errno after tan calls with + ±Inf. + + * sysdeps/ieee754/k_standard.c (__kernel_standard): Use correct + errno value vor pow(+-0,neg). + * math/libm-test.inc (pow_test): Add tests for errno value for + pole errors. + + * math/w_fmod.c: Also handle x=±Inf as error. + * math/w_fmodf.c: Likewise. + * math/w_fmodl.c: Likewise. + * math/libm-test.inc (fmod_test): Add tests for errno after calls for + x=±Inf or y=0. + + * sysdeps/i386/fpu/s_cos.S: Set errno for ±Inf. + * sysdeps/i386/fpu/s_cosf.S: Likewise. + * sysdeps/i386/fpu/s_cosl.S: Likewise. + * sysdeps/i386/fpu/s_sin.S: Likewise. + * sysdeps/i386/fpu/s_sinf.S: Likewise. + * sysdeps/i386/fpu/s_sinl.S: Likewise. + * sysdeps/ieee754/dbl-64/s_sin.c: Likewise. + * sysdeps/ieee754/flt-32/s_cosf.c: Likewise. + * sysdeps/ieee754/flt-32/s_sinf.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_cosl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_sinl.c: Likewise. + * sysdeps/x86_64/fpu/s_cosl.S: Likewise. + * sysdeps/x86_64/fpu/s_sinl.S: Likewise. + * math/libm-test.inc: Add tests for errno after sin/cos calls with + ±Inf. + + * stdlib/strtod_l.c (round_and_return): We have to set errno to + ERANGE for underflows. + * stdlib/tst-strtod.c (tests): Two tests should set errno to ERANGE. + + * stdio-common/stdio_lim.h.in (L_cuserid): Not part of POSIX since + the 2001 revision. + + * libio/tst-widetext.input: Remove surrogates. + + * include/features.h: _POSIX_C_SOURCE >= 200112L implies C99. + + * sysdeps/ieee754/k_standard.c (__kernel_standard): Pole errors + for lgamma should set errno to ERANGE, not EDOM. + * math/libm-test.inc (lgamma_test): Check errno for pole errors. + +2009-04-24 Ulrich Drepper <drepper@redhat.com> + + [BZ #10093] + * iconv/gconv_simple.c (BODY for UTF-8 to INTERNAL): Don't accept + UTF-16 surrogates. + + * locale/programs/locarchive.c (enlarge_archive): Conserve address + space when temporarily mapping the whole content of the old file. + + [BZ #10100] + * misc/hsearch_r.c (hsearch_r): Add back ensurance that hval is + not zero. + +2009-04-24 Jakub Jelinek <jakub@redhat.com> + + * iconvdata/sjis.c (BODY): Don't advance inptr before + STANDARD_FROM_LOOP_ERR_HANDLER (2) for 2 byte invalid input. + Use STANDARD_FROM_LOOP_ERR_HANDLER with 2 instead of 1 for + two byte chars. + +2009-04-24 Ulrich Drepper <drepper@redhat.com> + + * locale/locarchive.h (struct locarhandle): Rename len field to + mmaped and add new reserved field. + * locale/programs/locarchive.c (RESERVE_MMAP_SIZE): Define. + (create_archive): Reserve address space and then map file into it. + (open_archive): Likewise. + (file_data_available_p): New function. + (compare_from_file): New function. + (close_archive): Adjust to member name changes. + (add_locale): Before comparing locale data, check it is mapped. + Otherwise fall back to reading from the file. + +2009-04-23 H.J. Lu <hongjiu.lu@intel.com> + + * stdio-common/psiginfo.c: Include <errno.h>. + +2009-04-23 Ulrich Drepper <drepper@redhat.com> + + [BZ #9920] + * stdlib/random_r.c (__srandom_r): Change type of word to int32_t + to get consistency between 32 and 64 bit architectures. + + [BZ #10052] + * sysdeps/unix/make-syscalls.sh: Add rule to create target + directory for dummy syscall rules. + Patch by Chris Steinbroner <hesh@pobox.com>. + +2009-04-23 Aurelien Jarno <aurelien@aurel32.net> + + [BZ #10092] + * sysdeps/unix/sysv/linux/sys/mount.h: Define MNT_DETACH and + MNT_EXPIRE. + +2009-04-23 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/preadv.c: The kernel API changed. Adjust. + * sysdeps/unix/sysv/linux/pwritev.c: Likewise. + +2009-04-23 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/posix/pwritev.c (PWRITEV): Fix up comment. Copy + data from vector to temporary buffer and call PWRITEV after it + instead of vice versa. + * sysdeps/posix/preadv.c: Fix up comment. + * misc/preadv.c: Likewise. + * misc/preadv64.c: Likewise. + * misc/pwritev.c: Likewise. + * misc/pwritev64.c: Likewise. + * misc/sys/uio.h (preadv, pwritev, preadv64, pwritev64): Likewise. + +2009-04-23 Ulrich Drepper <drepper@redhat.com> + + * shadow/sgetspent_r.c (__sgetspent_r): Recognize too small buffers. + + * shadow/Makefile (tests): Add tst-shadow. + * shadow/tst-shadow.c: New file. + + [BZ #9955] + * gshadow/Makefile: New file. + * gshadow/Versions: New file. + * gshadow/fgetsgent.c: New file. + * gshadow/fgetsgent_r.c: New file. + * gshadow/getsgent.c: New file. + * gshadow/getsgent_r.c: New file. + * gshadow/getsgnam.c: New file. + * gshadow/getsgnam_r.c: New file. + * gshadow/gshadow.h: New file. + * gshadow/putsgent.c: New file. + * gshadow/sgetsgent.c: New file. + * gshadow/sgetsgent_r.c: New file. + * gshadow/tst-gshadow.c: New file. + * include/gshadow.h: New file. + * Makeconfig (all-subdirs): Add gshadow. + * Makefile (installed-headers): Add gshadow/gshadow.h. + * nss/Makefile (databases): Add sgrp. + * nss/Versions: Add gshadow functions as private exports. + * nss/nsswitch.conf: Add gshadow entry. + * nss/sgrp-lookup.c: New file. + * nss/nss_files/files-parse.c: Add STRING_LIST macro. Rewrite + parse_list to handle STRING_LIST and TRAILING_LIST_PARSER. + * nss/nss_files/files-sgrp.c: New file. + * sysdeps/generic/paths.h: Add _PATH_GSHADOW. + * sysdeps/unix/sysv/linux/paths.h: Likewise. + +2009-04-22 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/printf.h: Add missing const to register_printf_modifier. + * stdio-common/reg-modifier.c: Likewise. + +2009-04-22 Andrew Stubbs <ams@codesourcery.com> + + * sysdeps/sh/sh4/setjmp.S (__sigsetjmp): Adjust JB_SIZE when there + is no FPU. + +2009-04-20 Ulrich Drepper <drepper@redhat.com> + + [BZ #10086] + * sysdeps/unix/sysv/linux/sys/timex.h: Add definitions from kernel + headers up to 2.6.30. + + * po/ca.po: Update from translation team. + +2009-04-19 Ulrich Drepper <drepper@redhat.com> + + [BZ #10069] + * elf/dl-open.c (dl_open_worker): We cannot guarantee that we can load + an object that uses static TLS if the TLS modid is higher than the + reserve we always allocate. At least for multi-threaded code. + +2009-04-18 Ulrich Drepper <drepper@redhat.com> + + * stdlib/strfmon_l.c (__vstrfmon_l): Don't wrap when computing width. + Numerically stable check for valid width. + + * locale/programs/locarchive.c (open_archive): Map the entire file + and not just the administrative data. + (add_locale): When we find a hash sum match compare the content + to be sure. + + * malloc/malloc.c (malloc_info): Output address space information. + +2009-04-17 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (malloc_info): Also output system memory information. + + * sysdeps/unix/sysv/linux/kernel-features.h: All supported + architectures have preadv/pwritev in 2.6.30. + + * sysdeps/posix/preadv.c: Reading of zero bytes is no error. + * sysdeps/posix/readv.c: Likewise. + Reported by Markus Armbruster <armbru@redhat.com>. + + * malloc/hooks.c (top_check): Force hook value into register. + +2009-04-16 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * elf/rtld.c (dl_main): Really call _dl_sysdep_start_cleanup after all + calls to _dl_relocate_object. + +2009-04-16 Ulrich Drepper <drepper@redhat.com> + + [BZ #9957] + * malloc/malloc.c (force_reg): Define. + (sYSMALLOc): Load hook variable into variable + before test and force into register. + (sYSTRIm): Likewise. + (public_mALLOc): Force hook value into register. + (public_fREe): Likewise. + (public_rEALLOc): Likewise. + (public_mEMALIGn): Likewise. + (public_vALLOc): Likewise. + (public_pVALLOc): Likewise. + (public_cALLOc): Likewise. + (__posix_memalign): Likewise. + * malloc/arena.c (ptmalloc_init): Load hook variable into variable + before test and force into register. + * malloc/hooks.c (top_check): Likewise. + (public_sET_STATe): Pretty printing. + + * resolv/res_send.c (send_dg): Don't just ignore the result we got + in case we only receive one reply in single-request mode. + +2009-04-16 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-open.c (_dl_open): Bump GL(dl_nns) to 1 if no libraries + are dlopened in statically linked program even for __LM_ID_CALLER. + +2009-04-16 Ulrich Drepper <drepper@redhat.com> + + * resolv/res_send.c (send_dg): Don't switch into single-request + mode if we already are in it. + +2009-04-15 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/getsysstats.c (next_line): Make sure there + are always at least 4 bytes in the returned line. + +2009-04-15 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Check + __libc_use_alloca (8192), if the stack is too small use 512 bytes + instead of 8K. Stop searching in /proc/stat after hitting first + line not starting with cpu. + (next_line): Truncate too long + lines at buffer size * 3/4 instead of pretending there were line + breaks inside of large lines. + +2009-04-14 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/mp_clz_tab.c: New file. + +2009-03-17 Ryan S. Arnold <rsa@us.ibm.com> + Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/fallocate.c: Handle old kernel headers. + * sysdeps/unix/sysv/linux/fallocate64.c: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/fallocate.c: Likewise. + +2009-03-25 Andrew Stubbs <ams@codesourcery.com> + + * sysdeps/sh/libc-tls.c: New file. + + * sysdeps/sh/bits/setjmp.h (__jmp_buf): Give name to structure type. + +2009-04-14 Roland McGrath <roland@redhat.com> + + * elf/elf.h: Add various missing ARM constants, to match binutils. + +2009-04-14 Ulrich Drepper <drepper@redhat.com> + + Optimizations from GMP. + * sysdeps/x86_64/add_n.S: New file. + * sysdeps/x86_64/addmul_1.S: New file. + * sysdeps/x86_64/lshift.S: New file. + * sysdeps/x86_64/mul_1.S: New file. + * sysdeps/x86_64/rshift.S: New file. + * sysdeps/x86_64/sub_n.S: New file. + * sysdeps/x86_64/submul_1.S: New file. + +2009-04-14 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/powerpc/powerpc32/elf/start.S: Ensure .data is non-empty. + * sysdeps/powerpc/powerpc64/elf/start.S: Likewise. + * sysdeps/sparc/sparc32/elf/start.S: Likewise. + * sysdeps/sparc/sparc64/elf/start.S: Likewise. + +2009-04-14 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/kernel-features.h: SH also has + preadv/pwritev. + +2009-04-13 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86-64/strrchr.S: New file. + +2009-04-10 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/printf.h (struct printf_info): Add user element. + New types printf_arginfo_size_function, printf_va_arg_function. + Declare register_printf_specifier, register_printf_modifier, + register_printf_type. + * stdio-common/printf-parse.h (struct printf_spec): Add size element. + (union printf_arg): Add pa_user element. + Adjust __printf_arginfo_table type. + Add __printf_va_arg_table, __printf_modifier_table, + __handle_registered_modifier_mb, and __handle_registered_modifier_wc + declarations. + * stdio-common/printf-parsemb.c: Recognize registered modifiers. + If registered arginfo call failed try normal specifier. + * stdio-common/printf-prs.c: Pass additional parameter to arginfo + function. + * stdio-common/Makefile (routines): Add reg-modifier and reg-type. + * stdio-common/Versions: Export register_printf_modifier, + register_printf_type, and register_printf_specifier for GLIBC_2.10. + * stdio-common/reg-modifier.c: New file. + * stdio-common/reg-type.c: New file. + * stdio-common/reg-printf.c (__register_printf_specifier): New + function. Mostly the old __register_printf_function function but + uses locking and type of third parameter changed. + (__register_printf_function): Implement using + __register_printf_specifier. + * stdio-common/vfprintf.c (vfprintf): Collect argument sizes in + calls to arginfo functions. Allocate enough memory for user-defined + types. Call new va_arg functions to get user-defined types. + Try installed handlers even for existing format specifiers first. + +2009-04-09 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/rawmemchr.S: New file. + + * stdio-common/vfprintf.c (vfprintf): Slightly more compact code. + Simplified code and possible copy problem fixed. + + * sysdeps/unix/sysv/linux/preadv.c: Avoid prototype for static + function if it is not defined. Add some necessary casts. + * sysdeps/unix/sysv/linux/pwritev.c: Likewise. + + * sysdeps/unix/sysv/linux/kernel-features.h: SPARC and IA64 also + have preadv/pwritev in 2.6.30. + +2009-04-08 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (malloc_info): New function. + * malloc/malloc.h: Declare it. + * malloc/Versions: Export malloc_info for GLIBC_2.10. + + * sysdeps/unix/sysv/linux/preadv64.c (PREAD): Use __libc_pread64 + to avoid PLT slot. + + * malloc/malloc.c (_int_realloc): Add parameter with old block + size. Remove duplicated test. Don't handle mmap'ed blocks here. + Adjust all callers. + * malloc/hooks.c (realloc_check): Adjust _int_realloc call. + +2009-04-07 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/strchrnul.S: New file. + + * crypt/Makefile (LDLIBS-crypt.so): Use this variable instead of + depending libcrypt on -lfreebl3. + + * sysdeps/unix/sysv/linux/kernel-features.h: Power also has + preadv/pwritev in 2.6.30. + + * resolv/nss_dns/dns-host.c (getanswer_r): Use strcasecmp + instead of __strcasecmp. + + * string/stratcliff.c (do_test): Add memchr tests.. + * wcsmbs/wcsatcliff.c (MEMCHR): Define. + * sysdeps/x86_64/memchr.S: Fix handling of end of buffer after + first read quad word. + +2009-04-06 Ulrich Drepper <drepper@redhat.com> + + * string/strverscmp.c (__strverscmp): Fix last cleanups. + * string/tst-svc.input: Add new test case. + * string/tst-svc.expect: Adjust. + * string/Makefile: Don't ignore tst-svc error. + + * sysdeps/x86_64/memchr.S: New file. + + * resolv/resolv.h (RES_SNGLKUP): Define. + * resolv/res_init.c (res_setoptions): Recognize single-request option. + * resolv/res_send.c (send_dg): If we sent two requests at once and + only get one reply before timeout switch to mode where we send the + second request only after the first answer has been received. + +2009-04-05 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/strlen.S: Optimize by using SSE2 instructions. + * sysdeps/x86_64/strchr.S: Likewise. + +2009-04-03 Ulrich Drepper <drepper@redhat.com> + + * configure.in: We need to test for the compiler earlier. + + * misc/Makefile (routines): Add preadv, preadv64, pwritev, pwritev64. + * misc/Versions: Export preadv, preadv64, pwritev, pwritev64 for + GLIBC_2.10. + * misc/sys/uio.h: Declare preadv, preadv64, pwritev, pwritev64. + * sysdeps/unix/sysv/linux/kernel-features.h: Add entries for preadv + and pwritev. + * misc/preadv.c: New file. + * misc/preadv64.c: New file. + * misc/pwritev.c: New file. + * misc/pwritev64.c: New file. + * sysdeps/posx/preadv.c: New file. + * sysdeps/posx/preadv64.c: New file. + * sysdeps/posx/pwritev.c: New file. + * sysdeps/posx/pwritev64.c: New file. + * sysdeps/unix/sysv/linux/preadv.c: New file. + * sysdeps/unix/sysv/linux/preadv64.c: New file. + * sysdeps/unix/sysv/linux/pwritev.c: New file. + * sysdeps/unix/sysv/linux/pwritev64.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/preadv64.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/pwritev64.c: New file. + + * sysdeps/unix/sysv/linux/readv.c (__libc_readv): Fix calling of + compatibility code. + * sysdeps/unix/sysv/linux/writev.c (__libc_writev): Likewise. + + * sysdeps/unix/sysv/linux/kernel-features.h: Define + __ASSUME_COMPLETE_READV_WRITEV. + * sysdeps/unix/sysv/linux/readv.c: No need for userlevel fallback + with modern kernels. + * sysdeps/unix/sysv/linux/writev.c: Likewise. + + * sysdeps/posix/readv.c: Since read is a cancellation point we have + to free a possible malloced buffer in case of cancellation. + * sysdeps/posix/writev.c: Likewise for write. + +2009-04-02 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/socket.h: Add missing protocol numbers. + + * configure.in: Recognize --enable-nss-crypt. + * config.make.in: Add nss-crypt entry. + * crypt/Makefile: If nss-crypt==yes, don't build md5.c, sha256.c, + sha512.c. Don't run md5test, sha256test, sha512test. Pass -DUSE_NSS + and include path for NSS directory to compiler for md5-crypt, + sha256-crypt, sha512-crypt. Link libcrypt.so with -lfreebl3. + * crypt/md5-crypt.c: If USE_NSS is defined, don't use local hash + function implementation, use NSS. Introduce wrappers around the + hash function calls. Little code size optimization. + * crypt/sha256-crypt.c: Likewise. + * crypt/sha512-crypt.c: Likewise. + * scripts/check-local-headers.sh: Ignore nss3 directory. + + * configure.in: Rename pic_default to libc_cv_pic_default. + * config.make.in: Likewise. + +2009-04-01 Roland McGrath <roland@redhat.com> + + * elf/elf.h (R_SPARC_GLOB_JMP): New macro. + (R_SPARC_GOTDATA_HIX22, R_SPARC_GOTDATA_LOX10): New macros. + (R_SPARC_GOTDATA_OP_HIX22, R_SPARC_GOTDATA_OP_LOX10): Likewise. + (R_SPARC_GOTDATA_OP, R_SPARC_H34): Likewise. + (R_SPARC_SIZE32, R_SPARC_SIZE64): Likewise. + (R_SPARC_GNU_VTINHERIT, R_SPARC_GNU_VTENTRY, R_SPARC_REV32): Likewise. + (R_SPARC_NUM): Update. + From Dave Miller <davem@davemloft.net>. + +2009-04-01 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/sys/eventfd.h (EFD_SEMAPHORE): Define. + +2009-03-31 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-open.c: Keep track of used name spaces and only iterate over + those which are used. + * elf/dl-addr.c: Likewise. + * elf/dl-caller.c: Likewise. + * elf/dl-fini.c: Likewise. + * elf/dl-iteratephdr.c: Likewise. + * elf/dl-libc.c: Likewise. + * elf/dl-load.c: Likewise. + * elf/dl-support.c: Likewise. + * elf/dl-sym.c: Likewise. + * elf/rtld.c: Likewise. + * sysdeps/generic/ldsodefs.h: Likewise. + + * elf/dl-load.c: Remove support for systems without MAP_ANON. + * elf/dl-minimal.c: Likewise. + * elf/dl-misc.c: Likewise. + * elf/rtld.c: Likewise. + * sysdeps/generic/ldsodefs.h: Likewise. + +2009-03-30 Ulrich Drepper <drepper@redhat.com> + + * elf/do-lookup.h (do_lookup_x): Minor optimization and cleanup. + Avoid reuse of complex expression. + + * po/fr.po: Update from translation team. + +2009-03-16 Ulrich Drepper <drepper@redhat.com> + + * include/dirent.h: Yet more changes to match sort function type + change. + * sysdeps/unix/sysv/linux/i386/alphasort64.c: Likewise. + * sysdeps/unix/sysv/linux/i386/olddirent.h: Likewise. + * sysdeps/unix/sysv/linux/i386/versionsort64.c: Likewise. + +2009-03-16 Thomas Schwinge <tschwinge@gnu.org> + + * dirent/scandir64.c (scandir64): Adjust declaration to type change. + +2009-03-16 Ulrich Drepper <drepper@redhat.com> + + * nscd/connections.c (restart): Try to preserve the process name + by reading the /proc/self/exe symlink and using the return name. + Patch by Jeff Bastian <jbastian@redhat.com>. + +2009-03-15 Ulrich Drepper <drepper@redhat.com> + + [BZ #9733] + * elf/dl-load.c (_dl_map_object_from_fd): Only call audit hooks + if we are not loading a new audit library. + * elf/dl-reloc (_dl_relocate_object): Third parameter is now a bitmask. + Only use profiling trampoline for auditing if we are not relocating + an audit library. + * elf/dl-open.c (dl_open_worker): Adjust _dl_relocate_object call. + * elf/rtld.c: Likewise. + * sysdeps/generic/ldsodefs.h: Adjust _dl_relocate_object prototype. + + * elf/rtld.c (dl_main): Extend help message for --audit option. + + [BZ #9759] + * dirent/dirent.h: Adjust prototypes of scandir, scandir64, alphasort, + alphasort64, versionsort, and versionsort64 to POSIX 2008. + * dirent/alphasort.c: Adjust implementation to type change. + * dirent/alphasort64.c: Likewise. + * dirent/scandir.c: Likewise. + * dirent/versionsort.c: Likewise. + * dirent/versionsort64.c: Likewise. + * sysdeps/wordsize-64/alphasort.c: Add hack to hide alphasort64 + declaration. + * sysdeps/wordsize-64/versionsort.c: Add hack to hide versionsort64 + declaration. + + [BZ #9880] + * inet/inet6_rth.c (inet6_rth_reverse): Compute number of segments + correctly. Set segleft member in output as required. + Patch partly by Yang Hongyang <yanghy@cn.fujitsu.com>. + * inet/tst-inet6_rth.c (do_test): Add tests for inet6_rth_reverse. + + [BZ #9881] + * inet/inet6_rth.c (inet6_rth_add): Add some error checking. + Patch mostly by Yang Hongyang <yanghy@cn.fujitsu.com>. + * inet/Makefile (tests): Add tst-inet6_rth. + * inet/tst-inet6_rth.c: New file. + + [BZ #5807] + * string/strlen.c (strlen): Fix omission in the expression to test + for NUL bytes. + +2009-03-14 Ulrich Drepper <drepper@redhat.com> + + * crypt/sha256test.c (main): Perform 100,000 'a' test in a second way. + + * elf/dl-runtime.c (reloc_offset): Define. + (reloc_index): Define. + (_dl_fixup): Rename reloc_offset parameter to reloc_arg. + (_dl_fixup_profile): Likewise. Use reloc_index instead of + computing index from reloc_offset. + (_dl_call_pltexit): Likewise. + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_resolve): Just pass + the relocation index to _dl_fixup. + (_dl_runtime_profile): Likewise for _dl_fixup_profile and + _dl_call_pltexit. + * sysdeps/x86_64/dl-runtime.c: New file. + + [BZ #9893] + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Fix + alignment of La_x86_64_regs. Store xmm parameters. + Patch mostly by Jiri Olsa <olsajiri@gmail.com>. + + [BZ #9913] + * string/strverscmp.c (__strverscmp): Fix case of different digits + in fractional part of string. + Patch by Jingyu Liu <jyliu@fortinet.com>. + * string/Makefile (tests): Add tst-svc2. + * string/tst-svc2.c: New file. + + * string/strverscmp.c (__strverscmp): Optimize size of tables. + + * locale/iso-639.def: Add Min Nan. + +2009-03-11 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com> + + [BZ #9948] + * elf/dl-sysdep.c (_dl_show_auxv): Add support for AT_BASE_PLATFORM. + +2009-03-14 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-sysdep.c (auxvars): Compress data structure. + + * sysdeps/i386/dl-machine.h (elf_machine_rel): Implement + STT_GNU_IFUNC handling. + (elf_machine_rela): Likewise. + +2009-03-13 Ulrich Drepper <drepper@redhat.com> + + * config.h.in (USE_MULTIARCH): Define. + * configure.in: Handle --enable-multi-arch. + * elf/dl-runtime.c (_dl_fixup): Handle STT_GNU_IFUNC. + (_dl_fixup_profile): Likewise. + * elf/do-lookup.c (dl_lookup_x): Likewise. + * sysdeps/x86_64/dl-machine.h: Handle STT_GNU_IFUNC. + * elf/elf.h (STT_GNU_IFUNC): Define. + * include/libc-symbols.h (libc_ifunc): Define. + * sysdeps/x86_64/cacheinfo.c: If USE_MULTIARCH is defined, use the + framework in init-arch.h to get CPUID values. + * sysdeps/x86_64/multiarch/Makefile: New file. + * sysdeps/x86_64/multiarch/init-arch.c: New file. + * sysdeps/x86_64/multiarch/init-arch.h: New file. + * sysdeps/x86_64/multiarch/sched_cpucount.c: New file. + + * config.make.in (experimental-malloc): Define. + * configure.in: Handle --enable-experimental-malloc. + * malloc/Makefile: Handle experimental-malloc flag. + * malloc/malloc.c: Implement PER_THREAD and ATOMIC_FASTBINS features. + * malloc/arena.c: Likewise. + * malloc/hooks.c: Likewise. + * malloc/malloc.h: Define M_ARENA_TEST and M_ARENA_MAX. + +2009-03-11 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Add branch + prediction. A few size optimizations. + +2009-03-10 Ulrich Drepper <drepper@redhat.com> + + * time/tzset.c: Optimize a bit for size. + +2009-03-10 Jakub Jelinek <jakub@redhat.com> + + * include/stdio.h (fmemopen): Add libc_hidden_proto. + * libio/fmemopen.c (fmemopen): Add libc_hidden_def. + + * elf/sprof.c: Avoid warning about multi-line comment. + +2009-03-10 Ulrich Drepper <drepper@redhat.com> + + * time/tzset.c (__tzset_parse_tz): Use correct string when parsing + DST name. + * time/tst-posixtz.c: Add tests for quoted timezone names. + +2009-03-10 Jakub Jelinek <jakub@redhat.com> + + * posix/unistd.h (_POSIX_VERSION, _POSIX2_VERSION, _POSIX2_C_BIND, + _POSIX2_C_DEV, _POSIX2_SW_DEV, _POSIX2_LOCALEDEF): Define to + 200809L instead of 200112L. + (_XOPEN_VERSION): For __USE_XOPEN2K8 define to 700. + * posix/tst-sysconf.c (STDVER): Define to 200809L instead of 200112L. + + * stdlib/quick_exit.c (quick_exit): Pass &__quick_exit_funcs + instead of __quick_exit_funcs to __run_exit_handlers. + * stdlib/at_quick_exit.c (at_quick_exit): Add attribute_hidden. + * stdlib/exit.h (__run_exit_handlers): Add noreturn attribute. + (__cxa_at_quick_exit): Remove attribute_hidden. + * stdlib/exit.c (exit): Pass &__exit_funcs instead of __exit_funcs + to __run_exit_handlers. + * stdlib/cxa_at_quick_exit.c (__cxa_at_quick_exit): Remove + attribute_hidden. + +2009-03-10 Ulrich Drepper <drepper@redhat.com> + + * po/id.po: Update from translation team. + +2009-02-18 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Use + .machine push; .machine "power6" and .machine pop around mtfsf + insns outside of _ARCH_PWR6 define. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S: + Likewise. + * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c (_SET_DI_FPSCR): Likewise. + * sysdeps/powerpc/fpu/fenv_libc.h (fesetenv_register, + relax_fenv_state): Likewise. + +2009-03-08 Ulrich Drepper <drepper@redhat.com> + + * stdlib/Makefile (routines): Add quick_exit, at_quick_exit, and + cxa_at_quick_exit. + (static-only-routines): Add at_quick_exit. + * stdlib/Versions: Export quick_exit and __cxa_at_quick_exit for + GLIBC_2.10. + * stdlib/quick_exit.c: New file. + * stdlib/at_quick_exit.c: New file. + * stdlib/cxa_at_quick_exit.c: New file. + * stdlib/cxa_atexit.c (__cxa_atexit): Move body to new function. Call + it appropriately. + (__internal_atexit): New function. + (__new_exitfn): Now takes parameter to point to the list to use. + * stdlib/cxa_finalize.c: Remove quick_exit handlers, don't call them. + * stdlib/exit.c (__run_exit_handlers): New function. Split from... + (exit): ...here. Just call __run_exit_handlers appropriately. + * stdlib/exit.h: Declare __quick_exit_funcs, __run_exit_handlers, + __internal_atexit, __cxa_at_quick_exit. Adjust __new_exitfn. + * stdlib/on_exit.c: Adjust call to __new_exitfn. + * stdlib/stdlib.h: Declare at_quick_exit and quick_exit. + + * po/id.po: Update from translation team. + +2009-03-07 Ulrich Drepper <drepper@redhat.com> + + * po/ru.po: Update from translation team. + +2009-03-04 Ulrich Drepper <drepper@redhat.com> + + * po/nl.po: Update from translation team. + +2009-03-03 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Declare fallocate{,64}. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise. + + * po/pl.po: Update from translation team. + +2009-03-02 Ulrich Drepper <drepper@redhat.com> + + [BZ #7083] + * sysdeps/unix/sysv/linux/fallocate.c: New file. + * sysdeps/unix/sysv/linux/fallocate64.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/fallocate64.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/fallocate.c: New file. + * sysdeps/unix/sysv/linux/i386/fallocate64.c: New file. + * sysdeps/unix/sysv/linux/i386/fallocate.c: New file. + * sysdeps/unix/sysv/linux/Versions: Export fallocate and fallocate64 + for GLIBC_2.10. + * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): + Add fallocate and fallocate64. + + * io/fcntl.h: Pretty printing. + +2009-03-02 Richard Guenther <rguenther@suse.de> + + * misc/sys/cdefs.h (__extern_always_inline): Add __artificial__ + attribute also for non-C99 inline semantics variant. + +2009-02-12 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com> + + * sysdeps/powerpc/powerpc32/power7/fpu/Implies: New file. + * sysdeps/powerpc/powerpc32/power7/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power7/fpu/Implies: Likewise. + * sysdeps/powerpc/powerpc64/power7/Implies: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/fpu/Implies: + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/fpu/Implies: + Likewise. + +2009-03-02 Ulrich Drepper <drepper@redhat.com> + + * po/cs.po: Update from translation team. + +2009-02-28 Ulrich Drepper <drepper@redhat.com> + + * po/bg.po: Update from translation team. + * po/sv.po: Likewise. + * po/fi.po: Likewise. + * po/vi.po: Likewise. + +2009-02-27 Roland McGrath <roland@redhat.com> + + * Makeconfig (%.v.i): Depend on Makeconfig. + Exclude % lines from initial #-comment removal. + +2009-02-27 Ulrich Drepper <drepper@redhat.com> + + * po/ko.po: Update from translation team. + +2009-02-26 Roland McGrath <roland@redhat.com> + + * shadow/lckpwdf.c (__lckpwdf): Move FLAGS inside block using it, + avoids unused warning. + +2009-02-26 Andrew Stubbs <ams@codesourcery.com> + SUGIOKA Toshinobu <sugioka@itonet.co.jp> + + * sysdeps/unix/sysv/linux/sh/sys/procfs.h: Don't include signal.h, + sys/ucontext.h and asm/elf.h. Include sys/user.h. + * sysdeps/unix/sysv/linux/sh/sys/user.h: Don't include features.h + and asm/user.h. Include asm/ptrace.h. + (PTRACE_GETREGS, PTRACE_SETREGS, PTRACE_GETFPREGS, + PTRACE_SETFPREGS, PTRACE_GETFDPIC, PTRACE_GETFDPIC_EXEC, + PTRACE_GETFDPIC_INTERP, PTRACE_GETDSPREGS, PTRACE_SETDSPREGS): + Undefine. + (start_thread): Don't undefine. + (elf_greg_t, ELF_NGREG, elf_fpregset_t, user_fpu_struct, user): + Define. + +2009-02-26 Ulrich Drepper <drepper@redhat.com> + + * wctype/wctype.h: The *_l functions are in POSIX 2008. + * wcsmbs/wchar.h: mbsnrtowcs, open_wmemstream, wcpcpy, wcpncpy, + wcscasecmp, wcsdup, wcsncasecmp, wcsnlen, wcsnrtombs, + wcscasecmp_l, wcsncasecmp_l, wcscoll_l, and wcsxfrm_l. + * sysdeps/mach/hurd/bits/posix_opt.h: Reset value of macros from + 200112L to 200809L. + * sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise. + * posix/getconf.c (vars): Add _SC_THREAD_ROBUST_PRIO_INHERIT and + _SC_THREAD_ROBUST_PRIO_PROTECT entries. + * bits/confname.h: Add _SC_THREAD_ROBUST_PRIO_INHERIT and + _SC_THREAD_ROBUST_PRIO_PROTECT. + * posix/unistd.h: fexecve is in POSIX 2008. + * time/time.h: strftime_l is in POSIX 2008. + * io/sys/stat.h: futimens is in POSIX 2008. + * string/strings.h: strcasecmp_l and strncasecmp_l are in POSIX 2008. + * string/string.h: stpcpy, stpncpy, strndup, strnlen, strsignal, + strcoll_l, strerror_l, and strxfrm_l are in POSIX 2008. + * stdlib/stdlib.h: mkdtemp is in POSIX 2008. + * libio/stdio.h: dprintf, fmemopen, getdelim, getline, + open_memstream, and vdprintf are in POSIX 2008. + +2009-02-25 Ulrich Drepper <drepper@redhat.com> + + * include/features.h: Define macros for XPG7/POSIX 2008. + * ctype/ctype.h: The *_l functions are in POSIX 2008. + * dirent/dirent.h: alphasort, dirfd, scandir, and fdopendir are in + POSIX 2008. + * locale/langinfo.h: nl_langinfo_l is in POSIX 2008. + * locale/xlocale.h: Define locale_t type. + * locale/locale.h: duplocale, freelocale, newlocale, uselocale are + in POSIX 2008. Don't define locale_t here. + * stdlib/monetary.h: strfmon_l is in POSIX 2008. + * sysdeps/unix/sysv/linux/bits/stat.h: Protect UTIME_NOW and + UTIME_OMIT only with __USE_ATFILE. + * signal/signal.h: Declare psignal and psiginfo for POSIX 2008. + * stdio-common/psiginfo.c: New file. + * stdio-common/psiginfo-data.h: New file. + * stdio-common/psiginfo-define.h: New file. + * stdio-common/Makefile (routines): Add psiginfo. + * stdio-common/Versions: Export psiginfo for GLIBC_2.10. + * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise. + * io/sys/stat.h: Move mknodat definition into same conditional as + mknod. + * time/sys/time.h: futimesat is not among the functions accepted + into the POSIX standard. + + * include/features.h: If no feature selection given and we select + by default a POSIX mode, also define __USE_POSIX_IMPLICITLY. + * posix/Versions: Export __posix_getopt. + * posix/getopt.c (_getopt_initialize): Take additional parameter. + Use it to alternatively initialize __posixly_correct. + (_getopt_internal_r): Take addition parameter. Pass on to + _getopt_initialize. + (_getopt_internal): Take addition parameter. Pass on to + _getopt_internal_r. + (getopt): Pass additional zero to _getopt_internal. + (__posix_getopt): New function. + * posix/getopt.h: Add redirection for getopt. + * posix/getopt1.c (getopt_long): Pass additional zero to + _getopt_internal. + (getopt_long_only): Likewise. + (_getopt_long_r): Pass additional zero to _getopt_internal_r. + (_getopt_long_only_r): Likewise. + * posix/getopt_int.h: Adjust declarations of _getopt_internal and + _getopt_internal_r. + +2009-02-24 Ulrich Drepper <drepper@redhat.com> + + * bits/confname.h: Define _SC_TRACE_EVENT_NAME_MAX, _SC_TRACE_NAME_MAX, + _SC_TRACE_SYS_MAX, _SC_TRACE_USER_EVENT_MAX, _SC_XOPEN_STREAMS. + * sysdeps/posix/sysconf.c (__sysconf): Handle + _SC_TRACE_EVENT_NAME_MAX, _SC_TRACE_NAME_MAX, _SC_TRACE_SYS_MAX, + _SC_TRACE_USER_EVENT_MAX, _SC_XOPEN_STREAMS. + +2009-02-24 Roland McGrath <roland@redhat.com> + + [BZ #9895] + * README.template: Reworded not to use substituted version number. + Renamed to ... + * README: ... here (no longer generated). + * Makefile (README): Target removed. + +2009-02-24 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): + /proc/sys/kernel/rtsig_max doesn't exist anymore, use getrlimit + instead. + + * io/sys/stat.h: The lstat functions have been mandatory since 2001. + + * time/tzset.c (tzset_internal): Correct parsing of TZ envvar. + +2009-02-22 Ulrich Drepper <drepper@redhat.com> + + * po/bg.po: Update from translation team. + +2009-02-16 Jakub Jelinek <jakub@redhat.com> + + * stdlib/monetary.h: Uglify function parameter names. + * sunrpc/rpc/pmap_clnt.h: Likewise. + * sunrpc/rpc/svc.h: Likewise. + * sunrpc/rpc/xdr.h: Likewise. + * sunrpc/rpc/clnt.h: Likewise. + * resolv/netdb.h: Likewise. + * resolv/arpa/nameser.h: Likewise. + * resolv/resolv.h: Likewise. + * argp/argp.h: Likewise. + * locale/langinfo.h: Likewise. + * io/sys/stat.h: Likewise. + * posix/spawn.h: Likewise. + * nis/rpcsvc/nislib.h: Likewise. + * malloc/obstack.h: Likewise. + * sysdeps/ia64/bits/link.h: Likewise. + * sysdeps/i386/bits/link.h: Likewise. + * sysdeps/s390/bits/link.h: Likewise. + * sysdeps/powerpc/bits/link.h: Likewise. + * sysdeps/x86_64/bits/link.h: Likewise. + * sysdeps/sparc/bits/link.h: Likewise. + * sysdeps/sh/bits/link.h: Likewise. + * sysdeps/unix/sysv/linux/i386/sys/io.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/sys/io.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sys/eventfd.h: Likewise. + * sysdeps/unix/sysv/linux/sys/eventfd.h: Likewise. + +2008-12-01 Fredrik Unger <fred@tree.se> + + * soft-fp/double.h [_FP_W_TYPE_SIZE >= 64] (FP_UNPACK_SEMIRAW_D, + FP_UNPACK_SEMIRAW_DP): Use _FP_UNPACK_RAW_1 instead of + _FP_UNPACK_RAW_2, fix up first argument. + +2009-02-15 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/getsysstats.c (next_line): New function. + (GET_NPROCS_PARSER): Change parameters and use next_line. + (__get_nprocs): Rewrite to not use stdio routines. + * sysdeps/unix/sysv/linux/sparc/getsysstats.c (GET_NPROCS_PARSER): + Change parameters and use next_line. + +2009-02-13 Ulrich Drepper <drepper@redhat.com> + + [BZ #5381] + * nscd/nscd.h: Remove definitions and declarations for mem_in_flight. + Change mempool_alloc prototype. + * nscd/mem.c (gc): Don't handle mem_in_flight. + (mempool_alloc): Third parameter now only indicates whether this is the + first call (to allocate data) or not. If it is, get db rdlock. + Release it on error. Don't handle mem_in_flight. + * nscd/aicache.c (addhstaiX): Mark he parameter as const. + Adjust third parameter of mempool_alloc calls. + Nothing to do here in case mempool_alloc fails. + Avoid local variable shadowing parameter. No need to get db rdlock + before calling cache_add. + * nscd/cache.c (cache_add): Adjust call to mempool_alloc. There is + no mem_in_flight array anymore. + * nscd/connections.c: Remove definition and handling of mem_in_flight. + * nscd/grpcache.c (cache_addgr): Adjust third parameter of + mempool_alloc calls. Mark he parameter as const. Nothing to do here + in case mempool_alloc fails. No need to get db rdlock before calling + cache_add. + * nscd/hstcache.c (cache_addhst): Likewise. + * nscd/initgrcache.c (addinitgroupsX): Likewise. + * nscd/servicescache.c (cache_addserv): Likewise. + * nscd/pwdcache.c (cache_addpw): Likewise. Remove some debugging code. + +2009-02-11 Ulrich Drepper <drepper@redhat.com> + + * po/lt.po: Update from translation team. + +2009-02-10 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-load.c (open_verify): In case VALID_ELF_HEADER is + defined, allow additional data to be added using the optional + MORE_ELF_HEADER_DATA macro. + * sysdeps/unix/sysv/linux/ldsodefs.h (VALID_ELF_HEADER, + VALID_ELF_OSABI, VALID_ELF_ABIVERSION, MORE_ELF_HEADER_DATA): Define. + +2009-02-08 Ulrich Drepper <drepper@redhat.com> + + * include/atomic.h: Define catomic_and if not already defined. + * sysdeps/x86_64/bits/atomic.h: Define catomic_and. + * sysdeps/i386/i486/bits/atomic.h: Likewise. + +2009-02-07 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (_int_free): Second argument is now mchunkptr. + Change all callers. + (_int_realloc): Likewise. Third argument is now padded size + All _int_* functions are now static. + + * malloc/hooks.c: Change all callers to _int_free and _int_realloc. + * malloc/arena.c: Likewise. + * include/malloc.h: Remove now unnecessary declarations of the _int_* + functions. + + * sunrpc/rpc_common.c: We cannot move _null_auth into .rodata that + easily. + + * malloc/malloc.c: Add branch prediction for use of the hooks. + + * grp/compat-initgroups.c [NOT_IN_libc] (__libc_use_alloca): Define. + +2009-02-06 Ulrich Drepper <drepper@redhat.com> + + [BZ #7095] + * bits/confname.h: Add SUSv7 macros for getconf environments. + * bits/environments.h: Likewise. + * sysdeps/unix/sysv/linux/i386/bits/environments.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/environments.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/environments.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/environments.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/environments.h: Likewise. + * posix/confstr.c: Handle SUSv5 and SUSv7 environments. + * posix/getconf.c: Likewise. + * posix/sysconf.c: Likewise. + * sysdeps/posix/sysconf.c: Likewise. + * posix/Makefile (getconf.speclist): Also collect SUSv5 and SUSv7 + environments. + +2009-01-16 Petr Baudis <pasky@suse.cz> + + [BZ #9753] + * resolv/res_libc.c (__res_maybe_init): Call __res_vinit() + even if we currently have zero nscount. + +2009-02-06 Ulrich Drepper <drepper@redhat.com> + + [BZ #9781] + * grp/compat-initgroups.c (compat_call): Switch to use malloc when + the input line is too long. + + * po/Makefile (libc.pot): Add f_print as function taking c-format + parameter. + + * debug/xtrace.sh: Unify translatable messages. + * elf/ldd.bash.in: Likewise. + * elf/sprof.c: Likewise. + * locale/programs/locale.c: Likewise. + * malloc/memusage.sh: Likewise. + * nss/getent.c: Likewise. + +2009-02-06 Joseph Myers <joseph@codesourcery.com> + + * debug/pcprofiledump.c (print_version, + argp_program_version_hook): New function. + * elf/ldconfig.c (more_help): New function. + (argp): Use it. + * elf/sln.c (usage): New function. + (main): Support --help and --version. + * malloc/memusagestat.c (print_version): New function. + (argp_program_version_hook): New variable. + * nscd/nscd.c (more_help): New function. + (argp): Use it. + * posix/getconf.c (main): Send --version output to stdout. + Support --help. + * sunrpc/rpc_main.c (usage, options_usage): Take STREAM and STATUS + arguments. All callers changed. + (print_version): New function. + (parseargs): Support --help and --version. + * sunrpc/rpcinfo.c (usage): Take STREAM argument. All callers + changed. + (print_version): New function. + (main): Use getopt_long. Support --help and --version. + * sysdeps/unix/sysv/linux/lddlibc4.c (main): Support --help and + --version. + +2009-02-06 Ulrich Drepper <drepper@redhat.com> + + * malloc/memusage.c (DEFAULT_BUFFER_SIZE): Change to 32768. + (update_data): Fix handling of wrapping back + to the beginning of the buffer. + + [BZ #9823] + * stdio-common/psignal.c (psignal): Fix test for empty string. + +2009-02-05 Ulrich Drepper <drepper@redhat.com> + + * include/rpc/auth.h: Use libc_hidden_proto for _null_auth. + * sunrpc/rpc_common.c: Add libc_hidden_def for _null_auth. Also + move _null_auth to .rodata. + + * time/tzset.c (__tzset_parse_tz): DST offset must also allow hour + value of 24. + + * intl/dcigettext.c (DCIGETTEXT): Avoid some code duplication. + + * sysdeps/unix/opendir.c (__alloc_dir): We have a lot more memory + today than when the original code was written. Use larger + buffers. This also makes it unnecessary to have stat information, + if this causes extra efforts. + (__opendir): In case O_DIRECTORY works, don't call fstat just for + __alloc_dir. + +2009-02-03 Andrew Stubbs <ams@codesourcery.com> + + * sysdeps/sh/sh4/dl-trampoline.S: Only set HAVE_FPU if __SH_FPU_ANY__ + is set. + * sysdeps/sh/sh4/setjmp.S: Support SH4-NOFPU. + * sysdeps/sh/sh4/__longjmp.S: Likewise. + * sysdeps/unix/sysv/linux/sh/sh4/getcontext.S: Likewise. + * sysdeps/unix/sysv/linux/sh/sh4/setcontext.S: Likewise. + * sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S: Likewise. + * sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Likewise. + +2009-02-04 Ulrich Drepper <drepper@redhat.com> + + * po/ru.po: Update from translation team. + +2008-11-17 Nathan Sidwell <nathan@codesourcery.com> + + * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h (struct sigevent): + Add _tid slot to maintain consistency with kernel. + +2009-02-04 Ulrich Drepper <drepper@redhat.com> + + * libio/wfileops.c (_IO_wfile_underflow): Fix handling of + incomplete characters at end of input buffer. + * libio/Makefile (tests): Add tst-fgetwc. + * libio/tst-fgetwc.c: New file. + * libio/tst-fgetwc.input: New file. + +2009-02-02 Andrew Stubbs <ams@codesourcery.com> + + * sysdeps/unix/sysv/linux/sh/Makefile (libm.so-no-z-defs): Define. + +2009-02-02 Ulrich Drepper <drepper@redhat.com> + + [BZ #9793] + * iconv/gconv_trans.c (__gconv_transliterate): Don't change + *OUTBUFSTART unless the whole output fit into the buffer. + * iconv/Makefile (tests): Add tst-iconv4. + * iconv/tst-iconv4.c: New file. + +2009-02-01 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new descriptors. + * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise. + +2009-01-29 Andrew Stubbs <ams@codesourcery.com> + + * elf/Makefile (ld.so): Adjust the sed script to insert _begin in to + newer linker scripts. + +2009-01-30 Ulrich Drepper <drepper@redhat.com> + + [BZ #7040] + * sysdeps/unix/sysv/linux/sys/inotify.h: Second parameter of + inotify_rm_watch should have type int. + +2009-01-06 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp): + Make aligned_restore_vmx a local symbol. + * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp): + Likewise. + +2009-01-30 Andreas Jaeger <aj@suse.de> + + * sysdeps/unix/sysv/linux/bits/shm.h (SHM_EXEC): Define. + * sysdeps/unix/sysv/linux/ia64/bits/shm.h (SHM_EXEC): Define. + * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (SHM_EXEC): Define. + * sysdeps/unix/sysv/linux/s390/bits/shm.h (SHM_EXEC): Define. + * sysdeps/unix/sysv/linux/sh/bits/shm.h (SHM_EXEC): Define. + * sysdeps/unix/sysv/linux/sparc/bits/shm.h (SHM_EXEC): Define. + * sysdeps/unix/sysv/linux/x86_64/bits/shm.h (SHM_EXEC): Define. + +2009-01-11 Ryan S. Arnold <rsa@us.ibm.com> + + [BZ #9726] + * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c (_SET_DI_FPSCR, + _SET_SI_FPSCR): Clobber fp0 to prevent erroneous test-case passes. + +2009-01-08 Ryan S. Arnold <rsa@us.ibm.com> + + [BZ #9726] + * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S + (__CONTEXT_FUNC_NAME): Fix mtfsf to use fp31 instead of fp0. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S + (__CONTEXT_FUNC_NAME): Fix mtfsf to use fp31 instead of fp0. + +2009-01-11 Thomas Schwinge <tschwinge@gnu.org> + + * sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Use + memcpy instead of memcmp. + (_dl_setup_pointer_guard): Likewise. + +2009-01-30 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (sYSMALLOc): Don't use assert when detecting + manipulated brk, use malloc_printerr. + * misc/sbrk.c (__sbrk): Better error handling for nonsense + requests. + +2009-01-30 Jakub Jelinek <jakub@redhat.com> + + * string/string.h (memchr, strchr, strrchr, strpbrk, strstr, index, + rindex): For C++ add inlines so that they can be recognized as + builtins. + * string/strings.h: Define correct C++ prototypes for gcc 4.4. + +2009-01-29 Ulrich Drepper <drepper@redhat.com> + Jakub Jelinek <jakub@redhat.com> + + * string/string.h: Define correct C++ prototypes for gcc 4.4. + * wcsmbs/wchar.h: Likewise. + +2009-01-29 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/i386/stackinfo.h (stackinfo_get_sp): Define. + (stackinfo_sub_sp): Define. + +2009-01-28 Ulrich Drepper <drepper@redhat.com> + + [BZ #9750] + * nscd/mem.c (gc): Use alloca_count to get the real stack usage. + * include/alloca.h (alloca_account): Define. + * sysdeps/x86_64/stackinfo.h (stackinfo_get_sp): Define. + (stackinfo_sub_sp): Define. + + * nscd/connections.c (nscd_init): If database file access fails + check whether this is due to permission problems and bail in that + case. + + [BZ #9741] + * nscd/mem.c (gc): Fix assignment of he_data in case malloc is used. + Reported by Jun'ichi Nomura <j-nomura@ce.jp.nec.com>. + +2009-01-14 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL): + Add "t" to clobber list. + (INTERNAL_SYSCALL_NCS): Likewise. + +2009-01-28 Ulrich Drepper <drepper@redhat.com> + + * nss/getent.c (print_networks): Don't print comma between aliases. + +2009-01-23 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/tst-clone.c (do_test): Avoid warning. + + * misc/hsearch_r.c (hcreate_r): We need at least three elements in + the hash table. + * misc/Makefile (tests): Add bug-hsearch1. + * misc/bug-hsearch1.c: New file. + +2009-01-22 Roland McGrath <roland@redhat.com> + + * Makeconfig (%.v.i): Strip trailing # comments, + not only whole-line comments. + +2009-01-10 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Take + one parameter. If non-NULL use it to initialize return value. + (_dl_setup_pointer_guard): New function. + * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise. + * sysdeps/generic/ldsodefs.h: Declare _dl_random. + * elf/rtld.c (security_init): Pass _dl_random to + _dl_setup_stack_chk_guard. Call _dl_setup_pointer_guard to initialize + pointer_chk_guard. + * elf/dl-sysdep.c (_dl_random): New variable. + (_dl_sysdep_start): Handle AT_RANDOM. + (_dl_show_auxv): Likewise. + * elf/dl-support.c (_dl_random): New variable. + (_dl_aux_init): Handle AT_RANDOM. + * csu/libc-start.c [!SHARED] (libc_start_main): Pass _dl_random + to _dl_setup_stack_chk_guard. + + * elf/elf.h (AT_RANDOM): Define AT_BASE_PLATFORM and AT_RANDOM. + +2009-01-10 Roland McGrath <roland@redhat.com> + + * nscd/nscd.c (parse_opt): Use argp_error for bad -i argument. + +2009-01-08 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/i386/fpu/libm-test-ulps: Adjust expm1 errors. + + [BZ #9706] + * nss/nss_files/files-parse.c (strtou32): New function. + (INT_FIELD): Use strotu32 instead of strtoul to unify behavior + across 32-bit and 64-bit platforms. + (INT_FIELD_MAYBE_NULL): Likewise. + +2009-01-08 Jakub Jelinek <jakub@redhat.com> + + [BZ #9720] + * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who): Avoid + comma after RUSAGE_CHILDREN if not -D_GNU_SOURCE. + * sysdeps/unix/sysv/linux/sparc/bits/resource.h (enum __rusage_who): + Likewise. + +2009-01-05 Paolo Bonzini <bonzini@gnu.org> + + [BZ #697] + * posix/regexec.c (prune_impossible_nodes): Handle sifted_states[0] + being NULL also if there are no backreferences. + * posix/rxspencer/tests: Add testcases. + +2009-01-04 Paolo Bonzini <bonzini@gnu.org> + + [BZ #9697] + * posix/bug-regex17.c: Add testcases. + * posix/regcomp.c (re_compile_fastmap_iter): Rewrite COMPLEX_BRACKET + handling. + +2009-01-05 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * sysdeps/unix/sysv/linux/s390/bits/libc-vdso.h: New file. + * sysdeps/unix/sysv/linux/s390/gettimeofday.c: New file. + * sysdeps/unix/sysv/linux/s390/init-first.c: New file. + * sysdeps/unix/sysv/linux/s390/Makefile (sysdep_routines): Add dl-vdso + for elf subdir. + * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INLINE_VSYSCALL, + INTERNAL_VSYSCALL, INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK, + INTERNAL_SYSCALL_NCS, HAVE_CLOCK_GETRES_VSYSCALL and + HAVE_CLOCK_GETTIME_VSYSCALL: Define. + * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise. + * sysdeps/unix/sysv/linux/s390/Versions: New file. + +2008-12-31 Paolo Bonzini <bonzini@gnu.org> + + * posix/regcomp.c (re_compile_fastmap_iter): Use __mbrtowc. + * posix/regex_internal.c (build_wcs_buffer, build_wcs_upper_buffer, + re_string_skip_chars, re_string_reconstruct): Likewise. + * posix/regex_internal.h [!_LIBC] (__mbrtowc): New #define. + +2008-12-31 Rafael Avila de Espindola <espindola@google.com> + + * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr2_r): Check and + adjust the buffer alignment. + +2009-01-07 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * sysdeps/mach/hurd/Makefile (sysdep_headers) [subdir=socket]: + Add net/ethernet.h net/if_arp.h net/if_ether.h net/if_ppp.h + net/route.h. + + * hurd/report-wait.c (describe_number): Use __stpcpy to prepend + flavor to description only when flavor is not NULL. + + * hurd/hurdsig.c (signal_allowed): Unlock _hurd_dtable_lock + mutex after SIGIO/SIGURG lookup loop. + +2009-01-03 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * bits/resource.h (PRIO_PROCESS, PRIO_PGRP, PRIO_USER): Add macros. + +2009-01-03 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/i386/sysdep.h: Describe 6th argument + handling. + +2009-01-02 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/kernel-features.h + (__ASSUME_FUTEX_CLOCK_REALTIME): Define. + + * wcsmbs/wcsnrtombs.c (__wcsnrtombs): Create temporary state object + if no output is written. + + * version.h: Bump to 2.10 development. + + * posix/getconf.c: Update copyright year. + * nss/getent.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. + +2008-12-29 Mike Frysinger <vapier@gentoo.org> + + * iconvdata/Makefile (iconv-rules): Use LC_ALL=C when running awk + script. + +2008-12-29 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/getaddrinfo.c (gaih_inet): When the + gethostbyname4_r function call succeeded, just leave the loop. + + [BZ #9694] + * wcsmbs/wchar.h: Move undefs for local __need_* constants to the + very end. + * wctype/wctype.h: Get wint_t definition directly from <stddef.h>. + * wctype/Makefile (tests): Add bug-wctypeh. + * wctype/bug-wctypeh.c: New file. + + * nscd/nscd_gethst_r.c (nscd_gethst_r): Don't use nscd if + LOCALDOMAIN is defined. + * nscd/nscd_getai.c (__nscd_getai): Likewise. + + * sysdeps/x86_64/bits/select.h: New file. + + * resolv/res_init.c (__res_vinit): Count all servers in statp->nscount. + +2008-12-21 Bruno Haible <bruno@clisp.org> + + [BZ #9677] + * wcsmbs/mbsnrtowcs.c (__mbsnrtowcs): Create temporary state object + if no output is written. + +2008-12-13 Klaus Dittrich <kladit@arcor.de> + + * login/utmp_file.c (pututline_file): Replace call to dup2 with + libc internal symbol __dup2 to avoid access through the PLT. + +2008-12-08 Ulrich Drepper <drepper@redhat.com> + + [BZ #6545] + * sysdeps/unix/sysv/linux/bits/socket.h (SCM_CREDENTIALS): Make + available only for __USE_GNU. + + * inet/Makefile (tests): Add tst-getni2. + * inet/tst-getni2.c: New file. + + [BZ #7080] + * inet/getnameinfo.c (getnameinfo): Check for output buffers being + NULL when NI_NAMEREQD is set. + Patch mostly by Yang Hongyang <yanghy@cn.fujitsu.com>. + * inet/Makefile (tests): Add tst-getni1. + * inet/tst-getni1.c: New file. + +2008-12-03 Petr Baudis <pasky@suse.cz> + + [BZ #7067] + * nscd/connections.c (invalidate_cache): Use prune_run_lock + instead of prune_lock. + (nscd_run_prune): Before calling prune_cache, take prune_run_lock. + * nscd/nscd.h (database_dyn): Add prune_run_cache. + +2008-12-07 Ulrich Drepper <drepper@redhat.com> + + * resolv/res_send.c (send_dg): Use correct guards for SOCK_CLOEXEC + use. + + * sysdeps/unix/sysv/linux/kernel-features.h: Fix typo in accept4 + handling. + + * resolv/res_init.c (__res_vinit): Always assign to statp->nscount + after reading name server list. + + [BZ #7058] + * nis/nss_nis/nis-hosts.c (_nss_nis_gethostbyname4_r): Fix memory + handling for host name aliases. + +2008-11-24 Arkadiusz Miśkiewicz <arekm@maven.pl> + + * sysdeps/i386/dl-tlsdesc.S (_dl_tlsdesc_dynamic): Use LOAD_PIC_REG + instead of doing things manually. + +2008-11-26 Chris Steel <chris.steel.lnx@googlemail.com> + + * posix/regex_internal.h (build_wcs_upper_buffer): + Return type is reg_error_t. + +2008-12-05 Ulrich Drepper <drepper@redhat.com> + + * posix/globtest.sh: Use mktemp to create temporary file and + directory. + + * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_SET_S): Handle large + sets correctly. + (__CPU_CLR_S): Likewise. + (__CPU_ISSET_S): Likewise. + +2008-12-05 Joseph Myers <joseph@codesourcery.com> + Ulrich Drepper <drepper@redhat.com> + + * scripts/firstversion.awk: Use custom comparison function to compare + version numbers. + * scripts/versions.awk: Use sort invocation which can handle + multi-digit sub-version numbers. + +2008-12-04 Ulrich Drepper <drepper@redhat.com> + + * locale/programs/ld-address.c (DEFINE_LANGUAGE_CODE2): Define. + * locale/iso-639.def: Add Chhattisgarhi entry. + +2008-12-02 Ulrich Drepper <drepper@redhat.com> + + * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname3_r): Recognize + ESRCH return value. + (_nss_dns_gethostbyname4_r): Likewise. + * resolv/res_init.c (__res_vinit): Initialize nscount to zero. + * sysdeps/posix/getaddrinfo.c (gaih_inet): In case we use + gethostbyname4_r, we don't have a separate IPv6 status, so copy + the no_data variable. + + * resolv/res_init.c (__res_vinit): Fill in IPv4 name server + information at the correct index. + + * socket/sys/socket.h: Declare accept4. + * socket/accept4.c: New file. + * sysdeps/unix/sysv/linux/accept4.c: New file. + * sysdeps/unix/sysv/linux/i386/accept4.S: New file. + * socket/Makefile (routines): Add accept4. + * socket/Versions: Export accept4 with version GLIBC_2.10. + * socket/paccept.c: Removed. + * sysdeps/unix/sysv/linux/paccept.c: Removed. + * sysdeps/unix/sysv/linux/i386/paccept.S: Removed. + * Versions.def: Define GLIBC_2.10 for libc. + * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_ACCEPT4. + + * nscd/connections.c: Use accept4. + + * sysdeps/unix/sysv/linux/i386/socket.S: Fix comment. + +2008-12-01 Ulrich Drepper <drepper@redhat.com> + + * resolv/res_send.c (send_dg): Create sockets with non-blocking + flag already set. + + * stdlib/setenv.c (unsetenv): Don't search environment if it does + not exist. + * stdlib/Makefile (tests): Add tst-unsetenv1. + * stdlib/tst-unsetenv1.c: New file. + +2008-11-29 Ulrich Drepper <drepper@redhat.com> + + * login/utmp_file.c (file_writable): New variable. + (setutent_file): Don't try to open file for writing. + (pututline_file): Before writing, make descriptor writable if + necessary. + +2008-11-26 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/getaddrinfo.c (getaddrinfo): Only restrict search + to IPv4 or IPv6 if an interface has been found. + +2008-11-26 Roland McGrath <roland@redhat.com> + + * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Renamed to ... + * sysdeps/unix/sysv/linux/powerpc/ipc_priv.h: ... here. + + * sysdeps/unix/sysv/linux/alpha/wordexp.c: Renamed to ... + * sysdeps/unix/sysv/linux/ia64/wordexp.c: ... here. + * sysdeps/unix/sysv/linux/sparc/sparc64/wordexp.c: Change #include. + + * elf/elf.h (NT_386_IOPERM): New macro. + (NT_PPC_VSX): New macro. + +2008-11-25 Roland McGrath <roland@redhat.com> + + * sysdeps/alpha, sysdeps/unix/bsd/osf/alpha, + sysdeps/unix/bsd/Attic/osf1/alpha, sysdeps/unix/sysv/linux/alpha, + sysdeps/unix/sysv/linux/alpha/alpha, sysdeps/unix/alpha, + sysdeps/mach/alpha, sysdeps/mach/hurd/alpha: + Subdirectories moved to ports repository. + * configure.in (base_machine): Remove alpha case. + +2008-11-25 Thomas Schwinge <tschwinge@gnu.org> + + * sysdeps/mach/strerror_l.c: New file. + +2008-11-13 Ryan S. Arnold <rsa@us.ibm.com> + + [BZ #6411] + * sysdeps/powerpc/fpu/Makefile: Added test case tst-setcontext-fpscr. + * sysdeps/powerpc/fpu/feholdexcpt.c (_FPU_MASK_ALL): Define to replace + magic numbers. + * sysdeps/powerpc/fpu/fenv_libc.h (fesetenv_register): Dynamically + choose mtfsf insn based on PPC_FEATURE_HAS_DFP. + (relax_fenv_state): Same as above. + (FPSCR_29): Reserve bit in ISA 2.05. + (FPSCR_NI): Provide define for compat. + * sysdeps/powerpc/fpu/fesetenv.c (_FPU_MASK_ALL): Define to replace + magic numbers. + * sysdeps/powerpc/fpu/feupdateenv.c (_FPU_MASK_ALL): Define to replace + magic numbers. + * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c: New file. Test case to + test setcontext and swapcontext with dynamic 64-bit FPSCR detection. + * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp): Adjust + access to hwcap to account for hwcap size increase to uint64_t. + * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S (__sigsetjmp ): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S + (*setcontext): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/setcontext.S: + New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/swapcontext.S: + New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S + (*setcontext): dynamically select mtfsf insn based on + PPC_FEATURE_HAS_DFP. Adjust access to hwcap to account for hwcap size + increase to uint64_t. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S + (*swapcontext): dynamically select mtfsf insn based on + PPC_FEATURE_HAS_DFP. Adjust access to hwcap to account for hwcap size + increase to uint64_t. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/setcontext.S: + New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/swapcontext.S: + New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S + (*setcontext): dynamically select mtfsf insn based on + PPC_FEATURE_HAS_DFP. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S + (*swapcontext): dynamically select mtfsf insn based on + PPC_FEATURE_HAS_DFP. + +2008-11-13 Ulrich Drepper <drepper@redhat.com> + + * version.h: Bump for 2.9 release. + * include/features.h (__GLIBC_MINOR__): Bump to 9. + + [BZ #7029] + * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ALLOC_SIZE): + Multiply with sizeof of __cpu_mask, not 8 unconditionally after + all the rounding. + +2008-11-11 Ulrich Drepper <drepper@redhat.com> + + [BZ #7009] + * resolv/nss_dns/dns-host.c (gaih_getanswer_slice): Don't abort for + unknown request types for now. + +2008-11-11 Roland McGrath <roland@redhat.com> + + * sysdeps/x86_64/configure: New file. + + * configure.in: Add AC_SUBST(libc_cv_cpp_asm_debuginfo). + * configure: Regenerated. + +2008-11-03 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * sysdeps/s390/s390-64/dl-trampoline.S (_dl_runtime_profile): Use the + correct instruction to remove the stack frame. + +2008-11-03 Michael Matz <matz@suse.de> + + * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_32_acq, + __arch_compare_and_exchange_val_64_acq): Add "memory" clobber. + +2008-11-07 Jakub Jelinek <jakub@redhat.com> + + * include/stdio.h (__builtin_fwrite, __builtin_fwrite_unlocked): + Remove. + + * bits/libc-tsd.h (__libc_tsd_define, __libc_tsd_address, + __libc_tsd_get, __libc_tsd_set): Add TYPE argument, use it as the type + of the thread variable instead of void *. + * sysdeps/mach/hurd/bits/libc-tsd.h (__libc_tsd_define, + __libc_tsd_address, __libc_tsd_get, __libc_tsd_set): Likewise. + * include/ctype.h (CTYPE_B, CTYPE_TOUPPER, CTYPE_TOLOWER): Adjust + __libc_tsd_define arguments. + (__ctype_b_loc, __ctype_toupper_loc, __ctype_tolower_loc): Adjust + __libc_tsd_address arguments. Remove union hack. + * include/rpc/rpc.h (RPC_VARS): Adjust __libc_tsd_define arguments. + * sunrpc/rpc_thread.c (RPC_VARS): Likewise. + (__rpc_thread_destroy, rpc_thread_multi, __rpc_thread_variables): + Adjust __libc_tsd_{set,get} arguments. + * ctype/ctype-info.c (CTYPE_B, CTYPE_TOUPPER, CTYPE_TOLOWER): Adjust + __libc_tsd_define arguments. + * locale/uselocale.c (__uselocale): Adjust __libc_tsd_{set,get} + arguments. + * locale/lc-ctype.c (_nl_postload_ctype): Likewise. + * locale/global-locale.c (__libc_tsd_LOCALE): Adjust type. + (LOCALE): Adjust __libc_tsd_define arguments. + * locale/localeinfo.h (_NL_CURRENT_LOCALE): Adjust __libc_tsd_get + arguments. + (LOCALE): Adjust __libc_tsd_define arguments. + * sysdeps/mach/hurd/malloc-machine.h (MALLOC): Adjust __libc_tsd_define + arguments. + (tsd_setspecific, tsd_getspecific): Adjust __libc_tsd_{set,get} + arguments. + +2008-11-02 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (public_rEALLOc): When new arena is used, copy + really all bytes. Patch by Denys Vlasenko <dvlasenk@redhat.com>. + +2008-11-01 Ulrich Drepper <drepper@redhat.com> + + [BZ #6966] + * misc/hsearch_r.c (hsearch_r): Fix secondary hash function. + +2008-10-24 Joseph Myers <joseph@codesourcery.com> + Ulrich Drepper <drepper@redhat.com> + + * math/tgmath.h (__floating_type): Use __builtin_classify_type in + definition for GCC 3.1 and later. + +2008-10-31 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-tls.c (__tls_get_addr): After calling _dl_update_slotinfo + refetch dtv, as it might have changed. + * elf/Makefile: Add rules to build and run tst-tls18. + * elf/tst-tls18.c: New test. + * elf/tst-tlsmod18a.c: New file. + +2008-09-09 Aurelien Jarno <aurelien@aurel32.net> + + [BZ #6875] + * iconvdata/gconv-modules: Add LATIN9 as an alias to ISO-8859-15. + +2008-10-31 Ulrich Drepper <drepper@redhat.com> + + [BZ #6867] + * sysdeps/powerpc/elf/rtld-global-offsets.sym: Fix typo. + + [BZ #6919] + * posix/spawnattr_getschedparam.c (posix_spawnattr_getschedparam): + Fix length of copy operation. + +2008-10-02 Pierre Habouzit <madcoder@debian.org> + + * sysdeps/unix/sysv/linux/eventfd.c (eventfd): Use the eventfd2 syscall + and fix its calling convention. + +2008-10-07 Andreas Schwab <schwab@suse.de> + + [BZ #6942] + * resolv/res_send.c (send_vc): Fix last change. + (send_dg): Align here as well. + +2008-10-31 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/ulimit.c (__ulimit): Handle UL_GETFSIZE + return value in case rlimit is RLIM_INFINITY. + + [BZ #6947] + * sysdeps/unix/sysv/linux/ulimit.c (__ulimit): Fix return value + for UL_SETFSIZE. + * resource/Makefile (tests): Add bug-ulimit1. + * resource/bug-ulimit1.c: New file. + + [BZ #6974] + * sunrpc/rpc_main.c (mkfile_output): Properly handle filename + without dot. Properly terminate the string with a null byte. + Based on a patch by Aurelien Jarno <aurelien@aurel32.net>. + + [BZ #6980] + * debug/getgroups_chk.c (__getgroups_chk): Return EINVAL error for + negative sizees. + * posix/bits/unistd.h (getgroups): Call __getgroups_chk for + negative __size. + + [BZ #6995] + * sysdeps/powerpc/powerpc32/dl-machine.c: Fix typo in message. + +2008-10-30 Ulrich Drepper <drepper@redhat.com> + + * grp/initgroups.c (internal_getgrouplist): Don't prematurely + abort if there is no initgroups_dyn function. + + * resolv/res_send.c (send_dg): On timeout, only return nonzero + result if any of the queries really provided an answer. + +2008-10-28 Ulrich Drepper <drepper@redhat.com> + + * po/lt.po: Update from translation team. + +2008-10-26 Ulrich Drepper <drepper@redhat.com> + + * po/id.po: Update from translation team. + +2008-10-24 Ulrich Drepper <drepper@redhat.com> + + * resolv/res_query.c (__libc_res_nquery): Add a few casts. + Fix tests for existence of second reply. + +2008-10-23 Ulrich Drepper <drepper@redhat.com> + + * po/id.po: New file. + Contributed by the Indonesian translation team. + +2008-10-22 Dmitry V. Levin <ldv@altlinux.org> + + * misc/syslog.c (openlog_internal): Fix __have_sock_cloexec + initialization. + +2008-10-17 Jakub Jelinek <jakub@redhat.com> + + * elf/Makefile: Add rules to build and run tst-tls17. + * elf/tst-tls17.c: New test. + * elf/tst-tlsmod17a.c: New file. + * elf/tst-tlsmod17b.c: Likewise. + +2008-10-17 Ulrich Drepper <drepper@redhat.com> + + * stdlib/divmod_1.c: Use correct type for dummy variable. + * stdlib/mod_1.c: Likewise. + +2008-10-16 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-tls.c (_dl_update_slotinfo): Copy all of the initial DTV. + +2008-10-16 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/sys/signalfd.h (signalfd): Fix __THROW vs. + __nonnull order for C++. + * sysdeps/unix/sysv/linux/alpha/sys/signalfd.h (signalfd): Likewise. + * sysdeps/unix/sysv/linux/sparc/sys/signalfd.h (signalfd): Likewise. + +2008-10-01 Daniel Jacobowitz <dan@codesourcery.com> + + * stdlib/longlong.h: Update from GCC. + +2008-10-09 Jakub Jelinek <jakub@redhat.com> + David S. Miller <davem@davemloft.net> + + * sysdeps/sparc/sparc64/sparcv9v/memcpy.S: When not USE_BPR, + make sure any registers used with 64-bit 'branch-on-register' + instructions have their top 32-bits clear. + * sysdeps/sparc/sparc64/sparcv9v/memset.S: Likewise. + * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: Likewise. + +2008-09-18 Andreas Schwab <schwab@suse.de> + + [BZ #6942] + * resolv/res_send.c (send_vc): Fix use of unaligned address. + Properly handle partial reads. + +2008-10-01 Mark Shinwell <shinwell@codesourcery.com> + + * elf/elf.h (STO_MIPS_PLT): New. + (R_MIPS_COPY): New. + (R_MIPS_JUMP_SLOT): New. + (R_MIPS_NUM): Redefine to 128. + (DT_MIPS_PLTGOT): New. + (DT_MIPS_RWPLT): New. + (DT_MIPS_NUM): Redefine to 0x35. + +2008-10-01 Ulrich Drepper <drepper@redhat.com> + + * timezone/africa: Update from tzdata2008f. + * timezone/asia: Likewise. + * timezone/australasia: Likewise. + * timezone/europe: Likewise. + * timezone/leapseconds: Likewise. + * timezone/northamerica: Likewise. + * timezone/southamerica: Likewise. + * timezone/zone.tab: Likewise. + +2008-09-30 Ulrich Drepper <drepper@redhat.com> + + * nscd/connections.c: Disable use of paccept for now. + +2008-09-29 Ulrich Drepper <drepper@redhat.com> + + * socket/Versions: Remove paccept export for GLIBC_2.9. + * socket/Makefile (routines): Remove paccept. + * socket/sys/socket.h: Remove paccept declaration. + + * po/sv.po: Update from translation team. + +2008-09-22 Deborah S. Townsend <dstownse@us.ibm.com> + + * sysdeps/s390/s390-64/s390x-mcount.S: Replace ahi with aghi. + * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise. + +2008-09-16 Ulrich Drepper <drepper@redhat.com> + + * dlfcn/dlopen.c (dlopen_doit): Allow __RTLD_SPROF flag. + Patch by Olivier Fourdan <ofourdan@redhat.com>. + +2008-09-15 Ulrich Drepper <drepper@redhat.com> + + * sunrpc/rpc/svc.h: Declare svcfd_create. + Patch by Michael Solberg <msolberg@redhat.com>. + +2008-09-12 Flavio Leitner <fleitner@redhat.com> + Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (public_vALLOc): Try other arenas in case + _int_valloc fails. + (public_pVALLOc): Likewise. + +2008-09-02 Andreas Jaeger <aj@suse.de> + + * sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h: Fix last + commit. + +2008-08-26 Aurelien Jarno <aurelien@aurel32.net> + + [BZ #6860] + * hurd/hurd/signal.h (HURD_MSGPORT_RPC): Fix a typo. + +2008-07-18 Daniel Jacobowitz <dan@codesourcery.com> + + * Makefile (check-data): Check data directory in add-ons. + * elf/Makefile (check-data): Likewise. + +2008-08-18 Roland McGrath <roland@redhat.com> + + * configure.in (--with-cpu): Check compiler support for -march/-mcpu. + * configure: Regenerated. + * config.make.in (cflags-cpu): New substituted variable. + (with-cpu): Variable removed. + * Makeconfig (+cflags): Use $(cflags-cpu), not $(with-cpu). + +2008-08-14 Ryan S. Arnold <rsa@us.ibm.com> + + [BZ #6845] + * sysdeps/powerpc/fpu/bits/mathinline.h (__signbitl): Copy new + __signbitl definition and __LONG_DOUBLE_128__ guard from: + * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h: Remove as + redundant. Functions which call floating point assembler operations + should go into a sysdeps powerpc/fpu directory. + +2008-08-15 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_STACK. + * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise. + +2008-08-14 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/memset.S: Reduce size of tables for PIC. + + * sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): Undo all + change related to AT_EXECFN. We cannot use that string. + * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Remove + _dl_execfn member. + * elf/dl-support.c: Remove _dl_execfn variable. + (_dl_aux_init): Remove handling of AT_EXECFN. + * elf/dl-sysdep.c (_dl_sysdep_start): Remove handling of AT_EXECFN. + * elf/rtld.c (process_envvars): Remove use of __ASSUME_AT_EXECFN. + +2008-08-13 Ulrich Drepper <drepper@redhat.com> + + [BZ #6544] + * libio/fmemopen.c: Implement binary mode. In this mode no NUL + byte gets added to writes and seeks from the end use the length of + the buffer and not the currently terminating NUL byte. + + [BZ #6634] + * login/utmp_file.c (getutent_r_file): Take additional parameter. + Set to true if locking failed. + (getutid_r_file): Adjust caller. + (pututline_file): Likewise. Return NULL in this case. + Patch mostly by halesh.s@gmail.com. + +2008-08-12 Ulrich Drepper <drepper@redhat.com> + + [BZ #6589] + * sysdeps/unix/sysv/linux/ifaddrs.c (struct sockaddr_ll_max): + Define. + (struct ifaddrs_storage): Use it instead of sockaddr_ll. + +2008-08-12 Ryan S. Arnold <rsa@us.ibm.com> + + [BZ #6839] + * sysdeps/powerpc/powerpc32/dl-machine.c (CHECK_STATIC_TLS): Remove + macro since it is now available in elf/dynamic-link.h. + +2008-08-12 Roland McGrath <roland@frob.com> + + * hurd/hurd/signal.h (HURD_MSGPORT_RPC): Avoid -Wparenthesis triggers, + in case used outside of libc. + Reported by Samuel Thibault <samuel.thibault@ens-lyon.org> + +2008-08-11 Ulrich Drepper <drepper@redhat.com> + + * resolv/res_mkquery.c (res_nmkquery): Call ns_name_compress + directly instead of going through dn_comp. + +2008-08-11 Aurelien Jarno <aurel32@debian.org> + + * sysdeps/mach/i386/machine-lock.h (__spin_unlock, __spin_try_lock): + Fix asm constraints. + +2008-08-07 Ulrich Drepper <drepper@redhat.com> + + [BZ #6790] + * sysdeps/unix/sysv/linux/bits/in.h (IP_PMTUDISC_PROBE): Define. + (IPV6_PMTUDISC_PROBE): Likewise. + +2008-08-07 Pete Eberlein <eberlein@us.ibm.com> + + [BZ #6791] + * sysdeps/unix/sysv/linux/powerpc/bits/mman.h (PROT_SAO): Define. + +2008-08-01 Steven Munroe <sjmunroe@us.ibm.com> + Carlos Eduardo Seo <cseo@linux.vnet.ibm.com> + + [BZ #6817] + * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): + Added the members 'vsx' and 'arch_2_06'. + (_dl_powerpc_platforms): Add the member 'power7'. + * sysdeps/powerpc/dl-procinfo.h: Modify _DL_HWCAP_FIRST + to reflect the changes required by VSX and ISA 2.06. + Modify _DL_PLATFORMS_COUNT to reflect the addition of + 'power7'. + Defined PPC_PLATFORM_POWER7. + (_dl_string_platform): Add support for POWER7. + * sysdeps/powerpc/sysdep.h: Define bit masks for VSX + capability and ISA 2.06. + +2008-08-07 Ulrich Drepper <drepper@redhat.com> + + [BZ #6824] + * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h: Use correct + macro to detect use of 128 bit long double. + Patch by Ryan S. Arnold <rsa@us.ibm.com>. + +2008-08-05 Ulrich Drepper <drepper@redhat.com> + + * scripts/gen-as-const.awk: Use 32-bit values on 32-bit platforms. + + [BZ #5794] + * sysdeps/i386/fpu/s_expm1l.S: Simply use exp implementation for large + parameters. + * sysdeps/x86_64/fpu/s_expm1l.S: Likewise. + Patch by Denys Vlasenko <dvlasenk@redhat.com>. + +2008-08-03 Ulrich Drepper <drepper@redhat.com> + + * nscd/connections.c (main_loop_poll): Pass a buffer which is + guaranteed to be large enough to read inotify event. Ignore + EAGAIN error. Better error message. Add branch predicition. + (main_loop_epoll): Likewise. + +2008-08-02 Roland McGrath <roland@frob.com> + + * sysdeps/mach/i386/machine-lock.h (__spin_unlock, __spin_try_lock): + Add memory clobbers. + +2008-08-02 Ulrich Drepper <drepper@redhat.com> + + * manual/arith.texi: Avoid @strong{Note:}. + * manual/creature.texi: Likewise. + * manual/filesys.texi: Likewise. + * manual/math.texi: Likewise. + * manual/memory.texi: Likewise. + * manual/resource.texi: Likewise. + * manual/syslog.texi: Likewise. + * manual/time.texi: Likewise. + + * sysdeps/posix/clock_getres.c (hp_timing_getres): Remove inline + to prevent warning. + +2008-08-01 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/Versions: Fix changes due to old patch for + new epoll_create1 interface. + * sysdeps/unix/sysv/linux/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/sys/epoll.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise. + + * include/arpa/nameser.h (NS_GET16): Use const pointer. + (NS_GET32): Likewise. + + * sysdeps/unix/sysv/linux/kernel-features.h: s390 has the new + syscalls, too. + + * sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): We cannot + use the AT_EXECFN value if it is no absolute path. + * sysdeps/unix/sysv/linux/kernel-features.h: Never define + __ASSUME_AT_EXECFN. + + * Versions.def: Add GLIBC_2.9 to libresolv. + * include/resolv.h: Remove hidden proto declarations for __ns_* + functions. Add them for __dn_count_labels and __p_secstodate. + * include/arpa/nameser.h: Add a number of hidden proto declarations. + Define ns_msg_getflags macro here. + * resolv/res_debug.c: Add hidden definition for __dn_count_labels + and __p_secstodate. + * resolv/Versions: Export functions from <arpa/nameser.h> from + libresolv in version GLIBC_2.9. + * resolv/ns_name.c: Integrate changes from bind 9.5.0. Add necessary + hidden definitions. + * resolv/ns_netint.c: Likewise. + * resolv/ns_parse.c: Likewise. + * resolv/ns_print.c: Likewise. + * resolv/ns_samedomain.c: Likewise. + * resolv/ns_ttl.c: Likewise. + * resolv/arpa/nameser_compat.h: Likewise. + * resolv/arpa/nameser.h: Likewise. Remove macros which redirect + function calls. + * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Use __ns_get16 + instead of ns_get16. + * resolv/nss_dns/dns-host.c (getanswer_r): Use __ns_get16 and + __ns_get32 instead of ns_get16 and ns_get32 respectively. + (gaih_getanswer_slice): Likewise. + * resolv/Makefile (libresolv-routines): Add ns_date. + * resolv/ns_date.c: New file. + + * elf/Makefile (check-localplt.out): Also check libresolv and + libcrypt. + +2008-07-31 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/kernel-features.h: Define + __ASSUME_O_CLOEXEC. + +2008-07-30 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/getaddrinfo.c (gaih_inet): Raise size of initial + buffer passed to NSS functions. + + * nscd/connections.c (nscd_init): Typo in preprocessor directive. + + * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PACCEPT): + Define. + + * misc/syslog.c (openlog_internal): Fix compile problem. + +2008-07-28 Roland McGrath <roland@redhat.com> + + * elf/dl-sysdep.c (_dl_show_auxv): Add AT_EXECFN to the table. + +2008-07-28 Ulrich Drepper <drepper@redhat.com> + + * io/ftw.c (add_object): Remove inline to avoid warning. + + * sysdeps/unix/sysv/linux/paccept.c: Fix compile problem. + + * resolv/res_send.c (__libc_res_nsend): Take additional parameter. + Use it instead of locally defined resplen2 variable. + (res_nsend): Adjust for __libc_res_nsend interface change. + (send_vc): Initialize *resplen2 if necessary. Read length of + package into an appropriately aligned variable. Store converted length + in new variable and use it appropriately. + Add branch prediction help. + * resolv/res_query.c (__libc_res_nquery): Take additional parameter + and pass it on to __libc_res_nsend. Adjust all callers. + (__libc_res_nsearch): Likewise. + (__libc_res_nqeurydomain): Likewise. + * resolv/nss_dns/dns-host.c: Adjust for __libc_res_nsearch interface + change. + (_nss_dns_gethostbyname4): Don't unconditionally allocate tmp array. + Define resplen2 variable and pass it to __libc_res_nsearch and then + to gaih_getanswer. + (getanswer_r): In case of incorrect DNS data don't overread buffer. + Add branch prediction. + (gaih_getanswer_slice): Likewise. Check for invalid data types. + (gaih_getanswer): Don't decode second slice if first one failed due + to a too small buffer. Don't let not found status of second + decoder shadow results of the first. + * resolv/gethnamaddr.c (gethostbyname2): Adjust for __libc_res_nsearch + and __libc_res_nquery interface changes + (gethostbyaddr): Adjust for __libc_res_nquery interface change. + * include/resolv.h: Adjust prototypes for __libc_res_nquery, + __libc_res_nsearch, and __libc_res_nsend. + * resolv/nss_dns/dns-canon.c: Adjust for __libc_res_nquery interface + change. + * resolv/nss_dns/dns-network.c: Adjust for __libc_res_nquery and + __libc_res_nsearch interface changes. + +2008-07-27 Ulrich Drepper <drepper@redhat.com> + + * libio/iopopen.c (_IO_new_proc_open): Remove unnecessary volatile. + + * posix/wordexp.c (exec_comm): Use pipe2 if possible to create + file descriptors with close-on-exec set. + (exec_comm_child): Fix the case where the write end of the pipe is + STDOUT_FILENO already. In case it is, clear close-on-exec. + + * sysdeps/unix/sysv/linux/syscalls.list: Add __pipe2 alias. + * io/pipe2.c: Likewise. + * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_PIPE2 + instead of __ASSUME_PACCEPT. + * include/unistd.h: Declare __have_pipe2. + * libio/iopopen.c: Implement "e" flag. + * libio/Makefile (tests): Add tst-popen1. + * libio/tst-popen1.c: New file. + + * sysdeps/unix/sysv/linux/bits/socket.h: Define PF_ISDN and AF_ISDN. + * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise. + +2008-07-26 Ulrich Drepper <drepper@redhat.com> + + [BZ #6771] + * libio/fileops.c (_IO_new_file_attach): Preserve errno around + success call of _IO_SEEKOFF or calls which failed because the + descriptor is for a pipe. + + * sunrpc/key_call.c (getkeyserv_handle): Use FD_CLOEXEC instead of + magic number. + + * misc/syslog.c (openlog_internal): Use SOCK_CLOEXEC if possible. + + * malloc/mtrace.c (mtrace): Use 'e' flag in fopen call. Drop + F_SETFD use if we know fopen set the flag. + + * login/utmp_file.c (setutent_file): Minor optimization in case + O_CLOEXEC is available. + +2008-07-24 Tom "spot" Callaway <tcallawa@redhat.com> + + * Makeconfig: Define pie-ccflag and PIE-ccflag variables. + * elf/Makefile: Use pie-ccflag variable. + * nscd/Makefile: Likewise. + * sysdeps/sparc/Makefile: Set $(pie-ccflag) to -fPIE. + +2008-07-21 Andreas Krebbel <krebbel1@de.ibm.com> + + [BZ #6724] + * Versions.def: Add GLIBC_2.9 version tag for libutil. + * sysdeps/unix/sysv/linux/s390/bits/utmp.h: Copy of + gnu/bits/utmp.h. Check for __WORDSIZE_COMPAT32 removed. + * sysdeps/unix/sysv/linux/s390/bits/utmpx.h: Copy of + gnu/bits/utmpx.h. Check for __WORDSIZE_COMPAT32 removed. + * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Add new files + utmp32, utmpx32 and login32. + * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Add 2.9 + versions of struct utmp functions to libc and libutil. + * sysdeps/unix/sysv/linux/s390/s390-32/utmp-compat.h: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/getutent.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/getutent_r.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/getutid.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/getutid_r.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/getutline.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/getutline_r.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/getutmp.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/getutxent.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/getutxid.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/getutxline.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/login.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/login32.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/pututxline.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/updwtmp.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/updwtmpx.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/utmpx-convert.h: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c: New file. + * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h: New file. + +2008-07-26 Ulrich Drepper <drepper@redhat.com> + + * scripts/gen-as-const.awk: Generate more widely usable code by + using 64-bit arithmetic. + + * stdio-common/printf_fp.c (___printf_fp): Give wide outout code + the same treatment as narrow output code in last patch. + + * sunrpc/clnt_udp.c (__libc_clntudp_bufcreate): Namespace cleanup. + + [BZ #6763] + * elf/dl-load.c (local_strdup): Remove inline. + (_dl_map_object_from_fd): Don't allocate l_symbolic_searchlist.r_list. + * elf/dl-object.c (_dl_new_object): Allocate symbolic searchlist as + part of the object. + + * sysdeps/unix/sysv/linux/dl-origin.c: Add const to avoid warning. + +2008-07-25 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/kernel-features.h: IA-64 and SPARC have + the new syscalls, too. + + * sysdeps/i386/i686/memcmp.S: Fix unwind information. + Reported by Paul Pluzhnikov <ppluzhnikov@google.com>. + + [BZ #6698] + * stdio-common/_i18n_number.h (_i18n_number_rewrite): Take additional + parameter for end of buffer. If temporary copy is too large use + malloc. + * stdio-common/vfprintf.c: Adjust for _i18n_number_rewrite + interface change. + * stdio-common/printf_fp.c (__printf_fp): Likewise.. Account for + string rewrite when allocating buffer. + + * sysdeps/unix/sysv/linux/kernel-features.h: PPC has the new + syscalls, too. + + * nscd/connections.c (nscd_init): Clean up fcntl call. + + * nscd/nscd_helper.c (open_socket): Use SOCK_CLOEXEC and + SOCK_NONBLOCK if possible. + + * sysdeps/unix/sysv/linux/opensock.c (__opensock): Use + SOCK_CLOEXEC if available. + + * include/rpc/clnt.h: Declare __libc_clntudp_bufcreate and + __libc_clntudp_bufcreate_internal. + * include/sys/socket.h: Declare __have_sock_cloexec. + * socket/Makefile (aux): Add have_sock_cloexec. + * socket/have_sock_cloexec.c: New file. + * sunrpc/clnt_udp.h (clntudp_bufcreate): Now a wrapper around + __libc_clntudp_bufcreate. + (__libc_clntudp_bufcreate): Former implementation of clntudp_bufcreate + which takes an additional parameter. Create socket with non-blocking + mode and close-on-exec flag set, if wanted. + * sunrpc/Versions: Export __libc_clntudp_bufcreate@GLIBC_PRIVATE. + * nis/ypclnt.c (yp_bind_client_create): Use __libc_clntpudp_bufcreate + instead of clntudp_create. The socket has already the close-on-exec + flag set if SOCK_CLOEXEC is defined. + +2008-07-24 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/kernel-features.h: Define + __ASSUME_PACCEPT, __ASSUME_IN_NONBLOCK, and __ASSUME_PACCEPT if + appropriate. + * nscd/connections.c: Avoid fcntl calls to set close-on-exec flag and + non-blocking mode by using socket, paccept, and inotify_init1. + + * Versions.def (glibc): Add GLIBC_2.9. + * io/Makefile (routines): Add dup3 and pipe2. + * io/Versions [glibc] (GLIBC_2.9): Add dup3 and pipe2. + * io/dup3.c: New file. + * io/pipe2.c: New file. + * posix/unistd.h: Declare dup3 and pipe2. + * socket/Makefile (routines): Add paccept. + * socket/Versions [glibc] (GLIBC_2.9): Add paccept. + * socket/paccept.c: New file. + * socket/sys/socket.h: Declare paccept. + * sysdeps/unix/syscalls.list: Add entry for dup3. + * sysdeps/unix/sysv/linux/Versions [glibc] (GLIBC_2.9): Add + epoll_create2 and inotify_init1. + * sysdeps/unix/sysv/linux/eventfd.c: Use eventfd1 syscall if possible. + * sysdeps/unix/sysv/linux/paccept.c: New file. + * sysdeps/unix/sysv/linux/signalfd.c: Use signalfd4 syscall if + possible. + * sysdeps/unix/sysv/linux/socketcall.h: Add SOCKOP_paccept. + * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create2, + inotify_init1, and pipe2 entries. + * sysdeps/unix/sysv/linux/alpha/sys/epoll.h: New file. + * sysdeps/unix/sysv/linux/alpha/sys/eventfd.h: New file. + * sysdeps/unix/sysv/linux/alpha/sys/inotify.h: New file. + * sysdeps/unix/sysv/linux/alpha/sys/signalfd.h: New file. + * sysdeps/unix/sysv/linux/alpha/sys/timerfd.h: New file. + * sysdeps/unix/sysv/linux/bits/socket.h: Define SOCK_CLOEXEC and + SOCK_NONBLOCK. + * sysdeps/unix/sysv/linux/i386/paccept.S: New file. + * sysdeps/unix/sysv/linux/sparc/sys/epoll.h: New file. + * sysdeps/unix/sysv/linux/sparc/sys/eventfd.h: New file. + * sysdeps/unix/sysv/linux/sparc/sys/inotify.h: New file. + * sysdeps/unix/sysv/linux/sparc/sys/signalfd.h: New file. + * sysdeps/unix/sysv/linux/sparc/sys/timerfd.h: New file. + * sysdeps/unix/sysv/linux/sparc/bits/socket.h: New file. + * sysdeps/unix/sysv/linux/sys/epoll.h: Define EPOLL_CLOEXEC and + EPOLL_NONBLOCK. Declare epoll_create2. + * sysdeps/unix/sysv/linux/sys/eventfd.h: Define EFD_CLOEXEC and + EFD_NONBLOCK. + * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOEXEC and + IN_NONBLOCK. Declare inotify_init1. + * sysdeps/unix/sysv/linux/sys/signalfd.h: Define SFD_CLOEXEC and + SFD_NONBLOCK. + * sysdeps/unix/sysv/linux/sys/timerfd.h: Define TFD_CLOEXEC and + TFD_NONBLOCK. + + * elf/elf.h: Define AT_EXECFN. + * elf/rtld.c [!__ASSUME_AT_EXECFN] (process_envvars): Don't handle + LD_ORIGIN_PATH. + * elf/dl-sysdep.c (_dl_sysdep_start): Handle AT_EXECFN. + * elf/dl-support.c: Define _dl_execfn. Don't define _dl_origin_path + if __ASSUME_AT_EXECFN is defined. + (_dl_aux_init): Handle AT_EXECFN. + * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_AT_EXECFN + for 2.6.27 and up. + * sysdeps/generic/ldsodefs.h (rtld_global_ro): Add _dl_execfn. + Don't define _dl_origin_path if __ASSUME_AT_EXECFN is defined. + * sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): Use + _dl_execfn if available and avoid compatibility code if + __ASSUME_AT_EXECFN is defined. + + * sysdeps/unix/sysv/linux/dl-sysdep.h: Don't declare + _dl_discover_osversion only for older kernels. + +2008-07-22 Roland McGrath <roland@frob.com> + + * hurd/fd-read.c (_hurd_fd_read): Fix last change. + +2008-07-21 Roland McGrath <roland@frob.com> + + * hurd/fd-read.c (_hurd_fd_read): Return EGRATUITOUS if the server + returned too much data out of line. + +2008-07-20 Ulrich Drepper <drepper@redhat.com> + + * locale/setlocale.c (setname): Remove inline to avoid compiler + warning. + + [BZ #6712] + * locale/setlocale.c (setlocale): Take the setlocale lock earlier. + +2008-07-15 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/vfprintf.c (_IO_helper_overflow): In case _IO_sputn + doesn't manage to write anything, fail. + + * malloc/hooks.c (__malloc_check_init): Remove printf. + +2008-07-14 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * sysdeps/mach/hurd/bits/fcntl.h: Include <sys/types.h>. + +2008-07-12 Ulrich Drepper <drepper@redhat.com> + + * nscd/connections.c (main_loop_poll): Fix handling of read errors + from inotify. + (main_loop_epoll): Likewise. + +2008-07-09 Ulrich Drepper <drepper@redhat.com> + + * resolv/res_send.c: Remove unnecessary res_pquery prototype. + + * resolv/res_query.c (__libc_res_nquery): Issue debug message only + if DEBUG is defined. + + * resolv/res_query.c (__libc_res_nquery): Align buffer for T_AAAA + query. Adjust buffer size computation for padding. + +2008-07-08 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/Makefile: Add rules to build and run tst-setvbuf1. + * stdio-common/tst-setvbuf1.c: New file. + * stdio-common/tst-setvbuf1.expect: New file. + + [BZ #6719] + * libio/iosetvbuf.c (_IO_setvbuf): Correctly clear buffering flags + when selecting fully-buffered stream. + Patch by Wang Xin <wxinee@gmail.com>. + +2008-07-06 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * sysdeps/mach/hurd/open.c: Include <stdio.h>. + (__open_2): New function. + (__open64_2): New alias to __open_2. + * sysdeps/mach/hurd/openat.c: Include <stdio.h>. + (__openat_2): New function. + (__openat64_2): New alias to __openat_2. + +2008-07-06 Ulrich Drepper <drepper@redhat.com> + + [BZ #6723] + * time/mktime.c (__mktime_internal): Normalize tp->tm_isdst value. + +2008-07-01 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Define MSG_NOSIGNAL. + * hurd/hurd/fd.h (__hurd_sockfail): Add extern inline function. + * sysdeps/mach/hurd/recv.c (__recv): Use __hurd_sockfail instead of + __hurd_dfail. + * sysdeps/mach/hurd/recvfrom.c (__recvfrom): Likewise. + * sysdeps/mach/hurd/recvmsg.c (__recvmsg): Likewise. + * sysdeps/mach/hurd/send.c (__send): Likewise. + * sysdeps/mach/hurd/sendto.c (__sendfrom): Likewise. + * sysdeps/mach/hurd/sendmsg.c (__sendmsg): Likewise. + +2008-03-04 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * sysdeps/mach/hurd/recv.c (__recv): Initialize NPORTS. + * sysdeps/mach/hurd/recvfrom.c (__recvfrom): Likewise. + * sysdeps/mach/hurd/recvmsg.c (__recvmsg): Likewise. + * hurd/fd-read.c (_hurd_fd_read): Initialize NREAD. + * hurd/get-host.c (_hurd_get_host_config): Likewise. + * sysdeps/mach/hurd/dl-sysdep.c (__libc_read): Likewise. + +2008-06-27 Ulrich Drepper <drepper@redhat.com> + + [BZ #6657] + * time/strptime_l.c: Don't clear s.era_cnt after successful match + of %EY. + Patch by Petr Baudis. + +2008-06-26 Ulrich Drepper <drepper@redhat.com> + + * resolv/res_debug.c (__p_type_syms): Add ns_t_dname entry. + Patch by Peter Jones <pjones@redhat.com>. + +2008-06-25 Ulrich Drepper <drepper@redhat.com> + + [BZ #6654] + * stdlib/canonicalize.c (__realpath): readlink can write too much + into the buffer on platforms without PATH_MAX. + +2008-06-17 Carlos O'Donell <carlos@codesourcery.com> + + [BZ #6653] + * posix/tst-regex.c (main): Rename to... + (do_test): ... this. Remove cmdline option processing. + (TIMEOUT): Define. + (TEST_FUNCTION): Define. + (CMDLINE_OPTIONS): Define. + +2008-06-25 Ulrich Drepper <drepper@redhat.com> + + [BZ #5210] + * configure.in: Add -Werror to -fstack-protector test to catch + unsupported architectures. + Patch by Gilles Esponasse <g.esp@free.fr>. + +2008-06-17 Joseph Myers <joseph@codesourcery.com> + + * stdlib/tst-setcontext.c: Set back_in_main before exit if + getcontext returns ENOSYS. + +2008-06-18 Ulrich Drepper <drepper@redhat.com> + + * nscd/connections.c (main_loop_poll): Fix test for read error. + (main_loop_epoll): Likewise. + +2008-06-13 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/getaddrinfo.c: Move _res_hconf_init call to a + better place so it is not called when nscd is used. + + * nscd/connections.c: Also recognize and handle changes to the + resolver configuration file. + +2008-06-12 Ulrich Drepper <drepper@redhat.com> + + * time/strftime.c: Pass reference to tzset_called around to handle + recursive calls. + + [BZ #6612] + * time/strftime.c (__strftime_internal): Call tzset() only + when printing timezone-dependent values. + Based on a patch by Petr Baudis <pasky@suse.cz>. + + * resolv/nss_dns/dns-host.c (gaih_getanswer): Don't + unconditionally use second gaih_getanswer_slice result. + + * sysdeps/posix/getaddrinfo.c (gai_inet): Remove unnecessary test. + (getaddrinfo): RES must always be non-NULL. + +2008-06-12 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/powerpc/powerpc64/fpu/s_llround.S (__llround): Avoid using + cr[34] registers. + * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S (__llroundf): Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S (__llround): + Likewise. + * sysdeps/powerpc/powerpc32/fpu/s_lround.S (__lround): Avoid using cr3 + register. + +2008-06-12 Ulrich Drepper <drepper@redhat.com> + + * nscd/nscd.h (struct database_dyn): Add inotify_descr and clear_cache + fields. + * nscd/connections.c (inotify_fd): New variable. + (nscd_init): Try to open an inotify descriptor. + If successful, watch files for databases using inotify instead of + having prune threads stat the files. + (nscd_run_prune): Recognize clear_cache flag being set and call + prune_cache appropriately. + (main_loop_poll): Add inotify descriptor to wait set and handle the + reported changes. + (main_loop_epoll): Likewise. + * nscd/cache.c (prune_cache): Don't stat files for databases if + inotify is used. + * sysdeps/unix/sysv/linux/Makefile [subdir=nscd] + (CFLAGS-connections.c): Add -DHAVE_INOTIFY. + + * nscd/grpcache.c (cache_addgr): Correctly compute size of + fixed-size portion of the record. + * nscd/servicescache.c (cache_addserv): Likewise. + * nscd/pwdcache.c (cache_addpw): Likewise. + * nscd/initgrcache.c (addinitgroupsX): Likewise. + +2008-06-11 Ulrich Drepper <drepper@redhat.com> + + * nscd/mem.c (gc): Initialize obstack earlier so that if we jump + out we don't use uninitialized memory. + + * nscd/hstcache.c (cache_addhst): Send correct number of bytes to + the client. + +2008-06-10 Ulrich Drepper <drepper@redhat.com> + + * resolv/nss_dns/dns-host.c (gaih_getanswer_slice): Also log and + ignore T_DNAME messages. + * resolv/arpa/nameser_compat.h (T_DNAME): Define. + +2008-06-05 Jakub Jelinek <jakub@redhat.com> + + * misc/regexp.h (compile): Use __REPB_PREFIX macro. + Avoid segfault if first GETC returns eof/'\0'/'\n'. + +2008-06-03 Jakub Jelinek <jakub@redhat.com> + + * nscd/nscd_getserv_r.c (__nscd_getservbyport_r): Pass cp + instead of portstr to nscd_getserv_r. Patch by + Roman Kagan <rkagan@mail.ru>. + +2008-05-26 Jim Meyering <meyering@redhat.com> + + Remove more useless "if" tests before "free". + * include/inline-hashtab.h (htab_delete): Likewise. + * libio/freopen.c (freopen): Likewise. + * libio/freopen64.c (freopen64): Likewise. + * locale/programs/ld-collate.c (collate_read): Likewise. + * misc/fstab.c (libc_freeres_fn): Likewise. + * posix/glob.c (globfree): Likewise. + +2008-05-24 Ulrich Drepper <drepper@redhat.com> + + * string/Makefile (strop-tests): Add memmem. + * string/test-memmem.c: New file. + * string/test-string.h (BUF1PAGES): Define to 1 if undefined. + (test_init): Size buf1 according to BUF1PAGES. + +2008-05-24 Jakub Jelinek <jakub@redhat.com> + + * libio/stdio.h (vscanf): Fix -std=c99 redirect. + * stdio-common/Makefile (tests): Add scanf16 and scanf17. + (CFLAGS-scanf17.c): New. + * stdio-common/scanf14.c (main): Add fscanf and scanf tests. + * stdio-common/scanf15.c (main): Likewise. + * stdio-common/scanf16.c: New file. + * stdio-common/scanf17.c: New file. + +2008-05-24 Ulrich Drepper <drepper@redhat.com> + + * resolv/res_send.c (send_dg): If we already have one of two + answers and the server reports SERVFAIL, NOTIMP, or REFUSED, then + use the one answer insted of failing. + +2008-02-20 Ryan S. Arnold <rsa@us.ibm.com> + + * math/libm-test.inc (exp_test): Exclude expl(1000.0L) from + being executed on PowerPC as the expected result exceeds IBM + long double 128 __LDBL_MAX__. + +2008-05-21 Roland McGrath <roland@redhat.com> + + * shlib-versions (sparc.*-.*-.*, sparc64.*-.*-.*): Add ABI lines. + + * Makefile (check-data): Use $(abi-name) before other guesses. + Look in $(add-ons) dirs before scripts/data/. + * elf/Makefile (check-data): Likewise. + + * scripts/soversions.awk: Grok ABI line. + * Makeconfig ($(common-objpfx)soversions.mk): Likewise. + Emit definition for abi-name variable. + +2008-05-21 Ulrich Drepper <drepper@redhat.com> + + * string/endian.h: Define new fixed-size hto* and *toh macros only + if [__USE_BSD]. + + * iconvdata/Depend: Add localedata. + +2008-05-21 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * bits/termios.h (ONLCR): Define under [__USE_XOPEN] too. + +2008-05-08 David S. Miller <davem@davemloft.net> + + * sysdeps/unix/sysv/linux/sparc/sparc32/setcontext.S: Use + HIDDEN_JUMPTARGET. + * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h + (__SYSCALL_CLOBBERS): Remove %g* registers. + * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h + (__SYSCALL_CLOBBERS): Likewise. + * scripts/data/localplt-sparc-linux-gnu.data: New file. + * scripts/data/localplt-sparc64-linux-gnu.data: New file. + +2008-05-21 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h + (CALL_ERRNO_LOCATION): Define. + (__SYSCALL_STRING, __CLONE_SYSCALL_STRING): Use it. + * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h + (CALL_ERRNO_LOCATION): Define. + (__SYSCALL_STRING, __CLONE_SYSCALL_STRING): Use it. + * sysdeps/unix/sysv/linux/sparc/sparc64/brk.S (__brk): Use + HIDDEN_JUMPTARGET for __errno_location call in libc.so. + +2008-05-20 Ulrich Drepper <drepper@redhat.com> + + * include/inline-hashtab.h (higher_prime_number): Fix type of mid + variable. + +2008-05-20 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h + (FIRST_FRAME_POINTER): Define. + +2008-05-09 David S. Miller <davem@davemloft.net> + + * sysdeps/sparc/sparc64/backtrace.c: New file. + +2008-05-14 David S. Miller <davem@davemloft.net> + + * sysdeps/sparc/machine-gmon.h: New file. + * sysdeps/sparc/sparc-mcount.S: Likewise. + * sysdeps/sparc/Makefile: Add sparc-mcount target to + sysdep_routines in gmon directory. + +2008-05-19 Jakub Jelinek <jakub@redhat.com> + + * elf/soinit.c (__EH_FRAME_BEGIN__): Remove. + +2008-05-19 Ulrich Drepper <drepper@redhat.com> + + * resolv/res_query.c (__libc_res_nquery): In case one of two + answer was too short don't try to read that answer's header. + + * resolv/res_send.c (send_dg): In case of timeout and there are + two queries and one has been answered, return value indicating + success. + +2008-05-18 Ulrich Drepper <drepper@redhat.com> + + * nscd/cache.c (cache_add): Take additional parameter specifying + whether this is in response of a cache refill. Check alignment + of package data. Revamp waking of pruning thread. + (prune_cache): Small optimization. + * nscd/nscd.h: Adjust cache_add prototypes. + * nscd/aicache.c: Adjust cache_add calls. + * nscd/grpcache.c: Likewise. + * nscd/hstcache.c: Likewise. + * nscd/initgrcache.c: Likewise. + * nscd/pwdcache.c: Likewise. + * nscd/servicescache.c: Likewise. + * nscd/connections.c (restart): Really disable cache use before + exec attempt. If it fails, reenable cache. + (nscd_run_prune): Initialize wakeup_time. After wakeup, set wakeup + time to max to be able to notice concurrent cache additions. Unlock + prune_lock while performing gc. Afterwards compute wakeup time with + current wakeup_time value in mind. + +2008-05-17 Ulrich Drepper <drepper@redhat.com> + + * nscd/mem.c (gc): Avoid stack overflow when allocating move list. + + * nscd/mem.c (gc): Correctly determine highest used array element + in mark. + + * nscd/mem.c (markrange): Add assert to check entries are all + aligned. Small cleanup in bitmap use. + + * nscd/nscd.h (mem_in_flight): Replace blockaddr field with + blockoff of type nscd_ssize_t. + * nscd/mem.c (gc): Simplify markrange call for on-flight blocks. + (mempoll_alloc): Record block offset and not address. + + * nscd/mem.c (gc): Fix test for stack overuse. + + * nscd/aicache.c (addhstaiX): Fix a few small problems, cleanups, + more asserts. + + * sysdeps/posix/getaddrinfo.c (gaih_inet): If nscd reports no + entry is available, believe it. + + * resolv/nss_dns/dns-host.c (gaih_getanswer_slice): If there are + no answers return NSS_STATUS_NOTFOUND. + (gaih_getanswer): Don't call gaih_getanswer_slice if the answer + buffer does not have any content. + +2008-05-16 Ulrich Drepper <drepper@redhat.com> + + * string/strcasestr.c (CMP_FUNC): Use __strncasecmp, not strncasecmp. + + * sysdeps/posix/getaddrinfo.c (gaih_inet): After gethostbyname4_r + lookup, don't assign canon unconditionally. + +2008-05-14 Ulrich Drepper <drepper@redhat.com> + + * string/Makefile (distribute): Add str-two-way.h. + +2008-03-29 Eric Blake <ebb9@byu.net> + + Rewrite string searches to O(n) rather than O(n^2). + * string/str-two-way.h: New file. For linear fixed-allocation + string searching. + * string/memmem.c: New implementation. + * string/strstr.c: New implementation. + * string/strcasestr.c: New implementation. + +2008-04-11 Paolo Bonzini <bonzini@gnu.org> + + * posix/regcomp.c (optimize_utf8): Add a note on why we test + opr.ctx_type. + (calc_first): Initialize constraint field. + (duplicate_node_closure): Use it instead of special casing ANCHORS. + Use search_duplicated_node to avoid loops. Fix grammar. + (duplicate_node): Merge constraint field for all node types. + (calc_eclosure_iter): Look at constraint field for all node types. + * posix/regex_internal.c (create_cd_newstate): Don't look at + create_cd_newstate. + +2008-05-14 Ulrich Drepper <drepper@redhat.com> + + [BZ #6428] + * configure.in: Don't use $CFLAGS when assembling, use $ASFLAGS. + + [BZ #6442] + * string/endian.h: Add macros for fixed-size endian conversion. + * bits/byteswap.h: Allow inclusion from <endian.h>. + * sysdeps/i386/bits/byteswap.h: Likewise. + * sysdeps/ia64/bits/byteswap.h: Likewise. + * sysdeps/s390/bits/byteswap.h: Likewise. + * sysdeps/x86_64/bits/byteswap.h: Likewise. + * string/Makefile (tests): Add tst-endian. + * string/tst-endian.c: New file. + + * iconvdata/run-iconv-test.sh: Use = instead of == in test. + Patch by Reuben Thomas. + +2008-05-14 Joseph Myers <joseph@codesourcery.com> + + * iconvdata/Makefile (bug-iconv6-ENV, tst-iconv7-ENV): Define. + +2008-05-14 Ulrich Drepper <drepper@redhat.com> + + * iconvdata/bug-iconv6.c (do_test): Use de_DE.UTF-8 locale. + + [BZ #6461] + * iconv/gconv_simple.c (BODY for __gconv_transform_ascii_internal): + Add missing braces. + (BODY for __gconv_transform_internal_ascii): Likewise. + + [BZ #6472] + * sysdeps/posix/getaddrinfo.c (get_scope): Loopback addresses have + to be treated like link-local addresses. + (match_prefix): Don't treat IPv4 loopback address special when + converting to v4 mapped addressed. + + * sysdeps/posix/getaddrinfo.c (getaddrinfo): Call _res_hconf_init + if necessary. + * posix/tst-rfc3484.c: Add dummy definition of _res_hconf_init. + * posix/tst-rfc3484-2.c: Likewise. + * posix/tst-rfc3484-3.c: Likewise. + + * sysdeps/posix/getaddrinfo.c: Implement handling of DCCP, UDPlite, + and SCTP. + + * nss/getent.c (ahosts_keys_int): Handle all known socket types. + + * inet/netinet/in.h (IPPIPPROTO_DCCP, IPPROTO_UDPLITE): Define. + + * sysdeps/unix/sysv/linux/bits/socket.h (SOCK_DCCP): Define. + +2008-05-13 Ulrich Drepper <drepper@redhat.com> + + * po/lt.po: New file. From Lituanian translation team. + +2008-01-30 Alexandre Oliva <aoliva@redhat.com> + + Introduce TLS descriptors for i386 and x86_64. + * include/inline-hashtab.h: New file, copied from 2005's + libiberty, with fix for memory leak imported afterwards by + Glauber de Oliveira Costa. + * elf/tlsdeschtab.h: New file. + * elf/dl-reloc.c (_dl_try_allocate_static_tls): Extract from... + (_dl_allocate_static_tls): ... here. Rearrange failure path. + (CHECK_STATIC_TLS): Move to... + * elf/dynamic-link.h: ... this file. + (TRY_STATIC_TLS): New macro. + * elf/dl-conflict.c (CHECK_STATIC_TLS, TRY_STATIC_TLS): Override. + * elf/elf.h (R_386_TLS_GOTDESC, R_386_TLS_DESC_CALL, + R_386_TLS_DESC): Define. + (R_X86_64_PC64, R_X86_GOTOFF64, R_X86_64_GOTPC32): Merge from + binutils. + (R_X86_64_GOTPC32_TLSDESC, R_X86_64_TLSDESC_CALL, + R_X86_64_TLSDESC): Define. + (R_386_NUM, R_X86_64_NUM): Adjust. + * sysdeps/i386/Makefile (sysdep-dl-routines, sysdep_routines, + sysdep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir. + (gen-as-const-headers): Add tlsdesc.sym to csu subdir. + * sysdeps/i386/dl-lookupcfg.h: New file. Introduce _dl_unmap to + release tlsdesc_table. + * sysdeps/i386/dl-machine.h: Include dl-tlsdesc.h. + (elf_machine_type_class): Mark R_386_TLS_DESC as PLT class. + (elf_machine_rel): Handle R_386_TLS_DESC. + (elf_machine_rela): Likewise. + (elf_machine_lazy_rel): Likewise. + (elf_machine_lazy_rela): Likewise. + * sysdeps/i386/dl-tls.h (struct dl_tls_index): Name it. + * sysdeps/i386/dl-tlsdesc.S: New file. + * sysdeps/i386/dl-tlsdesc.h: New file. + * sysdeps/i386/tlsdesc.c: New file. + * sysdeps/i386/tlsdesc.sym: New file. + * sysdeps/i386/bits/linkmap.h (struct link_map_machine): Add + tlsdesc_table. + * sysdeps/x86_64/Makefile (sysdep-dl-routines, sysdep_routines, + sysdep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir. + (gen-as-const-headers): Add tlsdesc.sym to csu subdir. + * sysdeps/x86_64/dl-lookupcfg.h: New file. Introduce _dl_unmap to + release tlsdesc_table. + * sysdeps/x86_64/dl-machine.h: Include dl-tlsdesc.h. + (elf_machine_runtime_setup): Set up lazy TLSDESC GOT entry. + (elf_machine_type_class): Mark R_X86_64_TLSDESC as PLT class. + (elf_machine_rel): Handle R_X86_64_TLSDESC. + (elf_machine_rela): Likewise. + (elf_machine_lazy_rel): Likewise. + * sysdeps/x86_64/dl-tls.h (struct dl_tls_index): Name it. + (__tls_get_addr): Do not declare for non-shared compiles. + * sysdeps/x86_64/dl-tlsdesc.S: New file. + * sysdeps/x86_64/dl-tlsdesc.h: New file. + * sysdeps/x86_64/tlsdesc.c: New file. + * sysdeps/x86_64/tlsdesc.sym: New file. + * sysdeps/x86_64/bits/linkmap.h (struct link_map_machine): Add + tlsdesc_table for both 32- and 64-bit structs. + +2008-05-11 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-tls.c (__tls_get_addr): Optimize by moving slow path in + its own function. This reduces the frame setup costs and more. + +2008-02-11 Joseph Myers <joseph@codesourcery.com> + + [BZ #3406] + * sysdeps/ieee754/flt-32/w_expf.c (o_threshold): Correct value. + * math/libm-test.inc (exp_test): Test 88.72269439697265625. + +2008-05-11 Ulrich Drepper <drepper@redhat.com> + + * io/openat.c (__openat_2): Also pass fd to __openat. + * io/openat64.c (__openat64_2): Also pass fd to __openat64. + Patch by Kristian Van Der Vliet <vanders@liqwyd.com>. + + * string/tester.c (test_memcmp): Add a few more tests. + Patch by Mats Erik Andersson <ynglingatal@comhem.se>. + +2008-05-10 Ulrich Drepper <drepper@redhat.com> + + * nscd/cache.c (cache_add): Before returning with failure and this + is the first use of the record, mark it as unusable. + * nscd/aicache.c: Don't touch the dataset after cache_add returns + reporting a failure. + * nscd/grpcache.c: Likewise + * nscd/hstcache.c: Likewise. + * nscd/initgrcache.c: Likewise. + * nscd/pwdcache.c: Likewise. + * nscd/servicescache.c: Likewise. + +2008-05-10 Roland McGrath <roland@redhat.com> + + [BZ #6505] + * sysdeps/unix/sysv/linux/sys/user.h: Replace with #error stub. + +2008-05-08 David S. Miller <davem@davemloft.net> + + * misc/truncate64.c (truncate64): Use __truncate not truncate. + + * sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee751_j0l): Use __finitel. + (__ieee754_y0l): Likewise. + * sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_j1l): Likewise. + (__ieee754_y1l): Likewise. + * sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Use __ldexpl. + * sysdeps/ieee754/ldbl-128/s_log1pl.c: Kill bogus prototypes for + frexpl and ldexpl. math_private.h provides them and the latter + is not even used. + (__log1pl): Use __frexpl. + +2008-05-10 Ulrich Drepper <drepper@redhat.com> + + * include/resolv.h: Adjust __libc_res_nquery and __libc_res_nsend + prototypes. + * include/arpa/nameser_compat.h: Define T_UNSPEC. + * nis/Versions (libnss_nis): Export _nss_nis_gethostbyname4_r. + (libnss_nisplus): Export _nss_nisplus_gethostbyname4_r. + * nis/nss_nis/nis-hosts.c (LINE_PARSER): Change to also handle + af==AF_UNSPEC. + (_nss_nis_gethostbyname4_r): New function. + * nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_parse_hostent): + Change to also handle af==AF_UNSPEC. + (get_tablename): New function. Use it to avoid duplication. + (_nss_nisplus_gethostbyname4_r): New function. + * nscd/aicache.c (addhstaiX): Use gethostbyname4_r function is + available. + * nss/Versions (libnss_files): Export _nss_files_gethostbyname4_r. + * nss/nss.h: Define struct gaih_addrtuple. + * nss/nss_files/files-hosts.c (LINE_PARSER): Change to also handle + af==AF_UNSPEC. + (_nss_files_gethostbyname4_r): New function. + * resolv/Versions (libnss_dns): Export _nss_dns_gethostbyname4_r. + * resolv/gethnmaddr.c: Adjust __libc_res_nsearch and __libc_res_nquery + calls. + * resolv/res_query.c (__libc_res_nquery): Take two additional + parameters for second answer buffer. Handle type=T_UNSPEC to mean + look up IPv4 and IPv6. + Change all callers. + * resolv/res_send.c (__libc_res_nsend): Take five aditional parameters + for an additional query and answer buffer. Pass to send_vc and + send_dg. + (send_vc): Send possibly two requests and receive two answers. + (send_dg): Likewise. + * resolv/nss_dns/dns-host.c: Adjust calls to __libc_res_nsearch and + __libc_res_nquery. + (_nss_dns_gethostbyname4_r): New function. + (gaih_getanswer_slice): Likewise. + (gaih_getanswer): Likewise. + * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Adjust + __libc_res_nquery call. + * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise. + (_nss_dns_getnetbyname_r): Adjust __libc_res_nsearch call. + * sysdeps/posix/getaddrinfo.c: Use gethostbyname4_r function is + available. + +2008-05-05 David S. Miller <davem@davemloft.net> + + * sysdeps/sparc/sparc32/Makefile: Use -mcpu=v7 for initfini.s build. + * sysdeps/sparc/sparc64/Makefile: Use -mcpu=v9 for initfini.s build. + +2007-09-14 Samuel Thibault <samuel.thibault@ens-lyon.org> + + Fix termios bit macros. + Move *DLY definitions where they belong, in termios.h. + Add *[0-3] definitions. + Fixes confusion between VT and FF. + * sysdeps/mach/hurd/bits/ioctls.h (NL0, NL1, TAB0, TAB1, TAB2, CR0, + CR1, CR2, CR3, FF0, FF1, BS0, BS1): Undefine these at start if they + are already defined to avoid collision with termios.h. + (NLDLY, TABDLY, TAB3, CRDLY, VTDLY, BSDLY): Remove macros. + * bits/termios.h [__USE_MISC || __USE_XOPEN] (NL0, NL1, TAB0, + TAB1, TAB2, CR0, CR1, CR2, CR3, FF0, FF1, BS0, BS1): Likewise. + [__USE_BSD || __USE_XOPEN] (OCRNL, ONOCR, ONLRET): New macros. + [__USE_MISC || __USE_XOPEN] (NLDLY, NL0, NL1, TABDLY, TAB0, TAB1, TAB2, + TAB3, CRDLY, CR0, CR1, CR2, CR3, FFDLY, FF0, FF1, BSDLY, BS0, BS1, + VTDLY, VT0, VT1): New macros. + [__USE_GNU] (OLCUC): Change value of macro. + [__USE_XOPEN] (OFILL): New macro. + [__USE_BSD] (CRTSCTS): Change value. + (CRTS_IFLOW, CCTS_OFLOW): Change into compatibility macros. + [__USE_BSD] (CDTRCTS, CHWFLOW): New macros. + (B7200, B14400, B28800, B76800): New macros. + +2008-05-01 David S. Miller <davem@davemloft.net> + + * sysdeps/unix/sysv/linux/sparc/sparc32/ucontext_i.sym: New file. + * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile [$(subdir) = stdlib]: + (gen-as-const-headers): Add it. + * sysdeps/unix/sysv/linux/sparc/sparc32/getcontext.S: New file. + * sysdeps/unix/sysv/linux/sparc/sparc32/makecontext.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/setcontext.S: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/swapcontext.S: Likewise. + + * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S: Add support for + six system call parameters. + * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S: Likewise. + +2008-04-30 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/resource.h: Define RUSAGE_THREAD and + RUSAGE_LWP. + * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise. + +2008-04-30 Jakub Jelinek <jakub@redhat.com> + + * stdlib/tst-setcontext.c: Include unistd.h. + +2008-04-25 David S. Miller <davem@davemloft.net> + + * sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c (semctl): + Pass "union semun" properly in to sys_ipc, it must be passed + by value, not by reference. + +2008-04-22 Jakub Jelinek <jakub@redhat.com> + + * nscd/Makefile (nscd-cflags): Set back to -fpie. + * nscd/nscd.h (mem_in_flight): Add attribute_tls_model_ie. + * nscd/connections.c (mem_in_flight): Likewise. + + * nscd/nscd.h (dbs): Make hidden. + + * sysdeps/unix/sysv/linux/times.c (__times): Fix check for EFAULT. + Avoid returning -1, return 0 instead. + +2008-04-19 Ulrich Drepper <drepper@redhat.com> + + * resolv/res_mkquery.c (__res_nopt): Use NS_PUT16 instead of ns_put16. + +2008-04-15 Ulrich Drepper <drepper@redhat.com> + + [BZ #5209] + * sysdeps/unix/sysv/linux/times.c: New file. + + [BZ #5381] + * nscd/nscd.h: Define enum in_flight, mem_in_flight, and + mem_in_flight_list variables. Add new parameter to mempool_alloc + prototype. + * nscd/mem.c (mempool_alloc): Take additional parameter. Initialize + appropriate mem_in_flight element. + (gc): Take allocations which have not yet been committed to the + database into account. + * nscd/cache.c (cache_add): Add new parameter to mempool_alloc call. + Reset mem_in_flight before returning. + * nscd/connections.c (nscd_run_worker): Initialize mem_in_flight and + cue it up in mem_in_flight_list. + * nscd/aicache.c: Adjust mempool_alloc call. + * nscd/grpcache.c: Likewise. + * nscd/hstcache.c: Likewise. + * nscd/initgrcache.c: Likewise. + * nscd/pwdcache.c: Likewise. + * nscd/servicescache.c: Likewise. + * nscd/Makefile (nscd-flags): Until ld is fixed, use -fpic instead + of -fpie. + + * nscd/connections.c (handle_request): Provide better error message + in case SELinux forbids the service. + + * version.h (VERSION): Bump to 2.8.90. + +2008-04-17 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/dl-osinfo.h: Include fcntl.h. + +2008-04-11 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h (__signbitl): + Also use for 32-bit. + * sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c (__nearbyintl): Use + __nextafter instead of nextafter to avoid local PLT. + * sysdeps/powerpc/fpu/e_sqrt.c: Avoid call to fetestexcept. + * sysdeps/powerpc/fpu/e_sqrtf.c: Likewise. + + * scripts/data/localplt-powerpc64-linux-gnu.data: New file. + + * sysdeps/powerpc/fpu/fenv_libc.h: Add libm_hidden_proto for + __fe_nomask_env. + * sysdeps/powerpc/fpu/fe_nomask.c: Add libm_hidden_def. Include + <fenv_libc.h> instead of <fenv.h>. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: Likewise. + + * sysdeps/powerpc/bits/fenv.h: Make safe for C++. + + * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h: New file. + * sysdeps/powerpc/fpu/fegetexcept.c (__fegetexcept): Rename + function from fegetexcept and make old name weak alias. + * include/fenv.h: Declare __fegetexcept. + * sysdeps/powerpc/fpu/fedisblxcpt.c: Use __fegetexcept instead of + fegetexcept. + * sysdeps/powerpc/fpu/feenablxcpt.c: Likewise. + * sysdeps/powerpc/fpu/fraiseexcpt.c (__feraiseexcept): Avoid call + to fetestexcept. + * sysdeps/ieee754/ldbl-128ibm/s_log1pl.c (__log1pl): Use __frexpl + instead of frexpl to avoid local PLT. + * math/s_significandl.c (__significandl): Use __ilogbl instead of + ilogbl to avoid local PLT. + * sysdeps/ieee754/ldbl-128ibm/s_expm1l.c (__expm1l): Use __ldexpl + instead of ldexpl to avoid local PLT. + * sysdeps/ieee754/ldbl-128ibm/e_expl.c (__ieee754_expl): Use + __roundl not roundl to avoid local PLT. + * sysdeps/ieee754/ldbl-128/e_j0l.c: Use function names which avoid + local PLTs. Use __sincosl instead of separate sinl and cosl + calls. + * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise. + + * sysdeps/unix/sysv/linux/configure.in: Bump minimal kernel + version for ppc64 to 2.4.21 since without it makecontext will fail. + + * elf/tls-macros.h [__powerpc64__] (__TLS_GET_ADDR): Define according + to the ABI in use. + [__powerpc64__] (TLS_LD): Use __TLS_GET_ADDR instead of + .__tls_get_addr. + [__powerpc64__] (TLS_GD): Likewise. + +2007-11-20 Ryan S. Arnold <rsa@us.ibm.com> + + [BZ #4997] + * sysdeps/powerpc/powerpc32/fpu/s_lround.S (__lround): Fixed erroneous + result when x is +/-nextafter(+/-0.5,-/+1) i.e. all 1's in the + mantissa. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S (__llround): + Likewise. Also account for when x is an odd number between 2^52 + and 2^53-1. + * sysdeps/powerpc/powerpc64/fpu/s_llround.S (__llround): Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S (__llroundf): Likewise. + * math/libm-test.inc (lround_test, llround_test): Added test cases to + detect aforementioned erroneous conditions. + +2008-04-11 Jakub Jelinek <jakub@redhat.com> + + * configure.in: Check for -fno-section-anchors in addition to + -fno-toplevel-reorder. + +2008-04-11 Ulrich Drepper <drepper@redhat.com> + + * include/features.h (__GLIBC_MINOR__): Bump to 8. + + * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: Remove duplicate comment. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: Likewise. + * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_lround.S: Likewise. + * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: Likewise. + +2008-04-11 Jakub Jelinek <jakub@redhat.com> + + [BZ #5443] + * time/era.c: Transform __libc_setlocale_lock into rwlock. + * time/alt_digit.c: Likewise. + * wcsmbs/wcsmbsload.c: Likewise. + +2008-04-10 Ulrich Drepper <drepper@redhat.com> + + * version.h (VERSION): Bump to 2.8. + + * timzeone/asia: Update from tzdata2008b. + * timezone/backward: Likewise. + * timezone/europe: Likewise. + * timezone/northamerica: Likewise. + * timezone/southamerica: Likewise. + * timezone/iso3166.tab: Likewise. + * timezone/leapseconds: Likewise. + * timezone/zone.tab: Likewise. + * timezone/private.h: Update from tzcode2008a. + * timezone/zdump.c: Likewise. + * timezone/zic.c: Likewise. + +2008-01-24 Steven Munroe <sjmunroe@us.ibm.com> + + [BZ #5741] + * sysdeps/powerpc/powerpc64/dl-machine.h (PPC_DCBT, PPC_DCBF): + Define additonal Data Cache Block instruction macros. + (elf_machine_fixup_plt): Add dcbt for opd and plt entries. + Replace dcbst with dcbf and sync with sync/isync. + +2008-02-21 Alan Modra <amodra@bigpond.net.au> + + * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_type_class): + Always set ELF_RTYPE_CLASS_PLT. + (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p): Delete. + +2008-04-03 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power4/hp-timing.c: New file. + * sysdeps/powerpc/powerpc32/power4/hp-timing.h: New file. + * sysdeps/powerpc/powerpc64/hp-timing.h [_ARCH_PWR4] (HP_TIMING_NOW): + For ISA 2.01 and later replace mftb with mfspr 268. + +2008-02-19 Steven Munroe <sjmunroe@us.ibm.com> + + [BZ #5768] + * sysdeps/powerpc/fpu/Makefile (libm-tests): Add test-powerpc-snan. + * sysdeps/powerpc/fpu/test-powerpc-snan.c: New file. + +2008-02-18 Steven Munroe <sjmunroe@us.ibm.com> + + [BZ #5768] + * sysdeps/powerpc/powerpc32/fpu/s_isnan.S: New file. + * sysdeps/powerpc/powerpc32/fpu/s_isnan.c: Removed. + * sysdeps/powerpc/powerpc64/fpu/s_isnan.S: New file. + * sysdeps/powerpc/powerpc64/fpu/s_isnan.c: Removed. + +2008-04-10 Jakub Jelinek <jakub@redhat.com> + + * stdlib/tst-makecontext.c (othervar): New variable. + (cf): Test sign extending the argument to long. + +2008-03-03 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S: New file. + * sysdeps/powerpc/powerpc32/power5/fpu/s_isnanf.S: New file. + * sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S: New file. + * sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S: New file. + * sysdeps/powerpc/powerpc64/power5/fpu/s_isnan.S: New file. + * sysdeps/powerpc/powerpc64/power6/fpu/s_isnan.S: New file. + * sysdeps/powerpc/powerpc64/power6x/fpu/s_isnan.S: New file. + +2008-02-22 Alan Modra <amodra@bigpond.net.au> + + * elf/Makefile (tests): Substitute tests-vis-yes here. + (tests-vis-yes): Delete. + (modules-name, modules-vis-yes): Similarly. + +2008-02-12 Pete Eberlein <eberlein@us.ibm.com> + + [BZ #4407] + * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (__ieee754_lgammal_r): + Preserve sign in signgamp when x is zero. + +2007-10-26 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S: New File. + * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: Removed. + * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S: New File. + * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.c: Removed. + * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S: New File. + * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S: New File. + +2008-04-09 Ulrich Drepper <drepper@redhat.com> + + [BZ #4314] + * sysdeps/i386/i686/memcpy.S: Optimize copying of equally aligned + buffers. + + [BZ #5209] + * sysdeps/unix/sysv/syscalls.list: The times syscall doesn't have + a reserved error value. + + * stdlib/tst-makecontext.c: Change parameter to cf to negative + value to check for correct sign extension. + + [BZ #5436] + * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext): + Copy 64-bit parameter values even though this is not required in + the standard. + + * sysdeps/unix/sysv/linux/x86_64/vfork.S (__vfork): Record return + PC save. + +2008-02-14 Daniel Jacobowitz <dan@codesourcery.com> + + * sysdeps/unix/sysv/linux/i386/vfork.S (__vfork): Record return + PC save. + +2008-04-09 Jakub Jelinek <jakub@redhat.com> + + * nss_files/files-XXX.c (_nss_files_getXXent_r): Restore saved errno. + +2008-04-09 Ulrich Drepper <drepper@redhat.com> + + [BZ #5998] + * libio/iofwrite.c (_IO_fwrite): Return correct count if flushing + in line-buffered stream failed. + * libio/iofwrite_u.c (fwrite_unlocked): Likewise. + +2008-04-08 Ulrich Drepper <drepper@redhat.com> + + [BZ #6024] + * scripts/abi-versions.awk: If the version specified by + --enable-oldest-abi is older than the first version for this + architecture, use the default version. + + * locale/programs/ld-collate.c (collate_read): Ignore script lines + as well when ignoring the whole category. + +2008-04-07 Ulrich Drepper <drepper@redhat.com> + + [BZ #6042] + * sysdeps/unix/sysv/linux/net/ethernet.h: Add a few more + ETHERTYPE_* definitions. + Patch partly by Aurelien Jarno <aurelien@aurel32.net>. + +2008-04-07 Jakub Jelinek <jakub@redhat.com> + + * stdlib/mbtowc.c (__no_r_state): Remove. + (mbtowc): New static state variable. Use it instead of + __no_r_state. + * stdlib/wctomb.c (__no_r_state): Remove extern decl. + (__wctomb_state): New hidden variable. + (wctomb): Use __wctomb_state instead of __no_r_state. + * debug/wctomb_chk.c (__no_r_state): Remove extern decl. + (__wctomb_state): New extern decl. + (__wctomb_chk): Use __wctomb_state instead of __no_r_state. + +2008-04-07 Ulrich Drepper <drepper@redhat.com> + + [BZ #5475] + * resolv/res_init.c: Handle scope IDs in resolv.conf. + +2008-04-07 Jakub Jelinek <jakub@redhat.com> + + * malloc/mtrace.pl: Use $@ instead of $* to keep perl 5.10 quiet. + +2008-04-06 Ulrich Drepper <drepper@redhat.com> + + * po/nl.po: Update from translation team. + +2008-03-31 Ulrich Drepper <drepper@redhat.com> + + [BZ #6007] + * string/strfry.c: Handle empty strings again. + +2008-03-30 Ulrich Drepper <drepper@redhat.com> + + [BZ #5443] + * intl/dcigettext.c (__dcigettext): Get reader lock for locale data + before looking for translation. + * locale/duplocale.c: Transform __libc_setlocale_lock into rwlock. + * locale/freelocale.c: Likewise. + * locale/newlocale.c: Likewise. + * locale/setlocale.c: Likewise. + Based partially on a patch by ryo@np.css.fujitsu.com. + +2008-03-30 Jakub Jelinek <jakub@redhat.com> + + * intl/dcigettext.c (_nl_find_msg): Reread nconversions after + acquiring wrlock. Do conv_tab allocation while holding lock. + * intl/Makefile: Add rules to build and run tst-gettext6. + * intl/tst-gettext6.c: New test. + * intl/tst-gettext6.sh: New file. + +2008-03-30 Ulrich Drepper <drepper@redhat.com> + + * po/nl.po: Update from translation team. + + * sysdeps/unix/opendir.c (__alloc_dir): If allocation fails for size + provided through st_blksize, try the default size before giving up. + +2008-03-29 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/vfprintf.c (vfprintf): Correct overflow test. + + [BZ #5939] + * sysdeps/posix/tempname.c (__gen_tempname): Correct flag selection. + + * posix/getopt.c (_getopt_internal_r): Remove old POSIX-demanded + error message. POSIX today does not require the messages to be in + a specific form. Suggested by Jim Meyering <jim@meyering.net>. + + [BZ #5979] + * sunrpc/auth_unix.c: Unify printed strings. + * sunrpc/clnt_tcp.c: Likewise. + * sunrpc/clnt_udp.c: Likewise. + * sunrpc/clnt_unix.c: Likewise. + * sunrpc/svc_tcp.c: Likewise. + * sunrpc/svc_udp.c: Likewise. + * sunrpc/svc_unix.c: Likewise. + * sunrpc/xdr.c: Likewise. + * sunrpc/xdr_array.c: Likewise. + * sunrpc/xdr_rec.c: Likewise. + * sunrpc/xdr_ref.c: Likewise. + * locale/programs/ld-time.c (time_finish): Unify messages. + * locale/programs/locfile.c (handle_copy): Fix typo. + * nscd/nscd.c (options): Fix typo. + + [BZ #5995] + * stdlib/strtod_l.c: Use correct sign for result in one more + underflow case. + Patch by Eric Blake <ebb9@byu.net>. + +2008-03-27 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Add open + and creat system calls. + * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove open system + call. + * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove open and creat + system calls. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise. + +2008-03-27 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/local_lim.h: Undefined ARG_MAX if + <linux/limits.h> has defined it. + * sysdeps/unix/sysv/linux/sys/param.h: Define NCARGS to the legacy + ARG_MAX value and prevent ARG_MAX from being defined by the kernel + headers. + * sysdeps/unix/sysv/linux/sysconf.c: Define legacy_ARG_MAX and use + it instead of ARG_MAX. + +2008-03-25 Jakub Jelinek <jakub@redhat.com> + + * posix/gai.conf: Fix comment for scope nullbits. + * sysdeps/posix/getaddrinfo.c (gaiconf_init): If /bits is not present, + default to 128 bits for v4 mapped addresses. + +2008-03-07 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * sysdeps/s390/fpu/fegetenv.c (fegetenv): Remove PTRACE_PEEKUSER + ptrace call to get the ieee_instruction_pointer from the kernel. + * sysdeps/s390/fpu/fesetenv.c (fesetenv): Remove PTRACE_POKEUSER + ptrace call to set the ieee_instructtion_pointer. + * sysdeps/unix/sysv/linux/s390/sys/user.h (struct _user_regs_struct): + Add comment that ieee_instruction_pointer is always 0. + +2008-03-09 Andreas Jaeger <aj@suse.de> + + [BZ #5857] + * sysdeps/ieee754/dbl-64/s_rint.c (__rint): Handle j0==18. + * sysdeps/ieee754/dbl-64/s_nearbyint.c (__nearbyint): Likewise. + Patch by Mark Elliott <mark.h.elliott@lmco.com>. + + * math/libm-test.inc (nearbyint_test): Add new test cases from #5857. + (rint_test): Likewise. + +2008-03-24 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_call.c (nis_server_cache_search): Save errno around stat + call. + (__nisfind_server): Similar for open readColdStartFile call. + Patch partially by Jim Meyering. + * nss/nss_files/files-XXX.c (_nss_files_getXXent_r): Save errno + around internal_setent call. + + * po/vi.po: New Vietnamese translation. + + * sysdeps/unix/sysv/linux/adjtime.c: Correctly use + ADJ_OFFSET_SS_READ. + + * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags, + remove CLONE_STOPPED. + +2008-02-10 Jim Meyering <meyering@redhat.com> + + Remove useless "if" before "free": + * elf/ldconfig.c (parse_conf_include): Likewise. + * gmon/gmon.c (weak_alias): Likewise. + * iconv/gconv_conf.c (__gconv_get_path): Likewise. + * inet/rcmd.c (__validuser2_sa): Likewise. + * intl/bindtextdom.c (set_binding_values): Likewise. + * intl/loadmsgcat.c (_nl_load_domain, _nl_unload_domain): Likewise. + * libio/genops.c (save_for_backup): Likewise. + * libio/wgenops.c (save_for_wbackup): Likewise. + * locale/programs/ld-collate.c (collate_read): Likewise. + * locale/programs/linereader.c (get_string): Likewise. + * nis/nss_compat/compat-pwd.c (give_pwd_free): Likewise. + * nis/nss_compat/compat-spwd.c (give_spwd_free): Likewise. + * resolv/res_debug.c (do_section): Likewise. + * sunrpc/xdr_sizeof.c (x_inline, xdr_sizeof): Likewise. + * sysdeps/mach/hurd/if_index.c (libc_hidden_def): Likewise. + * sysdeps/posix/sprofil.c (__sprofil): Likewise. + * time/lc-time-cleanup.c (_nl_cleanup_time): Likewise. + * time/tzset.c (tzset_internal): Likewise. + +2008-03-18 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/dl-sysdep.h: Use __ASSEMBLER__ instead + of ASSEMBLER. + +2008-03-11 Ulrich Drepper <drepper@redhat.com> + + [BZ #5903] + * iconv/iconv_charmap.c (charmap_conversion): Pass name of output file + not stream for output file. Open output file here. + * iconv/iconv_prog.c (process_lock): Take pointer to output stream + and output file name. + (process_fd): Likewise. + (process_file): Likewise. + (main): Adjust callers of changed functions. + * iconv/iconv_prog.h: Adjust prototype. + +2008-03-09 Andreas Jaeger <aj@suse.de> + + [BZ #5753] + * sysdeps/ia64/ieee754.h: Use protected namespace + __BIG_ENDIAN/__LITTLE_ENDIAN. + * sysdeps/ieee754/ieee754.h: Likewise. + Patch by Aurelien Jarno <aurelien@aurel32.net>. + +2008-03-08 Roland McGrath <roland@frob.com> + + * hurd/hurdsig.c (_hurd_internal_post_signal): When normal rules would + ignore a signal that came from a machine exception, treat it as a + fatal core-dump signal instead. + Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>. + + * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): + Clear DF bit in thread state's eflags. + Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>. + +2008-03-08 Ulrich Drepper <drepper@redhat.com> + + [BZ #5774] + * stdlib/strtod_l.c (____STRTOF_INTERNAL): Consume closing brace + of NAN(...) sequence. + * stdlib/Makefile (tests): Add tst-strtod6. + * stdlib/tst-strtod6.c: New file. + + * inet/inet6_opt.c (inet6_opt_init): Check extlen for overflow. + + [BZ #5762] + * posix/getopt.c (_getopt_internal_r): Clarify error message by + putting offending option character in quotes. Clean up error + messages. + * po/be.po: Adjust msgstr in translation file. + * po/bg.po: Likewise. + * po/ca.po: Likewise. + * po/cs.po: Likewise. + * po/da.po: Likewise. + * po/de.po: Likewise. + * po/es.po: Likewise. + * po/fr.po: Likewise. + * po/hr.po: Likewise. + * po/ko.po: Likewise. + * po/nl.po: Likewise. + * po/rw.po: Likewise. + * po/sk.po: Likewise. + * po/sv.po: Likewise. + * po/tr.po: Likewise. + * po/zh_CN.po: Likewise. + * po/zh_TW.po: Likewise. + + [BZ #5760] + * inet/inet6_opt.c (inet6_opt_init): Fix ip6h_len computation. + Patch by Roland Bless <roland@bless.de>. + + * sysdeps/unix/sysv/linux/dl-sysdep.c: Avoid unnecessary code for + .o file. + * elf/Makefile (routines): Add dl-sysdep. + (elide-routines.os): Likewise. + +2008-03-07 Ulrich Drepper <drepper@redhat.com> + + [BZ #5786] + * elf/dl-sysdep.c: Undefine ROUND after use. + * sysdeps/generic/ldsodefs.h [HAVE_DL_DISCOVER_OSVERSION] + (struct rtld_global_ro): Add _dl_tls_get_addr_soft element. + * elf/rtld.c (rtld_global_ro): Initialize _dl_discover_osversion. + * sysdeps/unix/sysv/linux/dl-osinfo.h: Move _dl_discover_osversion + to ... + * sysdeps/unix/sysv/linux/dl-sysdep.c: ...here. + * sysdeps/unix/sysv/linux/dl-sysdep.h: Declare _dl_discover_osversion + if necessary. + * sysdeps/unix/sysv/linux/sysconf.c: Handle _SC_ARG_MAX here. + + * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Add + _dl_tls_get_addr_soft element. + * elf/rtld.c (rtld_global_ro): Initialize _dl_tls_get_addr_soft. + * elf/Versions (ld): Don't export _dl_tls_get_addr_soft. + * dlfcn/dlinfo.c (dlinfo_doit): Access dl_tls_get_addr_soft through + GLRO. + * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise. + * elf/dl-tls.c (_dl_tls_get_addr_soft): Use attribute_hidden instead + of internal_function. + + * stdlib/Makefile (aux): Add tens_in_limb. + * stdlib/strtod_l.c: Move _tens_in_limb definition to... + * stdlib/tens_in_limb.c: ...here. New file. + + [BZ #5778] + * sysdeps/unix/sysv/linux/pathconf.h: Declare + __statfs_chown_restricted. + * sysdeps/unix/sysv/linux/fpathconf.c: Call __statfs_chown_restricted + for _PC_CHOWN_RESTRICTED. + * sysdeps/unix/sysv/linux/pathconf.c: Likewise. + Implement __statfs_chown_restricted. + * sysdeps/unix/sysv/linux/bits/posix_opt.h: Change + _POSIX_CHOWN_RESTRICTED value to zero. + * io/tst-fchownat.c: Correctly handle _POSIX_CHOWN_RESTRICTED + defined to zero. + + * sysdeps/x86_64/rtld-memset.c: New file. + +2008-02-26 Harsha Jagasia <harsha.jagasia@amd.com> + + * sysdeps/x86_64/cacheinfo.c (NOT_USED_RIGHT_NOW): Remove ifdef guards. + + * sysdeps/x86_64/memset.S: Rewrite non-SSE code path as tuned for AMD + Barcelona machine. Make default fall through branch of + __x86_64_preferred_memory_instruction check as the integer code path. + +2007-10-15 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/cacheinfo.c + (__x86_64_preferred_memory_instruction): New variable. + (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction. + + * sysdeps/x86_64/memset.S: Rewrite. + +2008-03-04 Jakub Jelinek <jakub@redhat.com> + + * include/stdio.h (__asprintf_chk, __dprintf_chk, + __obstack_printf_chk): New prototypes. + (__vasprintf_chk, __vdprintf_chk, + __obstack_vprintf_chk): Likewise. + Add libc_hidden_proto. + * libio/obprintf.c + (_IO_obstack_jumps): No longer static, add attribute_hidden. + * libio/bits/stdio-ldbl.h (__asprintf_chk, __dprintf_chk, + __obstack_printf_chk, __vasprintf_chk, __vdprintf_chk, + __obstack_vprintf_chk): Add __LDBL_REDIR_DECL. + * libio/bits/stdio2.h (__asprintf_chk, __dprintf_chk, + __obstack_printf_chk, __vasprintf_chk, __vdprintf_chk, + __obstack_vprintf_chk): New prototypes. + (asprintf, __asprintf, dprintf, obstack_printf, vasprintf, vdprintf, + obstack_vprintf): New inlines. + * debug/dprintf_chk.c: New file. + * debug/vdprintf_chk.c: New file. + * debug/asprintf_chk.c: New file. + * debug/vasprintf_chk.c: New file. + * debug/obprintf_chk.c: New file. + * debug/tst-chk1.c (do_test): Add asprintf and obstack_printf tests. + * debug/Versions (__asprintf_chk, __dprintf_chk, __obstack_printf_chk, + __vasprintf_chk, __vdprintf_chk, __obstack_vprintf_chk): Export + @@GLIBC_2.8. + * debug/Makefile: Build asprintf_chk, vasprintf_chk, dprintf_chk, + vdprintf_chk and obprintf_chk, set CFLAGS for them. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.c (__nldbl___vasprintf_chk, + __nldbl___vdprintf_chk, __nldbl___obstack_vprintf_chk): Add + libc_hidden_proto. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__nldbl___vasprintf_chk, + __nldbl___vdprintf_chk, __nldbl___obstack_vprintf_chk): New prototypes. + * sysdeps/ieee754/ldbl-opt/Versions (__nldbl___asprintf_chk, + __nldbl___vasprintf_chk, __nldbl___dprintf_chk, __nldbl___vdprintf_chk, + __nldbl___obstack_printf_chk, __nldbl___obstack_vprintf_chk): Export + @@GLIBC_2.8. + * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add asprintf_chk, + vasprintf_chk, dprintf_chk, vdprintf_chk, obstack_printf_chk and + obstack_vprintf_chk. + * sysdeps/ieee754/ldbl-opt/nldbl-obstack_vprintf_chk.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-dprintf_chk.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-obstack_printf_chk.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-asprintf_chk.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-vdprintf_chk.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-vasprintf_chk.c: New file. + +2008-03-04 Ulrich Drepper <drepper@redhat.com> + + [BZ #5779] + * misc/sys/queue.h: Add STAILQ_CONCAT and TAILQ_CONCAT definitions. + Patch by Roy Marples <roy@marples.name>. + + [BZ #5736] + * malloc/malloc.c: Fix typo in comment. + + [BZ #5627] + * locale/iso-639.def: Add Shuswap. + +2008-02-25 Jakub Jelinek <jakub@redhat.com> + + [BZ #5790] + * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr2_r): Don't + overwrite *h_errnop/*errnop values from getanswer_r in case of + failure. + +2008-03-03 Ulrich Drepper <drepper@redhat.com> + + [BZ #5818] + * nscd/connections.c (dbs): Add initializers for .suggested_module. + (verify_persistent_db): Remove one unnecessary test and add a new one + for bad configuration. + (nscd_init): Improve error reported when persistent database cannot + be reused. + * nscd/nscd.h (DEFAULT_SUGGESTED_MODULE): Define. + * nscd/nscd_conf.c (nscd_parse_file): Provide default values for + .suggested_module and .max_db_size and case config file says the + values are zero. + * nscd/nscd_helper.c (get_mapping): Fail if hash table module is zero. + + [BZ #5854] + * nis/ypclnt.c (yp_order): Fix handling of return value of + do_ypcall_tr call. + Patch by Jeff Moyer <jmoyer@redhat.com>. + + * po/fr.po: Update from translation team. + +2008-02-22 Andreas Jaeger <aj@suse.de>, + Carlos O'Donell <carlos@systemhalted.org> + + [BZ #5012] + * FAQ.in: Describe why glibc needs to be compiled with + optimization. + +2008-02-19 Roland McGrath <roland@redhat.com> + + * elf/elf.h (SHT_GNU_ATTRIBUTES): New macro. + +2008-02-15 Ulrich Drepper <drepper@redhat.com> + + [BZ #5737] + * resolv/netdb.h: Make NI_MAXHOST and NI_MAXSERV available when + __USE_MISC is defined. + +2008-02-10 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/sys/timerfd.h: New file. + * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers): Add + sys/timerfd.h. + * sysdeps/unix/sysv/linux/syscalls.list: Add timerfd_create, + timerfd_gettime, timerfd_settime. + * sysdeps/unix/sysv/linux/Versions: Add timerfd_create, + timerfd_gettime, timerfd_settime for GLIBC_2.8. + +2008-02-08 Roland McGrath <roland@redhat.com> + + * elf/elf.h (NT_PPC_SPE): New macro. + +2008-02-06 Roland McGrath <roland@redhat.com> + + * Makerules ($(common-objpfx)sysd-rules): + Depend on $(sysdep-makeconfigs). + +2008-01-31 Roland McGrath <roland@redhat.com> + + [BZ #5442] + * configure.in: Use -print-file-name if it yields a directory, + for each of include and include-fixed. + * configure: Regenerated. + + * Makeconfig (sysd-rules-targets): New variable. + * sysdeps/unix/make-syscalls.sh: Use it in the rules emitted. + * sysdeps/unix/Makefile (omit-deps): Append variants for each target. + +2008-01-30 Roland McGrath <roland@redhat.com> + + * manual/libc.texinfo: Update back-cover text. + + * elf/elf.h (NT_386_TLS): New macro. + +2008-01-29 Roland McGrath <roland@redhat.com> + + * Makeconfig (sysd-rules-patterns): New variable. + * Makerules ($(common-objpfx)sysd-rules): Drive the loop from that. + (check-inhibit-asm): New canned sequence, replaces ... + (open-check-inhibit-asm, close-check-inhibit-asm): ... these, removed. + * elf/rtld-Rules ($(objpfx)rtld-%.os): Use $(rtld-CPPFLAGS) in commands. + (rtld-CPPFLAGS): Renamed from CPPFLAGS-rtld. + (CFLAGS-rtld): Variable removed. + +2008-01-24 Roland McGrath <roland@redhat.com> + + * configure.in: Let configure fragments set base_os. + * configure: Regenerated. + +2008-01-22 Ulrich Drepper <drepper@redhat.com> + + * po/ko.po: Update from translation team. + +2008-01-12 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/fpu/ftestexcept.c (fetestexcept): Use short for fnstsw. + +2008-01-12 Andreas Jaeger <aj@suse.de> + + [BZ #5040] + * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (enum EPOLL_EVENTS): + Add EPOLLRDHUP. + +2008-01-20 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * hurd/hurdsock.c (_hurd_socket_server): Return the standard + error EAFNOSUPPORT rather than non-standard EPFNOSUPPORT. + * sunrpc/bindrsvprt.c (bindresvport): Likewise. + +2007-10-23 Alexandre Oliva <aoliva@redhat.com> + + * include/link.h (FORCED_DYNAMIC_TLS_OFFSET): Define. + * elf/dl-close.c (_dl_close): Check for it. + * elf/dl-reloc.c (CHECK_STATIC_TLS): Likewise. + (_dl_allocate_static_tls): Likewise. + * elf/dl-tls.c (_dl_allocate_tls_init): Likewise. + (__tls_get_addr): Protect from race conditions in setting l_tls_offset + to it. + * elf/tst-tls16.c: New file. + * elf/tst-tlsmod16a.c: New file. + * elf/tst-tlsmod16b.c: New file. + * elf/Makefile: Add rules to build and run tst-tls16. + +2008-01-16 Ulrich Drepper <drepper@redhat.com> + + [BZ #5628] + * bits/shm.h: Fix comment describing shmid_ds. + * sysdeps/gnu/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise. + Patch by Hareesh Nagarajan <hareesh.nagarajan@gmail.com>. + + [BZ #5607] + * conform/data/fcntl.h-data: Fix posix_fadvise and posix_fallocate + prototypes. + * conform/data/limits.h-data: Adjust limits changed in v6 and add + additional suffixes. + * conform/data/mqueue.h-data: Fix typo in mq_curmsgs entry. + Add optional functions mq_timedreceive and mq_timedsend. + * conform/data/netdb.h-data: Add more AI_* and EAI_* constants. + * conform/data/pthread.h-data: Fix prototype of + pthread_condattr_setclock. pthread_sigmask is not required in v6. + * conform/data/semaphore.h-data: Allow time.h definitions. + * conform/data/signal.h-data: Likewise. + * conform/data/stdio.h-data: getw and putw are not required in v6. + * conform/data/stdlib.h-data: Change setstate prototype. + * conform/data/string.h-data: Fix strerror_r prototype. + * conform/data/time.h-data: Fix typo in TIMER_ABSTIME definition. + * conform/data/unistd.h-data: pthread_atfork not required in v6. + Fix readlink prototype. + * conform/data/netinet/in.h-data: Add const to in6addr_any and + in6addr_loopback. + * inet/netinet/in.h: Cleanup namespace. + * posix/regex.h: Likewise. + * resolv/netdb.h: Likewise. + * sysdeps/unix/sysv/linux/bits/in.h: Likewise. + * sysdeps/unix/sysv/linux/bits/socket.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise. + * sysdeps/posix/getaddrinfo.c (default_labels): Adjust for change + of names of in in6_addr. + (default_precedence): Likewise. + * sysdeps/unix/sysv/linux/cmsg_nxthdr.c: Include <stddef.h> for + NULL definition. + +2008-01-15 Ulrich Drepper <drepper@redhat.com> + + * conform/data/fmtmsg.h-data: Add missing allows. + * conform/data/ftw.h-data: Likewise. + * conform/data/inttypes.h-data: Likewise. + * conform/data/math.h-data: Likewise. + * conform/data/signal.h-data: Likewise. + * conform/data/net/if.h-data: Likewise. + * conform/data/netinet/in.h-data: Likewise. + * conform/data/sys/socket.h-data: Likewise. + + [BZ #5614] + * string/bits/string2.h (__strtok_r_1c): Always update *__NEXTP. + (__strtok_r): Simplify. + * string/tester.c (test_strtok_r): Add test case for futile search + with single-character seach string. + +2008-01-12 Ulrich Drepper <drepper@redhat.com> + + * po/ko.po: Update from translation team. + +2008-01-11 Andreas Jaeger <aj@suse.de> + + [BZ #5600] + * sysdeps/unix/sysv/linux/sys/signalfd.h (struct + signalfd_siginfo): Use 64-bit type for ssi_ptr to sync with Linux + kernel header. + +2008-01-10 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Store result of + native interface lookup in all the relevant places. + +2008-01-10 Jakub Jelinek <jakub@redhat.com> + Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/getaddrinfo.c (sort_results): Remove service_order + field. Use sockaddr_in6 for source_addr. + (get_scope): Change type of parameter to sockaddr_in6. Adjust. + (match_prefix): Likewise. + (get_label): Likewise. + (get_precedence): Likewise. + (rfc3484_sort): Change to use indirect access to results array. + Adjust to use of sockaddr_in6. Replace service_order test with + simple index comparison. + (getaddrinfo): Define order array. Initialize it. Don't initialize + service_order field. Adjust qsort_t calls. Access sorted result + array indirectly through order array. + * posix/tst-rfc3484.c: Adjust for change of rfc3484_sort. + * posix/tst-rfc3484-2.c: Likewise. + * posix/tst-rfc3484-3.c: Likewise. + +2008-01-09 Ulrich Drepper <drepper@redhat.com> + + [BZ #5541] + * sunrpc/rpc_thread.c (__rpc_thread_destroy): Also free xports and + pollfd structures. + Patch by André Cruz. + + [BZ #5545] + * sunrpc/clnt_perr.c (clnt_sperror): Don't use fixed size buffer. + (clnt_spcreateerror): Likewise. + + [BZ #5553] + * malloc/malloc.c (public_mALLOc): Set ar_ptr when trying main_arena. + (public_mEMALIGn): Likewise. + Patch mostly by Daniel Jacobowitz. + +2008-01-09 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/i386/makecontext.S (__makecontext): Avoid + clobbering memory at or above uc_stack.ss_sp + uc_stack.ss_size. + * stdlib/Makefile: Add rules to build and run tst-makecontext2. + * stdlib/tst-makecontext2.c: New test. + +2008-01-08 Jakub Jelinek <jakub@redhat.com> + + * iconv/loop.c (UPDATE_PARAMS): Define to empty statement if not + defined. + (REINIT_PARAMS): Likewise. Undefine before end of file. + (STANDARD_TO_LOOP_ERR_HANDLER): Use UPDATE_PARAMS before calling + transliteration hooks and REINIT_PARAMS afterwards. + * iconvdata/iso-2022-jp.c (BODY): Use a separate variable for + status. + (REINIT_PARAMS): Define. + * iconvdata/ibm1364.c (REINIT_PARAMS): Likewise. + * iconvdata/ibm930.c (REINIT_PARAMS): Likewise. + * iconvdata/ibm933.c (REINIT_PARAMS): Likewise. + * iconvdata/ibm935.c (REINIT_PARAMS): Likewise. + * iconvdata/ibm937.c (REINIT_PARAMS): Likewise. + * iconvdata/ibm939.c (REINIT_PARAMS): Likewise. + * iconvdata/iso-2022-cn.c (REINIT_PARAMS): Likewise. + * iconvdata/iso-2022-cn-ext.c (REINIT_PARAMS): Likewise. + * iconvdata/iso-2022-jp-3.c (REINIT_PARAMS): Likewise. + * iconvdata/iso-2022-kr.c (REINIT_PARAMS): Likewise. + * iconvdata/Makefile: Add rules to build and run tst-iconv7.c. + * iconvdata/tst-iconv7.c: New test. + +2008-01-07 Ulrich Drepper <drepper@redhat.com> + + * libio/stdio.h (vscanf): Fix definition for loser compilers. + +2008-01-05 Jakub Jelinek <jakub@redhat.com> + + [BZ #5112] + * nscd/connections.c (restart): Fix condition. + +2008-01-03 Jakub Jelinek <jakub@redhat.com> + + * ctype/ctype.h (__ctype_b_loc, __ctype_tolower_loc, + __ctype_toupper_loc): Add __THROW. + +2008-01-02 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/check_pf.c (make_request): Fix + recognition of interface family. + + * posix/getconf.c: Update copyright year. + * nss/getent.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. + +2007-12-26 Ulrich Drepper <drepper@redhat.com> + + * nss/nsswitch.c (__nss_lookup): Actually use alternative name in + second lookup. + +2007-12-23 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/cacheinfo.c (intel_02_known): New entry 0x3f. + * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise. + +2007-12-17 Roland McGrath <roland@redhat.com> + + * inet/ether_line.c (ether_line): Remove unused variable. + +2007-12-17 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * login/forkpty.c (forkpty): Add const qualifier to parameters termp + and winp. + * login/openpty.c (openpty): Likewise. + * login/pty.h (openpty, forkpty): Likewise. + * manual/terminal.texi (openpty, forkpty): Likewise. + +2007-12-17 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (public_cALLOc): For arenas other than + main_arena, count all bytes inside the mprotect_size range of the + heap as uninitialized. + +2007-12-16 Ulrich Drepper <drepper@redhat.com> + + * elf/tst-execstack.c (do_test): Don't fail if SELinux forbids + executable stacks. + + * malloc/malloc.c (public_mTRIm): Iterate over all arenas and call + mTRIm for all of them. + (mTRIm): Additionally iterate over all free blocks and use madvise + to free memory for all those blocks which contain at least one + memory page. + * malloc/tst-trim1.c: New file. + * malloc/Makefile (tests): Add tst-trim1. + + * malloc/malloc.c (do_check_malloc_state): Minimal cleanups. + +2007-12-14 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL_ERROR_P): + First cast argument to long + * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_gettimeofday): + Return long. + (__vdso_clock_gettime): Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: Functions + return long. + +2007-12-13 Ulrich Drepper <drepper@redhat.com> + + * locale/nl_langinfo.c (nl_langinfo): Just call __nl_langinfo_l. + * locale/nl_langinfo_l.c: Real implementation, copied from + nl_langinfo.c. + * include/langinfo.h: Add libc_hidden_proto for __nl_langinfo_l. + +2007-12-01 Jim Meyering <meyering@redhat.com> + + * posix/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/, + that would inhibit utf8-optimization of a regexp containing line- + or buffer-anchors, e.g., `^', `$'. + +2007-12-12 Ulrich Drepper <drepper@redhat.com> + + * time/bug-getdate1.c (do_test): Don't use century values which + aren't valid on 32-bit systems. + +2007-12-12 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/i386/i486/bits/string.h (memmove): Define as macro. + (memmove): Rename to __memmove_g, with __asm__ ("memmove"). + * sysdeps/s390/bits/string.h (__strlen_g, __strcpy_g, __strncpy_g, + __strcat_g, __strncat_g): Add __asm__. + +2007-12-12 Ulrich Drepper <drepper@redhat.com> + + [BZ #5477] + * io/fchmodat.c: Fix typo in stub_warning use. + Patch by Petr Salinger. + +2007-12-11 Ulrich Drepper <drepper@redhat.com> + + * iconvdata/hp-thai8.c: New file. + * iconvdata/Makefile: Add rules for hp-thai8.c. + * iconvdata/tst-tables.sh: Add entry for HP-THAI8. + * iconvdata/gconv-modules: Likewise. + + [BZ #5464] + * iconvdata/hp-greek8.c: New file. + * iconvdata/Makefile: Add rules for hp-greek8.c. + * iconvdata/tst-tables.sh: Add entry for HP-GREEK8. + * iconvdata/gconv-modules: Likewise. + + [BZ #5463] + * iconvdata/hp-turkish8.c: New file. + * iconvdata/Makefile: Add rules for hp-turkish8.c. + * iconvdata/tst-tables.sh: Add entry for HP-TURKISH8. + * iconvdata/gconv-modules: Likewise. + + * malloc/arena.c (grow_heap): Split out code to shrink heap into... + (shrink_heap): ... this new function. + (heap_trim): Call shrink_heap instead of grow_heap. + + * malloc/malloc.c (_int_malloc): sYSMALLOc might fail, in this + case don't call alloc_perturb. + +2007-12-10 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/adjtime.c: Use ADJ_OFFSET_SS_READ if + possible. + * sysdeps/unix/sysv/linux/kernel-features.h + (__ASSUME_ADJ_OFFSET_SS_READ): Define for 2.6.24. + * sysdeps/unix/sysv/linux/sys/timex.h (ADJ_OFFSET_SS_READ): Define. + +2007-12-08 Ulrich Drepper <drepper@redhat.com> + + [BZ #5424] + * stdio-common/vfprintf.c: Do not overflow when adding to done. + * stdio-common/Makefile (tests): Add bug22. + * stdio-common/bug22.c: New file. + + [BZ #5451] + * time/getdate.c: Fix filling in default values. + * time/bug-getdate1.c: New file. + * time/Makefile: Add rules to build and run bug-getdate1. + + * iconvdata/ebcdic-is-friss.c: Use 8bit-gap instead of 8bit-generic. + * iconvdata/ebcdic-es.c: Likewise. + * iconvdata/ebcdic-es-a.c: Likewise. + * iconvdata/ebcdic-uk.c: Likewise. + * iconvdata/iso8859-16.c: Likewise. + * iconvdata/viscii.c: Likewise. + * iconvdata/iso8859-9e.c: Likewise. + * iconvdata/Makefile: Adjust appropriately. + + [BZ #5428] + * wcsmbs/wchar.h: Unconditionally undefine __need_mbstate and + __need_wint_t. + +2007-12-07 Ulrich Drepper <drepper@redhat.com> + + [BZ #5427] + * iconvdata/hp-roman9.c: New file. + * iconvdata/Makefile: Add rules for hp-roman9.c. + * iconvdata/tst-tables.sh: Add HP-ROMAN9. + * iconvdata/gconv-modules: Likewise. + + * iconvdata/hp-roman8.c: Use 8bit-gap instead of 8bit-generic. + * iconvdata/Makefile: Adjust appropriately. + + [BZ #5441] + * stdio-common/vfscanf.c (_IO_vfwscanf): Don't free ptrs_to_free + structure, it's allocated with alloca. + * stdio-common/Makefile (tests): Add bug21. + * stdio-common/bug21.c: New file. + +2007-12-06 Aurelien Jarno <aurelien@aurel32.net> + + [BZ #5452] + * sysdeps/unix/sysv/linux/bits/sched.h: Use __extension__ + keyword for gcc's braced-groups. + +2007-12-07 Ulrich Drepper <drepper@redhat.com> + + [BZ #5454] + * inet/ether_line.c: Strip hostname of whitespaces. + * inet/Makefile (tests): Add tst-ether_line. + * inet/tst-ether_line.c: New file. + +2007-12-03 Ulrich Drepper <drepper@redhat.com> + + [BZ #5439] + * sysdeps/unix/sysv/linux/sys/signalfd.h: Fix use of __nonnull. + + [BZ #5435] + * sysdeps/unix/sysv/linux/i386/makecontext.S: Align stack. + + * stdlib/tst-setcontext.c: Catch the case where the links gets + messed up and we do not reach main again. + + * po/ca.po: Update from translation team. + +2007-11-26 Ulrich Drepper <drepper@redhat.com> + + * posix/unistd.h: Declare fsync also for __USE_XOPEN2K. + * posix/regex.h (REG_ENOSYS): Likewise. + * wcsmbs/wchar.h: Define __need_file also for __USE_XOPEN2K. + +2007-11-25 Ulrich Drepper <drepper@redhat.com> + + * nscd/nscd.h (MAX_STACK_USE): Define. + * nscd/mem.c (MAX_STACK_USE): Remove definition here. + (gc): Initialize stack_used based on allocation in prune_cache. + * nscd/cache.c (prune_cache): Use heap for mark array if necessary. + Clear array before use. + + * nscd/aicache.c (addhstaiX): Update statistics counter in case + memory allocation failed. + * nscd/hstcache.c (cache_addhst): Likewise. + * nscd/grpcache.c (cache_addgr): Likewise. + * nscd/servicescache.c (cache_addserv): Likewise. + * nscd/pwdcache.c (cache_addpw): Likewise. + * nscd/initgrcache.c (addinitgroupsX): Likewise. + +2007-11-23 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Add open + and creat system calls. + + * sysdeps/unix/sysv/linux/check_native.c: Include <asm/types.h>. + +2007-11-23 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * sysdeps/unix/sysv/linux/Makefile [subdir=inet] (sysdep_headers): + Add netiucv/iucv.h. + * sysdeps/unix/sysv/linux/netiucv/iucv.h: New file. + * sysdeps/unix/sysv/linux/opensock.c (__opensock): Add AF_IUCV + protocol. + * sysdeps/unix/sysv/linux/sa_len.c (__libc_sa_len): Likewise. + * sysdeps/unix/sysv/linux/s390/opensock.c: New file. + * sysdeps/unix/sysv/linux/s390/sa_len.c: New file. + +2007-11-22 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * sysdeps/s390/bits/string.h (strlen, strcpy, strncpy, strcat, + strncat): Define as macros to avoid compile errors. + + * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Add open and + creat entries. + +2007-11-22 Ulrich Drepper <drepper@redhat.com> + + [BZ #5382] + * nscd/nscd.h (NSCD_THREAD_STACKSIZE): Define. + * nscd/connections.c (start_threads): Use NSCD_THREAD_STACKSIZE. + * nscd/mem.c (gc): Don't allocate arrays on the stack if they can + overflow it. + Partially based on a patch by Petr Baudis <pasky@suse.cz>. + + * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread): + Return zero in case the thread library is not NPTL. + + [BZ #5375] + * resolv/res_hconf.c (_res_hconf_reorder_addrs): Fix locking when + initializing interface list. + + [BZ #5378] + * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't + use result of nss_getgrgid_r if nothing was found. For other + error return with a failure. + Partially based on a patch by Petr Baudis <pasky@suse.cz>. + + * locale/programs/ld-collate.c (collate_read): Fix loop to match + macro name. + +2007-11-19 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/getaddrinfo.c (defaults_scopes, scopes): New variables. + (get_scope): For IPv4 scope, use scopes table. + (fini): Free scopes table if necessary. + (free_scopelist): New function. + (scopecmp): New function. + (gaiconf_init): Also handle scopev4 entries. + * posix/tst-rfc3484.c (do_test): Initialize scopes. + * posix/tst-rfc3484-2.c (do_test): Likewise. + * posix/gai.conf: Document scopev4 defaults. + * posix/Makefile (tests): Add tst-rfc3484-3. + * posix/tst-rfc3484-3.c: New file. + + * sysdeps/posix/getaddrinfo.c (default_labels): Describe entry for + Teredo tunnels. + * posix/gai.conf: Update for current default tables. + +2007-11-19 Ulrich Drepper <drepper@redhat.com> + + * po/tr.po: Update from translation team. + +2007-11-18 Roland McGrath <roland@frob.com> + + * manual/arith.texi (Remainder Functions): Spelling fix. + From Shaun Silk <genix@mysoul.com.au>. + + * sysdeps/mach/hurd/bits/fcntl.h (O_CLOEXEC): Fix value. + +2007-11-17 Ulrich Drepper <drepper@redhat.com> + + * po/zh_CN.po: Update from translation team. + + * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers): + Add sys/signalfd.h and sys/eventfd.h. + +2007-11-15 Bruno Haible <bruno@clisp.org> + + [BZ #5346] + * intl/dcigettext.c (struct known_translation_t): Turn msgid into a + union. + (transcmp): Use the appropriate part of s1->msgid and s2->msgid. + (DCIGETTEXT): Change the allocation of the 'search' variable so that + it needs only fixed stack space. Delay the initialization of + msgid_len until it is needed. + +2007-11-15 Andreas Jaeger <aj@suse.de> + + * sysdeps/ieee754/dbl-64/sincos.tbl: Fix size of union. + Reported by Christoph Quirin Lauter <christoph.lauter@ens-lyon.fr>. + +2007-11-15 Ulrich Drepper <drepper@redhat.com> + + * po/ko.po: Update from translation team. + +2007-11-14 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/check_native.c (__check_native): Simplify + significantly. The device type is also part of the ifinfomsg data. + + * po/sv.po: Update from translation team. + * po/nl.po: Likewise. + + * nscd/cache.c (prune_cache): If cache is empty, instruct caller + to wake up in 24 hours. + + * nscd/gai.c (__ioctl): Define. Include check_native.c. + +2007-11-13 Ulrich Drepper <drepper@redhat.com> + + * po/cs.po: Update from translation team. + * po/pl.po: Likewise. + + * include/ifaddrs.h: Remove in6ai_temporary. + (struct in6addrinfo): Add index element. + Declare __check_native. + * inet/Makefile (aux): Add check_native. + * sysdeps/unix/sysv/linux/check_native.c: New file. + * sysdeps/unix/sysv/linux/check_pf.c: No need to recognize + IFA_F_TEMPORARY. Pass back ifa_index. + * sysdeps/posix/getaddrinfo.c: Remove netlink compatibility code. + (rfc3484_sort): Add new parameter. Implement rule 7 correctly: + call __check_native if necessary. + (getaddrinfo): Fill in index field. Use qsort_r instead of qsort + to sort addresses. Pass information about the results. + * posix/tst-rfc3484.c: Adjust for addition of index field and change + of rfc3484_sort interface. + * posix/tst-rfc3484-2.c: Likewise. + + * stdlib/stdlib.h: Define __compar_d_fn_t. Declare qsort_r. + * include/stdlib.h: Add hidden_proto for qsort_t and adjust protoype + for _quicksort. + * stdlib/msort.c (qsort): Now a wrapper around qsort_r. + (qsort_r): Renamed from qsort. Take additional parameter and pass it + on as third parameter to compare function and _quicksort. + * stdlib/qsort.c (_quicksort): Take additional parameter and pass on + to the compare function. + * stdlib/Versions [libc] (GLIBC_2.8): Add qsort_r. + * Versions.def: Add GLIBC_2.8 for libc. + + * posix/tst-rfc3484.c: Adjust for addition of prefixlen field. + * posix/tst-rfc3484-2.c: Likewise. + + * include/kernel-features.h: Moved to... + * sysdeps/mach/hurd/kernel-features.h: ...here. + +2007-09-13 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i586/memcpy_chk.S: New file. + * sysdeps/i386/i586/mempcpy_chk.S: Likewise. + * sysdeps/i386/i586/memset_chk.S: Likewise. + +2007-11-12 Ulrich Drepper <drepper@redhat.com> + + * include/ifaddrs.c (struct in6addrinfo): Add prefixlen field. + * sysdeps/unix/sysv/linux/check_pf.c (make_request): Always return + list of interfaces. Also store prefix length. + * sysdeps/posix/getaddrinfo.c (sort_result): Add prefixlen element. + (rfc3484_sort): In rule 9, for IPv4 addresses count only matching + prefix if source and destination address are in the same subnet. + (getaddrinfo): Always call __check_pf. Fill in prefixlen field. + Always look for matching record in in6ai list. + Correct source_addr_len value for IPv6->IPv4 converted records. + +2007-11-11 Roland McGrath <roland@frob.com> + + * include/kernel-features.h: New file. + +2007-11-10 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/pthread/aio_misc.c (handle_fildes_io): Avoid unnecessary + complications for 64-bit platforms. + + * sysdeps/unix/sysv/linux/open64.c: Move __open64_2 implementation to.. + * sysdeps/unix/sysv/linux/open64_2.c: ...here. New file. + * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): Add + open64_2. + * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add open and creat + entries. + * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise. + * sysdeps/wordsize-64/alphasort.c: New file. + * sysdeps/wordsize-64/alphasort64.c: New file. + * sysdeps/wordsize-64/fseeko.c: New file. + * sysdeps/wordsize-64/fseeko64.c: New file. + * sysdeps/wordsize-64/ftello.c: New file. + * sysdeps/wordsize-64/ftello64.c: New file. + * sysdeps/wordsize-64/ftw.c: New file. + * sysdeps/wordsize-64/ftw64.c: New file. + * sysdeps/wordsize-64/iofgetpos.c: New file. + * sysdeps/wordsize-64/iofgetpos64.c: New file. + * sysdeps/wordsize-64/iofopen.c: New file. + * sysdeps/wordsize-64/iofopen64.c: New file. + * sysdeps/wordsize-64/iofsetpos.c: New file. + * sysdeps/wordsize-64/iofsetpos64.c: New file. + * sysdeps/wordsize-64/lockf.c: New file. + * sysdeps/wordsize-64/lockf64.c: New file. + * sysdeps/wordsize-64/mkostemp.c: New file. + * sysdeps/wordsize-64/mkostemp64.c: New file. + * sysdeps/wordsize-64/mkstemp.c: New file. + * sysdeps/wordsize-64/mkstemp64.c: New file. + * sysdeps/wordsize-64/scandir.c: New file. + * sysdeps/wordsize-64/scandir64.c: New file. + * sysdeps/wordsize-64/tmpfile.c: New file. + * sysdeps/wordsize-64/tmpfile64.c: New file. + * sysdeps/wordsize-64/versionsort.c: New file. + * sysdeps/wordsize-64/versionsort64.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/aio_read.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/aio_read64.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/aio_write.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/aio_write64.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/creat64.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/getdirentries.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/getdirentries64.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/lio_listio.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/lio_listio64.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/open64.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/openat.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/openat64.c: New file. + + * crypt/sha256-crypt.c: Fix a comment. + * crypt/sha512-crypt.c: Likewise. + +2007-11-07 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/memset.S: Add sfence after movnti. + +2007-11-07 Ulrich Drepper <drepper@redhat.com> + + [BZ #5277] + * iconv/loop.c (STANDARD_TO_LOOP_ERR_HANDLER): If conversion failed + because output buffer is too small break, don't loop. + * iconvdata/Makefile (tests): Add bug-iconv6. + * iconvdata/bug-iconv6.c: New file. + +2007-11-06 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/vfprintf.c (vfprintf): Compute necessary buffer size + with size_t type. + * stdio-common/printf_fp.c (__print_fp): Change chars_needed type to + size_t. Add casts where needed. + + * nscd/selinux.c (nscd_request_avc_has_perm): When compiled with + old headers, don't call avc_has_perm if we don't have the + permission information. + +2007-11-05 Daniel Jacobowitz <dan@codesourcery.com> + + * elf/rtld.c (dl_main): Use the page size to find the map start. + +2007-11-05 Ulrich Drepper <drepper@redhat.com> + + * time/tzfile.c (__tzfile_read): Fix check for version 0 data files. + Patch by Szymon Siwek <sls@poczta.wp.pl>. + + * nscd/aicache.c (addhstaiX): Check herrno after IPv4 lookup only + when the lookup call failed. + + * nscd/nscd.h (struct database_dyn): Rename prunelock to prune_lock. + Add prune_cond and wakeup_time. + (CACHE_PRUNE_INTERNAL): Define. + Update declarations of prune_cache and setup_thread. + * nscd/connections.c (dbs): Update initializers. + (CACHE_PRUNE_INTERNAL): Moved to nscd.h. + (nscd_init): Default number of threads is now 4. + (invalidate_cache): Take lock before calling prune_cache. + (handle_request): If SELinux forbids the request, say so. + (readylist_cond): Use static initializer. + (nscd_run_prune): New function. Used only by pruning threads. + (nscd_run_worder): Renamed from nscd_run. Remove support for pruning + here. + (fd_ready): Update nscd_run reference. + (start_threads): No need to initialize readylist_cond. + Start pruning threads separately. + * nscd/nscd_setup_thread.c: Change return value type to int and always + return 0. + * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Change return value type + to int and return nonzero value if we can use the TID address hack. + * nscd/cache.c (cache_add): If next wakeup time of cleanup thread for + the database is later than the new entry's timeout, update the + wakeup time and wake the cleanup thread. + (prune_cache): Return seconds the next entry in the database is still + valid. Remove locking for pruning here. + * nscd/nscd.conf: Document default number of threads. + +2007-10-31 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Make sure + stack is properly aligned for the target function. + Correct unwind info. + + * elf/rtld.c (dl_main): Initialize stack and pointer guard early + when using auditing libraries. + +2007-10-29 Ulrich Drepper <drepper@redhat.com> + + * resolv/Versions [libresolv] (GLIBC_PRIVATE): Add + _nss_dns_getnetbyaddr2_r. + * resolv/nss_dns/dns-host.c: Define _nss_dns_getnetbyaddr2_r. Pass + extra parameter to getanswer_r. + (_nss_dns_getnetbyaddr_r): Now a wrapper around + _nss_dns_getnetbyaddr2_r. + + * nscd/Makefile (nscd-modules): Replace gethstbynm2_r with + gethstbynm3_r. + * nscd/gethstbynm2_r.c: Remove. + * nscd/gethstbynm3_r.c: New file. + * nscd/aicache.c (addhstaiX): Use __gethostbyaddr2_r instead of + __gethostbyaddr_r. + * nscd/gethstbyad_r.c: Generate __gethostbyaddr2_r function. Define + __gethostbyaddr_r compatibility wrapper. + * nscd/hstcache.c (cache_addhst): Add ttl parameter. Use it when + determining timeout of entry. + (lookup): Take new parameter and pass it to __gethostbyname3_r and + __gethostbyaddr2_r. + (addhstbyX): Pass reference to variable for TTL to lookup and + cache_addhst. + * nss/Versions [glibc] (GLIBC_PRIVATE): Export __nss_passwd_lookup2, + __nss_group_lookup2, __nss_hosts_lookup2, __nss_services_lookup2, + and __nss_next2. Remove __nss_services_lookup. + * nss/XXX-lookup.c: Name function now *_lookup2. Add new parameter. + Add compat wrapper. + * nss/getXXbyYY_r.c: Changes to call new *_lookup2 functions and + __nss_next2. + * nss/getXXent_r.c: Likewise. + * nss/getnssent_r.c: Likewise. + * nss/nsswitch.c (__nss_lookup): Add new parameter. If first function + does not exist in module, try the optional second name. + (__nss_next2): New function. + (__nss_next): Now wrapper around __nss_next2. + * nss/nsswitch.h: Adjust __nss_lookup prototype. + Declare __nss_next2. + Adjust definition of db_lookup_function type. + * nss/service-lookup.c: Define NO_COMPAT. + * include/netdb.h: Declare __gethostbyaddr2_r and __gethostbyname3_r. + * inet/ether_hton.c: Use __nss_next2 instead of __nss_next. + * inet/ether_ntoh.c: Likewise. + * sunrpc/netname.c: Likewise. + * sunrpc/publickey.c: Likewise. + * inet/getnetgrent.c: Likewise. Adjust calls to __nss_lookup. + * inet/gethstbyad_r.c (DB_LOOKUP_FCT): Change to __nss_hosts_lookup2. + * inet/gethstbynm2_r.c (DB_LOOKUP_FCT): Likewise. + * inet/gethstbynm_r.c (DB_LOOKUP_FCT): Likewise. + * inet/gethstent_r.c (DB_LOOKUP_FCT): Likewise. + + * nscd/aicache.c (addhstaiX): Fix default TTL handling. + + * inet/getnetgrent_r.c (setup): Encrypt static pointer. + +2007-10-28 Ulrich Drepper <drepper@redhat.com> + + [BZ #5204] + * crypt/sha256c-test.c: Define TIMEOUT to 6 for ancient hardware. + * crypt/sha512c-test.c: Likewise. + + [BZ #5225] + * stdio-common/vfscanf.c (_IO_vfwscanf): Don't misuse wp pointer + to keep track of end of %[ format string element. + * stdio-common/Makefile (tests): Add bug20. + * stdio-common/bug20.c: New file. + + [BZ #5222] + * elf/dl-load.c (_dl_rtld_di_serinfo): Correct handling of short + path elements in counting mode. + +2007-10-27 Andreas Jaeger <aj@suse.de> + + [BZ #5040] + * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLRDHUP): Add value. + + [BZ #3112] + * sysdeps/ia64/backtrace.c (init): Free shared library if incorrect. + (__cleanup): Free shared library when exiting. + * sysdeps/i386/backtrace.c (init): Free shared library if incorrect. + (__cleanup): Free shared library when exiting. + +2006-04-14 H.J. Lu <hongjiu.lu@intel.com> + + [BZ #2549] + * math/libm-test.inc (check_float_internal): Support + denormalized return. + +2007-10-23 Andreas Jaeger <aj@suse.de> + + [BZ #5208] + * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use + __LONG_LONG_PAIR to handle little endian byte order. + Suggested by abhishekrai@google.com + +2007-10-27 Ulrich Drepper <drepper@redhat.com> + + * malloc/arena.c [!NO_THREADS]: Use ATFORK_MEM if defined. + +2007-10-26 Ulrich Drepper <drepper@redhat.com> + + * nscd/cache.c (prune_cache): Move test for modified file outside + of locking. + +2007-10-21 Andreas Jaeger <aj@suse.de> + + * manual/texinfo.tex: Update to latest version. + + * manual/sysinfo.texi (System Parameters): Fix Formatting. + + * manual/arith.texi (Status bit operations): Fix formatting. + + * manual/errno.texi (Error Messages): Fix formatting. + + * manual/sysinfo.texi (System Parameters): Fix formatting. + + * manual/libc.texinfo: Update VERSION and UPDATED. + +2007-10-19 Roland McGrath <roland@redhat.com> + + * elf/Makefile ($(objpfx)ld.so): Use $(AWK). + +2007-10-06 David S. Miller <davem@davemloft.net> + + * configure.in: Add sparcv9v2 and sparc64v2. + * scripts/config.sub: Likewise. + * configure: Regenerate. + * elf/elf.h (HWCAP_SPARC_N2): New. + * sysdeps/sparc/dl-procinfo.h (_DL_HWCAP_COUNT): Bump to 8. + * sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add 'v9v2'. + (HWCAP_IMPORTANT): Add HWCAP_SPARC_N2. + * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memcpy.S: New file. + * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memset.S: New file. + * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: New file. + * sysdeps/sparc/sparc64/sparcv9v2/memset.S: New file. + +2007-10-18 Ulrich Drepper <drepper@redhat.com> + + * sunrpc/clnt_udp.c (clntudp_call): Don't block in recvfrom call + even if the poll result indicates there is data to read. + Patch by Jeff Moyer <jmoyer@redhat.com>. + +2007-10-18 Roland McGrath <roland@redhat.com> + + * elf/elf.h (NT_PPC_VMX): New macro. + +2007-10-17 Ulrich Drepper <drepper@redhat.com> + + * version.h (VERSION): Set to 2.7.90. + +2007-10-17 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/x86_64/memset.S (bzero): Renamed to __bzero. Add + weak_alias. + +2007-10-17 Roland McGrath <roland@frob.com> + + * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU__] (F_DUPFD_CLOEXEC): New. + * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Implement it. + +2007-10-17 Ulrich Drepper <drepper@redhat.com> + + * version.h (VERSION): Bump to 2.7. + * include/features.h (__GLIBC_MINOR__): Bump to 7. + + [BZ #5186] + * time/tzset.c (__tz_convert): Don't force testing for a change of + TZ if not called from localtime. But then also see whether the + file changed, in case __use_tzfile is set. + + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define F_DUPFD_CLOEXEC. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise. + +2007-10-17 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/posix/getaddrinfo.c (getaddrinfo): When sorting addresses + and admin selects to be able to replace the gai.conf file, lock + data structures around the qsort call. + +2007-10-17 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/cacheinfo.c: Comment out code added in support of + new memset. + * sysdeps/x86_64/memset.S: Revert to old version for now. The cost is + too high for the improvements. Implement bzero unconditionally for + use in libc. + +2007-10-17 Ulrich Drepper <drepper@redhat.com> + Jakub Jelinek <jakub@redhat.com> + + * time/tzfile.c (__tzfile_read): Read POSIX TZ string if available + even when time_t is 32-bit. + (__tzfile_compute): Override POSIX TZ string STD/DST zone names if + timezone data read by __tzfile_default. Ensure __tzname[0] is + always set after the search. + +2007-10-16 Ulrich Drepper <drepper@redhat.com> + + * time/tzfile.c (__tzfile_read): Help the compiler recognize + unreachable code on 32-bit machines. + +2007-10-16 Jakub Jelinek <jakub@redhat.com> + + [BZ #5184] + * time/strftime_l.c: Include stdbool.h. + (my_strftime): New wrapper, old function renamed to... + (__strftime_internal): ... new function. Add tzset_called + argument, pass it down to recursive calls, don't call tzset () + if already true, set to true after call to tzset (). + +2007-10-16 Ulrich Drepper <drepper@redhat.com> + + * time/tzfile.c (__tzfile_read): Take extra memory requested by caller + into account when copying TZ string. + +2007-10-16 Jakub Jelinek <jakub@redhat.com> + + * time/tzfile.c (__tzfile_compute): For use_last case set i to + num_transition rather than num_transitions - 1. + +2007-10-16 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/x86_64/memset.S (memset): Fix sse2_nt_move + PIC indirect jump. + + * sysdeps/x86_64/memset.S: Jump from bzero to memset using + a local label rather than HIDDEN_JUMPTARGET. + +2007-10-15 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/cacheinfo.c (__x86_64_shared_cache_size): Define. + (init_cacheinfo): Initialize it. + * sysdeps/x86_64/memset.S: Use __x86_64_shared_cache_size. + Always define bzero. + Remove non-glibc code. + * sysdeps/x86_64/bzero.S: Make an empty file. + +2007-10-15 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/cacheinfo.c + (__x86_64_preferred_memory_instruction): New. + (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction. + + * sysdeps/x86_64/memset.S: Rewrite. + +2007-10-15 Roland McGrath <roland@redhat.com> + + * po/libc.pot: Regenerated. + +2007-10-15 Ulrich Drepper <drepper@redhat.com> + + * nss/getXXbyYY_r.c (REENTRANT_NAME): Mangle startp and start_fct + pointers. + + [BZ #3425] + * resolv/nss_dns/dns-host.c (getanswer_r): Fail with + NSS_STATUS_NOTFOUND if the server replied with only a CNAME and no + address record to T_A/T_AAAA requests. + +2007-10-14 Ulrich Drepper <drepper@redhat.com> + + * posix/glob.c: Reimplement link_exists_p to use fstatat64. + + * posix/glob.c: Add some branch prediction throughout. + + * nscd/nscd_getgr_r.c (nscd_getgr_r): Store result of successful + read from nscd. + + * sysdeps/posix/getaddrinfo.c (struct sort_result): Add + service_order. + (rfc3484_sort): Make sure that even if qsort doesn't support + stable sorting out sorting here is stable by comparing service_order. + (getaddrinfo): Initialize service_order. + * posix/tst-rfc3484.c (do_test): Adjust for addition of + service_order field to sorting structure. + * posix/tst-rfc3484-2.c (do_test): Likewise. + + * include/time.h: Declare __tzset_parse_tz and __tzset_compute. + * time/tzset.c (tzset_internal): Break TZ string parsing out into + __tzset_parse_tz and updating of daylight, timezone, tzname into + update_vars. + (__tz_compute): Renamed from tz_compute. Take additional parameters. + (__tz_convert): Updating of tm_isdst, tm_zone, and tm_gmtoff now + happens in __tz_compute. + * time/tzfile.c (__tzfile_read): Also read TZ string. + (find_transition): Fold into __tzfile_compute. + (__tzfile_compute): For times beyond the last transition try to + use the TZ string. + * timezone/tst-timezone.c: Information in daylight and tzname does + change for Asia/Tokyo timezone with more concrete information. + Remove the test. + + * include/stdio.h: Add libc_hidden_proto for ftello. + * libio/ftello.c: Add libc_hidden_def. + + [BZ #1140] + * time/tzfile.c (__tzfile_compute): Compute tzname[] values based + on the specified time and not the last entries in the file. Move + code to determine tzname[] to... + (find_transition): ...here. Add ugly guess for times before the + first transition. + +2007-10-13 Ulrich Drepper <drepper@redhat.com> + + [BZ #3195] + * nscd/nscd_getai.c (__nscd_getai): Set errno to 0 in case we found + no entry. + * nscd/nscd_getgr.c (nscd_getgr_r): Likewise. + * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise. + * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise. + * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise. + + * nscd/nscd_getgr_r.c (nscd_getgr_r): Optimize a bit: use simpler + read mechanism when there are no group members and avoid no-op + read syscall in this case. + + [BZ #3242] + * nscd/nscd_helper.c (wait_on_socket): Take timeout as parameter. + (__readall): If reading failed due to EAGAIN error wait a bit + and possibly try again. + (__readvall): Likewise. + +2007-10-13 Bruno Haible <bruno@clisp.org> + + * intl/dcigettext.c (_nl_find_msg): Unlock the conversions_lock + when we cannot recode the message. + +2007-10-13 Ulrich Drepper <drepper@redhat.com> + + [BZ #4359] + * libio/__freading.c (__freading): Don't return true for + write-only streams. For read/write streams, check whether we + performed a read operation already. + * libio/Makefile (tests): Add tst-ext2. + * libio/tst-ext2.c: New file. + +2007-10-12 Ulrich Drepper <drepper@redhat.com> + + * locale/programs/repertoire.c (repertoire_read): Always free + memory for repertoire file name [Coverity CID 270]. + + * elf/cache.c (save_aux_cache): Free memory allocated for + temporary file name [Coverity CID 267]. + +2007-10-12 Jakub Jelinek <jakub@redhat.com> + + * misc/Makefile (headers): Add bits/error.h. + +2007-10-12 Ulrich Drepper <drepper@redhat.com> + + * posix/fnmatch_loop.c: Take rule index returned as part of + findidx return value into account when accessing weights. + * posix/regcomp.c: Likewise. + * posix/regexec.c: Likewise. + + * locale/programs/ld-collate.c (collate_read): Optimize a bit. + (skip_to): Fix problems with parameter of elifdef/elifndef. + +2007-10-11 Ulrich Drepper <drepper@redhat.com> + + * iconv/gconv_simple.c: Add some branch prediction. + +2007-10-12 Jakub Jelinek <jakub@redhat.com> + + * locale/programs/ld-collate.c (collate_read): If ignore_content + and nowtok is tok_define, eat any tok_eol tokens. + +2007-10-11 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/gnu/netinet/tcp.h: Include sys/socket.h if __USE_MISC. + (struct tcp_md5sig): Change tcpm_addr type to struct sockaddr_storage. + + * inet/netinet/in.h: Don't include bits/socket.h. + * sysdeps/unix/sysv/linux/bits/socket.h: Only check _SYS_SOCKET_H + macro. + * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise. + +2007-10-10 Ulrich Drepper <drepper@redhat.com> + + * locale/programs/locfile-token.h: Remove tok_elif, add tok_elifdef + and tok_elifndef. + * locale/programs/locfile-kw.gperf: Likewise. + * locale/programs/ld-collate.c: Implement primitive preprocessor. + +2007-10-10 Jakub Jelinek <jakub@redhat.com> + + * stdio-common/printf-parse.h: Include string.h and wchar.h. + (__find_specwc): Change into __extern_always_inline function. + (__find_specmb): Likewise. Remove ps argument. Use __strchrnul. + (__parse_one_specmb): Remove ps argument. + * stdio-common/vfprintf.c (vfprintf): Remove mbstate variable. + Adjust __find_specmb and __parse_one_specmb callers. + * stdio-common/printf-prs.c (parse_printf_format): Likewise. + * stdio-common/printf-parsemb.c (__find_specwc, __find_specmb): + Removed. + (__parse_one_specmb): Remove ps argument, adjust __find_specmb + caller. + +2007-10-09 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Work around problem + with some Pentium Ds. + +2007-10-08 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/eventfd_read.c (eventfd_read): Use + __read not read. + * sysdeps/unix/sysv/linux/eventfd_write.c (eventfd_write): Use + __write not write. + +2007-10-07 Ulrich Drepper <drepper@redhat.com> + + [BZ #181] + * locale/C-time.c: Set week_1stday data to 19971201. + * locale/programs/ld-time.c (time_finish): Default for + first_workday is Monday. + + [BZ #2633] + * wcsmbs/wchar.h: Move many C99 functions into std namespace. + + [BZ #5103] + * posix/glob.c (glob): Recognize patterns starting \/. + * posix/tst-gnuglob.c (find_file): Handle absolute path names. + (main): Add test for pattern starting \/. + + * misc/error.h: Use __const instead of const. + * misc/bits/error.h: Likewise. + +2007-10-07 Andreas Jaeger <aj@suse.de> + + * include/bits/error.h: New file. + + * misc/bits/error.h (error_at_line): Fix prototype. + +2007-10-06 Ulrich Drepper <drepper@redhat.com> + + [BZ #3924] + * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix a few + more little bugs in creating the stack frame when pltexit has to + be called. + + * nscd/nscd_helper.c (__nscd_cache_search): Prevent endless loops. + * nscd/connections.c (verify_persistent_db): Recognize circular lists. + + [BZ #4407] + * sysdeps/ieee754/dbl-64/e_lgamma_r.c: Fix *signgamp for -0.0. + * sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise. + * math/libm-test.inc: Add test for this case. + + [BZ #5010] + * sunrpc/svc.c (struct svc_callout): Add sc_mapped element. + (svc_register): Initialize sc_mapped. Set to TRUE if call to + map service succeeded. + (svc_is_mapped): New function. + (svc_unregister): Use it before trying to unmap service. + +2007-10-05 Ulrich Drepper <drepper@redhat.com> + + * timezone/zic.c: Update from tzcode2007h. + + [BZ #5063] + * timezone/africa: Update from tzdata2007h. + * timezone/antarctica: Likewise. + * timezone/asia: Likewise. + * timezone/australasia: Likewise. + * timezone/europe: Likewise. + * timezone/leapseconds: Likewise. + * timezone/northamerica: Likewise. + * timezone/southamerica: Likewise. + * timzeone/zone.tab: Likewise. + + [BZ #5104] + * elf/do-lookup.h (do_lookup_x): Don't ignore STT_COMMON symbols. + + [BZ #5113] + * string/bits/string2.h (__strdup): Cast parameters to calloc to + avoid warning with -Wconversion. + (__strndup): Likewise. + Half the patch by Christian Iseli <christian.iseli@licr.org>. + + [BZ #5112] + * nscd/connections.c (restart): Don't resync if database is + disabled. Patch mostly by Brian De Wolf <bldewolf@csupomona.edu>. + + * sysdeps/gnu/netinet/tcp.h: Define TCP_MD5SIG, TCP_MD5SIG_MAXKEYLEN, + struct tcp_md5sig. Extend struct tcp_info according to recent kernels. + + * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add eventfd, + evetnfd_read, eventfd_write. + * sysdeps/unix/sysv/linux/eventfd.c: New file. + * sysdeps/unix/sysv/linux/eventfd_read.c: New file. + * sysdeps/unix/sysv/linux/eventfd_write.c: New file. + * sysdeps/unix/sysv/linux/sys/eventfd.h: New file. + * sysdeps/unix/sysv/linux/Versions: Export eventfd, eventfd_read, + eventfd_write for GLIBC_2.7. + + * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add signalfd. + * sysdeps/unix/sysv/linux/signalfd.c: New file. + * sysdeps/unix/sysv/linux/sys/signalfd.h: New file. + * sysdeps/unix/sysv/linux/Versions: Export signalfd for GLIBC_2.7. + +2007-10-04 Jakub Jelinek <jakub@redhat.com> + + * stdlib/msort.c: Include stdint.h. + (struct msort_param): New type. + (msort_with_tmp): Use struct msort_param pointer for unchanging + parameters. Add optimized handling for several common sizes + and indirect sorting mode. + (qsort): Adjust msort_with_tmp callers. For big S use indirect + sorting. + Suggested by Belazougui Djamel . + + * stdlib/Makefile (tests): Add tst-qsort2. + * stdlib/tst-qsort2.c: New test. + +2007-10-04 Ulrich Drepper <drepper@redhat.com> + + * login/login_tty.c (login_tty): The Linux kernel can return EBUSY + for dup2 in case another thread races with the current one. Retry + in this case. + + * misc/error.h: Remove support for use outside of libc. We have to + include <features.h> now. Include <bits/error.h> if possible. + * misc/bits/error.h: New file. + +2007-10-03 Jakub Jelinek <jakub@redhat.com> + + * string/bits/string3.h (memcpy, memmove, mempcpy, memset, bcopy, + bzero, strcpy, stpcpy, strncpy, strcat, strncat): Use + __extern_always_inline functions unconditionally, drop macros. + + * misc/sys/cdefs.h (__REDIRECT_LDBL, __REDIRECT_NTH_LDBL): New macros. + * wcsmbs/bits/wchar2.h (__swprintf_alias, __vswprintf_alias): Use + __REDIRECT_NTH_LDBL macro rather than __REDIRECT_NTH. + + * misc/sys/cdefs.h (__extern_always_inline): For GCC 4.3+ + add __artificial__ attribute. + +2007-10-02 Ulrich Drepper <drepper@redhat.com> + + * string/strcoll_l.c (STRCOLL): Correct handling of switching from + backward to forward direction. + + * string/strcoll_l.c (STRCOLL): Correct test for alloca use. + + [BZ #645] + * locale/programs/ld-collate.c (collate_finish): Compare against last + used section which is known to have rules defined. + (collate_read): After order_start, correctly record order of sections + and queue sections up. + +2007-10-01 Ulrich Drepper <drepper@redhat.com> + + [BZ #5071] + * malloc/malloc.c (mremap_chunk): Avoid resizing of new block has + the same number of pages. + Patch by Tomash Brechko <tomash.brechko@gmail.com>. + + * locale/programs/ld-collate.c (collate_read): After initial copy + statement, continue in state 0. + + * include/stdio_ext.h (__fsetlocking): Define as macro. + +2007-09-30 Ulrich Drepper <drepper@redhat.com> + + * locale/programs/ld-collate.c (collate_finish): Compare all bytes + of section order. + + * po/pt_BR.po: Fix typo. + +2007-09-29 Ulrich Drepper <drepper@redhat.com> + + * iconvdata/Makefile (modules): Add ISO8859-9E. + (distribute): Add iso8859-9e.c. + (gen-8bit-gap-modules): Add iso8859-9e. + * iconvdata/iso8859-9e.c: New file. + * iconvdata/gconv-modules: Add entries for ISO-8859-9E. + * iconvdata/TESTS: Likewise. + * iconvdata/tst-tables.sh: Likewise. + + * iconvdata/koi8-r.c (HAS_HOLES): Define to 0. + + * locale/iso-639.def: Add several new entries. + +2007-09-24 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/generic/ldsodefs.h (struct dl_scope_free_list): Store + void * pointers instead of struct link_map **. + (_dl_scope_free): Change argument type to void *. + * include/link.h (struct link_map): Change type of l_reldeps + to struct link_map_reldeps, move l_reldepsact into that + struct too. + * elf/dl-deps.c: Include atomic.h. + (_dl_map_object_deps): Only change l->l_initfini when it is + fully populated, use _dl_scope_free for freeing it. Optimize + removal of libs from reldeps by using l_reserved flag, when + some removal is needed, allocate a new list instead of + reallocating and free the old with _dl_scope_free. Adjust + for l_reldeps and l_reldepsact changes. + * elf/dl-lookup.c (add_dependency): Likewise. Reorganize to allow + searching in l_initfini and l_reldeps without holding dl_load_lock. + * elf/dl-fini.c (_dl_sort_fini): Adjust for l_reldeps and + l_reldepsact changes. + * elf/dl-close.c (_dl_close_worker): Likewise. + * elf/dl-open.c (_dl_scope_free): Change argument type to void *. + +2007-09-28 Ulrich Drepper <drepper@redhat.com> + + * iconvdata/Makefile (modules): Add KOI8-RU. + (distribute): Add koi8-ru.c. + (gen-8bit-gap-modules): Add koi8-ru. + * iconvdata/koi8-ru.c: New file. + * iconvdata/gconv-modules: Add entries for KOI8-RU. + * iconvdata/TESTS: Likewise. + * iconvdata/tst-tables.sh: Likewise. + + * iconvdata/koi8-r.c (HAS_HOLES): Define to 0. + +2007-09-26 Jakub Jelinek <jakub@redhat.com> + + * misc/sys/cdefs.h (__warndecl, __errordecl): For GCC 4.3+ define + with __warning__/__error__ attributes. + (__warnattr): Define. + * stdlib/bits/stdlib.h (__realpath_chk_warn, __ptsname_r_chk_warn, + __mbstowcs_chk_warn, __wcstombs_chk_warn): New aliases with + __warnattr. + (realpath, ptsname_r, mbstowcs, wcstombs): Call __*_chk_warn instead + of __*_chk if compile time detectable overflow is found. + * libio/bits/stdio2.h (__fgets_chk_warn, __fread_chk_warn, + __fgets_unlocked_chk_warn, __fread_unlocked_chk_warn): New aliases + with __warnattr. + (fgets, fread, fgets_unlocked, fread_unlocked): Call __*_chk_warn + instead of __*_chk if compile time detectable overflow is found. + (__gets_alias): Rename to... + (__gets_warn): ... this. Add __warnattr. + (gets): Call __gets_warn instead of __gets_alias. + * socket/bits/socket2.h (__recv_chk_warn, __recvfrom_chk_warn): New + aliases with __warnattr. + (recv, recvfrom): Call __*_chk_warn instead of __*_chk if compile + time detectable overflow is found. + * posix/bits/unistd.h (__read_chk_warn, __pread_chk_warn, + __pread64_chk_warn, __readlink_chk_warn, __readlinkat_chk_warn, + __getcwd_chk_warn, __confstr_chk_warn, __getgroups_chk_warn, + __ttyname_r_chk_warn, __getlogin_r_chk_warn, __gethostname_chk_warn, + __getdomainname_chk_warn): New aliases with __warnattr. + (read, pread, pread64, readlink, readlinkat, getcwd, confstr, + getgroups, ttyname_r, getlogin_r, gethostname, getdomainname): Call + __*_chk_warn instead of __*_chk if compile time detectable overflow + is found. + (__getgroups_chk): Rename argument to __listlen from listlen. + (__getwd_alias): Rename to... + (__getwd_warn): ... this. Add __warnattr. + (getwd): Call __getwd_warn instead of __getwd_alias. + * wcsmbs/bits/wchar2.h (__wmemcpy_chk_warn, __wmemmove_chk_warn, + __wmempcpy_chk_warn, __wmemset_chk_warn, __wcsncpy_chk_warn, + __wcpncpy_chk_warn, __fgetws_chk_warn, __fgetws_unlocked_chk_warn, + __mbsrtowcs_chk_warn, __wcsrtombs_chk_warn, __mbsnrtowcs_chk_warn, + __wcsnrtombs_chk_warn): New aliases with __warnattr. + (wmemcpy, wmemmove, wmempcpy, wmemset, mbsrtowcs, wcsrtombs, + mbsnrtowcs, wcsnrtombs): Call __*_chk_warn instead of __*_chk if + compile time detectable overflow is found. + (wcsncpy, wcpncpy): Likewise. For constant __n fix check whether + to use __*_chk or not. + (fgetws, fgetws_unlocked): Divide __bos by sizeof (wchar_t), both + in comparisons which function should be called and in __*_chk* + arguments. Call __*_chk_warn instead of __*_chk if compile time + detectable overflow is found. + (swprintf, vswprintf): Divide __bos by sizeof (wchar_t) in + __*_chk argument. + * debug/tst-chk1.c (do_test): Add a few more tests. + +2007-09-24 Ulrich Drepper <drepper@redhat.com> + + [BZ #5058] + * intl/gettextP.h (struct loaded_domain): Add conversions_lock member. + * intl/loadmsgcat.c (_nl_load_domain): Initialize conversions_lock. + (_nl_unload_domain): Finalize conversions_lock. + * intl/dcigettext.c (_nl_find_msg): Take conversions_lock before + handling table of known conversions. + +2007-09-24 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/posix/getaddrinfo.c (getaddrinfo): Use + close_not_cancel_no_status instead of close. + +2007-09-13 Aurelien Jarno <aurelien@aurel32.net> + + [BZ #5028] + * posix/regcomp.c (lookup_collation_sequence_value): Check that + nrules != 0 for multibyte chars. + +2007-09-23 Ulrich Drepper <drepper@redhat.com> + + * resolv/ns_print.c (ns_sprintrrf): Handle ns_t_a6 and ns_t_opt. + Provide better error message in case the type is unknown. + + [BZ #4963] + * wcsmbs/wcsnlen.c: Don't reference before checking the length. + * string/stratcliff.c: Make usable to test wide char functions. + * wcsmbs/wcsatcliff.c: New file. + * wcsmbs/Makefiel (tests): Add wcsatcliff. + + [BZ #4972] + * iconvdata/Makefile (modules): Add MAC-CENTRALEUROPE. + (distribute): Add mac-centraleurope.c. + (gen-8bit-gap-modules): Add mac-centraleurope. + * iconvdata/mac-centraleurope.c: New file. + * iconvdata/gconv-modules: Add entries for MAC-CENTRALEUROPE. + * iconvdata/TESTS: Likewise. + * iconvdata/tst-tables.sh: Likewise. + + [BZ #5043] + * iconv/iconv_open.c (iconv_open): For large codeset names use malloc. + +2007-09-21 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/cacheinfo.c (__x86_64_data_cache_size_half): Renamed + from __x86_64_core_cache_size_half. + (init_cacheinfo): Compute shared cache size for AMD processors with + shared L3 correctly. + * sysdeps/x86_64/memcpy.S: Adjust for __x86_64_data_cache_size_half + name change. + Patch in large parts by Evandro Menezes. + +2007-09-19 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-lookup.c (add_dependency): Handle failing memory + allocation for dependency list. Remove unnecessary check. + + * sysdeps/posix/getaddrinfo.c (getaddrinfo): Avoid unnecessary + open/close when determining source addresses. + + * crypt/Makefile (libcrypt-routines): Add sha256-crypt, sha256, + sha512-crypt, and sha512. + (tests): Add sha256test, sha256c-test, sha512test, and sha512c-test. + (distribute): Add sha256.h and sha512.h. + * crypt/crypt-entry.c (crypt): Recognize the new $5$ and $6$ prefixes + and call the appropriate code. + * crypt/sha256-crypt.c: New file. + * crypt/sha256.c: New file. + * crypt/sha256.h: New file. + * crypt/sha256c-test.c: New file. + * crypt/sha256test.c: New file. + * crypt/sha512-crypt.c: New file. + * crypt/sha512.c: New file. + * crypt/sha512.h: New file. + * crypt/sha512c-test.c: New file. + * crypt/sha512test.c: New file. + +2007-09-19 Jakub Jelinek <jakub@redhat.com> + + * misc/bits/syslog.h (syslog): Remove extraneous argument from + the inline, pass __USE_FORTIFY_LEVEL - 1 as second argument to + __syslog_chk. + +2007-09-18 Jakub Jelinek <jakub@redhat.com> + + * locale/programs/charmap-dir.c (charmap_aliases): Use %ms instead of + %as in fscanf format strings. + + * sysdeps/sparc/sparc32/elf/start.S: Remove cfi_* markup. + * sysdeps/sparc/sparc64/elf/start.S: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start): + Likewise. + + * sysdeps/generic/ldsodefs.h (DL_LOOKUP_GSCOPE_LOCK): New definition. + * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Or in + DL_LOOKUP_GSCOPE_LOCK into flags after THREAD_GSCOPE_SET_FLAG (). + * elf/dl-sym.c (do_sym): Likewise. + * include/link.h (struct link_map): Add l_serial field. + * elf/dl-object.c (_dl_new_object): Initialize l_serial. + * elf/dl-lookup.c (add_dependency): Add flags argument. + Remember map->l_serial, if DL_LOOKUP_GSCOPE_LOCK is among + flags, use THREAD_GSCOPE_RESET_FLAG before and + THREAD_GSCOPE_SET_FLAG after + __rtld_lock_lock_recursive (GL(dl_load_lock)) to avoid deadlock. + Don't dereference map until it has been found on some list. + If map->l_serial changed, return -1. + +2007-09-17 Jakub Jelinek <jakub@redhat.com> + + * include/stdio.h (__isoc99_fscanf, __isoc99_scanf, + __isoc99_sscanf, __isoc99_vscanf): New prototypes. + (__isoc99_vsscanf, __isoc99_vfscanf): New prototypes, add + libc_hidden_proto. + * include/wchar.h (__isoc99_fwscanf, __isoc99_wscanf, + __isoc99_swscanf, __isoc99_vwscanf): New prototypes. + (__isoc99_vswscanf, __isoc99_vfwscanf): New prototypes, + add libc_hidden_proto. + * libio/stdio.h (fscanf, scanf, sscanf, vfscanf, vscanf, + vsscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX + conformance requested. + * wcsmbs/wchar.h (fwscanf, wscanf, swscanf, vfwscanf, vwscanf, + vswscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX + conformance requested. + * libio/bits/stdio-ldbl.h (fscanf, scanf, sscanf, vfscanf, vscanf, + vsscanf): Redirect to __nldbl___isoc99_* if strict ISO C99 or POSIX + conformance requested. + * wcsmbs/bits/wchar-ldbl.h (fwscanf, wscanf, swscanf, vfwscanf, + vwscanf, vswscanf): Redirect to __nldbl___isoc99_* if strict + ISO C99 or POSIX conformance requested. + * stdio-common/Versions (libc): Export __isoc99_scanf@@GLIBC_2.7, + __isoc99_vscanf@@GLIBC_2.7, __isoc99_fscanf@@GLIBC_2.7, + __isoc99_vfscanf@@GLIBC_2.7, __isoc99_sscanf@@GLIBC_2.7 + and __isoc99_vsscanf@@GLIBC_2.7. + * stdio-common/Makefile (routines): Add isoc99_scanf, isoc99_vscanf, + isoc99_fscanf, isoc99_vfscanf, isoc99_sscanf and isoc99_vsscanf. + (tests): Add scanf14. + (CFLAGS-vfprintf.c, CFLAGS-fprintf.c, CFLAGS-printf.c, + CFLAGS-vfwprintf.c, CFLAGS-vfscanf.c, CFLAGS-vfwscanf.c, + CFLAGS-fscanf.c, CFLAGS-scanf.c, CFLAGS-isoc99_vfscanf.c, + CFLAGS-isoc99_vscanf.c, CFLAGS-isoc99_fscanf.c, + CFLAGS-isoc99_scanf.c): Add $(exceptions). + (CFLAGS-scanf15.c): Add various -I paths to prevent the compiler + from using internal headers. + * wcsmbs/Versions (libc): Export __isoc99_wscanf@@GLIBC_2.7, + __isoc99_vwscanf@@GLIBC_2.7, __isoc99_fwscanf@@GLIBC_2.7, + __isoc99_vfwscanf@@GLIBC_2.7, __isoc99_swscanf@@GLIBC_2.7 + and __isoc99_vswscanf@@GLIBC_2.7. + * wcsmbs/Makefile (routines): Add isoc99_wscanf, isoc99_vwscanf, + isoc99_fwscanf, isoc99_vfwscanf, isoc99_swscanf and isoc99_vswscanf. + (CFLAGS-isoc99_wscanf.c, CFLAGS-isoc99_fwscanf.c, + CFLAGS-isoc99_vwscanf.c, CFLAGS-isoc99_vfwscanf.c): Add $(exceptions). + (CPPFLAGS): Add -D_IO_MTSAFE_IO if needed. + * stdio-common/isoc99_scanf.c: New file. + * stdio-common/isoc99_vsscanf.c: New file. + * stdio-common/isoc99_vscanf.c: New file. + * stdio-common/isoc99_vfscanf.c: New file. + * stdio-common/isoc99_fscanf.c: New file. + * stdio-common/isoc99_sscanf.c: New file. + * wcsmbs/isoc99_fwscanf.c: New file. + * wcsmbs/isoc99_vswscanf.c: New file. + * wcsmbs/isoc99_swscanf.c: New file. + * wcsmbs/isoc99_wscanf.c: New file. + * wcsmbs/isoc99_vwscanf.c: New file. + * wcsmbs/isoc99_vfwscanf.c: New file. + * libio/libio.h (_IO_FLAGS2_SCANF_STD): Define. + * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Also + clear _IO_FLAGS2_SCANF_STD bit from _flags2. + * stdio-common/vfscanf.c (_IO_vfscanf_internal): Don't + handle %as, %aS and %a[ if _IO_FLAGS2_SCANF_STD is set in _flags2. + * stdio-common/scanf14.c: New test. + * stdio-common/scanf15.c: New test. + * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add + isoc99_scanf, isoc99_fscanf, isoc99_sscanf, + isoc99_vscanf, isoc99_vfscanf, isoc99_vsscanf, + isoc99_wscanf, isoc99_fwscanf, isoc99_swscanf, + isoc99_vwscanf, isoc99_vfwscanf and isoc99_vswscanf. + * sysdeps/ieee754/ldbl-opt/Versions (libc): Export + __nldbl___isoc99_scanf@@GLIBC_2.7, + __nldbl___isoc99_fscanf@@GLIBC_2.7, + __nldbl___isoc99_sscanf@@GLIBC_2.7, + __nldbl___isoc99_vscanf@@GLIBC_2.7, + __nldbl___isoc99_vfscanf@@GLIBC_2.7, + __nldbl___isoc99_vsscanf@@GLIBC_2.7, + __nldbl___isoc99_wscanf@@GLIBC_2.7, + __nldbl___isoc99_fwscanf@@GLIBC_2.7, + __nldbl___isoc99_swscanf@@GLIBC_2.7, + __nldbl___isoc99_vwscanf@@GLIBC_2.7, + __nldbl___isoc99_vfwscanf@@GLIBC_2.7 + and __nldbl___isoc99_vswscanf@@GLIBC_2.7. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__isoc99_scanf, + __isoc99_fscanf, __isoc99_sscanf, __isoc99_vscanf, + __isoc99_vfscanf, __isoc99_vsscanf, __isoc99_wscanf, + __isoc99_fwscanf, __isoc99_swscanf, __isoc99_vwscanf, + __isoc99_vfwscanf, __isoc99_vswscanf): Add NLDBL_DECL. + * sysdeps/ieee754/ldbl-opt/nldbl-compat.c + (__nldbl___isoc99_scanf, __nldbl___isoc99_fscanf, + __nldbl___isoc99_sscanf, __nldbl___isoc99_vscanf, + __nldbl___isoc99_vfscanf, __nldbl___isoc99_vsscanf, + __nldbl___isoc99_wscanf, __nldbl___isoc99_fwscanf, + __nldbl___isoc99_swscanf, __nldbl___isoc99_vwscanf, + __nldbl___isoc99_vfwscanf, __nldbl___isoc99_vswscanf): New + functions. + * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfscanf.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_swscanf.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vwscanf.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_wscanf.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_scanf.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_sscanf.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vsscanf.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fwscanf.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfwscanf.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vswscanf.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vscanf.c: New file. + * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fscanf.c: New file. + + * stdio-common/Makefile (tests): Add scanf13. + (scanf13-ENV): New. + * stdio-common/vfscanf.c (_IO_vfscanf_internal): Handle + m modifier followed by l. + (STRING_ARG): Add width argument. + (_IO_vfscanf_internal) <case L_('c')>: Handle %mc. + <case L_('C')>: Handle %mlc and %mC. + <case L_('s'), case L_('S'), case L_('[')>: Adjust STRING_ARG + arguments. + * stdio-common/scanf13.c: New test. + + * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Clear + the _IO_FLAGS2_FORTIFY bit from _flags2 rather than _flags. + +2007-09-18 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Correct return value + type and __THROW marker of splice, vmsplice, and tee. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/syscalls.list: Mark splice, vmsplice, and tee + as cancellation points. + +2003-11-01 Daniel Jacobowitz <dan@debian.org> + + * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion): Don't + parse more than three parts of the version number. + +2007-09-15 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/vfscanf.c (_IO_vfwscanf): Add support for 'm' + modifier. Patch by Jakub Jelinek. + +2007-08-26 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/i386/Makefile (sysdep_routines): Add + call_fallocate in misc subdir. + * sysdeps/unix/sysv/linux/i386/call_fallocate.S: New file. + * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate64): Remove. + * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: Use __call_fallocate + instead of __fallocate64. + * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: Likewise. + +2007-09-15 Jakub Jelinek <jakub@redhat.com> + + * rt/Versions (librt): Export __mq_open_2@@GLIBC_2.7. + * rt/Makefile (headers): Add bits/mqueue2.h. + * rt/mqueue.h: Include bits/mqueue2.h if -D_FORTIFY_SOURCE=2, + optimizing with GCC and __va_arg_pack_len is defined. + * rt/bits/mqueue2.h: New file. + * rt/mq_open.c (__mq_open): Renamed from mq_open. + (mq_open): New strong_alias. + (__mq_open_2): New function. + * sysdeps/unix/sysv/linux/mq_open.c (__mq_open): Renamed from mq_open. + (mq_open): New strong_alias. + (__mq_open_2): New function. + * debug/Versions (libc): Export __fortify_fail@@GLIBC_PRIVATE. + * Versions.def (librt): Add GLIBC_2.7 version. + * debug/fortify_fail.c (__fortify_fail): Add libc_hidden_def. + * include/stdio.h (__fortify_fail): Add libc_hidden_proto. + + * misc/sys/cdefs.h (__errordecl, __va_arg_pack_len): Define. + * io/fcntl.h: Include bits/fcntl2.h when __va_arg_pack_len + is defined rather than when not C++. + * io/bits/fcntl2.h (__open_alias, __open64_alias, __openat_alias, + __openat64_alias): New redirects. + (__open_too_many_args, __open_missing_mode, __open64_too_many_args, + __open64_missing_mode, __openat_too_many_args, __openat_missing_mode, + __openat64_too_many_args, __openat64_missing_mode): New __errordecls. + (open, open64, openat, openat64): Rewrite as __extern_always_inline + functions instead of function-like macros. + +2007-09-14 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i586/memcpy.S (__memcpy_chk): New definition. + * sysdeps/i386/i586/mempcpy.S (__memcpy_chk): New definition. + * sysdeps/i386/i586/memset.S (__memset_chk): New definition. + +2007-09-15 Mike Frysinger <vapier@gentoo.org> + + * inet/inet_net.c: Reset digit to 0 for inputs starting with "0x". + * inet/tst-network.c (tests): Add edge case tests for "0", "0x", "0x0". + +2007-09-14 Mike Frysinger <vapier@gentoo.org> + + * inet/tst-network.c: Increment ERRORS for failing tests. + +2007-09-07 Jakub Jelinek <jakub@redhat.com> + + * misc/sys/cdefs.h (__va_arg_pack): Define for GCC 4.3+. + * misc/bits/syslog.h (syslog): When __va_arg_pack is defined, + implement as __extern_always_inline function. + (vsyslog): Define as __extern_always_inline function unconditionally. + * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf): + When __va_arg_pack is defined, implement as __extern_always_inline + functions. + (vsprintf, vsnprintf, vprintf, vfprintf): Define as + __extern_always_inline functions unconditionally. + * libio/bits/stdio.h (vprintf): Ifdef out the inline when + bits/stdio2.h will be included. + * wcsmbs/bits/wchar2.h (__swprintf_alias): New redirect. + (swprintf, wprintf, fwprintf): When __va_arg_pack is defined, + implement as __extern_always_inline functions. + (vswprintf, vwprintf, vfwprintf): Define as + __extern_always_inline functions unconditionally. + * debug/tst-chk1.c (do_test): Enable remaining tests for C++. + +2007-09-03 Jakub Jelinek <jakub@redhat.com> + + * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Only + define in C++ for GCC 4.3+, in C++ always use __gnu_inline__ + attribute. + * include/features.h (__USE_EXTERN_INLINES): Define only when + __extern_inline is defined. + * stdlib/stdlib.h: Include bits/stdlib.h when __extern_always_inline + is defined instead of when not __cplusplus. + * misc/sys/syslog.h: Include bits/syslog.h when __extern_always_inline + is defined instead of when not __cplusplus. + * socket/sys/socket.h: Include bits/socket2.h when + __extern_always_inline is defined instead of when not __cplusplus. + * libio/stdio.h: Include bits/stdio2.h when __extern_always_inline + is defined instead of when not __cplusplus. + * posix/unistd.h: Include bits/unistd.h when __extern_always_inline + is defined instead of when not __cplusplus. + * string/string.h: Include bits/string3.h when __extern_always_inline + is defined instead of when not __cplusplus. + * wcsmbs/wchar.h: Include bits/wchar2.h when __extern_always_inline + is defined instead of when not __cplusplus. + (btowc, wctob): Don't guard the inlines with ifndef __cplusplus. + * io/fcntl.h: Don't include bits/fcntl2.h if __extern_always_inline + is not defined. + * misc/bits/syslog-ldbl.h: Guard *_chk stuff with + defined __extern_always_inline instead of !defined __cplusplus. + * libio/bits/stdio-ldbl.h: Likewise. + * wcsmbs/bits/wchar-ldbl.h: Likewise. + * misc/bits/syslog.h (syslog): Don't define for C++. + (vsyslog): Use __extern_always_inline function for C++ instead of + a macro. + * libio/bits/stdio.h (__STDIO_INLINE): Define to __extern_inline + whenever that macro is defined. + (vprintf): Don't provide the inline for C++. + (fread_unlocked, fwrite_unlocked): Don't define the macros for C++. + * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf): Don't + define the macros for C++. + (vsprintf, vsnprintf, vprintf, vfprintf): Define as + __extern_always_inline functions for C++. + * io/sys/stat.h (stat, lstat, fstat, fstatat, mknod, mknodat, + stat64, lstat64, fstat64, fstatat64): Don't define if not + __USE_EXTERN_INLINES. + * wcsmbs/bits/wchar2.h: Fix #error message. + (swprintf, wprintf, fwprintf): Don't define the macros for C++. + (vswprintf, vwprintf, vfwprintf): Define using + __extern_always_inline functions for C++. + * string/bits/string3.h: Don't #undef macros if __cplusplus. + (memcpy, memmove, mempcpy, memset, bcopy, bzero, strcpy, stpcpy, + strncpy, strcat, strncat): Define as __extern_always_inline + functions instead of macros for C++. + * math/bits/cmathcalls.h: Guard __extern_inline routines with + defined __extern_inline. + * sysdeps/alpha/fpu/bits/mathinline.h (__MATH_INLINE): Define + to __extern_inline whenever that macro is defined. + * sysdeps/ia64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise. + * sysdeps/i386/fpu/bits/mathinline.h (__MATH_INLINE): Likewise. + * sysdeps/i386/i486/bits/string.h (__STRING_INLINE): Likewise. + * sysdeps/s390/bits/string.h (__STRING_INLINE): Likewise. + * sysdeps/s390/fpu/bits/mathinline.h (__MATH_INLINE): Likewise. + * sysdeps/powerpc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise. + * sysdeps/x86_64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise. + * sysdeps/sparc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise. + * sysdeps/unix/sysv/linux/sys/sysmacros.h (gnu_dev_major, + gnu_dev_minor, gnu_dev_makedev): Remove __extern_inline from + prototypes. Only provide __extern_inline routines if + __USE_EXTERN_INLINES. + * debug/Makefile: Add rules to build and run tst-{,lfs}chk{4,5,6} + tests. + * debug/tst-chk1.c (do_prepare, do_test): Allow compilation as C++. + For now avoid some *printf tests in C++. Skip all testing + if __USE_FORTIFY_LEVEL is defined, but __extern_always_inline macro + is not. + * debug/tst-chk4.cc: New file. + * debug/tst-chk5.cc: New file. + * debug/tst-chk6.cc: New file. + * debug/tst-lfschk4.cc: New file. + * debug/tst-lfschk5.cc: New file. + * debug/tst-lfschk6.cc: New file. + * include/wchar.h (__vfwprintf_chk, __vswprintf_chk): Avoid + prototypes in C++. + * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk, + __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk, + __vfprintf_chk, __fgets_unlocked_chk, __fgets_chk): Likewise. + +2007-09-13 Ulrich Drepper <drepper@redhat.com> + + * po/cs.po: Update from translation team. + +2007-09-11 Roland McGrath <roland@redhat.com> + + * posix/Makefile ($(objpfx)getconf.speclist): Make it empty if cross + compiling. + +2007-09-07 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * sysdeps/mach/hurd/bits/ioctls.h (TAB3): New macro. + +2007-09-05 Roland McGrath <roland@redhat.com> + + * manual/signal.texi (Signaling Another Process): Typo fix. + From Karl Berry <karl@freefriends.org>. + +2007-08-29 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/check_pf.c (IFA_F_OPTIMISTIC): Define to + zero if not defined. + (make_request): Recognize optimistic addresses and treat them like + deprecated addresses. + Reported by Neil Horman <nhorman@redhat.com>. + +2007-08-28 Ulrich Drepper <drepper@redhat.com> + + * nscd/connections.c (send_ro_fd): Also transfer file size. + * nscd/nscd_helper.c (get_mapping): If nscd also transfers the + file size don't call fstat. + + * nscd/nscd_helper.c (get_mapping): Avoid the pread call, just go + ahead and map the file. This should always be correct and we can + catch problems later. + +2007-08-28 Jakub Jelinek <jakub@redhat.com> + + * libio/bits/stdio2.h (__fread_chk, __fread_unlocked_chk): New + prototypes. + (__fread_alias, __fread_unlocked_alias): New aliases. + (fread): New extern inline. + (fread_unlocked): Likewise. Undef macro before definition of + the inline function. + * debug/Makefile (routines): Add fread_chk and fread_u_chk. + (CFLAGS-fread_chk.c, CFLAGS-fread_u_chk.c): Add. + * debug/Versions (libc): Export __fread_chk@@GLIBC_2.7 + and __fread_unlocked_chk@@GLIBC_2.7. + * debug/fread_chk.c: New file. + * debug/fread_u_chk.c: New file. + * debug/tst-chk1.c (do_test): Add fread and fread_unlocked tests. + +2007-08-27 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/syscalls.list + (personality): Change caller to EXTRA. + +2007-08-25 Ulrich Drepper <drepper@redhat.com> + + * iconvdata/iso-2022-kr.c (BODY): Fake initialization of array buf + to keep gcc quiet. + * iconvdata/iso-2022-cn.c (BODY): Likewise. + + * locale/programs/ld-collate.c (collate_output): Avoid warning if + NDEBUG is defined. + + * Makerules: Use -p option with mkdir. + + * sunrpc/key_prot.c (xdr_unixcred): Work around gcc alias warning. + * nis/nis_xdr.c (_xdr_nis_server): Likewise. + (_xdr_directory_obj): Likewise. + (xdr_entry_obj): Likewise. + (xdr_group_obj): Likewise. + (xdr_link_obj): Likewise. + (xdr_table_obj): Likewise. + (_xdr_nis_result): Likewise. + (_xdr_ns_request): Likewise. + (_xdr_ib_request): Likewise. + (_xdr_nis_taglist): Likewise. + (xdr_cback_data): Likewise. + * nis/yp_xdr.c (xdr_ypmaplist): Likewise. + (xdr_ypresp_maplist): Likewise. + + * stdio-common/Makefile: Avoid format string warning for tst-sprint. + + * posix/regex_internal.h: Prevent some declarations and definitions + to be seen when used in tests. + + * posix/tst-rfc3484.c (__idna_to_unicode_lzlz): Initialize *OUTPUT. + * posix/tst-rfc3484-2.c (__idna_to_unicode_lzlz): Likewise. + + * debug/Makefile: Disable format checking when compiling tst-chk?.c. + + * config.make.in (datarootdir): Add to shut up configure. + + * sysdeps/x86_64/cacheinfo.c (handle_amd): Fix computation of + associativity for fully-associative caches. + + * sysdeps/x86_64/cacheinfo.c (handle_amd): Handle L3 cache + requests. Fill on more associativity values for L2. + Patch mostly by Evandro Menezes. + +2007-08-24 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/x86_64/init-first.c + (_libc_vdso_platform_setup): Avoid using exported variable by using + alias. + + * resolv/arpa/nameser.h (NS_OPT_DNSSEC_OK): Define. + + * sysdeps/unix/sysv/linux/i386/syscalls.list: No reason to mark + fallocate64 as EXTRA. It is not referenced if the symbol isn't + defined. + +2007-08-23 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Correctly + align stack for call if pltexit is to be used. + + [BZ #3924] + * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Correctly + align for function call in case pltexit has to be called later. + + * sysdeps/i386/dl-trampoline.S (_dl_runtime_resolve): Avoid + implicit atomic operation when storing function pointer. + (_dl_runtime_profile): Likewise. + +2007-08-17 Jakub Jelinek <jakub@redhat.com> + + * nis/nis_table.c (nis_list): Don't fail if __follow_path returned + NIS_NOTFOUND. + +2007-08-21 Ulrich Drepper <drepper@redhat.com> + + [BZ #4566] + * string/strtok.c: Fix typo in comment. + + [BZ #4582] + * debug/segfault.c: Fix typos in comments. + + [BZ #4588] + * stdio-common/tempnam.c: Fix comment, it is not checked that + TMPDIR points to a writable directory. + + [BZ #4726] + * resolv/res_send.c (__libc_res_nsend): Initialize all of the + memory allocated for the name server address. + + [BZ #4946] + * nscd/connections.c (handle_request): Using sendfile always + requires that mmap is used for the database. + Patch by Petr Baudis <pasky@suse.cz>. + + [BZ #4905] + * nscd/hstcache.c (cache_addhst): When reloading an entry which + suddenly has two or more addresses, ignore it and remove the old + entry. + + [BZ #4814] + * resolv/res_hconf.c: Prepare for compiling outside libc. + * nscd/res_hconf.c: New file. + * nscd/Makefile (nscd-modules): Add res_hconf. Add rules to build + the new file. + * nscd/gethstbynm2_r.c (NEED__RES_HCONF): Define. + * nscd/gethstbyad_r.c (NEED__RES_HCONF): Likewise. + + * nscd/hstcache.c (cache_addhst): Minimal optimization. + + [BZ #4925] + * debug/pcprofiledump.c: Turn on internationalization by calling + setlocale. Patch mostly by Benno Schulenberg. + + [BZ #4936] + * iconv/gconv.c (__gconv): If flush was successful, clear rest of + the state. + * iconvdata/Makefile: Add rules to build and run bug-iconv5. + * iconvdata/bug-iconv5.c: New file. + +2007-08-04 Carlos O'Donell <carlos@systemhalted.org> + + [BZ #4896] + * elf/elf.h: Define R_PARISC_PLABEL21L, R_PARISC_PLABEL14R, + R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT, R_PARISC_TLS_GD21L, + R_PARISC_TLS_GD14R, R_PARISC_TLS_GDCALL, R_PARISC_TLS_LDM21L, + R_PARISC_TLS_LDM14R, R_PARISC_TLS_LDMCALL, R_PARISC_TLS_LDO21L, + R_PARISC_TLS_LDO14R, R_PARISC_TLS_DTPMOD32, R_PARISC_TLS_DTPMOD64, + R_PARISC_TLS_DTPOFF32, R_PARISC_TLS_DTPOFF64, R_PARISC_TLS_LE21L, + R_PARISC_TLS_LE14R, R_PARISC_TLS_IE21L, R_PARISC_TLS_IE14R, + R_PARISC_TLS_TPREL32, R_PARISC_TLS_TPREL64. + +2007-08-21 Ulrich Drepper <drepper@redhat.com> + + [BZ #4937] + * elf/do-lookup.h (do_lookup_x): Minimal improvement in hash + lookup loop. Suggested by John Reiser. + +2007-08-21 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/alpha/sysdep.h: Include tls.h. + +2007-08-20 Ulrich Drepper <drepper@redhat.com> + + * csu/libc-start.c: Don't handle VDSO_SETUP here. + * sysdeps/unix/sysv/linux/init-first.c: Handle it here instead. + * sysdeps/unix/sysv/linux/x86_64/libc-start.c: Renamed to... + * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...this. New file. + * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Move VDSO_SETUP code + to... + * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...here. New file. + +2007-08-18 Ulrich Drepper <drepper@redhat.com> + + * po/nl.po: Update from translation team. + +2007-08-16 Andreas Jaeger <aj@suse.de> + + * locale/localeinfo.h: Make _nl_category_name_idxs extern. + Reported by Peter Festner <peter.festner@ewetel.net>. + +2007-08-17 Jakub Jelinek <jakub@redhat.com> + + * login/tst-grantpt.c (test_einval): Add 3rd argument to open. + +2007-08-16 Jakub Jelinek <jakub@redhat.com> + + * elf/Makefile ($(objpfx)ld.so): Use readelf -s and awk instead of nm -u + to check for undefined symbols. + + * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): + If the syscall fails, set errno to the actual returned error number + rather than EINVAL. + * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If + arguments are incorrect, set errno to EINVAL, if the syscall + fails, set errno to the actual returned error number. + + * stdlib/bits/stdlib-ldbl.h (__strtold_internal): Remove. + * wcsmbs/bits/wchar-ldbl.h (__wcstold_internal): Remove. + + * sysdeps/sparc/sparc32/sparcv9b/memcpy.S: Moved to... + * sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: ... here. New + file. + (ASI_PNF, ASI_BLK_P): Don't define. + * sysdeps/sparc/sparc32/sparcv9v/memcpy.S: Moved to... + * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: ... here. New + file. + * sysdeps/sparc/sparc32/sparcv9v/memset.S: Moved to... + * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: ... here. New + file. + +2007-08-15 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/sparc/fpu/fraiseexcpt.c (__feraiseexcept): Fix raising + FE_UNDERFLOW on Niagara CPUs. + + * sysdeps/sparc/fpu/feholdexcpt.c (feholdexcept): Clear all + exceptions. + +2007-08-14 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): No + need to check GLRO(dl_hwcap) & HWCAP_SPARC_FLUSH on sparcv9. + (sparc_fixup_plt): Add do_flush argument instead of figuring whether + flush should be used or not inside of the function. + (elf_machine_fixup_plt, elf_machine_rela): Adjust caller. + + * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone, + __thread_start): Use HIDDEN_JUMPTARGET. + * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone, + __thread_start): Likewise. + * sysdeps/unix/sysv/linux/sparc/sysdep.h (JUMPTARGET): Define. + + * sysdeps/ieee754/ldbl-64-128/strtold_l.c (__STRTOF): Declare. + Add libc_hidden_proto. + (STRTOF): Add libc_hidden_proto. + (___new_strtold_l, ___new_wcstold_l): New weak aliases. + (strtold_l, wcstold_l): Use them as second argument for + long_double_symbol. + +2007-08-14 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-misc.c: Undo last change. The kernel won't allow it. + +2007-08-13 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * stdlib/strtold_l.c: Include wchar.h if needed. Add libc_hidden_def. + +2007-08-14 Ulrich Drepper <drepper@redhat.com> + + * po/bg.po: New file. From the translation team. + +2007-08-13 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PSELECT, + __ASSUME_PPOLL, __ASSUME_ATFCTS, __ASSUME_SET_ROBUST_LIST, + __ASSUME_UTIMENSAT, __ASSUME_FALLOCATE): Update per-arch conditions + when each feature was introduced. + + * sysdeps/unix/sysv/linux/dl-vdso.c: Don't include dl-hash.h. + * sysdeps/unix/sysv/linux/dl-vdso.h: Don't include dl-hash.h if NDEBUG. + (CHECK_HASH): New macro. + (PREPARE_VERSION): Use it. + + * sysdeps/unix/sysv/linux/pselect.c (__generic_pselect): Only provide + prototype if not __ASSUME_PSELECT. + * sysdeps/unix/sysv/linux/ppoll.c (__generic_ppoll): Only provide + prototype if not __ASSUME_PPOLL. + + * sysdeps/unix/sysv/linux/dl-osinfo.h (ROUND): #undef after use. + + * sysdeps/unix/clock_settime.c (freq, __pthread_clock_settime, + hp_timing_settime): Don't define or declare if HANDLED_CPUTIME + is defined. + +2007-08-13 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/x86_64/libc-start.c + (_libc_vdso_platform_setup): If vDSO is not available point + __vdso_gettimeofday to the vsyscall. + * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S [SHARED]: Use + __vdso_gettimeofday instead of vsyscall. + +2007-08-13 Jakub Jelinek <jakub@redhat.com> + + * nscd/servicescache.c: Include kernel-features.h. + * nscd/gai.c: Likewise. + * sysdeps/unix/sysv/linux/statfs64.c: Likewise. + * sysdeps/unix/sysv/linux/fstatfs64.c: Likewise. + * sysdeps/unix/sysv/linux/fxstatat.c: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S: Likewise. + * sysdeps/unix/sysv/linux/xstatconv.c: Likewise. + * sysdeps/unix/sysv/linux/if_index.c: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: Likewise. + * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise. + +2007-08-12 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-dst.h: No need for _dl_dst_count, _dl_dst_substitute, + and _dl_get_origin defines anymore. + + * sysdeps/unix/sysv/linux/clock_gettime.c (maybe_syscall_gettime_cpu): + Build fix for systems which might lack POSIX timer support. + + * sysdeps/unix/sysv/linux/x86_64/libc-start.c + (_libc_vdso_platform_setup): Mangle function pointers before storing + them. + * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INLINE_VSYSCALL): + Demangle vdso pointer before use. + (INTERNAL_VSYSCALL): Likewise. + + * elf/cache.c (primes): Mark as const. + Noted by Roland McGrath. + +2007-08-01 Andreas Jaeger <aj@suse.de> + Jakub Jelinek <jakub@redhat.com> + + * elf/ldconfig.c (opt_ignore_aux_cache): Add new option. + (options): Add option. + (parse_opt): Handle option. + (manual_link): Adjust process_file caller. Call implicit_soname. + (search_dir): Formatting. Use and populate auxiliary cache. + (main): Load and save auxiliary cache. + * elf/readlib.c (process_file): Add stat_buf argument. Pass struct + stat64 from fstat64 to caller. + (implicit_soname): New function. + * elf/readelflib.c (process_elf_file): If DT_SONAME is not present, + leave *soname as NULL. + * elf/cache.c: Include libgen.h. + (print_entry, print_cache, compare, save_cache, add_to_cache): + Formatting and cleanups. + (aux_cache_entry_id, aux_cache_entry, aux_cache_file_entry, + aux_cache_file): New structures. + (AUX_CACHEMAGIC): Define. + (primes): New array. + (aux_hash_size, aux_hash): New variables. + (aux_cache_entry_id_hash, nextprime, init_aux_cache, + search_aux_cache, insert_to_aux_cache, add_to_aux_cache, + load_aux_cache, save_aux_cache): New functions. + * sysdeps/generic/ldconfig.h (_PATH_LDCONFIG_AUX_CACHE): Define. + (init_aux_cache, search_aux_cache, add_to_aux_cache, + load_aux_cache, save_aux_cache, implicit_soname): New prototypes. + (process_file): Adjust prototype. + +2007-08-12 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Include stddef.h + with __need_size_t. + +2007-08-12 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/dl-vdso.c (_dl_vdso_vsym): Expect + r_found_version structure as second parameter. + * sysdeps/unix/sysv/linux/dl-vdso.h (PREPARE_VERSION): Define. + (_dl_vdso_vsym): Change type of second parameter accordingly. + * sysdeps/unix/sysv/linux/x86-64/libc-start.c + (_libc_vdso_platform_setup): Adjust. + * sysdeps/unix/sysv/linux/powerpc/libc-start.c + (_libc_vdso_platform_setup): Likewise. + + * sysdeps/unix/sysv/linux/powerpc/dl-vdso.c: Move to... + * sysdeps/unix/sysv/linux/dl-vdso.c: ...here. + * sysdeps/unix/sysv/linux/powerpc/dl-vdso.h: Move to... + * sysdeps/unix/sysv/linux/dl-vdso.h: ...here. + * csu/libc-start.c: Pretty printing. + Use VDSO_SETUP if defined. + * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Define VDSO_SETUP + and let generic code call into _libc_vdso_platform_setup. + * sysdeps/unix/sysv/linux/x86_64/libc-start.c: New file. + * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: New file. + * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Pretty printing. + Define INLINE_VSYSCALL and INTERNAL_VSYSCALL. + * sysdeps/unix/sysv/linux/x86_64/Versions: Export __vdso_clock_gettime + for GLIBC_PRIVATE. + * sysdeps/unix/sysv/linux/x86_64/Makefile [subdir=elf] + (sysdep_rountines): Add dl-vdso. + + * sysdeps/unix/sysv/linux/powerpc/Makefile: Use sysdep_routines instead + of routines. + + * sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h: Add + attribute_hidden to __vdso_gettimeofday prototype. + +2007-08-12 Roland McGrath <roland@redhat.com> + + * manual/stdio.texi (Variable Arguments Output): Fix xref to gcc manual. + From: Karl Berry <karl@freefriends.org>. + +2007-08-11 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-misc.c (_dl_sysdep_read_whole_file): We really don't need + an atime update for the files we read. + +2007-08-10 Ulrich Drepper <drepper@redhat.com> + + * shadow/lckpwdf.c (__lckpwdf): Use O_CLOEXEC if possible. + + * nscd/connections.c: Use O_CLOEXEC if possible. Use mkostemp + instead of mkstemp. + + * misc/Makefile (routines): Add mkostemp and mkostemp64. + * misc/Versions: Export mkostemp and mkostemp64 for GLIBC_2.7. + * misc/mkostemp.c: New file. + * misc/mkostemp64.c: New file. + * stdlib/stdlib.h: Declare the new functions. + * sysdeps/posix/tempname.c: Add new parameter which is added to + the flags for open. Remove __GT_BIGFILE handling. + * stdio-common/tempname.c: Likewise. + * include/stdio.h: Adjust __gen_tempname prototype. + Renumber __GT_* constants. + * libio/oldtmpfile.c: Adjust for __gen_tempname interface change. + * misc/mkdtemp.c: Likewise. + * misc/mkstemp.c: Likewise. + * misc/mkstemp64.c: Likewise. + * misc/mktemp.c: Likewise. + * stdio-common/tempnam.c: Likewise. + * stdio-common/tmpfile.c: Likewise. + * stdio-common/tmpfile64.c: Likewise. + * stdio-common/tmpnam.c: Likewise. + * stdio-common/tmpnam_r.c: Likewise. + +2007-08-10 Roland McGrath <roland@frob.com> + + * sysdeps/mach/hurd/bits/ioctls.h (NLDLY, TABDLY, BSDLY, VTDLY): + New macros. + (NLDELAY, CRDELAY, TBDELAY, BSDELAY, VTDELAY): Define to those. + Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>. + +2007-08-10 Ulrich Drepper <drepper@redhat.com> + + * nss/nss_files/files-XXX.c (internal_setent): Use O_CLOEXEC if + possible. + * nss/nss_files/files-alias.c (internal_setent): Likewise. + * nss/Makefile (libnss_files-routines): Add files-have_o_cloexec. + * nss/nss_files/files-have_o_cloexec.c: New file. + + * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Use O_CLOEXEC if + available. + +2007-08-10 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/ieee754/ldbl-128ibm/strtold_l.c (___new_strtold_l, + ___new_wcstold_l): New weak aliases. + (strtold_l, wcstold_l): Use them as second argument for + long_double_symbol. + +2007-08-09 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: Use correct + register in test for error. + + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_CLOEXEC): Define. + * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_CLOEXEC): Likewise. + + * po/sv.po: Update from translation team. + +2007-08-06 Roland McGrath <roland@redhat.com> + + * include/stdlib.h: Add libc_hidden_proto for strto*, __strto*_l. + Remove __strto*_l inlines. + * include/wchar.h: Add libc_hidden_proto for wcsto*, __wcsto*_l. + * stdlib/strtod.c: Add libc_hidden_def. + * stdlib/strtod_l.c: Likewise. + * stdlib/strtold.c [__LONG_DOUBLE_MATH_OPTIONAL]: Add libc_hidden_proto + for __new_strtold and __new_wcstold. + * sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Add libc_hidden_proto for + __STRTOF, STRTOF. + * stdlib/strtol.c: Add libc_hidden_def. + * stdlib/strtol_l.c: Likewise. + * sysdeps/wordsize-64/strtol.c: Add libc_hidden_ver for strtoll and + strtoq. + + * scripts/data/localplt-powerpc-linux-gnu.data: New file. + + * scripts/data/localplt-x86_64-linux-gnu.data: File renamed to ... + * scripts/data/localplt-generic.data: ... here. + * elf/Makefile (check-data): Get generic file if no other. + ($(objpfx)check-localplt.out): Make target unconditional. + + * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion): + Use ElfW(Nhdr). + +2007-08-05 Ulrich Drepper <drepper@redhat.com> + + * po/zh_CN.po: Updated translation from translation team. + +2007-08-05 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket): + Don't use CGOTSETUP and CGOTRESTORE macros. + +2007-08-04 Roland McGrath <roland@redhat.com> + + * posix/Makefile ($(objpfx)getconf.speclist): Fix typo. + +2007-08-04 Jakub Jelinek <jakub@redhat.com> + + * io/bits/fcntl2.h (open, open64, openat, openat64): Add + __extension__ around the whole statement expression. + +2007-08-04 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/opendir.c (__alloc_dir): Correct order of DIR + elements during initialization. + + * po/pl.po: Updated translation from translation team. + * po/tr.po: Likewise. + * po/nl.po: Likewise. + +2007-08-03 Ulrich Drepper <drepper@redhat.com> + + * rt/aio.h: Add __nonnull attributes. + +2007-08-03 Jakub Jelinek <jakub@redhat.com> + + * stdlib/strtod_l.c (____STRTOF_INTERNAL): Properly handle -0. + * stdlib/Makefile (tests): Add tst-strtod5. + (tst-strtod5-ENV): New. + * stdlib/tst-strtod5.c: New file. + + * intl/dcigettext.c (_nl_find_msg): Free encoding if __gconv_open + failed. + * intl/finddomain.c (_nl_find_domain): Free normalized_codeset + on failure. + + * elf/dl-load.c (decompose_rpath): Free copy if result couldn't be + allocated. + +2007-08-03 Jakub Jelinek <jakub@redhat.com> + + * rt/mqueue.h (mq_timedreceive, mq_timedsend): Fix nonnull argument + numbers. + +2007-08-02 Ulrich Drepper <drepper@redhat.com> + + * io/Makefile (aux): Add have_o_cloexec. + * include/fcntl.h: Declare __have_o_cloexec. + * io/have_o_cloexec.c: New file. + * sysdeps/unix/opendir.c (__opendir): Use O_CLOEXEC is available. + (__alloc_dir): If O_CLOEXEC has been used, don't duplicate the + fcntl call if not necessary. + * login/utmp_file.c (setutent_file): Use __have_o_cloexec instead + of local variable. + + * sysdeps/unix/opendir.c (__alloc_dir): Don't initialize ->data. + Avoid memset, add explicit initialization. + * sysdeps/unix/dirstream.h (struct __dirstream): Move data elemtn + to the end and change into zero-sized array. + Move lock member to fill a hole on 64-bit platforms. + + * stdlib/stdlib.h: Remove __strto*_internal prototypes and strto* + inline functions. + * include/stdlib.h: Add __strto*_internal prototypes here. + * wcsmbs/wchar.h: Remove __wcsto*_internal prototypes and wcsto* + inline functions. + * include/wchar.h: Add __wcsto*_internal prototypes. + * sysdeps/generic/inttypes.h: No need to protect the declaration + of the __strto*_internal and __wcsto*_internal members here. + + * rt/mqueue.h: Change const to __const and add nonnull attributes. + +2007-08-02 Roland McGrath <roland@redhat.com> + + * posix/Makefile ($(inst_libexecdir)/getconf): Make hard links to + $(inst_bindir)/getconf if possible. + + * posix/Makefile ($(objpfx)getconf.speclist): New target. + (generated): Add it. + ($(inst_libexecdir)/getconf): Use it. + +2007-08-01 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Using + /proc is faster and sufficient. /sys is still needed for + __get_nprocs_conf. + +2007-08-01 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate): Add fallocate + syscall as __fallocate64. + * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: New file. + * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: New file. + +2007-07-30 Jakub Jelinek <jakub@redhat.com> + + * stdlib/tst-strtod2.c (do_test): Use %tu in fmt string for ptrdiff_t + value. + + * stdio-common/tst-fmemopen2.c (do_test): Avoid fmt string warning + if off_t is different rank from size_t. + + * sysdeps/generic/unwind-dw2.c (extract_cie_info, execute_cfa_program, + uw_frame_state_for): Avoid type punning warnings. + * sysdeps/generic/unwind-dw2-fde-glibc.c + (_Unwind_IteratePhdrCallback): Likewise. + * sysdeps/generic/unwind-dw2-fde.c (_Unwind_Find_FDE): Likewise. + (binary_search_single_encoding_fdes, binary_search_mixed_encoding_fdes, + get_cie_encoding, linear_search_fdes): Don't mix char and unsigned char + pointers. + +2007-07-31 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs_conf): Count + total processors using sysfs. + (__get_nprocs): Use sysfs to determine which processors are online. + +2007-07-31 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/posix_fallocate.c (posix_fallocate): Fix + syscall arguments count. + + * stdio-common/tfformat.c (sprint_doubles): Add 12 new tests. + +2007-07-30 Roland McGrath <roland@redhat.com> + + * manual/libc.texinfo: Update copyrights, formatting magic, and + @dircategory. From Karl Berry <karl@freefriends.org>. + +2007-07-29 Ulrich Drepper <drepper@redhat.com> + + [BZ #4860] + * io/Makefile (headers): Add bits/fcntl2.h. + + * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO_S): Optimize + using gcc builtin. + (__CPU_EQUAL_S): Likewise. + + * posix/Makefile (routines): Add sched_cpualloc and sched_cpufree. + (tests): Add tst-cpuset. + * posix/sched_cpualloc.c: New file. + * posix/sched_cpufree.c: New file. + * posix/tst-cpuset.c: New file. + * posix/Versions: Export __sched_cpualloc and __sched_cpufree for + GLIBC_2.7. + * sysdeps/unix/sysv/linux/bits/sched.h: Define __CPU_*_S macros. + * posix/sched.h: Define old CPU_* macros in temers of __CPU_*_S + macros. Define CPU_*_S macros. + +2007-07-28 Ulrich Drepper <drepper@redhat.com> + + * posix/getconf.c (vars): Add missing _SC_LEVEL4_CACHE_LINESIZE + entry. + + [BZ #4858] + * stdio-common/printf_fp.c (___printf_fp): Fix special case of + #.0g and value rounded to 1.0. + * stdio-common/tfformat.c (sprint_doubles): Add two new tests. + +2007-07-26 Jakub Jelinek <jakub@redhat.com> + + * locale/programs/ld-monetary.c (monetary_finish): Avoid range check + for int_frac_digits and frac_digits. + + * login/logout.c (logout): Avoid aliasing violation. + * login/logwtmp.c (logwtmp): Likewise. + + * libio/genops.c (_IO_un_link): Avoid aliasing violation. + + * nscd/selinux.c (preserve_capabilities): Initialize new_caps + to avoid warning. + * iconv/gconv_open.c (__gconv_open): Initialize ptr to avoid + warning. + * nis/nis_subr.c (nis_getnames): Initialize saveptr to avoid + warning. + * resolv/inet_ntop.c (inet_ntop6): Initialize best.len and cur.len + to avoid warnings. + + * nss/nsswitch.c (__nss_lookup_function): Don't cast &ni->known to + void **. + * nss/nsswitch.h (service_user): Use void * type for KNOWN field. + + * nss/nss_files/files-hosts.c (LINE_PARSER): Cast host_addr to + char * to avoid warning. + * nis/nss_nis/nis-hosts.c (LINE_PARSER): Likewise. + + * timezone/Makefile (CFLAGS-zdump.c): Add -fwrapv. + + * locale/programs/ld-ctype.c (ctype_finish, set_class_defaults, + allocate_arrays): Cast second argument to charmap_find_symbol + to char * to avoid warnings. + + * locale/programs/repertoire.c (repertoire_new_char): Change + from_nr, to_nr and cnt to unsigned long, adjust printf format + string. + + * locale/programs/ld-collate.c (insert_value, handle_ellipsis): + Cast second argument to new_element to char * to avoid warnings. + + * locale/weightwc.h (findidx): Cast &extra[-i] to const int32_t *. + + * intl/gettextP.h (struct loaded_domain): Change plural to const + struct expression *. + * intl/plural-eval.c (plural_eval): Change first argument to + const struct expression *. + * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Change first + argument to const struct expression **. + * intl/plural-exp.h (EXTRACT_PLURAL_EXPRESSION, plural_eval): Adjust + prototypes. + * intl/loadmsgcat (_nl_unload_domain): Cast away const + in call to __gettext_free_exp. + + * posix/fnmatch.c (fnmatch): Rearrange code to avoid maybe + unitialized wstring/wpattern var warnings. + + * posix/runtests.c (struct a_test): Make data field const char *. + + * stdio-common/tst-sprintf2.c (main): Don't declere u, v and buf + vars if not LDBL_MANT_DIG >= 106. + + * stdio-common/Makefile (CFLAGS-vfwprintf.c): Add -Wno-unitialized. + + * stdio-common/vfprintf.c (vfprintf): Cast first arugment to + __find_specmb to avoid warning. + + * rt/tst-mqueue1.c (do_one_test): Add casts to avoid warnings. + + * debug/test-strcpy_chk.c (do_tests, do_random_tests): Add casts + to avoid warnings. + + * sysdeps/ieee754/ldbl-96/s_roundl.c (huge): Add L suffix to + initializer. + + * sysdeps/unix/clock_gettime.c (clock_gettime): Only define + tv var when it will be actually used. + + * sunrpc/rpc_cmsg.c (xdr_callmsg): Cast IXDR_PUT_* to void + to avoid warnings. + + * iconvdata/gbk.c (BODY): Make buf and cp char instead of unsigned + char array resp. pointer. + * iconvdata/iso-2022-kr.c (BODY): Make buf unsigned char instead of + char array. + * iconvdata/cns11643.h (cns11643_to_ucs4): Change first argument + to const unsigned char **. + (ucs4_to_cns11643): Change second argument to unsigned char *. + * iconvdata/euc-tw.c (BODY): Change endp type to + const unsigned char *. + * iconvdata/iso-ir-165.h (ucs4_to_isoir165): Change second argument + to unsigned char *. + * iconvdata/ibm1008_420.c (LOOP_NEED_FLAGS): Don't define. + * iconvdata/iso-2022-cn.c (BODY): Change buf to unsigned char array. + * iconvdata/iso-2022-cn-ext.c (BODY): Change buf, tmpbuf, tmp + types to unsigned char pointers/arrays instead of char. + * iconvdata/jis0201.h (ucs4_to_jisx0201): Change second argument + to unsigned char *. + * iconvdata/jis0208.h (ucs4_to_jisx0208): Likewise. + * iconvdata/jis0212.h: Include assert.h. + (ucs4_to_jisx0212): Change second argument to unsigned char *. + assert that if cp[0] is not '\0', cp[1] is not '\0' either instead + of trying to handle that. + * iconvdata/euc-kr.c (euckr_from_ucs4): Initialize also cp[1] to + shut up a warning. + * iconvdata/euc-jp-ms.c (from_ucs4_lat1, from_ucs4_greek, + from_ucs4_cjk, from_ucs4_cjkcpt, from_ucs4_extra): Change type to + two dimensional const unsigned char arrays. + (BODY): Cast "" to (const unsigned char *) for assignment to cp. + Initialize endp to inptr to shut up a warning. + +2007-07-20 Jakub Jelinek <jakub@redhat.com> + + [BZ #4772] + * time/strptime_l.c (__strptime_internal): Silently ignore + strftime modifiers and field width in recursive calls. + + * include/time.h (enum ptime_locale_status): Remove. + (__strptime_internal): Remove decided and era_cnt arguments, + add statep argument. + * time/strptime_l.c (__strptime_internal): Remove decided + and era_cnt arguments, add statep argument. Don't recompute + any fields in recursive calls, only update caller's tm + and state, if recursive call fails, don't change tm nor + any state. + (get_alt_number): Adjust. + (recursive): Adjust caller. + (strptime): Likewise. + * time/strptime.c (strptime): Likewise. + +2007-07-19 Jakub Jelinek <jakub@redhat.com> + + * iconv/gconv_int.h (__GCONV_NULCONV): New internal only error code. + * iconv/gconv_cache.c (__gconv_lookup_cache): Return __GCONV_NULCONV + if from and to charsets are the same. + * iconv/gconv_db.c (__gconv_find_transform): Likewise. + * intl/dcigettext.c (_nl_find_msg): Return NULL even if __gconv_open + returns __GCONV_NOCONV, but not for __GCONV_NULCONV. + +2007-07-17 Jakub Jelinek <jakub@redhat.com> + + * wcsmbs/wchar.h: Only define wint_t if __need_wint_t. + Don't define wint_t when __need_mbstate_t unless it + is necessary. + (__mbstate_t): Use __WINT_TYPE__ rather than wint_t + in the typedef if possible. + * wctype/wctype.h (wint_t): Define by including + wchar.h with __need_wint_t instead of including stddef.h + with __need_wint_t and as fallback definining it ourselves. + * iconv/gconv.h (__need_wint_t): Define before including + wchar.h. + * sysdeps/gnu/_G_config.h: Don't include gconv.h if not _LIBC + or _GLIBCPP_USE_WCHAR_T. + (__need_wchar_t): Don't define + if not _LIBC or _GLIBCPP_USE_WCHAR_T. + (__need_wint_t): Don't define before including stddef.h, + define before including wchar.h only if _LIBC or + _GLIBCPP_USE_WCHAR_T. + (_G_iconv_t): Don't define if not _LIBC or _GLIBCPP_USE_WCHAR_T. + * sysdeps/mach/hurd/_G_config.h: Likewise. + * sysdeps/generic/_G_config.h: Likewise. + * libio/libio.h (__wunderflow, __wuflow, __woverflow): Only + prototype if _LIBC or _GLIBCPP_USE_WCHAR_T. + (_IO_getwc_unlocked, _IO_putwc_unlocked): Only define + if _LIBC or _GLIBCPP_USE_WCHAR_T. + +2007-07-28 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/posix_fallocate64.c: Undefine + __posix_fallocate64_l64 before alias handling. + * sysdeps/unix/sysv/linux/posix_fallocate.c: New file. + * sysdeps/unix/sysv/linux/posix_fallocate64.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c: New file. + * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate64.c: New file. + + * io/tst-posix_fallocate.c: Include <fcntl.h>. + +2007-07-23 Jakub Jelinek <jakub@redhat.com> + + * locale/programs/ld-collate.c (atwc): New variable. + (add_to_tablewc): New toplevel function, moved from collate_output. + (collate_output): Remove add_to_tablewc nested function. + + * iconv/iconvconfig.c (hash_table, hash_size): New toplevel vars. + (name_insert): New function. + (write_output): Remove hash_table and hash_size vars and name_insert + nested function. + +2007-07-24 Roland McGrath <roland@redhat.com> + + * Makerules (install-others-programs-nosubdir): New target. + (install-no-libc.a-nosubdir): Depend on it. + + * iconv/Makefile (install-others-programs): Set this instead of + install-others. + * login/Makefile (install-others-programs): Likewise. + * posix/Makefile (install-others-programs): Likewise. + + * Makerules (install-no-libc.a-nosubdir): Clean up conditional + dependencies. + +2007-07-23 Ulrich Drepper <drepper@redhat.com> + + * io/Makefile (tests): Add tst-posix_fallocate. + * io/tst-posix_fallocate.c: New file. + + * sysdeps/unix/sysv/linux/kernel-features.h: Define + __ASSUME_FALLOCATE. + +2007-07-22 Roland McGrath <roland@frob.com> + + * hurd/getdport.c: Add missing copyright year update. + + * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU] (O_CLOEXEC): New macro. + * hurd/port2fd.c (_hurd_port2fd): Implement O_CLOEXEC. + +2007-07-22 Ulrich Drepper <drepper@redhat.com> + + * login/utmp_file.c (setutent_file): Use O_CLOEXEC if possible. + + * libio/fileops.c (_IO_new_file_fopen): Recognize 'e' flag and set + O_CLOEXEC is needed. + * nis/nss_compat/compat-grp.c: Use 'e' flag when opening file. + Avoid additional fcntl to set O_CLOEXEC if not needed. + * nis/nss_compat/compat-initgroups.c: Likewise. + * nis/nss_compat/compat-pwd.c: Likewise. + * nis/nss_compat/compat-spwd.c: Likewise. + +2007-07-21 Samuel Thibault <samuel.thibault@ens-lyon.org> + + [BZ #3665] + * manual/errno.texi: Change ECANCELED value to 119. + + [BZ #4610] + * mach/lock-intern.h: Include <sys/cdefs.h>. + + [BZ #4178] + * sysdeps/mach/hurd/sigaction.c (__sigaction): Check ACT != NULL before + reading A. + + [BZ #4126] + * sysdeps/mach/hurd/sigsuspend.c (sigsuspend_not_cancel): Define alias + to __sigsuspend. + + * sysdeps/mach/i386/sysdep.h: Include <dl-sysdep.h> and <tls.h>. + +2006-06-13 Thomas Schwinge <tschwinge@gnu.org> + + * sysdeps/mach/hurd/tls.h: Change `ASSEMBLER' conditional to + `__ASSEMBLER__'. + * sysdeps/mach/hurd/i386/tls.h: Likewise. + +2007-07-21 Ulrich Drepper <drepper@redhat.com> + + * nscd/nscd_helper.c (get_mapping): Use MSG_CMSG_CLOEXEC for + descriptor received from nscd. + + * sysdeps/unix/sysv/linux/bits/socket.h: Define MSG_CMSG_CLOEXEC. + + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define O_CLOEXEC. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + +2007-07-20 Jakub Jelinek <jakub@redhat.com> + + [BZ #4816] + * manual/signal.texi (Non-atomic Example): Make memory var volatile. + + [BZ #4813] + * login/forkpty.c (forkpty): Close master and slave fds on + fork failure. Patch by + Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>. + +2007-07-18 Jakub Jelinek <jakub@redhat.com> + + * include/features.h (__USE_ISOC95): New define. + * wcsmbs/wchar.h (fwprintf, fwscanf, wprintf, wscanf, swprintf, + swscanf, vfwprintf, vwprintf, vswprintf, fwide): Define even + for -std=iso9899:199409. + * CONFORMANCE: Remove comments about unsupported AMD1. + +2007-07-17 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/ia64/sched_cpucount.c: New file. + * sysdeps/powerpc/sched_cpucount.c: New file. + + * sysdeps/unix/sysv/linux/bits/sched.h (__sched_cpucount): Add + __BEGIN_DECLS/__END_DECLS around the prototype. + * bits/sched.h (__sched_cpucount): Likewise. Make second argument + pointer to const cpu_set_t. + + * bits/types.h: Don't include stddef.h, don't define __need_size_t. + * signal/signal.h <__USE_BSD || __USE_XOPEN_EXTENDED>: Define + __need_size_t and include stddef.h. + * sysvipc/sys/msg.h: Likewise. + * posix/sched.h: Likewise. + * hurd/hurd/signal.h (__need_size_t): Define. + + * CONFORMANCE: ctype.h and wctype.h no longer define size_t, + neither does signal.h in pedantic ISO C namespaces. stdio.h + no longer defines wint_t or wchar_t. + + * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): New function. + * debug/vfwprintf_chk.c (__vfwprintf_chk): Use + _IO_acquire_lock_clear_flags2 instead of _IO_acquire_lock. + * debug/vprintf_chk.c (__vprintf_chk): Likewise. + * debug/vwprintf_chk.c (__vwprintf_chk): Likewise. + * debug/vfprintf_chk.c (__vfprintf_chk): Likewise. + * debug/fwprintf_chk.c (__fwprintf_chk): Likewise. + * debug/printf_chk.c (__printf_chk): Likewise. + * debug/fprintf_chk.c (__fprintf_chk): Likewise. + * debug/wprintf_chk.c (__wprintf_chk): Likewise. + + * sysdeps/pthread/bits/stdio-lock.h (_IO_acquire_lock_clear_flags2): + Define. + + * bits/confname.h (_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS): Define. + * posix/getconf.c (vars): Add POSIX_V6_WIDTH_RESTRICTED_ENVS. + +2007-07-16 Jakub Jelinek <jakub@redhat.com> + + [BZ #4792] + * stdlib/stdlib.h (realloc): Remove __attribute_malloc__. + * malloc/malloc.h (realloc): Likewise. + + * libio/iopopen.c (_IO_new_proc_open): Don't close child_std_end + if one of proc_file_chain streams has that fileno. + * stdio-common/Makefile (tests): Add tst-popen2. + * stdio-common/tst-popen2.c: New test. + +2007-07-14 Jakub Jelinek <jakub@redhat.com> + + * elf/ldconfig.c: Allow GPLv2 or any later version. + * elf/readlib.c: Likewise. + * elf/chroot_canon.c: Likewise. + * elf/cache.c: Likewise. + * nscd/mem.c: Likewise. + * nscd/getpwuid_r.c: Likewise. + * nscd/grpcache.c: Likewise. + * nscd/aicache.c: Likewise. + * nscd/getsrvbynm_r.c: Likewise. + * nscd/nscd.c: Likewise. + * nscd/servicescache.c: Likewise. + * nscd/getsrvbypt_r.c: Likewise. + * nscd/initgrcache.c: Likewise. + * nscd/gethstbyad_r.c: Likewise. + * nscd/gethstbynm2_r.c: Likewise. + * nscd/getgrnam_r.c: Likewise. + * nscd/nscd_setup_thread.c: Likewise. + * nscd/getpwnam_r.c: Likewise. + * nscd/gai.c: Likewise. + * nscd/connections.c: Likewise. + * nscd/dbg_log.c: Likewise. + * nscd/cache.c: Likewise. + * nscd/hstcache.c: Likewise. + * nscd/nscd_conf.c: Likewise. + * nscd/getgrgid_r.c: Likewise. + * nscd/pwdcache.c: Likewise. + * catgets/gencat.c: Likewise. + * locale/programs/linereader.h: Likewise. + * locale/programs/locarchive.c: Likewise. + * locale/programs/ld-paper.c: Likewise. + * locale/programs/locfile-kw.h: Likewise. + * locale/programs/ld-address.c: Likewise. + * locale/programs/xmalloc.c: Likewise. + * locale/programs/ld-time.c: Likewise. + * locale/programs/localedef.c: Likewise. + * locale/programs/simple-hash.c: Likewise. + * locale/programs/xstrdup.c: Likewise. + * locale/programs/ld-numeric.c: Likewise. + * locale/programs/locfile-kw.gperf: Likewise. + * locale/programs/ld-collate.c: Likewise. + * locale/programs/charmap-kw.gperf: Likewise. + * locale/programs/charmap.h: Likewise. + * locale/programs/charmap-kw.h: Likewise. + * locale/programs/config.h: Likewise. + * locale/programs/locfile.c: Likewise. + * locale/programs/ld-ctype.c: Likewise. + * locale/programs/charmap.c: Likewise. + * locale/programs/ld-messages.c: Likewise. + * locale/programs/repertoire.h: Likewise. + * locale/programs/locale.c: Likewise. + * locale/programs/ld-name.c: Likewise. + * locale/programs/linereader.c: Likewise. + * locale/programs/locfile.h: Likewise. + * locale/programs/3level.h: Likewise. + * locale/programs/ld-monetary.c: Likewise. + * locale/programs/ld-measurement.c: Likewise. + * locale/programs/charmap-dir.c: Likewise. + * locale/programs/ld-identification.c: Likewise. + * locale/programs/localedef.h: Likewise. + * locale/programs/charmap-dir.h: Likewise. + * locale/programs/repertoire.c: Likewise. + * locale/programs/simple-hash.h: Likewise. + * locale/programs/ld-telephone.c: Likewise. + * locale/programs/locale-spec.c: Likewise. + * locale/programs/locfile-token.h: Likewise. + * posix/getconf.c: Likewise. + * iconv/dummy-repertoire.c: Likewise. + * iconv/iconv_charmap.c: Likewise. + * iconv/iconvconfig.c: Likewise. + * iconv/iconv_prog.c: Likewise. + * malloc/memusagestat.c: Likewise. + * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Likewise. + +2007-07-06 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * sysdeps/sh/bsd-setjmp.S (setjmp): Use correct argument registers. + * sysdeps/sh/bsd-_setjmp.S (_setjmp): Likewise. + * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Do correct sanity + check for the first argument. + +2007-07-12 Jakub Jelinek <jakub@redhat.com> + + [BZ #4775] + * math/tgmath.h (__tgmath_real_type_sub): Formatting. + (__tgmath_real_type): Fix if expr is const int or other const + qualified integral type. + (__TGMATH_UNARY_REAL_ONLY): Rewritten to avoid using statement + expressions and handle const qualified arguments. + (__TGMATH_BINARY_FIRST_REAL_ONLY, __TGMATH_UNARY_REAL_IMAG, + __TGMATH_UNARY_REAL_IMAG_RET_REAL): Likewise. + (__TGMATH_UNARY_REAL_RET_ONLY): Rewritten to avoid using + statement expressions. + (__TGMATH_BINARY_REAL_ONLY, __TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY, + __TGMATH_TERNARY_REAL_ONLY, __TGMATH_BINARY_REAL_IMAG): Likewise. + (__TGMATH_UNARY_IMAG): Define. + (conj, cproj): Use __TGMATH_UNARY_IMAG macro. + * math/Makefile (tests): Add test-tgmath2. + (CFLAGS-test-tgmath2.c): Add. + * math/test-tgmath.c (fy, dy, ly, fz, dz, lz, count_cdouble, + count_cfloat, count_cldouble): New variables. + (NCCALLS): Define. + (main): Check number of complex calls as well. + (F(compile_test)): Add complex tests and tests with const qualified + arguments. + (y, z, ccount): Define. + (F(cacos), F(casin), F(catan), F(ccos), F(csin), F(ctan), F(cacosh), + F(casinh), F(catanh), F(ccosh), F(csinh), F(ctanh), F(cexp), F(clog), + F(csqrt), F(cpow), F(cabs), F(carg), F(creal), F(cimag), F(conj), + F(cproj)): New functions. + * math/test-tgmath2.c: New test. + +2007-07-11 Jakub Jelinek <jakub@redhat.com> + + [BZ #4776] + * elf/dl-load.c (_dl_rtld_di_serinfo): Output / in LD_LIBRARY_PATH, + RPATH etc. as "/" rather than "", don't segfault on empty paths, + instead output ".". + * dlfcn/Makefile (distribute): Add glreflib3.c. + (module-names): Add glreflib3. + ($(objpfx)tst-dlinfo.out): Depend on glreflib3.so rather than + glreflib1.so. + (LDFLAGS_glreflib3.so): New. + * dlfcn/tst-dlinfo.c (do_test): Load glreflib3.so instead of + glreflib1.so. + * dlfcn/glreflib3.c: New file. + + * intl/finddomain.c (_nl_find_domain): If _nl_explode_name + returned -1, return NULL. + * intl/explodename.c (_nl_explode_name): Return -1 if + _nl_normalize_codeset failed. + +2007-07-07 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power6/memset.S: Update comments. + Specify .machine power6 to get ISA-V2.0 branch hints. Unroll loops + and avoid branch misspredicts for > 31 bytes memset case. + * sysdeps/powerpc/powerpc64/power6/memset.S: Likewise. + Remove toc ref to __cache_line_size. + + * sysdeps/powerpc/powerpc32/power4/memcmp.S: Specify .machine power4 + to get ISA-V2.0 branch hints. + * sysdeps/powerpc/powerpc32/power4/memcpy.S: Likewise + * sysdeps/powerpc/powerpc32/power4/memset.S: Likewise + * sysdeps/powerpc/powerpc32/power6/memcpy.S: Likewise. + * sysdeps/powerpc/powerpc64/power4/memcmp.S: Likewise. + * sysdeps/powerpc/powerpc64/power4/memcpy.S: Likewise. + * sysdeps/powerpc/powerpc64/power4/memset.S: Likewise. + Remove toc ref to __cache_line_size. + + * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: + Include math_ldbl_opt.h. + +2007-07-10 Ulrich Drepper <drepper@redhat.com> + + [BZ #4773] + * time/strptime_l.c (__strptime_internal): Implement greedy + matching of weekday and month names. + +2007-07-09 Roland McGrath <roland@redhat.com> + + * elf/elf.h (NT_GNU_ABI_TAG): New macro. + (ELF_NOTE_ABI): Use it. + (NT_GNU_HWCAP, NT_GNU_BUILD_ID): New macros. + +2007-07-09 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new entries. + * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise. + +2007-07-07 Ulrich Drepper <drepper@redhat.com> + + [BZ #4745] + * stdio-common/vfscanf.c (_IO_vfscanf): Add additional test for EOF + in loop to look for conversion specifier to avoid testing of + wrong errno value. + * stdio-common/Makefile (tests): Add bug18, bug18a, bug19, bug19a. + * stdio-common/bug18.c: New file. + * stdio-common/bug18a.c: New file. + * stdio-common/bug19.c: New file. + * stdio-common/bug19a.c: New file. + +2007-07-05 Mike Frysinger <vapier@gentoo.org> + + * Makeconfig ($(common-objpfx)gnu/lib-names.stmp): Use LC_ALL=C when + running awk script. + +2007-07-01 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-sysdep.c (_dl_important_hwcaps): Add integer overflow check. + * elf/dl-minimal.c (__libc_memalign): Likewise. Handle malloc (0). + Return NULL if mmap failed instead of asserting it does not. + (calloc): Check for integer overflow. + + * elf/dl-minimal.c (__strtoul_internal): Fix parsing of numbers bigger + than LONG_MAX / 10. + +2007-07-03 Jakub Jelinek <jakub@redhat.com> + + [BZ #4702] + * nis/nss-default.c: Include errno.h. + (init): Preserve errno. + +2007-07-02 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/socket.h (PF_UNIX): Update comment. + +2007-06-30 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_RXRPC and AF_RXRPC. + +2007-06-29 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_IUCV and AF_IUCV. + +2007-06-29 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * sysdeps/s390/dl-procinfo.c: New file. + * sysdeps/s390/dl-procinfo.h: New file. + * sysdeps/unix/sysv/linux/s390/dl-procinfo.h: New file. + +2007-06-29 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-load.c (open_verify): Find .note.ABI-tag notes even + in PT_NOTE segments with multiple notes. + * elf/readelflib.c (process_elf_file): Likewise. + +2007-06-22 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_domain_of.c (__nis_domain_of): Make the code a bit more + ISO C compliant. + +2007-06-19 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-close.c (free_mem): Free _dl_scope_free_list. + +2007-06-13 Jakub Jelinek <jakub@redhat.com> + + * include/link.h: Don't include rtld-lowlevel.h. + (struct link_map): Remove l_scope_lock. + * sysdeps/generic/ldsodefs.h: Don't include rtld-lowlevel.h. + (_dl_scope_free_list): New field (variable) in _rtld_global. + (DL_LOOKUP_SCOPE_LOCK): Remove. + (_dl_scope_free): New prototype. + * elf/dl-runtime.c (_dl_fixup): Don't use __rtld_mrlock_*lock. + Don't pass DL_LOOKUP_SCOPE_LOCK to _dl_lookup_symbol_x. + (_dl_profile_fixup): Likewise. + * elf/dl-sym.c (do_sym): Likewise. Use wrapped _dl_lookup_symbol_x + whenever !RTLD_SINGLE_THREAD_P, use THREAD_GSCOPE_SET_FLAG and + THREAD_GSCOPE_RESET_FLAG around it. + * elf/dl-close.c (_dl_close_worker): Don't use + __rtld_mrlock_{change,done}. Call _dl_scope_free on the old + scope. Make sure THREAD_GSCOPE_WAIT () happens if any old + scopes were queued or if l_scope_mem has been abandoned. + * elf/dl-open.c (_dl_scope_free): New function. + (dl_open_worker): Use it. Don't use __rtld_mrlock_{change,done}. + * elf/dl-support.c (_dl_scope_free_list): New variable. + * elf/dl-lookup.c (add_dependency): Remove flags argument. + Remove DL_LOOKUP_SCOPE_LOCK handling. + (_dl_lookup_symbol_x): Adjust caller. Remove DL_LOOKUP_SCOPE_LOCK + handling. + * elf/dl-object.c (_dl_new_object): Don't use + __rtld_mrlock_initialize. + +2007-06-19 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/generic/ldsodefs.h (rtld_global): Reorder some elements + to fill in holes + (rtld_global_ro): Likewise. + +2007-06-18 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-addr.c (_dl_addr): Skip PT_LOAD checking if l_contiguous. + Move PT_LOAD checking to... + (_dl_addr_inside_object): ... here, new function. + * elf/dl-sym.c (do_sym): If not l_contiguous, + call _dl_addr_inside_object. + * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise. + * dlfcn/dlinfo.c (dlinfo_doit): Likewise. + * elf/dl-open.c (dl_open_worker): Likewise. + (_dl_addr_inside_object): New function if IS_IN_rtld. + * elf/dl-load.c (_dl_map_object_from_fd): Set l_contiguous if no + holes are present or are PROT_NONE protected. + * include/link.h (struct link_map): Add l_contiguous field. + * sysdeps/generic/ldsodefs.h (_dl_addr_inside_object): New prototype. + +2007-06-18 Jakub Jelinek <jakub@redhat.com> + Tomas Janousek <tjanouse@redhat.com> + Ulrich Drepper <drepper@redhat.com> + + [BZ #4647] + * resolv/res_send.c (send_dg): Remove socket_pf. Use ipv6_unavail + member in __res_state, only convaddr4to6 if nssocks[ns] is a PF_INET6 + socket. + * resolv/resolv.h (__res_state): Add ipv6_unavail member. Make + unused member a bitmap. + * resolv/res_init.c (__res_vinit): Reset ipv6_unavail if IPv6 + servers are configured. + +2007-06-18 Jakub Jelinek <jakub@redhat.com> + + * elf/rtld.c (dl_main): Don't call init_tls more than once. + +2007-06-17 Andreas Schwab <schwab@suse.de> + + * sysdeps/generic/initfini.c: Tell gcc about the nonstandard sections. + +2007-06-16 Andreas Jaeger <aj@suse.de> + + [BZ #4125] + * sysdeps/unix/sysv/linux/sys/ptrace.h + (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK, + PTRACE_O_TRACEVFORK, PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC, + PTRACE_O_TRACEVFORKDONE, PTRACE_O_TRACEEXIT, PTRACE_O_MASK, + PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK, PTRACE_EVENT_CLONE, + PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE, PTRACE_EVENT_EXIT): + Define. + * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise. + * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise. + +2007-06-16 Ulrich Drepper <drepper@redhat.com> + + [BZ #4599] + * sysdeps/unix/sysv/linux/check_pf.c (make_request): When + determining whether there are IPv4/IPv6 addresses, ignore loopback + addresses. + +2007-06-14 Uros Bizjak <ubizjak@gmail.com> + + * soft-fp/soft-fp.h (CMPtype): Define to "int" if undefined. + * soft-fp/eqdf2.c (__eqdf2): Use CMPtype instead of int + as the return type. Change type of "r" variable to CMPtype. + * soft-fp/eqsf2.c (__eqsf2): Likewise. + * soft-fp/eqtf2.c (__eqtf2): Likewise. + * soft-fp/gedf2.c (__gedf2): Likewise. + * soft-fp/gesf2.c (__gesf2): Likewise. + * soft-fp/getf2.c (__getf2): Likewise. + * soft-fp/ledf2.c (__ledf2): Likewise. + * soft-fp/lesf2.c (__lesf2): Likewise. + * soft-fp/letf2.c (__letf2): Likewise. + * soft-fp/unorddf2 (__unorddf2): Likewise. + * soft-fp/unordsf2 (__unordsf2): Likewise. + * soft-fp/unordtf2 (__unordtf2): Likewise. + +2007-06-09 Ulrich Drepper <drepper@redhat.com> + + * elf/do-lookup.h (do_lookup_x): Read r_nlist before r_list and + make sure gcc doesn't mess around with this. + +2007-06-08 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-lookup.c (_dl_lookup_symbol_x): Remove use of r_nlist. + +2007-06-08 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-close.c (_dl_close_worker): Remove all to be removed + libraries from the global scope at once and call THREAD_GSCOPE_WAIT + at most once per _dl_close_worker. + +2007-06-08 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/sched.h: Make second parameter of + __sched_cpucount as const. + * posix/sched_cpucount.c: Adjust. + + * posix/sched_cpucount.c (__sched_cpucount): Allow using special + instruction for counting bits. + * sysdeps/x86_64/sched_cpucount.c: New file. + +2007-06-07 Ulrich Drepper <drepper@redhat.com> + + * configure.in: Avoid variable named BASH. + * config.make.in: Likewise. + Patch in part by Mike Frysinger. + +2007-06-06 Jakub Jelinek <jakub@redhat.com> + + [BZ #4586] + * sysdeps/i386/ldbl2mpn.c (__mpn_extract_long_double): Treat + pseudo-zeros as zero. + * sysdeps/x86_64/ldbl2mpn.c: New file. + * sysdeps/ia64/ldbl2mpn.c: New file. + +2007-06-04 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Remove + unused ily variable. Fix nextafterl on +-__LDBL_MAX__ and +-Inf. + Remove unreachable code at the end. + +2007-06-01 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c: Correct description of + ldbl-128ibm in comment. + (fpclassifyl): Correct classification of denormals. + * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Correct + return value for MIN denormal. Rewrite using long double math too + correctly handle denormals and canonicalize the results. + +2007-06-05 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c + (__mpn_construct_long_double): Fix conversion where result ought + to be smaller than __LDBL_MIN__, or the low double should be + denormal. Fix decision where to negate low double - honor round + to even rules. + * stdio-common/tst-sprintf2.c: Include string.h. + (COMPARE_LDBL): Define. + (TEST): Also test whether a string hexadecimal float representation + can be parsed back to the number. + (main): Add a couple of further tests. + +2007-06-04 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c + (PRINT_FPHEX_LONG_DOUBLE): Fix printing numbers where lower double + is non-zero, but smaller than 2 * __DBL_MIN__. + * stdio-common/tst-sprintf2.c: New test. + * stdio-common/Makefile (tests): Add tst-sprintf2. + + * math/test-misc.c (main): Don't run last batch of tests with + IBM long double format. + +2007-05-31 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/970/fpu/Implies: New file. + * sysdeps/powerpc/powerpc32/power5/fpu/Implies: New file. + * sysdeps/powerpc/powerpc32/power5+/fpu/Implies: New file. + * sysdeps/powerpc/powerpc32/power6/fpu/Implies: New file. + * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file. + * sysdeps/powerpc/powerpc64/970/fpu/Implies: New file. + * sysdeps/powerpc/powerpc64/power5/fpu/Implies: New file. + * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: New file. + * sysdeps/powerpc/powerpc64/power6/fpu/Implies: New file. + * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies: + New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies: + New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies: + New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies: + New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies: + New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies: + New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies: + New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies: + New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies: + New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies: + New file. + +2007-05-31 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: Move. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S: To here. + * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: Move. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S: To here. + * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: Move. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: To here. + * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: Move. + * sysdeps/powerpc/powerpc32/power4/fpu/s_llroundf.S: To here. + +2007-05-22 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S + (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S + (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S + (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S + (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1. + +2007-05-21 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c: New file. + * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: New file. + * sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c: New file. + * sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c: New file. + +2007-03-15 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S + [LONG_DOUBLE_COMPAT]: Add compat_symbol for llrintl@@GLIBC_2_1. + +2006-02-13 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: New File + * sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S: New File + * sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: New File + * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: New File + +2006-10-20 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c: New file. + * sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c: New file. + +2006-10-03 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: New file. + * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: New file. + + * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: Moved. + * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/fpu/Makefile: To here. + * sysdeps/powerpc/powerpc32/power4/fpu/mpa.c: Likewise. + +2006-09-29 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power6x/fpu/s_lrint.S: New file. + * sysdeps/powerpc/powerpc32/power6x/fpu/s_lround.S: New file. + * sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S: New file. + * sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S: New file. + +2006-09-28 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: New file. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: New file. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: New file. + * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S: New file. + * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file. + +2006-08-31 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: New file. + * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: New file. + * sysdeps/powerpc/powerpc64/power4/fpu/Makefile: New file. + * sysdeps/powerpc/powerpc64/power4/fpu/mpa.c: New file. + +2006-06-15 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S: New file. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceilf.S: New file. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: New file. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S: New file. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S: New file. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_roundf.S: New file. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S: New file. + * sysdeps/powerpc/powerpc32/power5+/fpu/s_truncf.S: New file. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S: New file. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceilf.S: New file. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: New file. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S: New file. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S: New file. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_roundf.S: New file. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S: New file. + * sysdeps/powerpc/powerpc64/power5+/fpu/s_truncf.S: New file. + +2006-03-20 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: New file. + * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: New file. + +2007-06-01 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power6/memset.S: New file. + * sysdeps/powerpc/powerpc64/power6/memset.S: New file. + +2007-05-31 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/970/Implies: New file. + * sysdeps/powerpc/powerpc32/power5/Implies: New file. + * sysdeps/powerpc/powerpc32/power5+/Implies: New file. + * sysdeps/powerpc/powerpc32/power6/Implies: New file. + * sysdeps/powerpc/powerpc32/power6x/Implies: New file. + * sysdeps/powerpc/powerpc64/970/Implies: New file. + * sysdeps/powerpc/powerpc64/power5/Implies: New file. + * sysdeps/powerpc/powerpc64/power5+/Implies: New file. + * sysdeps/powerpc/powerpc64/power6/Implies: New file. + * sysdeps/powerpc/powerpc64/power6x/Implies: New file. + +2007-05-21 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power4/memset.S: New file + +2007-03-13 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc64/memcpy.S: Improve aligned loop to minimize + branch miss-predicts. Ensure that cache line crossing does not impact + dispatch grouping. + +2006-12-13 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc64/power4/memcopy.h: Replace with include + "../../powerpc32/power4/memcopy.h". + * sysdeps/powerpc/powerpc64/power4/wordcopy.c: Replace with include + "../../powerpc32/power4/wordcopy.c". + +2006-10-03 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/powerpc64/Makefile: Moved. + * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: Likewise. + * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: Likewise. + * sysdeps/powerpc/powerpc32/power4/Makefile: To here. + * sysdeps/powerpc/powerpc32/power4/memcopy.h: Likewise. + * sysdeps/powerpc/powerpc32/power4/wordcopy.c: Likewise. + +2006-09-10 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power6/memcpy.S: New file. + +2006-08-31 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power6/wordcopy.c: New file. + * sysdeps/powerpc/powerpc32/powerpc64/Makefile: New file. + * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: New file. + * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: New file. + * sysdeps/powerpc/powerpc64/power4/Makefile: New file. + * sysdeps/powerpc/powerpc64/power4/memcopy.h: New file. + * sysdeps/powerpc/powerpc64/power4/wordcopy.c: New file. + * sysdeps/powerpc/powerpc64/power6/wordcopy.c: New file. + +2006-07-06 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc64/power6/memcpy.S: New file. + +2006-03-20 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/powerpc32/power4/memcmp.S: New file. + * sysdeps/powerpc/powerpc32/power4/memcpy.S: New file. + * sysdeps/powerpc/powerpc32/power4/memset.S: New file. + * sysdeps/powerpc/powerpc32/power4/strncmp.S: New file. + * sysdeps/powerpc/powerpc64/power4/memcmp.S: New file. + * sysdeps/powerpc/powerpc64/power4/memcpy.S: New file. + * sysdeps/powerpc/powerpc64/power4/strncmp.S: New file. + +2007-05-29 Roland McGrath <roland@redhat.com> + + * po/Makefile (po-sed-cmd): New variable. + (libc.pot.files): Move sed command text in there, avoid \ inside ''. + +2007-05-29 Ulrich Drepper <drepper@redhat.com> + + * crypt/md5-crypt.c: Fix comment. + + * nscd/nscd_helper.c (get_mapping): Handle short replies instead + of crashing. When this is the case or if the reply is malformed, + don't try to close the new file descriptor since it does not + exist. + Patch in part by Guillaume Chazarain <guichaz@yahoo.fr>. + +2007-05-28 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/futimes.c (miss_utimensat): Don't define + if __NR_utimensat is not defined. + +2007-05-26 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Include <sysdep.h>. + +2007-05-25 Jakub Jelinek <jakub@redhat.com> + + * io/bits/fcntl2.h (__open_2): Add nonnull attribute. + (open): Fix comment typos. Don't call __open_2 if flags + is a compile time constant without O_CREAT. + (__open64_2): Add nonnull attribute. + (open64): Fix comment typos. Don't call __open64_2 if flags + is a compile time constant without O_CREAT. + (__openat_2): Add nonnull attribute, fix nonnull attribute + on redirect. + (openat): Fix comment typos. Don't call __openat_2 if flags + is a compile time constant without O_CREAT. + (__openat64_2): Add nonnull attribute, fix nonnull attribute + on redirect. + (openat64): Fix comment typos. Don't call __openat64_2 if flags + is a compile time constant without O_CREAT. + +2007-05-24 Ulrich Drepper <drepper@redhat.com> + + * Makerules (sysd-rules): Define PTW for ptw-* files. + * Versions: Define GLIBC_2.7 for libc. + * include/stdio.h: Declare __fortify_fail. + * debug/fortify_fail.c: New file. + * debug/Makefile (routines): Add fortify_fail. + * debug/chk_fail.c: Use __fortify_fail. + * debug/stack_chk_fail.c: Likewise. + * io/Versions: Export __open_2, __open64_2, __openat_2, and + __openat64_2 for GLIBC_2.7. + * io/fcntl.h: When compiling with fortification, include bits/fcntl2.h. + * io/open.c: Define *_2 variant of function which checks for O_CREAT + and fails if necessary. + * io/open64.c: Likewise. + * io/openat.c: Likewise. + * io/openat64.c: Likewise. + * sysdeps/unix/sysv/linux/open64.c: Likewise. + * sysdeps/unix/sysv/linux/openat.c: Likewise. + * sysdeps/unix/sysv/linux/openat64.c: Likewise. + * io/bits/fcntl2.h: New file. + * include/fcntl.h: Declare __open_2, __open64_2, __openat_2, and + __openat64_2. + * include/bits/fcntl2.h: New file. + * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): + Add open_2. + * sysdeps/unix/sysv/linux/open_2.c: New file. + +2007-05-21 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Pass correct value + as second parameter to handle_intel. + + * nscd/aicache.c (addhstaiX): If reported TTL is zero don't cache + the entry. + + * sysdeps/unix/sysv/linux/x86_64/sysconf.c: Move cache information + handling to ... + * sysdeps/x86_64/cacheinfo.c: ... here. New file. + * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add + cacheinfo. + * sysdeps/x86_64/memcpy.S: Complete rewrite. + * sysdeps/x86_64/mempcpy.S: Adjust appropriately. + Patch by Evandro Menezes <evandro.menezes@amd.com>. + + * sysdeps/unix/sysv/linux/i386/epoll_pwait.S: New file. + +2007-05-21 Jakub Jelinek <jakub@redhat.com> + + [BZ #4525] + * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add epoll_pwait. + * sysdeps/unix/sysv/linux/epoll_pwait.c: New file. + * sysdeps/unix/sysv/linux/syscalls.list (epoll_pwait): Remove. + + * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (epoll_pwait): Declare. + + [BZ #4514] + * stdio-common/vfprintf.c (vfprintf): Don't shadow workstart variable, + reinitialize workend at the start of each do_positional format spec + loop, free workstart before do_positional loops. + (printf_unknown): Fix size of work_buffer. + * stdio-common/tst-sprintf.c (main): Add 3 new testcases. + + * malloc/hooks.c (MALLOC_STATE_VERSION): Bump. + (public_sET_STATe): If ms->version < 3, put all chunks into + unsorted chunks and clear {fd,bk}_nextsize fields of largebin + chunks. + + * malloc/malloc.c [MALLOC_DEBUG]: Revert 2007-05-13 changes. + * malloc/hooks.c: Likewise. + * malloc/arena.c: Likewise. + * malloc/malloc.c (do_check_malloc_state): Don't assert + n_mmaps is not greater than n_mmaps_max. This removes the need + for the previous change. + + * malloc/Makefile (CFLAGS-malloc.c): Revert accidental + 2007-05-07 commit. + +2007-05-19 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PRIVATE_FUTEX): + Define for kernel >= 2.6.22. + +2007-05-18 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-close.c (_dl_close_worker): When removing object from + global scope, wait for all lookups to finish afterwards. + * elf/dl-open.c (add_to_global): When global scope array must + grow, allocate a new one and free old array only after all + lookups finish. + * elf/dl-runtime.c (_dl_fixup): Protect using global scope. + (_dl_lookup_symbol_x): Likewise. + * elf/dl-support.c: Define _dl_wait_lookup_done. + * sysdeps/generic/ldsodefs.h (struct rtld_global): Add + _dl_wait_lookup_done. + + * malloc/malloc.c (do_check_chunk): Correct check for mmaped block + not overlapping with arena. + + * malloc/mcheck.c (reallochook): If size==0, free the block. + + * rt/tst-shm.c: Use fstat64 instead of fstat. + + * sysdeps/unix/sysv/linux/i386/sync_file_range.S: Fix case where + __NR_sync_file_range is not defined. + +2007-05-17 Ulrich Drepper <drepper@redhat.com> + + Dummy files to prevent stub versions from being used. + * sysdeps/x86_64/fpu/k_cosl.c: New file. + * sysdeps/x86_64/fpu/k_rem_pio2l.c: New file. + * sysdeps/x86_64/fpu/k_sinl.c: New file. + * sysdeps/x86_64/fpu/k_tanl.c: New file. + + * version.h (VERSION): Set to 2.6.90. + +2007-05-14 Ulrich Drepper <drepper@redhat.com> + + * version.h (VERSION): Define to 2.6. + * include/features.h (__GLIBC_MINOR__): Define to 6. + + * malloc/malloc.c: Use all small bin slots on 64-bit archs. + + * malloc/malloc.c (largebin_index): Really have 32 buckets with 64 + sizes. + +2007-05-13 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c [MALLOC_DEBUG]: Keep track of current maximum + number of mmaps. n_mmaps_max is the target. + * malloc/hooks.c: Likewise. + * malloc/arena.c: Likewise. + +2007-05-12 Andreas Jaeger <aj@suse.de> + + * sysdeps/unix/sysv/linux/tst-getcpu.c: Include <unistd.h> for + getpid. + +2007-05-11 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-close.c (_dl_close_worker): Help gcc to optimize by + adding new variables. + + * elf/dl-open.c (add_to_global): Introduce variable ns to help gcc + optimize. Completely extend global scope array before making the + new entries visible. + +2007-05-10 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/tst-getcpu.c: New file. + * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (tests): Add + tst-getcpu. + + * include/link.h: Move l_version and l_nversion members around to + fill gaps. + + * scripts/check-c++-types.sh: Don't use -fnu89-inline option. + + * sysdeps/unix/sysv/linux/sched_setaffinity.c + (__sched_setaffinity_new): If syscall was successful and + RESET_VGETCPU_CACHE is defined, use it before returning. + * sysdeps/unix/sysv/linux/x86_64/sched_setaffinity.c: New file. + + * io/sys/stat.h: Make sure struct timespec is defined for + __USE_ATFILE. + + * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Define UTIME_NOW and + UTIME_OMIT. + * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise. + * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_UTIMENSAT. + * io/sys/stat.h: Declare utimensat, futimens. + * io/utimensat.c: New file. + * io/futimens.c: New file. + * sysdeps/unix/sysv/linux/utimensat.c: New file. + * sysdeps/unix/sysv/linux/futimens.c: New file. + * io/Makefile (routines): Add utimensat, futimens. + * io/Versions: Add utimensat, futimens to GLIBC_2.6. + * sysdeps/unix/sysv/linux/lutimes.c: New file. + * sysdeps/unix/sysv/linux/futimes.c: Use utimensat syscall if + available. + + * include/sys/cdefs.h: Redefine __nonnull so that test for + incorrect parameters in the libc code itself are not omitted. + +2007-05-09 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/ia64/fpu/fraiseexcpt.c (feraiseexcept): Don't raise overflow + exception in addition to inexact when asked to raise only FE_INEXACT. + + [BZ #3427] + * sysdeps/s390/fpu/feholdexcpt.c (feholdexcept): Don't clear exceptions + in *envp. + +2007-05-07 Ulrich Drepper <drepper@redhat.com> + + [BZ #4403] + * string/strfry.c (strfry): Make result more random. + +2007-05-07 Richard Henderson <rth@redhat.com> + + * sysdeps/alpha/fpu/bits/mathinline.h (__isnanl): Don't define + if __NO_LONG_DOUBLE_MATH. + * sysdeps/unix/sysv/linux/alpha/ioperm.c: If BWX insns not + available in the compiler, add .arch directive to the assembly. + +2007-05-07 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/alpha/fpu/s_nearbyint.c (nearbyintl): Fix version on + compat_symbol to GLIBC_2_1. + * sysdeps/alpha/fpu/s_fmin.S (fminl): Likewise. + * sysdeps/alpha/fpu/s_trunc.c (truncl): Likewise. + * sysdeps/alpha/fpu/s_fmax.S (fmaxl): Likewise. + * sysdeps/alpha/fpu/s_lrint.c (lrintl, llrintl): Likewise. + * sysdeps/alpha/fpu/s_lround.c (lroundl, llroundl): Likewise. + * sysdeps/alpha/fpu/s_round.c (roundl): Likewise. + * sysdeps/alpha/fpu/s_isnan.c (isnanl): Provide compat_symbol in + libc, not libm. + (__isnanl): New compat_symbol. + +2007-05-07 Ulrich Drepper <drepper@redhat.com> + Jakub Jelinek <jakub@redhat.com> + + * malloc/arena.c (heap_info): Add mprotect_size field, adjust pad. + (new_heap): Initialize mprotect_size. + (grow_heap): When growing, only mprotect from mprotect_size till + new_size if mprotect_size is smaller. When shrinking, use PROT_NONE + MMAP for __libc_enable_secure only, otherwise use MADV_DONTNEED. + +2007-04-30 Steven Munroe <sjmunroe@us.ibm.com> + Peter Bergner <bergner@us.ibm.com> + + * sysdeps/powerpc/bits/fenv.h: Declare __fe_mask_env extern. + Define FE_NOMASK_ENV as FE_EANBLED_ENV. Define FE_MASK_ENV. + * sysdeps/powerpc/fpu/Makefile: Add fe_mask to libm-support. + * sysdeps/powerpc/fpu/fe_mask.c: New file. + * sysdeps/powerpc/fpu/fe_nomask.c: Correct comment. + * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept): + Call __fe_mask_env() if all FP exceptions disabled. + * sysdeps/powerpc/fpu/feholdexcpt.c (feholdexcept): Copy high 32-bits + from old FPSCR to new fenv to propagate DFP rounding modes. + Call __fe_mask_env() if FP exceptions previously enabled. + * sysdeps/powerpc/fpu/fesetenv.c (fesetenv): Change mask to merge + exceptions from env. Use __fe_nomask_env() or __fe_mask_env() when + transitioning from all exceptions disabled to any exception enabled + or visa versa. + * sysdeps/powerpc/fpu/feupdateenv.c (__feupdateenv): Change mask to + merge exceptions from env. Call __fe_nomask_env or __fe_mask_env + when transitioning from all exceptions disabled to any exception + enabled or visa versa. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Moved to... + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: ...here. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: Moved to... + * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: ...here. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_mask.c: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c: New file. + +2007-05-06 Ulrich Drepper <drepper@redhat.com> + + [BZ #4465] + * posix/unistd.h: Remove __THROW from fdatasync. + +2007-05-06 Mike Frysinger <vapier@gentoo.org> + + [BZ #4465] + * sysdeps/unix/sysv/linux/syscalls.list (fdatasync): Add "C" to args. + +2007-05-06 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/vfprintf.c (process_string_arg): Optimize + ridiculous precision in wide char code printing multi-byte string. + Reported by Jim Meyering <jim@meyering.net>. + + [BZ #4131] + * elf/dl-addr.c (_dl_addr): Compare address with actual segment + boundaries to work around systems with overlapping binary loading. + Based on a patch by Suzuki <suzuki@in.ibm.com>. + +2007-05-04 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/vfprintf.c (process_string_arg): Adjust call to + __mbsnrtowcs after last change. + + * locale/programs/linereader.c (get_symname): Fix adding final NUL. + (get_ident): Likewise. + +2007-05-03 Jakub Jelinek <jakub@redhat.com> + + * soft-fp/op-common.h (FP_TRUNC): Replace raising of FP_EX_INEXACT + with setting the sticky bit. + * math/test-misc.c (main): Add more truncation tests. + +2007-04-14 Uros Bizjak <ubizjak@gmail.com> + + * soft-fp/floatunsidf.c (__floatunsidf): Use DFtype instead of + double in the function declaration. + * soft-fp/floatundidf.c (__floatundidf): Use DFtype instead of + double in the function declaration. + * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of + float in the function declaration. + * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of + float in the function declaration. + + * soft-fp/extended.h (FP_UNPACK_RAW_E): Do not increase X##_e for + denormal operands. Do not generate FP_EX_DENORM exception. + (FP_UNPACK_RAW_EP): Ditto. + (FP_UNPACK_SEMIRAW_E): Use FP_UNPACK_RAW_E instead of + undefined _FP_UNPACK_RAW_E. + (FP_UNPACK_SEMIRAW_EP): Use FP_UNPACK_RAW_EP instead of + undefined _FP_UNPACK_RAW_EP. + (FP_PACK_SEMIRAW_E): Use FP_PACK_RAW_E instead of + undefined _FP_PACK_RAW_E. + (FP_PACK_SEMIRAW_EP): Use FP_PACK_RAW_EP instead of + undefined _FP_PACK_RAW_EP. + + * soft-fp/op-2.h (_FP_FRAC_COPY_2_2): Define as alias to + _FP_FRAC_COPY_2. + * soft-fp/op-4.h (_FP_FRAC_COPY_2_2): Define as alias to + _FP_FRAC_COPY_4. + +2007-04-16 Uros Bizjak <ubizjak@gmail.com> + Jakub Jelinek <jakub@redhat.com> + + * soft-fp/op-common.h (FP_EXTEND): Do not abort when + _FP_EXPBIAS_##dfs == _FP_EXPBIAS_##sfs. Handle denormals for + this case. + * soft-fp/op-common.h (FP_TRUNC): Ditto. + +2007-05-03 Jakub Jelinek <jakub@redhat.com> + + * math/test-misc.c (main): Add tests for rounding long double + values close to smallest double denormalized value to double. + +2007-04-30 Joseph Myers <joseph@codesourcery.com> + + * soft-fp/op-common.h (FP_TRUNC): Correct off-by-one error in + condition for truncating to 0. Set sticky bit for such + truncation. + +2007-05-02 Jakub Jelinek <jakub@redhat.com> + + * stdio-common/vfprintf.c (process_string_arg): Use a VLA rather than + fixed length array for ignore. + +2007-04-30 Ulrich Drepper <drepper@redhat.com> + + [BZ #4438] + * stdio-common/vfprintf.c (process_string_arg): Don't overflow the + stack for large precisions. + * stdio-common/test-vfprintf.c (main): Add test for large + precision. + +2007-04-30 Jakub Jelinek <jakub@redhat.com> + + * stdio-common/printf_fp.c (___printf_fp): Don't print negative sign + for exponent 0. + * stdio-common/tfformat.c (sprint_doubles): Add a new test. + + [BZ #4439] + * resolv/inet_ntop.c (inet_ntop4): Take terminating '\0' into + account in the size check. + * resolv/tst-inet_ntop.c: New test. + * resolv/Makefile (tests): Add tst-inet_ntop. + +2007-04-30 Ulrich Drepper <drepper@redhat.com> + Jakub Jelinek <jakub@redhat.com> + + [BZ #4349] + * malloc/malloc.c: Keep separate list for first blocks on the bin + lists with a given size. This helps skipping over list elements + we know won't fit in two places. + Inspired by a patch by Tomash Brechko <tomash.brechko@gmail.com>. + +2007-04-28 Ulrich Drepper <drepper@redhat.com> + + [BZ #4102] + * sysdeps/posix/getaddrinfo.c (default_labels): Assign separate + label to Teredo tunnel addresses 2001://32. + +2007-04-27 Ulrich Drepper <drepper@redhat.com> + + * locale/programs/ld-collate.c (collate_read): Allow order_start + after copy. + + * locale/programs/ld-collate.c (collate_read): Fix printing of + error message. + + [BZ #3213] + * locale/C-translit.h.in: Add entry for U2044. + + [BZ #4342] + * stdio-common/vfscanf.c (_IO_vfscanf_internal): Allow + hexa-decimal floats without exponent. + * stdio-common/tstscanf.c (main): Adjust Test 8 test for success. + +2007-04-25 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/sched.h: Declare sched_getcpu. + * sysdeps/unix/sysv/linux/sched_getcpu.c: New file. + * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: New file. + * sysdeps/unix/sysv/linux/Versions: Export sched_getcpu for + GLIBC_2.6. + * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (sysdep_routines): + Add sched_getcpu. + +2007-04-25 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/check_pf.c (make_request): Return -1 instead + of 0 after the out_fail label. + +2007-04-25 Ulrich Drepper <drepper@redhat.com> + + [BZ #4406] + * iconv/gconv_charset.h (strip): Allow ':'. + * iconv/iconv_open.c (iconv_open): Adjust comment. + +2007-04-25 Jakub Jelinek <jakub@redhat.com> + + * libio/bits/stdio.h (fgetc_unlocked): Add extern inline optimized + version. + +2007-04-23 Jakub Jelinek <jakub@redhat.com> + + [BZ #4381] + * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Ensure sufficient + alignment of buffer and tmp_buffer. + * nis/nss_nis/nis-hosts.c (internal_nis_gethostent_r, + internal_gethostbyname2_r, _nss_nis_gethostbyaddr_r): Ensure sufficient + alignment of buffer. + * resolv/nss_dns/dns-hosts.c (getanswer_r): Likewise. Handle buflen + bigger than INT_MAX. + * resolv/nss_dns/dns-network.c (getanswer_r): Likewise. Add errnop and + h_errnop arguments. Fail if buflen is too small. + (_nss_dns_getnetbyname_r, _nss_dns_getnetbyaddr_r): Adjust callers. + +2007-04-23 Jakub Jelinek <jakub@redhat.com> + + [BZ #4405] + * iconvdata/gconv-modules (E13B): Add a missing slash to the alias + name. Patch by Aurelien Jarno <aurelien@aurel32.net>. + +2007-04-22 Roland McGrath <roland@redhat.com> + + * elf/elf.h (NT_PRXFPREG): New macro. + +2007-04-19 Andreas Jaeger <aj@suse.de> + + [BZ #3905] + * bits/in.h (IPV6_ROUTER_ALERT, IPV6_MTU_DISCOVER, IPV6_MTU, + IPV6_RECVERR, IPV6_V6ONLY, IPV6_JOIN_ANYCAST, IPV6_LEAVE_ANYCAST): + Added. + +2007-04-19 Ulrich Drepper <drepper@redhat.com> + + * include/sys/mman.h: Mark madvise hidden. + * misc/madvise.c: Add libc_hidden_def. + +2007-04-06 Jakub Jelinek <jakub@redhat.com> + + * nis/nis_domain_of.c (__nis_domain_of): New function. + * include/rpcsvc/nislib.h (__nis_domain_of): New prototype. + * nis/nis_lookup.c (nis_lookup): Use __nis_domain_of. + * nis/nis_call.c (rec_dirsearch): Likewise. + (first_shoot): Likewise. Remove search_parent_first argument. + (struct nis_server_cache): Rename search_parent_first field + to search_parent. + (nis_server_cache_search, nis_server_cache_add): Rename + search_parent_first argument to search_parent. + (__nisfind_server): Likewise. If search_parent, call + __nis_domain_of. + +2007-04-18 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/getaddrinfo.c: Remove commented-out code. + +2007-04-17 Ulrich Drepper <drepper@redhat.com> + + [BZ #4368] + * stdlib/stdlib.h: Remove obsolete part of comment for realpath. + +2007-04-16 Ulrich Drepper <drepper@redhat.com> + + [BZ #4364] + * posix/unistd.h (_XOPEN_VERSION): Define appropriately for SUSv3. + +2007-04-15 Jakub Jelinek <jakub@redhat.com> + + * locale/programs/locarchive.c (INITIAL_NUM_NAMES, + INITIAL_SIZE_STRINGS, INITIAL_NUM_LOCREC): Update to accomodate + current number of locales in SUPPORTED. + (create_archive): Initialize serial. + (enlarge_archive): Preserve aliases rather than duplicating + their locrecs. + +2007-04-13 Jakub Jelinek <jakub@redhat.com> + + * libio/genops.c (_IO_default_finish): Call _IO_lock_fini + after _IO_un_link, not before it. + + * stdio-common/printf_fp.c (___printf_fp): Fix exponent -4 + special case handling when wcp == wstartp + 1. Fix a comment typo. + * stdio-common/tfformat.c (sprint_doubles): Add a new testcase. + +2007-03-30 Jakub Jelinek <jakub@redhat.com> + + * libio/libio.h (__underflow, __uflow, __overflow, __wunderflow, + __wuflow, __woverflow, _IO_getc, _IO_putc, _IO_peekc_locked, _IO_padn, + _IO_sgetn, _IO_seekoff, _IO_seekpos, _IO_getwc, _IO_putwc, _IO_wpadn): + Remove __THROW. + * libio/fileops.c (new_do_write, _IO_file_xsgetn_mmap, + _IO_file_xsgetn_maybe_mmap): Likewise. + * libio/oldfileops.c (old_do_write): Likewise. + * libio/libioP.h (_IO_switch_to_get_mode, _IO_switch_to_wget_mode, + _IO_init_marker, _IO_init_wmarker, _IO_default_uflow, + _IO_wdefault_uflow, _IO_default_setbuf, _IO_default_seekpos, + _IO_do_write, _IO_new_do_write, _IO_old_do_write, _IO_wdo_write, + _IO_flush_all_lockp, _IO_flush_all, _IO_cleanup, + _IO_flush_all_linebuffered, _IO_new_fgetpos, _IO_old_fgetpos, + _IO_new_fsetpos, _IO_old_fsetpos, _IO_new_fgetpos64, + _IO_old_fgetpos64, _IO_new_fsetpos64, _IO_old_fsetpos64, + _IO_file_setbuf, _IO_file_seekoff, _IO_file_xsputn, _IO_file_xsgetn, + _IO_file_underflow, _IO_file_underflow_mmap, + _IO_file_underflow_maybe_mmap, _IO_file_overflow, _IO_file_attach, + _IO_file_open, _IO_file_fopen, _IO_file_write, _IO_file_read, + _IO_file_sync, _IO_file_close_it, _IO_file_finish, + _IO_new_file_attach, _IO_new_file_close_it, _IO_new_file_finish, + _IO_new_file_fopen, _IO_new_file_setbuf, _IO_file_setbuf_mmap, + _IO_new_file_sync, _IO_new_file_underflow, _IO_new_file_overflow, + _IO_new_file_seekoff, _IO_new_file_write, _IO_new_file_xsputn, + _IO_old_file_setbuf, _IO_old_file_seekoff, _IO_old_file_xsputn, + _IO_old_file_underflow, _IO_old_file_overflow, _IO_old_file_attach, + _IO_old_file_fopen, _IO_old_file_write, _IO_old_file_sync, + _IO_old_file_close_it, _IO_old_file_finish, _IO_wfile_xsputn, + _IO_wfile_setbuf, _IO_wfile_sync, _IO_wfile_underflow, + _IO_wfile_overflow, _IO_wfile_seekoff, _IO_old_proc_open, + _IO_old_proc_close, _IO_getdelim, _IO_flush_all_internal, + _IO_adjust_column_internal, _IO_default_uflow_internal, + _IO_default_xsgetn_internal, _IO_wdefault_xsputn_internal, + _IO_wdefault_xsgetn_internal, _IO_wdefault_uflow_internal, + _IO_file_setbuf_internal, _IO_file_seekoff_internal, + _IO_file_xsputn_internal, _IO_file_xsgetn_internal, + _IO_file_close_it_internal, _IO_file_underflow_internal, + _IO_file_overflow_internal, _IO_file_attach_internal, + _IO_file_fopen_internal, _IO_file_sync_internal, + _IO_file_finish_internal, _IO_wfile_xsputn_internal, + _IO_wfile_seekoff_internal, _IO_wfile_sync_internal, + _IO_switch_to_wget_mode_internal, _IO_padn_internal, + _IO_switch_to_get_mode_internal, _IO_seekoff_unlocked, + _IO_seekpos_unlocked): Likewise. + (_IO_strtod, _IO_dtoa, _IO_outfloat, _IO_read, _IO_write, + _IO_lseek, _IO_close, _IO_fstat): Remove unused prototypes. + +2007-04-16 Jakub Jelinek <jakub@redhat.com> + + * locale/programs/locarchive.c (show_archive_content): Fix sizeof + argument in xmalloc size computation. + +2007-04-01 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (__nextafterl): Use + math_opt_barrier and math_force_eval macros. + +2007-03-27 Jakub Jelinek <jakub@redhat.com> + + [BZ #3306] + * math/math_private.h (math_opt_barrier, math_force_eval): Define. + * sysdeps/i386/fpu/math_private.h: New file. + * sysdeps/x86_64/fpu/math_private.h: New file. + * math/s_nexttowardf.c (__nexttowardf): Use math_opt_barrier and + math_force_eval macros. Use "+m" constraint on asm rather than + "=m" and "m". + * math/s_nextafter.c (__nextafter): Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c (__nexttoward): + Likewise. + * sysdeps/ieee754/flt-32/s_nextafterf.c (__nextafterf): Likewise. + * sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward): Likewise. + * sysdeps/ieee754/ldbl-96/s_nexttoward.c (__nexttoward): Likewise. + * sysdeps/i386/fpu/s_nextafterl.c (__nextafterl): Use + math_opt_barrier and math_force_eval macros. + * sysdeps/ieee754/ldbl-128/s_nextafterl.c (__nextafterl): Likewise. + * sysdeps/ieee754/ldbl-96/s_nextafterl.c (__nextafterl): Likewise. + * sysdeps/i386/fpu/s_nexttoward.c: Include float.h. + (__nexttoward): Use math_opt_barrier and + math_force_eval macros. Use "+m" constraint on asm rather than + "=m" and "m". Only use asm to force double result if + FLT_EVAL_METHOD is 2. + * sysdeps/i386/fpu/s_nexttowardf.c: Include float.h. + (__nexttowardf): Use math_opt_barrier and + math_force_eval macros. Use "+m" constraint on asm rather than + "=m" and "m". Only use asm to force double result if + FLT_EVAL_METHOD is not 0. + * sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c: Include float.h. + (__nexttowardf): Use math_opt_barrier and + math_force_eval macros. If FLT_EVAL_METHOD is not 0, force + x to float using asm. + * sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c: Include float.h. + (__nldbl_nexttowardf): Use math_opt_barrier and + math_force_eval macros. If FLT_EVAL_METHOD is not 0, force + x to float using asm. + * sysdeps/ieee754/ldbl-96/s_nexttowardf.c: Include float.h. + (__nexttowardf): Use math_opt_barrier and math_force_eval + macros. If FLT_EVAL_METHOD is not 0, force x to float using asm. + * math/bug-nextafter.c (zero, inf): New variables. + (main): Add new tests. + * math/bug-nexttoward.c (zero, inf): New variables. + (main): Add new tests. + +2007-03-22 Jakub Jelinek <jakub@redhat.com> + + [BZ #3427] + * sysdeps/x86_64/fpu/feholdexcpt.c (feholdexcept): Clear all + exceptions both in SW and MXCSR. + * sysdeps/x86_64/fpu/feupdateenv.c: New file. + * sysdeps/x86_64/fpu/feenablxcpt.c (feenableexcept): Remove dead code. + * sysdeps/x86_64/fpu/fedisblxcpt.c (fedisableexcept): Likewise. + * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions + in MXCSR if SSE is available. + * sysdeps/i386/fpu/feupdateenv.c: Include unistd.h, dl-procinfo.h + and ldsodefs.h. + (__feupdateenv): Query exceptions also from MXCSR if SSE is available. + Fix comment typo. + * sysdeps/ia64/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions. + Return 0 rather than 1. + * sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Fix comment typo. + Remove incorrect part of a comment. Fix argument to feraiseexcept. + * math/test-fenv.c (feholdexcept_tests): New function. + (main): Call it. + +2007-01-05 Richard B. Kreckel <kreckel@ginac.de> + + [BZ #3427] + * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions + in SW. + +2007-04-13 Jakub Jelinek <jakub@redhat.com> + + [BZ #4344] + * elf/ldconfig.c (search_dir): Fix 2 off-by-2 errors. + Reported by David Anderson <davea42@earthlink.net>. + +2007-04-07 Ulrich Drepper <drepper@redhat.com> + + * posix/sys/wait.h: Remove unnecessary forward declaration. + +2007-04-05 Jakub Jelinek <jakub@redhat.com> + + * nis/nis_call.c (__nisfind_server): Replace (*dir)->do_servers + with obj->do_servers after first_shoot. + +2007-04-03 Ulrich Drepper <drepper@redhat.com> + + * posix/Makefile (routines): Add sched_cpucount. + (tests): Add tst-cpucount. + * posix/sched_cpucount.c: New file. + * posix/tst-cpucount.c: New file. + * posix/Versions: Export __sched_cpucount with version GLIBC_2.6. + * bits/sched.h: Define __CPU_COUNT. Declare __sched_cpucount. + * sysdeps/unix/sysv/linux/bits/sched.h: Likewise. + * posix/sched.h: Define CPU_COUNT. + +2007-03-27 Jakub Jelinek <jakub@redhat.com> + + * posix/fnmatch.c (STRUCT): Define. + (fnmatch): Pass NULL as last argument to internal_fn{,w}match. + * posix/fnmatch_loop.c (struct STRUCT): New type. + (FCT): Add ends argument. If ends != NULL and normal * is + seen in the pattern, store current pattern and string pointers + and return. Adjust recursive calls. + (EXT): Adjust FCT callers. + (STRUCT): Undef at the end of the file. + * posix/Makefile (tests): Add tst-fnmatch2. + * posix/tst-fnmatch2.c: New test. + +2007-04-01 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/ia64/fpu/fesetround.c (fesetround): Return 0 on success + and 1 on failure. + + * sysdeps/unix/sysv/linux/sync_file_range.c (sync_file_range): + Change last argument to unsigned int. + +2007-03-23 Jakub Jelinek <jakub@redhat.com> + + * scripts/check-local-headers.sh: Filter out sys/capability.h. + +2007-03-22 Jakub Jelinek <jakub@redhat.com> + + * config.h.in (HAVE_LIBCAP): Add. + * nscd/selinux.h: Include sys/capability.h rather than non-existent + sys/capabilities.h. + * nscd/selinux.c (preserve_capabilities): Use cap_free instead of + free_caps. Cast away const from 4th cap_set_flag argument. + +2007-03-26 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/Versions: Move sync_file_range to + GLIBC_2.6. + * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): + Add sync_file_range. + Reported by Atsushi Nemoto <anemo@mba.ocn.ne.jp>. + +2007-03-19 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/bits/atomic.h + [!MUTEX_HINT_ACQ]: Define MUTEX_HINT_ACQ. + [!MUTEX_HINT_REL]: Define MUTEX_HINT_REL. + (__arch_compare_and_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx. + (__arch_compare_and_exchange_val_32_rel): Add MUTEX_HINT_REL to lwarx. + (__arch_atomic_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx. + (__arch_atomic_exchange_rel_32_rel): Add MUTEX_HINT_REL to lwarx. + * sysdeps/powerpc/powerpc32/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6X]: + Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0". + (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx. + (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx. + * sysdeps/powerpc/powerpc64/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6D]: + Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0". + (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx. + (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx. + (__arch_compare_and_exchange_bool_64_acq): Add MUTEX_HINT_ACQ to lwarx. + (__arch_compare_and_exchange_bool_64_rel): Add MUTEX_HINT_REL to lwarx. + (__arch_compare_and_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx. + (__arch_compare_and_exchange_val_64_rel): Add MUTEX_HINT_REL to lwarx. + (__arch_atomic_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx. + (__arch_atomic_exchange_rel_64_rel): Add MUTEX_HINT_REL to lwarx. + +2007-03-20 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/powerpc/libc-start.c + (__cache_line_size): Define the variable here. Add + attribute_hidden, remove weak_extern. + (__libc_start_main): Set __cache_line_size + unconditionally. + * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c + (__cache_line_size): Define the variable here. Add + attribute_hidden, remove weak_extern. + (DL_PLATFORM_AUXV): Set __cache_line_size + unconditionally. + * sysdeps/powerpc/powerpc32/dl-machine.c (__cache_line_size): Remove + weak_extern, add attribute_hidden. + (__elf_machine_runtime_setup): Assume __cache_line_size is always + defined in ld.so. + * sysdeps/powerpc/powerpc32/memset.S (__cache_line_size): Remove + definition. + * sysdeps/powerpc/powerpc64/memset.S (__cache_line_size): Likewise. + +2007-03-26 Jakub Jelinek <jakub@redhat.com> + + [BZ #4276] + * timezone/africa: Update from tzdata2007d. + * timezone/asia: Likewise. + * timezone/australasia: Likewise. + * timezone/backward: Likewise. + * timezone/europe: Likewise. + * timezone/iso3166.tab: Likewise. + * timezone/leapseconds: Likewise. + * timezone/northamerica: Likewise. + * timezone/southamerica: Likewise. + * timezone/zone.tab: Likewise. + + * timezone/private.h: Update from tzcode2007d. + * timezone/zdump.c: Likewise. + * timezone/zic.c: Likewise. + +2007-03-21 Jakub Jelinek <jakub@redhat.com> + + * nis/nis_call.c: Include bits/libc-lock.h, sys/stat.h, unistd.h. + (nis_server_cache, nis_server_cache_lock, nis_cold_start_mtime): New + variables. + (nis_server_cache_search, nis_server_cache_add): New functions. + (__nisfind_server): Use them. Add dbp and flags argument, if + call __nisbind_create. + (__nisbind_create): Add server_used and current_ep arguments, + only call __nis_findfastest if server_used is ~0. + (__do_niscall2, __prepare_niscall): Adjust callers. + (ckey_cache, ckey_cache_size, ckey_cache_allocated, ckey_cache_pid, + ckey_cache_euid, ckey_cache_lock): New variables. + (get_ckey): New function. + (__nisbind_connect): If not dbp->use_udp, pass IPPROTO_TCP to + __pmap_getnisport. Save __pmap_getnisport result in + dbp->addr.sin_port if non-zero. Use get_ckey to create conversation + key. + * nis/nis_lookup.c (nis_lookup): Likewise. + * nis/nis_table.c (nis_list): Likewise. + * nis/rpcsvc/nislib.h (__nisbind_create, __nisfind_server): Adjust + prototypes. + + * nis/nss_nisplus/nisplus-pwd.c (_nss_nisplus_getpwnam_r, + _nss_nisplus_getpwuid_r): Pass USE_DGRAM flag to nis_list. + * nis/nss_nisplus/nisplus-service.c (_nss_nisplus_getservbyname_r, + _nss_nisplus_getservbyport_r): Likewise. + * nis/nss_nisplus/nisplus-network.c (_nss_nisplus_getnetbyname_r, + _nss_nisplus_getnetbyaddr_r): Likewise. + * nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_getspnam_r): Likewise. + * nis/nss_nisplus/nisplus-ethers.c (_nss_nisplus_gethostton_r, + _nss_nisplus_getntohost_r): Likewise. + * nis/nss_nisplus/nisplus-rpc.c (_nss_nisplus_getrpcbyname_r, + _nss_nisplus_getrpcbynumber_r): Likewise. + +2007-03-20 Jakub Jelinek <jakub@redhat.com> + + * configure.in (libc_cv_gnu89_inline): Only do compile test. + * configure: Rebuilt. + + * soft-fp/double.h (_FP_UNION_D): Use _FP_W_TYPE for frac + bit-fields. + * soft-fp/extended.h (_FP_UNION_E): Likewise. + +2006-06-07 Joseph Myers <joseph@codesourcery.com> + + [BZ #2831] + * soft-fp/quad.h (_FP_UNION_Q): Use _FP_W_TYPE for frac + bit-fields. + +2007-03-18 Jakub Jelinek <jakub@redhat.com> + + * nscd/gai.c: Include alloca.h. + (__libc_use_alloca): Define. + +2007-03-16 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-open.c (dl_open_worker): Declare l in 2 different + smaller scopes. + * elf/dl-dst.h (DL_DST_REQ_STATIC): Add l as macro argument. + (DL_DST_REQUIRED): Adjust user. + + * include/dlfcn.h (struct link_map): New forward decl. + + * inet/getnameinfo.c: Include stddef.h. + (getnameinfo): Use offsetof. + + * time/tst-mktime2.c (do_test): Don't rely on signed wrap. + + * stdio-common/vfprintf.c (_itoa): Undef before redefining. + + * string/strerror_l.c: Include stdlib.h. + + * configure.in (libc_cv_gnu89_inline): Test for -fgnu89-inline. + * config.make.in (gnu89-inline-CFLAGS): New variable. + * Makeconfig (CFLAGS): Use $(gnu89-inline-CFLAGS) together with + -std=gnu99. + * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Define. + * argp/argp.h: Use it. + * bits/mathinline.h: Likewise. + * bits/sigset.h: Likewise. + * bits/string.h: Likewise. + * ctype/ctype.h: Likewise. + * hurd/hurd.h: Likewise. + * hurd/hurd/fd.h: Likewise. + * hurd/hurd/port.h: Likewise. + * hurd/hurd/signal.h: Likewise. + * hurd/hurd/threadvar.h: Likewise. + * hurd/hurd/userlink.h: Likewise. + * io/sys/stat.h: Likewise. + * libio/bits/stdio.h: Likewise. + * libio/bits/stdio2.h: Likewise. + * mach/lock-intern.h: Likewise. + * mach/mach/mig_support.h: Likewise. + * math/bits/cmathcalls.h: Likewise. + * posix/bits/unistd.h: Likewise. + * socket/bits/socket2.h: Likewise. + * stdlib/bits/stdlib.h: Likewise. + * stdlib/stdlib.h: Likewise. + * string/argz.h: Likewise. + * string/bits/string2.h: Likewise. + * string/bits/string3.h: Likewise. + * sysdeps/alpha/fpu/bits/mathinline.h: Likewise. + * sysdeps/generic/inttypes.h: Likewise. + * sysdeps/generic/machine-lock.h: Likewise. + * sysdeps/generic/machine-sp.h: Likewise. + * sysdeps/i386/fpu/bits/mathinline.h: Likewise. + * sysdeps/i386/i486/bits/string.h: Likewise. + * sysdeps/ia64/fpu/bits/mathinline.h: Likewise. + * sysdeps/mach/alpha/machine-lock.h: Likewise. + * sysdeps/mach/alpha/machine-sp.h: Likewise. + * sysdeps/mach/i386/machine-lock.h: Likewise. + * sysdeps/mach/powerpc/machine-lock.h: Likewise. + * sysdeps/mach/powerpc/machine-sp.h: Likewise. + * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise. + * sysdeps/s390/bits/string.h: Likewise. + * sysdeps/s390/fpu/bits/mathinline.h: Likewise. + * sysdeps/sparc/fpu/bits/mathinline.h: Likewise. + * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise. + * sysdeps/unix/sysv/linux/bits/sigset.h: Likewise. + * sysdeps/unix/sysv/linux/bits/socket.h: Likewise. + * sysdeps/unix/sysv/linux/sys/sysmacros.h: Likewise. + * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise. + * wcsmbs/bits/wchar2.h: Likewise. + * wcsmbs/wchar.h: Likewise. + * stdlib/gmp.h: Likewise. Include <features.h> to get + __extern_inline definition. + +2007-03-15 Jakub Jelinek <jakub@redhat.com> + + * locale/programs/ld-ctype.c (find_translit): Return NULL if ctype is + NULL. + + [BZ #3919] + * math/libm-test.inc (log_test): Test -Inf and NaN. + (log10_test, log1p_test, log2_test): Test -Inf. + * sysdeps/i386/fpu/e_log.S (__ieee754_log): Don't raise + FE_INVALID when argument is qNaN. + * sysdeps/i386/fpu/e_logl.S (__ieee754_logl): Likewise. + * sysdeps/i386/fpu/e_logf.S (__ieee754_logf): Likewise. + * sysdeps/x86_64/fpu/e_logl.S (__ieee754_logl): Likewise. + * sysdeps/x86_64/fpu/e_log10l.S (__ieee754_log10l): Replace + andb $1, %ah with testb $1, %ah, don't test for parity, instead + testb $4, %ah and jump if non-zero. + * sysdeps/x86_64/fpu/e_log2l.S (__ieee754_log2l): Likewise. + * sysdeps/x86_64/fpu/s_log1pl.S (__log1pl): Likewise. + + [BZ #4101] + * argp/argp-help.c (hol_cluster_cmp): Fix comparisons used to find + ancestors with the same depths. + Patch by Niels Moeller <nisse@lysator.liu.se>. + (filter_doc): Don't crash if argp is NULL. + * argp/Makefile (tests): Add tst-argp2. + * argp/tst-argp2.c: New test. + + [BZ #4130] + * login/utmp_file.c (setutent_file): Use O_LARGEFILE for + open_not_cancel_2. + (updwtmp_file): Likewise. + + [BZ #4181] + * inet/inet6_opt.c (add_padding): Only insert padding if npad > 0. + (inet6_opt_append): Don't check extlen is big enough if extbuf + is NULL. + (inet6_opt_finish): Likewise. + * inet/Makefile (tests): Add test-inet6_opt. + * inet/test-inet6_opt.c: New test. + + * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Never + reallocate the buffer, instead fail for MSG_TRUNC or for EBUSY + NLMSG_ERR. Instead use a page sized buffer. + * sysdeps/unix/sysv/linux/check_pf.c (make_request): Use page sized + buffer. + +2007-03-14 Richard Henderson <rth@redhat.com> + + * sysdeps/alpha/fpu/s_llround.c: New file. + * sysdeps/alpha/fpu/s_llroundf.c: New file. + * sysdeps/alpha/fpu/s_lround.c: New file. + * sysdeps/alpha/fpu/s_lroundf.c: New file. + * sysdeps/alpha/fpu/s_round.c: New file. + * sysdeps/alpha/fpu/s_roundf.c: New file. + * sysdeps/alpha/fpu/s_trunc.c: New file. + * sysdeps/alpha/fpu/s_truncf.c: New file. + + * sysdeps/alpha/fpu/s_ceil.c: Rewrite without branches. + * sysdeps/alpha/fpu/s_ceilf.c: Likewise. + * sysdeps/alpha/fpu/s_floor.c: Likewise. + * sysdeps/alpha/fpu/s_floorf.c: Likewise. + * sysdeps/alpha/fpu/s_rint.c: Likewise. + * sysdeps/alpha/fpu/s_rintf.c: Likewise. + + * sysdeps/alpha/fpu/s_fmax.S: New file. + * sysdeps/alpha/fpu/s_fmaxf.S: New file. + * sysdeps/alpha/fpu/s_fmin.S: New file. + * sysdeps/alpha/fpu/s_fminf.S: New file. + * sysdeps/alpha/fpu/s_isnan.c: New file. + * sysdeps/alpha/fpu/s_isnanf.c: New file. + * sysdeps/alpha/fpu/s_llrint.c: New file. + * sysdeps/alpha/fpu/s_llrintf.c: New file. + * sysdeps/alpha/fpu/s_lrint.c: New file. + * sysdeps/alpha/fpu/s_lrintf.c: New file. + * sysdeps/alpha/fpu/s_nearbyint.c: New file. + * sysdeps/alpha/fpu/s_nearbyintf.c: New file. + + * sysdeps/alpha/fpu/bits/mathinline.h (__floorf, __floor): Remove. + (__fdimf, fdimf, __fdim, fdim): Remove. + (__signbitf, __signbit, __signbitl): Use gcc builtin if available. + (__isnanf, __isnan, __isnanl): New. + +2007-03-13 Richard Henderson <rth@redhat.com> + + * sysdeps/ieee754/ldbl-128/Makefile: New file. + +2007-03-13 Richard Henderson <rth@redhat.com> + + * sysdeps/alpha/Makefile (sysdep-CFLAGS): Force dynamic rounding. + * sysdeps/alpha/fpu/bits/mathinline.h (__signbitl): New. + * sysdeps/alpha/fpu/libm-test-ulps: Regenerate. + * sysdeps/unix/sysv/linux/alpha/alphaev6/fpu/Implies: New file. + * sysdeps/unix/sysv/linux/alpha/alphaev67/fpu/Implies: New file. + * sysdeps/unix/sysv/linux/alpha/fpu/Implies: New file. + +2007-03-13 Richard Henderson <rth@redhat.com> + + * elf/dl-support.c (_dl_aux_init): Honor DL_PLATFORM_AUXV. + * sysdeps/unix/sysv/linux/alpha/dl-auxv.h: New file. + * sysdeps/unix/sysv/linux/alpha/dl-support.c: New file. + * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c (__libc_alpha_cache_shape): + Move to dl-auxv.h; initialize instead of extern weak. + (DL_PLATFORM_AUXV): Move to dl-auxv.h; don't test for undef + weak symbol. + * sysdeps/unix/sysv/linux/alpha/sysconf.c (__libc_alpha_cache_shape): + Extern instead of initialized. + +2007-03-13 Richard Henderson <rth@redhat.com> + + * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add support for + __sigsuspend_nocancel. + +2007-03-06 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/getaddrinfo.c (get_scope): Correct test for + 172.16/12 address range. + +2007-03-02 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Retry with + a new netlink socket if NLMSG_ERR -EBUSY is seen after some MSG_TRUNC + message. + +2007-03-01 Jakub Jelinek <jakub@redhat.com> + + [BZ #4069] + * sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Check for NaN + earlier. + * math/libm-test.inc (pow_test): Add more tests involving NaNs. + + * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Avoid invalid exception + for x qNaN and y either +-inf or non-integer value. + * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Likewise. + * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise. + * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise. + +2007-02-10 Mike Frysinger <vapier@gentoo.org> + + * sysdeps/unix/sysv/linux/sh/Makefile: Remove sys/io.h + from sysdep_headers. + +2007-02-28 Jakub Jelinek <jakub@redhat.com> + + * time/tzfile.c (find_transition): Instead of a linear search try to + guess the transition index, use a linear search if the result is at + most 10 transitions away from the guess or binary search otherwise. + +2007-02-27 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Fix + memory reallocation. + +2007-02-21 Ulrich Drepper <drepper@redhat.com> + + * stdlib/strtod_l.c (____STRTOF_INTERNAL): Add branch predictions + and fix some typos. + Optimize use of TOLOWER. + + [BZ #3325] + * sysdeps/i386/fpu/e_fmodf.S: Revert last changes, keep using fprem. + * sysdeps/i386/fpu/e_fmodl.c: Likewise. + * sysdeps/i386/fpu/e_fmod.S: Likewise. + + [BZ #3458] + * sysdeps/unix/sysv/linux/posix_madvise.c: New file. + * sysdeps/unix/sysv/linux/syscalls.list: Remove posix_madvise entry. + + [BZ #4076] + * io/ftw.c (ftw_startup): Handle special case of FTW_CHDIR in /. + (open_dir_stream): Likewise. + * io/Makefile (tests): Add bug-ftw5. + * io/bug-ftw5.c: New file. + + * nscd/hstcache.c (cache_addhst): Remove unnecessary conditional. + * nscd/servicescache.c (cache_addserv): Likewise. + + * nscd/grpcache.c (cache_addgr): In case a record changed on + refresh, adjust key_copy. + + [BZ #4074] + * nscd/pwdcache.c (cache_addpw): In case a record changed on + refresh, adjust key_copy. + + [BZ #4070] + * stdio-common/printf_fp.c (___printf_fp): Handle a few more + special cases. + * stdio-common/tfformat.c (sprint_doubles): Some more tests. + +2007-02-19 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/printf_fp.c (___printf_fp): Cleanups and minor + optimization. + + * stdio-common/vfscanf.c: Small cleanups throughout. + +2007-02-18 Ulrich Drepper <drepper@redhat.com> + + [BZ #3325] + * sysdeps/i386/fpu/e_fmodf.S: Use fprem1 instead of fprem. + * sysdeps/i386/fpu/e_fmodl.c: Likewise. + * sysdeps/i386/fpu/e_fmod.S: Likewise. + Patch by Jared Casper <jaredcasper@gmail.com>. + + * sysdeps/unix/closedir.c: Outside libc don't use locking. + * sysdeps/unix/opendir.c: Likewise. + * sysdeps/unix/readdir.c: Likewise. + + [BZ #2211] + * stdio-common/vfscanf.c: Handle localized digits etc for floating + point numbers. + Patch mostly by Hamed Malek <hamed@farsiweb.info>. + + * stdio-common/vfscanf.c: Fix problems in width accounting. + * stdio-common/tst-sscanf.c (double_tests): New tests. + (main): Hook them up. + + * stdio-common/vfscanf.c: Remove unused WIDTH handling. + More simplifications of floating-point reader. + + * stdio-common/Makefile (tests): Add tst-swscanf. + * stdio-common/tst-sscanf.c: Make tests usable for swscanf + testing. + * stdio-common/tst-swscanf.c: New file. + +2007-02-17 Ulrich Drepper <drepper@redhat.com> + + [BZ #2633] + * libio/stdio.h: Define struct _IO_FILE in global namespace. + * setjmp/setjmp.h: Define __jmp_buf_tag in global namespace. + Remove using for __jmp_buf_tag. + * locale/locale.h (struct lconv): Also define in std namespace. + * wcsmbs/wchar.h: Move using declaration for tm out of namespace. + + [BZ #3842] + * sysdeps/posix/euidaccess.c [_LIBC] (euidaccess): Remove shortcut + using __libc_enable_secure. + + [BZ #3818] + * sysdeps/unix/sysv/linux/sys/acct.h (struct acct_v3): Define. + + [BZ #3745] + * locale/programs/ld-collate.c (handle_ellipsis): Fix generation + of names for ellipsises. + + [BZ #3348] + * malloc/memusage.sh: Cleanups. + * debug/xtrace.sh: Quoting and trap changes. + +2007-02-16 Ulrich Drepper <drepper@redhat.com> + + * locale/iso-3166.def: Add Jersey, Guernsey, and Isle Of Man entries. + + * locale/iso-3166.def: Update entry for Serbia. + * locale/iso-4217.def: Define RSD, remove CSD. + + * sysdeps/x86_64/bits/atomic.h: One more change, this time for 16- + and 64-bit operations. + + [BZ #4040] + * sysdeps/i386/i486/bits/atomic.h: One more change, this time for + 16-bit operations. + + * nscd/nscd.c (parse_opt): One more conversion to use send instead + of writev. + +2007-02-15 Ulrich Drepper <drepper@redhat.com> + + [BZ #3991] + * assert/assert.h (assert): Simplify. + (assert_perror): Likewise. + Patch by Israel G. Lugo <ilugo@bridonsecurity.com>. + + * nscd/nscd_helper.c (open_socket): Don't send padding bytes from + reqdata. + + * sysdeps/unix/sysv/linux/x86_64/send.c (__libc_send): Cosmetic + change: don't pass NULL in place of an integer. + +2007-02-02 Bruno Haible <bruno@clisp.org> + + [BZ #3954] + * iconvdata/ksc5601.c (__ksc5601_sym_to_ucs, __ksc5601_sym_from_ucs): + Add mapping for U+327E. + * iconvdata/ksc5601.h (KSC5601_SYMBOL): Increment. + * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable + mapping of 0xD9 0xE8. + * iconvdata/uhc.c (BODY for FROM_LOOP, BODY for TO_LOOP): Disable + mapping of U+327E. + Reported by Jungshik Shin <jungshik@google.com>. + + [BZ #3955] + * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable + mapping of 0xD9 0xE6 and of 0xD9 0xE7. + Reported by Jungshik Shin <jungshik@google.com>. + +2007-02-14 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/bits/atomic;h: Fix asm parameters for some + byte variants. + + [BZ #4040] + * sysdeps/i386/i486/bits/atomic.h: Fix asm parameters for some + byte variants. Patch mostly be tom@tommay.net. + +2007-02-14 Jakub Jelinek <jakub@redhat.com> + + [BZ #3996] + * posix/glob.c (attribute_hidden): Define if not defined. + (glob): Unescape dirname, filename or username when needed and not + GLOB_NOESCAPE. Handle \/ correctly. Handle GLOB_MARK if filename + is NULL. Handle unescaped [ in pattern without closing ]. + Don't pass GLOB_CHECK down to recursive glob for directories. + (__glob_pattern_type): New function. + (__glob_pattern_p): Implement using __glob_pattern_type. + (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta + characters and backslashes if not GLOB_NOESCAPE or unterminated [. + Remove unreachable code. + * posix/globtest.sh: Add a couple of new tests. + +2007-02-13 Ulrich Drepper <drepper@redhat.com> + + * po/ru.po: Update from translation team. + +2007-02-12 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __amdfam10__ + to the list of i486+ CPUs. + * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise. + +2007-02-12 Ulrich Drepper <drepper@redhat.com> + + * elf/rtld.c (RESOLVE_MAP): Always return bootstrap_map reference. + * elf/Makefile ($(objpfx)ld.so): Check that ld.so has no undefined + references. + +2007-02-09 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Remove incorrect comment. + + * resolv/res_init.c (res_setoptions): Recognize edns0 option. + * resolv/res_mkquery.c: Define __res_nopt. + * resolv/res_query.c (__libc_res_nquery): If RES_USE_EDNS0 is set + try adding EDNS0 record. + * resolv/res_send.c (send_dg): If request failed with FORMERR and + EDNS0 record was send make sure we don't try it again. + * resolv/resolv.h: Define RES_F_EDNS0ERR and RES_USE_EDNS0. + * include/resolv.h: Declare __res_nopt. + +2007-02-08 Jakub Jelinek <jakub@redhat.com> + + [BZ #3944] + * time/strptime_l.c (__strptime_internal): Set have_mon for + %b/%B/%h. Set have_mon and have_mday if tm_mon and tm_mday + have been computed from tm_yday and tm_year. Don't crash + in day_of_the_week or day_of_the_year if not have_mon + and tm_mon contains bogus value. + * time/Makefile (tests): Add tst-strptime3. + * time/tst-strptime3.c: New test. + +2007-02-05 Jakub Jelinek <jakub@redhat.com> + + [BZ #3957] + * posix/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0' + bit for RE_HAT_LISTS_NOT_NEWLINE. + (build_charclass_op): Remove bogus comment. + * posix/Makefile (tests): Add bug-regex27 and bug-regex28. + * posix/bug-regex27.c: New test. + * posix/bug-regex28.c: New test. + +2007-02-03 Ulrich Drepper <drepper@redhat.com> + + * po/sv.po: Update from translation team. + +2007-02-02 Ulrich Drepper <drepper@redhat.com> + + * nscd/nscd_helper.c (open_socket): Minor size optimization. + +2007-02-02 Jakub Jelinek <jakub@redhat.com> + + * include/locale.h (__uselocale): Add libc_hidden_proto. + * locale/uselocale.c (__uselocale): Add libc_hidden_def. + + * nscd/nscd_helper.c (open_socket): Use __gettimeofday instead of + gettimeofday. + +2007-02-01 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/i386/sysdep.h (PTR_MANGLE): Roll value before + returning. + (PTR_DEMANGLE): Real definition now that it's not the same as + PRT_MANGLE anymore. + * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise. + + * string/strerror_l.c: New file. + * string/Makefile (routines): Add strerror_l. + * string/string.h: Declare strerror_l. + * string/Versions: Export strerror_l for GLIBC_2.6. + +2007-01-31 Ulrich Drepper <drepper@redhat.com> + + * nscd/nscd_helper.c (open_socket): Now takes request type and key + as parameter. Construct request record. Try sending request + before the first poll use, it usually succeeds. Adjust all + callers. + * nscd/nscd-client.h: Define MAXKEYLEN. + * nscd/connections.c (nscd_run): Don't define MAXKEYLEN here. + +2007-01-31 Jakub Jelinek <jakub@redhat.com> + + * nscd/nscd-client.h (__nscd_cache_search): Remove const qualifier + from return value. + * nscd/nscd_helper.c: Include string.h. + (__nscd_cache_search): Remove const qualifier from return value. + On strict alignment architectures check hash entry and data head + alignment. + * nscd/nscd_getpw_r.c (nscd_getpw_r): Don't crash or fail because + mmapped data during GC cycle contains garbage. If + __nscd_drop_map_ref fails, decrement mapped->counter when returning + error or if retrying with NO_MAPPING, only __nscd_unmap if counter + dropped to 0. + * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise. + * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise. + * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise. + * nscd/nscd_getai.c (__nscd_getai): Likewise. + * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise. + +2007-01-30 Ulrich Drepper <drepper@redhat.com> + + * misc/hsearch_r.c (hdestroy_r): Remove unnecessary test. + +2007-01-26 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Use register + names not numbers in cfi_*. + +2007-01-26 Andreas Jaeger <aj@suse.de> + + * sysdeps/unix/sysv/linux/sys/personality.h (ADDR_NO_RANDOMIZE, + ADDR_LIMIT_3GB, PER_LINUX_32BIT, PER_LINUX32_3GB): Add. + Correct values of PER_HPUX and PER_OSF4. + +2007-01-24 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-minimal.c: Undefine _itoa first. + * stdio-common/_itoa.h: Define _itoa and _fitoa for 64-bit platforms. + * malloc/mtrace.c: Revert last change. + * posix/wordexp.c: Likewise. + +2007-01-24 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __nocona__, __core2__ + and __geode__ to the list of i486+ CPUs. + * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise. + +2007-01-23 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/_itoa.c: Include <limits.h>. + * stdio-common/_itowa.c: Likewise. + +2007-01-22 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/_itowa.c: Don't compile _itowa for 64-bit + platforms. + * stdio-common/_itoa.c: Don't compile in _itoa and _fitoa for + 64-bit platforms. + * malloc/mtrace.c (tr_where): Use _fitoa_word instead of _fitoa if + possible. + * posix/wordexp.c (parse_arith): Use _itoa_word instead of _itoa + if possible. + + [BZ #3902] + * stdio-common/_itoa.c (_itoa): Make sure at least a zero is emitted. + * stdio-common/Makefile (tests): Add bug17. + * stdio-common/bug17.c: New file. + +2007-01-19 Ulrich Drepper <drepper@redhat.com> + + * iconvdata/brf.c: New file. + * iconvdata/testdata/BRF: New file. + * iconvdata/testdata/BRF..UTF8: New file. + Contributed by Samuel Thibault <samuel.thibault@ens-lyon.org>. + * iconvdata/Makefile: Add rules to build BRF. + * iconvdata/TESTS: Add BRF entry. + * iconvdata/gconv-modules: Likewise. + * iconvdata/tst-tables.sh: Likewise. + +2007-01-18 Anton Nikishaev <anton.nik@gmail.com> + + * wcsmbs/wchar.h (wcstoll): Fix comment, function returns value of + type `long long int', not `long int'. + (wcstoq): Likewise. + +2007-01-18 Ulrich Drepper <drepper@redhat.com> + + * scripts/gen-as-const.awk: Add cast to long to avoid int promotion + of values on 64-bit platforms which are too large. + +2007-01-12 Steven Munroe <sjmunroe@us.ibm.com> + Joe Kerian <jkerian@us.us.ibm.com> + + [BZ #2749] + * sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: Include + <math_ldbl_opt.h>. Remove weak_alias. Use long_double_symbol macro. + (__copysignl): Use signbit() for comparison. + * sysdeps/ieee754/ldbl-128ibm/s_fabsl.c (__fabsl): Correct parms for + SET_LDOUBLE_WORDS64. + + [BZ #2423, #2749] + * sysdeps/ieee754/ldbl-128ibm/s_ceill.c: Don't include <fenv_libc.h>. + (__ceill): Remove calls to fegetround(), fesetround(). + * sysdeps/ieee754/ldbl-128ibm/s_floorl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_roundl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_truncl.c: Likewise. + +2007-01-17 Jakub Jelinek <jakub@redhat.com> + + * nscd/nscd_getserv_r.c (nscd_getserv_r): Fix pastos. + + * sysdeps/unix/sysv/linux/getdents.c (offsetof): Remove. + +2007-01-17 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/fatal-prepare.h: Use PTHFCT_CALL to + demangle pointer. + * csu/libc-start.c: Likewise. + +2007-01-16 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/system.c: Remove NO_WAITPID support, it cannot + really work anyway. + +2007-01-15 Ulrich Drepper <drepper@redhat.com> + + * nscd/connections.c (servinfo): Renamed to reqinfo. Change all + users. + (handle_request): Remove unnecessary tests. + + * nscd/cache.c (cache_add): Record the failure to add to the cache. + +2007-01-15 Jakub Jelinek <jakub@redhat.com> + + * soft-fp/op-common.h (FP_TRUNC): When truncating a NaN, clear + workbits in semi-raw fraction. + + * math/test-misc.c: Add new tests. + +2007-01-14 Steven Munroe <sjmunroe@us.ibm.com> + + * math/basic-test.c: Include test-skeleton.c. + (TEST_TRUNC): Define. + (truncdfsf_test, trunctfsf_test, trunctfdf_test): New. + (main): Rename to ... + (do_test): ...this. Run new tests. + (TEST_FUNCTION): Define. + +2006-10-05 Steven Munroe <sjmunroe@us.ibm.com> + Joe Kerian <jkerian@us.us.ibm.com> + + [BZ #2749] + * soft-fp/op-4.h (__FP_FRAC_SUB_3, __FP_FRAC_SUB_4): Correct borrow + handling for high words. + * soft-fp/op-common.h (_FP_OVERFLOW_SEMIRAW): Always set inexact + and overflow for infinity. + +2007-01-15 Ulrich Drepper <drepper@redhat.com> + + * nscd/connections.c (handle_request): Add a __builtin_expect. + + * nscd/connections.c (serv2db): Change type into structure which + also says whether this is a request for data. Renamed to + servinfo. All users changed. + (handle_request): Much simpler test whether we should search the cache. + + * nscd/connections.c (handle_request): Fix thinko in selinux test + invocation. + + * sysdeps/generic/ldsodefs.h: Define DL_LOOKUP_SCOPE_LOCK. + * elf/dl-lookup.c (add_dependency): If scope map is locked, unlock + it before getting dl_load_lock and then relock. + (_dl_lookup_symbol_x): Pass flags to add_dependency. + When rerunning _dl_lookup_symbol_x, compute symbol_scope again in + case we unlocked the scope. + * elf/dl-runtime.c (_dl_fixup): Pass DL_LOOKUP_SCOPE_LOCK to + _dl_lookup_symbol_x in case we locked the scope. + (_dl_profile_fixup): Likewise. + * elf/dl-sym.c (do_sym): In flags passed to call_dl_lookup, also + set DL_LOOKUP_SCOPE_LOCK. + +2007-01-13 Ulrich Drepper <drepper@redhat.com> + + * inet/Makefile: Define CFLAGS-getsrvbynm_r.c and + CFLAGS-getsrvbynpt_r.c. + * nscd/getsrvbynm_r.c: New file. + * nscd/getsrvbypt_r.c: New file. + * nscd/nscd_getserv_r.c: New file. + * nscd/servicescache.c: New file. + * nscd/Makefile (routines): Add nscd_getserv_r. + (nscd-modules): Add getsrvbynm_r, getsrvbypt_r, and servicescache. + Define CFLAGS-servicescache.c, CFLAGS-getsrvbynm_r.c, and + CFLAGS-getsrvbypt_r.c. + * nscd/cache.c (prune_cache): Rewrite to get re-add function from + table. Add entries for services database. + * nscd/connections.c (serv2str): Mark as const. Add entries for + services database. + (dbs): Add .reset_res and servdb initialization. + (serv2db): Add entries for services database. + (verify_persistent_db): Accept dbnr == servdb. + (invalidate_cache): Rewrite database name recognition to use a table. + Call res_init() if .reset_res is set for database. + (handle_request): Add code to handle services database. + * nscd/gai.c: Don't define __getservbyname_r. + * nscd/nscd-client.h (request_type): Remove LASTDBREQ, add + GETSERVBYNAME, GETSERVBYPORT, GETFDSERV. + (serv_response_header): Define. + (struct datahead): Add serv_response_header member. + * nscd/nscd.c (parse_opt): Rewrite parsing of -i parameter value + using table. + * nscd/nscd.conf: Add entries for services database. + * nscd/nscd.h: Adjust declaration of dbnames and serv2str. + Declare serv_iov_disabled. + Declare addservbyname, readdservbyname, addservbyport, and + readdservbyport. + * nscd/nscd_conf.c (dbnames): Mark as const. Add services entry. + (find_db): Fix error message. + * nscd/nscd_proto.h: Declare __nss_not_use_nscd_services, + __nscd_getservbyname_r, and __nscd_getservbyport_r. + * nscd/selinux.c (perms): Add entries for services database. + * nss/Versions: Export __nss_services_lookup with GLIBC_PRIVATE. + * nss/nsswitch.c (__nss_disable_nscd): Also disable services database. + + * nscd/grpcache.c: Remove obsolete code. Cleanups. + * nscd/hstcache.c: Likewise. + * nscd/pwdcache.c: Likewise. + + * nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): Correct + computation of keylen. + + * include/string.h: Only redefine strndupa if this is really for + libc code. + +2007-01-12 Ulrich Drepper <drepper@redhat.com> + + * nscd/nscd_gethst_r.c: Minor cleanups. + + * nscd/connections.c (handle_request): Check selinux permissions + for all non-admin commands. + + * sysdeps/i386/i486/bits/atomic.h: Define + atomic_compare_and_exchange_val_acq, + atomic_compare_and_exchange_bool_acq, and atomic_exchange_and_add + using __sync_* built-ins for gcc >= 4.1. + * sysdeps/x86_64/bits/atomic.h: Likewise. + + [BZ #3840] + * scripts/check-local-headers.sh: Restrict to testing .o.d, .os.d, + and .oS.d files. + +2007-01-05 Steven Munroe <sjmunroe@us.ibm.com> + + * stdlib/tst-makecontext.c: Include errno.h. Change main() + to do_test(). Define TEST_FUNCTION. Include test-skeleton.c. + (do_test): Check errno and exit(0) if ENOSYS. + +2007-01-11 Jakub Jelinek <jakub@redhat.com> + + * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix handling of multi-byte + thousands separators. + * stdlib/Makefile: Add rules to build and run tst-strtod4. + * stdlib/tst-strtod4.c: New test. + + [BZ #3855] + * stdlib/strtod_l.c (____STRTOF_INTERNAL): 0x. not followed by + hexadecimal digit should accept just the initial 0. + * stdlib/tst-strtod2.c (tests): New variable. + (do_test): Run several tests rather than just one. + +2007-01-11 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/i386/soft-fp/sfp-machine.h: Remove. + * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise. + +2007-01-10 Ulrich Drepper <drepper@redhat.com> + + * io/fts.c: Make sure fts_cur is always valid after return from + fts_read. + Patch by Miloslav Trmac <mitr@redhat.com>. + +2006-10-27 Richard Sandiford <richard@codesourcery.com> + + * elf/elf.h (R_MIPS_GLOB_DAT): Define. + (R_MIPS_NUM): Bump by 1. + +2007-01-03 Jakub Jelinek <jakub@redhat.com> + + * posix/execvp.c: Include alloca.h. + (allocate_scripts_argv): Renamed to... + (scripts_argv): ... this. Don't allocate buffer here nor count + arguments. + (execvp): Use alloca if possible. + * posix/Makefile: Add rules to build and run tst-vfork3 test. + * posix/tst-vfork3.c: New test. + +2007-01-03 Ulrich Drepper <drepper@redhat.com> + + * string/Makefile (tst-strxfrm2-ENV): Define. + * stdlib/Makefile (tst-strtod3-ENV): Define. + +2007-01-02 Ulrich Drepper <drepper@redhat.com> + + * posix/getconf.c: Update copyright year. + * nss/getent.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. + +2006-12-24 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (sYSMALLOc): Remove some unnecessary alignment + attempts. + +2006-12-23 Ulrich Drepper <drepper@redhat.com> + + * posix/wordexp.c: Remove some unnecessary tests. + +2006-12-22 Gavin Romig-Koch <gavin@redhat.com> + + * nis/nss_compat/compat-grp.c (internal_getgrgid_r): Don't + blacklist the group till after we look it up. + +2006-12-21 Ulrich Drepper <drepper@redhat.com> + + * include/atomic.h (atomic_forced_read): New macro. + +2006-12-20 SUGIOKA Toshinobu <sugioka@itonet.co.jp> + + * sysdeps/unix/sysv/linux/sh/bits/shm.h: New file. + +2006-12-19 Jakub Jelinek <jakub@redhat.com> + + * nss/getXXbyYY_r.c: Include atomic.h. + (INTERNAL (REENTRANT_NAME)): Write startp after start_fct, + add atomic_write_barrier () in between. + + * stdlib/Makefile (tests): Add tst-makecontext. + * stdlib/tst-makecontext.c: New test. + + * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S + (__makecontext): Don't realign uc_mcontext.uc_regs. + +2006-11-28 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-support.c: Include dl-procinfo.h. + * sysdeps/powerpc/dl-procinfo.h (PPC_PLATFORM_POWER4, + PPC_PLATFORM_PPC970, PPC_PLATFORM_POWER5, PPC_PLATFORM_POWER5_PLUS, + PPC_PLATFORM_POWER6, PPC_PLATFORM_CELL_BE, PPC_PLATFORM_POWER6X): + Define. + (_dl_string_platform): Use PPC_PLATFORM_* macros instead of + hardcoded constants. + * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_platform): Use + PPC_PLATFORM_* macros for array designators. + +2006-11-11 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 3 new cap + names to the beginning. + (_dl_powerpc_platforms): Add "power6x". + * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease. + (HWCAP_IMPORTANT): Add PPC_FEATURE_HAS_DFP. + (_DL_PLATFORMS_COUNT): Increase. + (_dl_string_platform): Handle power6x case. + * sysdeps/powerpc/sysdep.h (PPC_FEATURE_PA6T, PPC_FEATURE_HAS_DFP, + PPC_FEATURE_POWER6_EXT): Define. + (PPC_FEATURE_POWER5, PPC_FEATURE_POWER5_PLUS): Correct Comment. + +2006-12-18 Jakub Jelinek <jakub@redhat.com> + + [BZ #3747] + * stdlib/jrand48_r.c (__jrand48_r): Make sure result is in the + [-2^31 .. 2^31) range. + * stdlib/tst-rand48.c (main): Fix expected values for 64-bit + targets. + * stdlib/tst-rand48-2.c: New test. + * stdlib/Makefile (tests): Add tst-rand48-2. + +2006-12-14 Jakub Jelinek <jakub@redhat.com> + + * misc/tst-pselect.c (do_test): Fix sigblock argument. + +2006-12-14 Ulrich Drepper <drepper@redhat.com> + + * misc/tst-pselect.c (do_test): Make sure the helper process is + terminating when the test is aborted. + +2006-12-13 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/bits/statvfs.h: Define ST_RELATIME. + * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags): + Handle relatime mount option. + + [BZ #2337] + * libio/Makefile (tests): Add tst-setvbuf1. + * libio/tst-setvbuf1.c: New file. + +2006-12-08 Jakub Jelinek <jakub@redhat.com> + + [BZ #2337] + * libio/genops.c (__uflow): Fix a typo. + * libio/wfiledoalloc.c (_IO_wfile_doallocate): Don't stat + nor set _IO_LINE_BUF bit here. Size the wide buffer based on + the narrow buffer size. + +2006-11-24 Jakub Jelinek <jakub@redhat.com> + + [BZ #2337] + * libio/libio.h (_IO_FLAGS2_USER_WBUF): Define. + * libio/wgenops.c (_IO_wsetb, _IO_wdefault_finish): Test and set + _IO_FLAGS2_USER_WBUF bit in _flags2 instead of _IO_USER_BUF bit + in _flags. + * libio/wstrops.c (_IO_wstr_overflow, enlarge_userbuf, + _IO_wstr_finish): Likewise. + * libio/wmemstream.c (open_wmemstream): Likewise. + * libio/fileops.c (_IO_new_file_close_it): Call _IO_set[bgp] + even for wide streams. + +2006-12-13 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Include + kernel-features.h. + +2006-12-11 Ulrich Drepper <drepper@redhat.com> + + * stdlib/strtod_l.c (____STRTOF_INTERNAL): Parse thousand + separators also if no non-zero digits found. + * stdlib/Makefile (tests): Add tst-strtod3. + +2006-12-09 Ulrich Drepper <drepper@redhat.com> + + [BZ #3632] + * include/features.h: Fix comment about default value for + _POSIX_C_SOURCE. + + [BZ #3664] + * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix test to recognize + empty parsed strings. + * stdlib/Makefile (tests): Add tst-strtod2. + * stdlib/tst-strtod2.c: New file. + + [BZ #3673] + * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix exp_limit + computation. + * stdlib/Makefile (tests): Add tst-atof2. + * stdlib/tst-atof2.c: New file. + + [BZ #3674] + * stdlib/strtod_l.c (____STRTOF_INTERNAL): Adjust exponent value + correctly if removing trailing zero of hex-float. + * stdlib/Makefile (tests): Add tst-atof1. + * stdlib/tst-atof1.c: New file. + +2006-12-09 Jakub Jelinek <jakub@redhat.com> + + * misc/mntent_r.c (__hasmntopt): Check p[optlen] even when p == rest. + Start searching for next comma at p rather than rest. + * misc/Makefile (tests): Add tst-mntent2. + * misc/tst-mntent2.c: New test. + + * misc/getusershell.c (initshells): Check for integer overflows. + Make strings buffer one bigger as fgets always succeeds when second + argument is 1. Don't use calloc for shells array. Disallow + / as shell. + +2006-12-08 Ulrich Drepper <drepper@redhat.com> + + * malloc/memusage.c: Handle realloc with new size of zero and + non-NULL pointer correctly. + (me): Really write first record twice. + (struct entry): Make format bi-arch safe. + (dest): Write out more realloc statistics. + * malloc/memusagestat.c (struct entry): Make format bi-arch safe. + +2006-12-05 Jakub Jelinek <jakub@redhat.com> + + * nis/nis_subr.c (nis_getnames): Revert last change. + +2006-12-04 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/ttyname.c: Include termios.h. + (ttyname): Use tcgetattr instead of isatty, don't set errno to ENOTTY. + * sysdeps/unix/sysv/linux/ttyname_r.c: Include termios.h. + (__ttyname_r): Use tcgetattr instead of isatty, don't set errno to + ENOTTY. + * io/Makefile: Add rules to build and run tst-ttyname_r test. + * io/tst-ttyname_r.c: New test. + +2006-12-03 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * sysdeps/unix/sysv/linux/sh/sys/io.h: Removed. + +2006-11-30 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/i386/i686/memcmp.S: Use jump table as the base of + jump table entries. + +2006-11-30 Jan Kratochvil <jan.kratochvil@redhat.com> + + * sysdeps/unix/sysv/linux/i386/clone.S: Provide CFI for the outermost + `clone' function to ensure proper unwinding stop of gdb. + * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise. + +2006-12-01 Ulrich Drepper <drepper@redhat.com> + + * nscd/nscd.init: Remove obsolete and commented-out -S option + handling. + +2006-11-23 Jakub Jelinek <jakub@redhat.com> + + [BZ #3514] + * manual/string.texi (strncmp): Fix pastos from wcscmp description. + + [BZ #3515] + * manual/string.texi (strtok): Remove duplicate paragraph. + +2006-12-01 Jan Kratochvil <jan.kratochvil@redhat.com> + + * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Fix compatibility with + libgcc not supporting `rflags' unwinding (register # >= 17). + +2006-11-30 Jakub Jelinek <jakub@redhat.com> + + * sunrpc/svc_run.c (svc_run): Set my_pollfd to new_pollfd if realloc + succeeded. + +2006-11-29 Daniel Jacobowitz <dan@codesourcery.com> + Jakub Jelinek <jakub@redhat.com> + Jan Kratochvil <jan.kratochvil@redhat.com> + + * sysdeps/unix/sysv/linux/x86_64/sigaction.c (restore_rt): Add correct + unwind information. + * sysdeps/unix/sysv/linux/x86_64/Makefile: Provide symbols for + 'restore_rt' even in the 'signal' directory. + * sysdeps/unix/sysv/linux/x86_64/ucontext_i.sym: Extend the regs list. + +2006-11-27 Jakub Jelinek <jakub@redhat.com> + + [BZ #3559] + * sunrpc/svc_run.c (svc_run): Fail instead of segfaulting if + malloc crashed. Don't allocate memory unnecessarily in each + loop. + +2006-10-21 Jakub Jelinek <jakub@redhat.com> + + * resolv/mapv4v6addr.h (map_v4v6_address): Fix last change. + +2006-11-20 Ulrich Drepper <drepper@redhat.com> + + * resolv/mapv4v6addr.h (map_v4v6_address): Optimize a bit. + +2006-11-18 Bruno Haible <bruno@clisp.org> + + * sysdeps/unix/sysv/linux/i386/getgroups.c (__getgroups): Invoke + __sysconf only after having tried to call getgroups32. + +2006-11-19 Ulrich Drepper <drepper@redhat.com> + + * nss/nss_files/files-hosts.c (LINE_PARSER): Support IPv6-style + addresses for IPv4 queries if they can be mapped. + +2006-11-16 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/x86_64/fpu/s_copysignf.S (__copysignf): Switch to .text. + * sysdeps/x86_64/fpu/s_copysign.S (__copysign): Likewise. + (signmask): Add .size directive. + (othermask): Add .type directive. + +2006-11-14 Ulrich Drepper <drepper@redhat.com> + + * po/nl.po: Update from translation team. + + * timezone/zdump.c: Redo fix for BZ #3137. + +2006-11-14 Jakub Jelinek <jakub@redhat.com> + + * nss/nss_files/files-alias.c (get_next_alias): Set line back + to first_unused after parsing :include: file. + +2006-11-10 Ulrich Drepper <drepper@redhat.com> + + * timezone/africa: Update from tzdata2006o. + * timezone/antarctica: Likewise. + * timezone/asia: Likewise. + * timezone/australasia: Likewise. + * timezone/backward: Likewise. + * timezone/europe: Likewise. + * timezone/iso3166.tab: Likewise. + * timezone/northamerica: Likewise. + * timezone/southamerica: Likewise. + * timezone/zone.tab: Likewise. + + * time/tzfile.c (__tzfile_read): Extend to handle new file format + on machines with 64-bit time_t. + + * timezone/checktab.awk: Update from tzcode2006o. + * timezone/ialloc.c: Likewise. + * timezone/private.h: Likewise. + * timezone/scheck.c: Likewise. + * timezone/tzfile.h: Likewise. + * timezone/tzselect.ksh: Likewise. + * timezone/zdump.c: Likewise. + * timezone/zic.c: Likewise. + + [BZ #3483] + * elf/ldconfig.c (main): Call setlocale and textdomain. + Patch mostly by Benno Schulenberg <bensberg@justemail.net>. + + [BZ #3480] + * manual/argp.texi: Fix typos. + * manual/charset.texi: Likewise. + * manual/errno.texi: Likewise. + * manual/filesys.texi: Likewise. + * manual/lang.texi: Likewise. + * manual/maint.texi: Likewise. + * manual/memory.texi: Likewise. + * manual/message.texi: Likewise. + * manual/resource.texi: Likewise. + * manual/search.texi: Likewise. + * manual/signal.texi: Likewise. + * manual/startup.texi: Likewise. + * manual/stdio.texi: Likewise. + * manual/sysinfo.texi: Likewise. + * manual/syslog.texi: Likewise. + * manual/time.texi: Likewise. + Patch by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>. + + [BZ #3465] + * sunrpc/clnt_raw.c: Minimal message improvements. + * sunrpc/pm_getmaps.c: Likewise. + * nis/nss_nisplus/nisplus-publickey.c: Likewise. + * nis/nis_print_group_entry.c: Likewise. + * locale/programs/repertoire.c: Likewise. + * locale/programs/charmap.c: Likewise. + * malloc/memusage.sh: Likewise. + * elf/dl-deps.c: Likewise. + * locale/programs/ld-collate.c: Likewise. + * libio/vswprintf.c: Likewise. + * malloc/memusagestat.c: Likewise. + * sunrpc/auth_unix.c: Likewise. + * sunrpc/rpc_main.c: Likewise. + * nscd/cache.c: Likewise. + * locale/programs/repertoire.c: Unify output messages. + * locale/programs/charmap.c: Likewise. + * locale/programs/ld-ctype.c: Likewise. + * locale/programs/ld-monetary.c: Likewise. + * locale/programs/ld-numeric.c: Likewise. + * locale/programs/ld-time.c: Likewise. + * elf/ldconfig.c: Likewise. + * nscd/selinux.c: Likewise. + * elf/cache.c: Likewise. + Patch mostly by Benno Schulenberg <bensberg@justemail.net>. + + [BZ #3451] + * sysdeps/i386/fpu/bits/mathinline.h (floor): Make rounding mode + change atomic. + (ceil): Likewise. + +2006-11-10 Jakub Jelinek <jakub@redhat.com> + + * string/strxfrm_l.c (STRXFRM): Fix trailing \1 optimization + if N is one bigger than return value. + * string/tst-strxfrm2.c (do_test): Also test strxfrm with l1 + 1 + and l1 last arguments, if buf is defined, verify the return value + equals to strlen (buf) and verify no byte beyond passed length + is modified. + +2006-11-10 Ulrich Drepper <drepper@redhat.com> + + * po/sv.po: Update from translation team. + +2006-11-09 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word): Add + noinline attribute. + +2006-11-10 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Add + noinline attribute. + + * sysdeps/gnu/siglist.c (__old_sys_siglist, __old_sys_sigabbrev): + Use __new_sys_siglist instead of _sys_siglist_internal as + second macro argument. + (_old_sys_siglist): Use declare_symbol_alias macro instead of + strong_alias. + +2006-11-09 Ulrich Drepper <drepper@redhat.com> + + [BZ #3493] + * posix/unistd.h (sysconf): Remove const attribute. + + * sysdeps/posix/getaddrinfo.c (getaddrinfo): Fix test for + temporary or deprecated addresses. + Patch by Sridhar Samudrala <sri@us.ibm.com>. + + * string/Makefile (tests): Add tst-strxfrm2. + * string/tst-strxfrm2.c: New file. + +2006-10-09 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-debug.c (_dl_debug_initialize): Check r->r_map for 0 + rather than r->r_brk. + +2006-11-08 Jakub Jelinek <jakub@redhat.com> + + * string/strxfrm_l.c (STRXFRM): Do the trailing \1 removal + optimization even if needed > n. + + * elf/dl-load.c (decompose_rpath): Return bool rather than void. + If l->l_name is on inhibit_rpath list, set sps->dirs to -1 and + return false, otherwise return true. + (cache_rpath): Return decompose_rpath return value. + +2006-11-07 Jakub Jelinek <jakub@redhat.com> + + * include/libc-symbols.h (declare_symbol): Rename to... + (declare_symbol_alias): ... this. Add ORIGINAL argument, imply + strong_alias (ORIGINAL, SYMBOL) in asm to make sure it preceedes + .size directive. + * sysdeps/gnu/errlist-compat.awk: Adjust for declare_symbol_alias + changes. + * sysdeps/gnu/siglist.c: Likewise. + +2006-11-03 Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/fpu/bits/mathinline.h + [__LIBC_INTERNAL_MATH_INLINES]: Moved to ... + * sysdeps/powerpc/fpu/math_private.h: ...here. New file. + +2006-11-05 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): + Update handling of cache descriptor 0x49 for new models. + * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word): + Likewise. + +2006-11-02 Jakub Jelinek <jakub@redhat.com> + + * malloc/memusage.c (dest): Reset not_me back to false after + printing statistics. + +2006-11-02 Ulrich Drepper <drepper@redhat.com> + + * configure.in: Work around ld --help change and avoid -z relro + test completely if the architecture doesn't care about security. + +2006-11-01 Ulrich Drepper <drepper@redhat.com> + + * po/sv.po: Update from translation team. + +2006-10-31 Ulrich Drepper <drepper@redhat.com> + + * stdlib/atexit.c (atexit): Don't mark as hidden when used to + generate compatibility version. + +2006-10-29 Ulrich Drepper <drepper@redhat.com> + + * configure.in: Relax -z relro requirement a bit. + + * po/sv.po: Update from translation team. + +2006-10-29 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-sym.c (do_sym): Use RTLD_SINGLE_THREAD_P. + * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Likewise. + * elf/dl-close.c (_dl_close_worker): Likewise. + * elf/dl-open.c (_dl_open_worker): Likewise. + * sysdeps/generic/sysdep-cancel.h (RTLD_SINGLE_THREAD_P): Define. + +2006-10-27 Ulrich Drepper <drepper@redhat.com> + + * configure.in: Require assembler support for visibility, compiler + support for visibility and aliases, linker support for various -z + options. + * Makeconfig: Remove conditional code which now is unnecessary. + * config.h.in: Likewise. + * config.make.in: Likewise. + * dlfcn/Makefile: Likewise. + * elf/Makefile: Likewise. + * elf/dl-load.c: Likewise. + * elf/rtld.c: Likewise. + * include/libc-symbols.h: Likewise. + * include/stdio.h: Likewise. + * io/Makefile: Likewise. + * io/fstat.c: Likewise. + * io/fstat64.c: Likewise. + * io/fstatat.c: Likewise. + * io/fstatat64.c: Likewise. + * io/lstat.c: Likewise. + * io/lstat64.c: Likewise. + * io/mknod.c: Likewise. + * io/mknodat.c: Likewise. + * io/stat.c: Likewise. + * io/stat64.c: Likewise. + * libio/stdio.c: Likewise. + * nscd/Makefile: Likewise. + * stdlib/Makefile: Likewise. + * stdlib/atexit.c: Likewise. + * sysdeps/generic/ldsodefs.h: Likewise. + * sysdeps/i386/dl-machine.h: Likewise. + * sysdeps/i386/sysdep.h: Likewise. + * sysdeps/i386/i686/memcmp.S: Likewise. + * sysdeps/powerpc/powerpc32/sysdep.h: Likewise. + * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise. + * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise. + + * Makerules: USE_TLS support is now default. + * tls.make.c: Likewise. + * csu/Versions: Likewise. + * csu/libc-start.c: Likewise. + * csu/libc-tls.c: Likewise. + * csu/version.c: Likewise. + * dlfcn/dlinfo.c: Likewise. + * elf/dl-addr.c: Likewise. + * elf/dl-cache.c: Likewise. + * elf/dl-close.c: Likewise. + * elf/dl-iteratephdr.c: Likewise. + * elf/dl-load.c: Likewise. + * elf/dl-lookup.c: Likewise. + * elf/dl-object.c: Likewise. + * elf/dl-open.c: Likewise. + * elf/dl-reloc.c: Likewise. + * elf/dl-support.c: Likewise. + * elf/dl-sym.c: Likewise. + * elf/dl-sysdep.c: Likewise. + * elf/dl-tls.c: Likewise. + * elf/ldconfig.c: Likewise. + * elf/rtld.c: Likewise. + * elf/tst-tls-dlinfo.c: Likewise. + * elf/tst-tls1.c: Likewise. + * elf/tst-tls10.h: Likewise. + * elf/tst-tls14.c: Likewise. + * elf/tst-tls2.c: Likewise. + * elf/tst-tls3.c: Likewise. + * elf/tst-tls4.c: Likewise. + * elf/tst-tls5.c: Likewise. + * elf/tst-tls6.c: Likewise. + * elf/tst-tls7.c: Likewise. + * elf/tst-tls8.c: Likewise. + * elf/tst-tls9.c: Likewise. + * elf/tst-tlsmod1.c: Likewise. + * elf/tst-tlsmod13.c: Likewise. + * elf/tst-tlsmod13a.c: Likewise. + * elf/tst-tlsmod14a.c: Likewise. + * elf/tst-tlsmod2.c: Likewise. + * elf/tst-tlsmod3.c: Likewise. + * elf/tst-tlsmod4.c: Likewise. + * elf/tst-tlsmod5.c: Likewise. + * elf/tst-tlsmod6.c: Likewise. + * include/errno.h: Likewise. + * include/link.h: Likewise. + * include/tls.h: Likewise. + * locale/global-locale.c: Likewise. + * locale/localeinfo.h: Likewise. + * malloc/arena.c: Likewise. + * malloc/hooks.c: Likewise. + * malloc/malloc.c: Likewise. + * resolv/Versions: Likewise. + * sysdeps/alpha/dl-machine.h: Likewise. + * sysdeps/alpha/libc-tls.c: Likewise. + * sysdeps/generic/ldsodefs.h: Likewise. + * sysdeps/generic/tls.h: Likewise. + * sysdeps/i386/dl-machine.h: Likewise. + * sysdeps/ia64/dl-machine.h: Likewise. + * sysdeps/ia64/libc-tls.c: Likewise. + * sysdeps/mach/hurd/fork.c: Likewise. + * sysdeps/mach/hurd/i386/tls.h: Likewise. + * sysdeps/powerpc/powerpc32/dl-machine.c: Likwise. + * sysdeps/powerpc/powerpc32/dl-machine.h: Likewise. + * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise. + * sysdeps/s390/libc-tls.c: Likewise. + * sysdeps/s390/s390-32/dl-machine.h: Likewise. + * sysdeps/s390/s390-64/dl-machine.h: Likewise. + * sysdeps/sh/dl-machine.h: Likewise. + * sysdeps/sparc/sparc32/dl-machine.h: Likewise. + * sysdeps/sparc/sparc64/dl-machine.h: Likewise. + * sysdeps/x86_64/dl-machine.h: Likewise. + + * elf/dl-close.c (_dl_close_worker): Renamed from _dl_close and + split out locking and parameter checking. + (_dl_close): Call _dl_close_worker after locking and checking. + * elf/dl-open.c (_dl_open): Call _dl_close_worker instead of + _dl_close. + * elf/Makefile: Add rules to build and run tst-thrlock. + * elf/tst-thrlock.c: New file. + + [BZ #3426] + * stdlib/stdlib.h: Adjust comment for canonicalize_file_name to + reality. + + [BZ #3429] + * elf/dl-open.c (dl_open_worker): Keep holding dl_load_lock until + we are sure we do not need it anymore for _dl_close. Also move + the asserts inside the lock region. + Patch mostly by Suzuki <suzuki@in.ibm.com>. + +2006-10-27 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-lookup.c (_dl_debug_bindings): Remove unused symbol_scope + argument. + (_dl_lookup_symbol_x): Adjust caller. + + * sysdeps/generic/ldsodefs.h (struct link_namespaces): Remove + _ns_global_scope. + * elf/rtld.c (dl_main): Don't initialize _ns_global_scope. + + * elf/dl-libc.c: Revert l_scope name changes. + * elf/dl-load.c: Likewise. + * elf/dl-object.c: Likewise. + * elf/rtld.c: Likewise. + * elf/dl-close.c (_dl_close): Likewise. + * elf/dl-open.c (dl_open_worker): Likewise. If not SINGLE_THREAD_P, + always use __rtld_mrlock_{change,done}. Always free old scope list + here if not l_scope_mem. + * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Revert l_scope name + change. Never free scope list here. Just __rtld_mrlock_lock before + the lookup and __rtld_mrlock_unlock it after the lookup. + * elf/dl-sym.c: Likewise. + * include/link.h (struct r_scoperec): Remove. + (struct link_map): Replace l_scoperec with l_scope, l_scoperec_mem + with l_scope_mem and l_scoperec_lock with l_scope_lock. + +2006-10-25 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/gnu/netinet/tcp.h: Define TCP_CONGESTION. + +2006-10-18 Ulrich Drepper <drepper@redhat.com> + + * configure.in: Disable building profile libraries by default. + +2006-10-17 Jakub Jelinek <jakub@redhat.com> + + * sunrpc/xdr_mem.c (xdrmem_setpos): Don't compare addresses + as signed longs, check for x_base + pos overflow. + * sunrpc/Makefile (tests): Add tst-xdrmem2. + * sunrpc/tst-xdrmem2.c: New test. + +2006-10-18 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-lookup.c (_dl_lookup_symbol_x): Add warning to + _dl_lookup_symbol_x code. + +2006-10-17 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-runtime.c: Include sysdep-cancel.h. + (_dl_fixup, _dl_profile_fixup): Use __rtld_mrlock_* and + scoperec->nusers only if !SINGLE_THREAD_P. Use atomic_* + instead of catomic_* macros. + * elf/dl-sym.c: Include sysdep-cancel.h. + (do_sym): Use __rtld_mrlock_* and scoperec->nusers only + if !SINGLE_THREAD_P. Use atomic_* instead of catomic_* macros. + * elf/dl-close.c: Include sysdep-cancel.h. + (_dl_close): Use __rtld_mrlock_* and scoperec->nusers only + if !SINGLE_THREAD_P. Use atomic_* instead of catomic_* macros. + * elf/dl-open.c: Include sysdep-cancel.h. + (dl_open_worker): Use __rtld_mrlock_* and scoperec->nusers only + if !SINGLE_THREAD_P. Use atomic_* instead of catomic_* macros. + +2006-10-17 Jakub Jelinek <jakub@redhat.com> + + [BZ #3313] + * malloc/malloc.c (malloc_consolidate): Set maxfb to address of last + fastbin rather than end of fastbin array. + +2006-10-18 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/i386/i486/bits/atomic.h (catomic_decrement): Use correct + body macro. + * sysdeps/x86_64/bits/atomic.h + (__arch_c_compare_and_exchange_val_64_acq): Add missing casts. + (catomic_decrement): Use correct body macro. + +2006-10-17 Jakub Jelinek <jakub@redhat.com> + + * include/atomic.h: Add a unique prefix to all local variables + in macros. + * csu/tst-atomic.c (do_test): Test also catomic_* macros. + +2006-10-16 Ulrich Drepper <drepper@redhat.com> + + [BZ #3369] + * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Fix typos in rules 4 + and 7. + +2006-10-14 Ulrich Drepper <drepper@redhat.com> + + * resolv/arpa/nameser.h: Document that ns_t_a6 is deprecated. + +2006-10-13 Ulrich Drepper <drepper@redhat.com> + + [BZ #3313] + * malloc/malloc.c (malloc_consolidate): Don't use get_fast_max to + determine highest fast bin to consolidate, always look into all of + them. + (do_check_malloc_state): Only require for empty bins for large + sizes in main arena. + + * libio/stdio.h: Add more __wur attributes. + + * elf/dl-minimal.c (realloc): Optimize last patch. + +2006-10-12 Richard Sandiford <richard@codesourcery.com> + + [BZ #3352] + * elf/dl-minimal.c (realloc): Let malloc() return a new pointer, + and use memcpy() if it does. + +2006-11-12 Andreas Jaeger <aj@suse.de> + + [BZ #2510] + * manual/search.texi (Hash Search Function): Clarify. + (Array Search Function): Clarify. + +2006-11-12 Joseph Myers <joseph@codesourcery.com> + + [BZ #2830] + * math/atest-exp.c (main): Cast hex value to mp_limb_t before + shifting. + * math/atest-exp2.c (read_mpn_hex): Likewise. + * math/atest-sincos.c (main): Likewise. + +2006-10-11 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_pwait. + * sysdeps/unix/sysv/linux/sys/epoll.h: Declare epoll_pwait. + * sysdeps/unix/sysv/linux/Versions (libc): Add epoll_pwait for + version GLIBC_2.6. + * Versions.def: Add GLIBC_2.6 for libc. + + * sysdeps/unix/sysv/linux/i386/sysdep.h (DOARGS_6): Fix offset. + + * sysdeps/i386/i486/bits/atomic.h: Add catomic_* support. + +2006-10-11 Jakub Jelinek <jakub@redhat.com> + + * malloc/malloc.c (_int_malloc): Remove unused any_larger variable. + + * nis/nis_defaults.c (__nis_default_access): Don't call getenv twice. + + * nis/nis_subr.c (nis_getnames): Use __secure_getenv instead of getenv. + * sysdeps/generic/unsecvars.h: Add NIS_PATH. + +2006-10-11 Ulrich Drepper <drepper@redhat.com> + + * include/atomic.c: Define catomic_* operations. + * sysdeps/x86_64/bits/atomic.h: Likewise. Fix a few minor problems. + * stdlib/cxa_finalize.c: Use catomic_* operations instead of atomic_*. + * malloc/memusage.c: Likewise. + * gmon/mcount.c: Likewise. + * elf/dl-close.c: Likewise. + * elf/dl-open.c: Likewise. + * elf/dl-profile.c: Likewise. + * elf/dl-sym.c: Likewise. + * elf/dl-runtime.c: Likewise. + * elf/dl-fptr.c: Likewise. + * resolv/res_libc.c: Likewise. + +2006-10-10 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_subr.c (nis_getnames): Add trailing dot to NIS_PATH + components which lack them. + + * nis/nis_subr.c (nis_getnames): Make sure that we always return + at least one entry consisting of the parameter concatenated with + the domain. + +2006-10-10 Roland McGrath <roland@frob.com> + + * sysdeps/mach/hurd/utimes.c: Use a union to avoid an improper cast. + * sysdeps/mach/hurd/futimes.c: Likewise. + * sysdeps/mach/hurd/lutimes.c: Likewise. + +2006-10-09 Ulrich Drepper <drepper@redhat.com> + Jakub Jelinek <jakub@redhat.com> + + Implement reference counting of scope records. + * elf/dl-close.c (_dl_close): Remove all scopes from removed objects + from the list in objects which remain. Always allocate new scope + record. + * elf/dl-open.c (dl_open_worker): When growing array for scopes, + don't resize, allocate a new one. + * elf/dl-runtime.c: Update reference counters before using a scope + array. + * elf/dl-sym.c: Likewise. + * elf/dl-libc.c: Adjust for l_scope name change. + * elf/dl-load.c: Likewise. + * elf/dl-object.c: Likewise. + * elf/rtld.c: Likewise. + * include/link.h: Include <rtld-lowlevel.h>. Define struct + r_scoperec. Replace r_scope with pointer to r_scoperec structure. + Add l_scoperec_lock. + * sysdeps/generic/ldsodefs.h: Include <rtld-lowlevel.h>. + * sysdeps/generic/rtld-lowlevel.h: New file. + + * include/atomic.h: Rename atomic_and to atomic_and_val and + atomic_or to atomic_or_val. Define new macros atomic_and and + atomic_or which do not return values. + * sysdeps/x86_64/bits/atomic.h: Define atomic_and and atomic_or. + Various cleanups. + * sysdeps/i386/i486/bits/atomic.h: Likewise. + + * po/sv.po: Update from translation team. + +2006-10-07 Ulrich Drepper <drepper@redhat.com> + + * Versions.def: Add GLIBC_2.6 to libpthread. + + * include/shlib-compat.h (SHLIB_COMPAT): Expand parameters before use. + (versioned_symbol): Likewise. + (compat_symbol): Likewise. + + * po/tr.po: Update from translation team. + +2006-10-06 Ulrich Drepper <drepper@redhat.com> + + * nis/Banner: Removed. It's been integral part forever and the + author info is incomplete anyway. + * libio/Banner: Likewise. + + * nis/nis_table.c (nis_list): If __follow_path fails in the new + code, make sure the nis_freeresult call doesn't crash and that the + result is reported correctly. + +2006-09-27 Jakub Jelinek <jakub@redhat.com> + + * nis/nis_table.c (nis_list): Handle FOLLOW_PATH | ALL_RESULTS + when callback is NULL. + + * nis/Versions (libnss_nisplus): Add + _nss_nisplus_initgroups_dyn@@GLIBC_PRIVATE. + * nis/Makefile (libnss_nisplus-routines): Add nisplus-initgroups. + * nis/nss_nisplus/nisplus-grp.c (tablename_val, tablename_len, + _nss_create_tablename): Rename to... + (grp_tablename_val, grp_tablename_len, _nss_grp_create_tablename): + ... these. No longer static. + (internal_setgrent): Adjust users. + (_nss_nisplus_getgrnam_r, _nss_nisplus_getgrgid_r): Likewise. + Don't use locking around _nss_grp_create_tablename call. + * nis/nss_nisplus/nisplus-initgroups.c: New file. + +2006-10-06 Ulrich Drepper <drepper@redhat.com> + + * version.h (VERSION): Bump to 2.5.90 for new development tree. + +2006-10-06 Andreas Jaeger <aj@suse.de> + + * include/features.h (__GLIBC_MINOR__): It's glibc 2.5 now. + +2006-10-06 Ulrich Drepper <drepper@redhat.com> + + * po/pl.po: Update from translation team. + + * nscd/nscd.c (main): Fix typo in message. + Patch by Jakub Bogsz <qboosh@pld-linux.org>. + +2006-10-02 Jakub Jelinek <jakub@redhat.com> + + [BZ #3291] + * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include + errno.h, signal.h, unistd.h and sysdep-cancel.h. + (__sigprocmask): Define. + +2006-10-02 Ulrich Drepper <drepper@redhat.com> + + * elf/rtld.c (dl_main): Don't use prelinking if LD_DYNAMIC_WEAK is + used. + +2006-10-02 Jakub Jelinek <jakub@redhat.com> + + * nscd/mem.c (mempool_alloc): Round array size to 16 bytes + in oldtotal and newtotal calculation. + * nscd/nscd-client.h (struct mapped_database): Add datasize + field. + * nscd/nscd_helper.c (get_mapping): Initialize datasize field. + (__nscd_get_map_ref): Get a new mapping even if mapping's data_size + increased. + (__nscd_cache_search): Add checks to make sure we never reference + data beyond the current mapping. + +2006-10-02 Dmitry V. Levin <ldv@altlinux.org> + + * sysdeps/posix/getaddrinfo.c (match_prefix): Make mask and val + variables const to avoid compiler warnings. + + * io/fts.c (fts_close): Remove redundant checks. + (fts_build): Likewise. + (fts_palloc): Likewise. + + * manual/message.texi (Advanced gettext functions, + Using gettextized software): Fix typos. + +2006-09-30 Ulrich Drepper <drepper@redhat.com> + + * posix/glob.c (glob_in_dir): Add some comments and asserts to + explain why there are no leaks. + +2006-09-29 Ulrich Drepper <drepper@redhat.com> + + * libio/wmemstream.c: Include <wchar.h>. + * libio/bug-wmemstream1.c: Likewise. + * libio/tst-wmemstream1.c: Likewise. + * libio/tst-wmemstream2.c: Likewise. + + * version.h (RELEASE): Bump to 2.5. + * README: Regenerated. + + * locale/iso-3166.def: Add Aaland Islands and Montenegro. + + [BZ #3273] + * nscd/nscd_initgroups.c (__nscd_getgrouplist): It is OK to have + found no group members. + Patch by Petr Baudis. + +2006-09-29 Jakub Jelinek <jakub@redhat.com> + + * elf/rtld.c (_dl_start_final): If not USE___THREAD, don't + assert bootstrap_map.l_tls_modid is zero. + (_dl_start): Initialize bootstrap_map.l_tls_modid to 0 + if USE___THREAD. + +2006-09-27 Ulrich Drepper <drepper@redhat.com> + + * libio/stdio.h: Move open_wmemstream prototype to ... + * wcsmbs/wchar.h: ... here. + +2006-09-25 Jakub Jelinek <jakub@redhat.com> + + [BZ #3252] + * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Handle only + fchownat syscall and __ASSUME_LCHOWN_SYSCALL case inline, call + __{,l}chown to handle the rest. + * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Handle only + fchownat syscall and __ASSUME_32BITUIDS case inline, call + __{,l}chown to handle the rest. + * sysdeps/unix/sysv/linux/sparc/sparc32/fchownat.c: Include + i386/fchownat.c. + * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c: Likewise. + * sysdeps/unix/sysv/linux/sh/fchownat.c: Likewise. + + [BZ #3253] + * posix/glob.c (glob_in_dir): Don't alloca one struct globlink at a + time, rather allocate increasingly bigger arrays of pointers, if + possible with alloca, if too large with malloc. + +2006-09-24 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/powerpc/fpu/libm-test-ulps: Updated. + + * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Fix 2 typos. + +2006-09-24 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Implement rule 4, + home addresses. + * sysdeps/unix/sysv/linux/check_pf.c (make_request): Recognize + IFA_F_HOMEADDRESS flag for interfaces. + * include/ifaddrs.h (struct in6addrinfo): Define + in6ai_homeaddress. + +2006-09-21 Jakub Jelinek <jakub@redhat.com> + + [BZ #3225] + * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (PTR_MANGLE3, + PTR_DEMANGLE3): Define. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (PTR_MANGLE3, + PTR_DEMANGLE3): Likewise. + * sysdeps/powerpc/powerpc32/__longjmp-common.S (__longjmp): Use them. + * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp): + Likewise. + * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp): Likewise. + +2006-09-20 Jakub Jelinek <jakub@redhat.com> + + * po/libc.pot: Regenerated. + * po/be.po: Updated. + * po/ca.po: Likewise. + * po/cs.po: Likewise. + * po/da.po: Likewise. + * po/de.po: Likewise. + * po/el.po: Likewise. + * po/en_GB.po: Likewise. + * po/es.po: Likewise. + * po/fi.po: Likewise. + * po/fr.po: Likewise. + * po/gl.po: Likewise. + * po/hr.po: Likewise. + * po/hu.po: Likewise. + * po/ja.po: Likewise. + * po/ko.po: Likewise. + * po/nb.po: Likewise. + * po/nl.po: Likewise. + * po/pl.po: Likewise. + * po/pt_BR.po: Likewise. + * po/ru.po: Likewise. + * po/rw.po: Likewise. + * po/sk.po: Likewise. + * po/sv.po: Likewise. + * po/tr.po: Likewise. + * po/zh_CN.po: Likewise. + * po/zh_TW.po: Likewise. + + [BZ #3137] + * iconv/iconv_prog.c (main): Fix spelling in error message. + * iconv/iconvconfig.c (main): Likewise. + * locale/programs/ld-collate.c (handle_ellipsis): Likewise. + * locale/programs/ld-ctype.c (charclass_symbolic_ellipsis): Likewise. + * locale/programs/localedef.c (main): Likewise. + * locale/programs/repertoire.c (repertoire_read): Likewise. + * timezone/zdump.c (main): Likewise. + * nscd/connections.c (handle_request): Fix spelling in log message. + Patch by Malcolm Parsons <malcolm.parsons@gmail.com>. + +2006-09-20 Ulrich Drepper <drepper@redhat.com> + + * inet/inet6_option.c: Also emit linker warnings for the RFC 2292 + interfaces. + +2006-09-20 Andreas Jaeger <aj@suse.de> + + * math/libm-test.inc (lrint_test_upward): Fix typo. + +2006-06-17 Joseph S. Myers <joseph@codesourcery.com> + + [BZ #2592] + * math/libm-test.inc (lrint_test_tonearest): New function. + (lrint_test_towardzero): New function. + (lrint_test_downward): New function. + (lrint_test_upward): New function. + (main): Run these new tests. + * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Correct rounding + of values near to 0. + (two52): Use double not long double. + * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise. + * sysdeps/ieee754/flt-32/s_llrintf.c (__llrintf): Likewise. + (two23): Use float not double. + * sysdeps/ieee754/flt-32/s_lrintf.c (__lrintf): Likewise. + (two23): Use float not double. + * sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Likewise. + * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise. + * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Likewise. + * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise. + +2006-09-20 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c (__makecontext): + Cast sp to unsigned long to avoid compiler warning. + Use __makecontext_ret function instead of a trampoline on the stack. + (__makecontext_ret): New function. + * sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c: Likewise. + +2006-09-19 Jakub Jelinek <jakub@redhat.com> + + * elf/dl-cache.c (HWCAP_CHECK): If _DL_PLATFORMS_COUNT, but + platform == -1, reject any libs with non-zero _DL_HWCAP_PLATFORM + bits. + +2006-09-19 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-close.c (_dl_close): If dependency is not unloaded make + sure no reference to the unloaded map's search list remains in the + dependency's scope. + +2006-09-16 Jakub Jelinek <jakub@redhat.com> + + * elf/Makefile: Add rules to build and run unload7 test. + * elf/unload7.c: New test. + * elf/unload7mod1.c: New file. + * elf/unload7mod2.c: New file. + +2006-09-18 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/sys/ptrace.h (PT_GETEVENTMSG): Fix pasto. + * sysdeps/unix/sysv/linux/s390/sys/ptrace.h (PTRACE_SETOPTIONS, + PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define. + * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h (PTRACE_SETOPTIONS, + PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise. + * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h (PTRACE_SETOPTIONS, + PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise. + * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h (PTRACE_SETOPTIONS, + PTRACE_GETEVENTMSG): Likewise. + (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Change to the arch independent + values. + +2006-09-17 Mike Frysinger <vapier@gentoo.org> + + * sysdeps/unix/sysv/linux/sys/ptrace.h (PTRACE_SETOPTIONS, + PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define. + * sysdeps/unix/sysv/linux/ptrace.c (ptrace): Check PTRACE_SETOPTIONS, + PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO and PTRACE_SETSIGINFO. + +2006-09-16 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/powerpc/powerpc32/register-dump.h (register_dump): Don't + write '\0' to the fd. + * sysdeps/mach/hurd/powerpc/register-dump.h (register_dump): Likewise. + * sysdeps/powerpc/powerpc64/register-dump.h (register_dump): Likewise. + Change regs to unsigned long pointer from unsigned int, fix fscr + offset. + +2006-09-14 Jakub Jelinek <jakub@redhat.com> + + * io/Makefile (CFLAGS-fstatat.c): Set. + (CFLAGS-fstatat64.c): Likewise. + (CFLAGS-mknodat.c): Likewise. + + * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c: Comment fixes. + * sysdeps/ieee754/ldbl-128ibm/s_llroundl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c: Rewritten. + * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c: Rewritten. + +2006-09-14 Jakub Jelinek <jakub@redhat.com> + Steven Munroe <sjmunroe@us.ibm.com> + + * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 4 new cap + names to the beginning. Rename "cell" to "cellbe". + (_dl_powerpc_platforms): New. + * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease. + (HWCAP_IMPORTANT): Remove power{4,5,5+} and cell. + (_DL_PLATFORMS_COUNT, _DL_FIRST_PLATFORM): Define. + (_DL_HWCAP_PLATFORM): Define to new mask. + (_dl_platform_string, _dl_string_platform): New functions. + * sysdeps/powerpc/sysdep.h (PPC_FEATURE_BOOKE, PPC_FEATURE_SMT, + PPC_FEATURE_ICACHE_SNOOP, PPC_FEATURE_ARCH_2_05): Define. + +2006-09-12 Jakub Jelinek <jakub@redhat.com> + + [BZ #2526] + * README.libm: Fix a thinko in sqrt algorithm description. + + [BZ #3143] + * manual/string.texi (argz_delete): Fix prototype. + Patch by <alpt@freaknet.org>. + +2006-08-26 Joseph Myers <joseph@codesourcery.com> + + [BZ #3138] + * io/test-lfs.c (do_prepare): Give name_len type size_t. + * io/tst-fcntl.c (do_prepare): Likewise. + * posix/tst-exec.c (do_prepare): Likewise. + * posix/tst-preadwrite.c (do_prepare): Likewise. + * posix/tst-spawn.c (do_prepare): Likewise. + * posix/tst-truncate.c (do_prepare): Likewise. + * rt/tst-aio.c (do_prepare): Likewise. + * rt/tst-aio64.c (do_prepare): Likewise. + * stdlib/test-canon2.c (do_prepare): Give test_dir_len type + size_t. + +2006-09-09 Ulrich Drepper <drepper@redhat.com> + + [BZ #2821] + * time/mktime.c (guess_time_tm): Fix overflow detection. + * time/Makefile (tests): Add bug-mktime1. + * time/bug-mktime1.c: New file. + + [BZ #3189, #3188] + * misc/sys/mman.h (remap_file_pages): Make available for _GNU_SOURCE. + (mremap): Likewise. + +2006-09-07 Jakub Jelinek <jakub@redhat.com> + + [BZ #1006] + * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): + Ensure relocation doesn't clobber any bits outside of the + immediate field for R_SPARC_TLS_LE_HIX22, R_SPARC_WDISP30, + R_SPARC_HI22 and R_SPARC_H44. + + [BZ #2775] + * malloc/malloc.c (sYSMALLOc): Only call grow_heap if + (long) (MINSIZE + nb - old_size) is positive. + + * malloc/arena.c (grow_heap): When growing bail even if new_size + is negative. + + [BZ #3155] + * sysdeps/powerpc/powerpc32/fpu/s_lrint.S (__lrint): Don't access + stack below r1. + +2006-09-06 Jakub Jelinek <jakub@redhat.com> + + * posix/regex_internal.c (re_string_reconstruct): Handle + offset < pstr->valid_raw_len && pstr->offsets_needed case. + Ensure no bytes read before raw_mbs array. Pass a saved copy of + pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to + re_string_context_at. + * posix/Makefile: Add rules to build and run bug-regex26 test. + * posix/bug-regex26.c: New test. + + * locale/programs/ld-collate.c (collate_read): Goto sym_equiv_free + rather than col_sym_free. Move seqp declaration earlier. + + * resolv/gai_suspend.c (gai_suspend): Make sure result is initialized. + +2006-09-05 Jakub Jelinek <jakub@redhat.com> + + * nscd/initgrcache.c (addinitgroupsX): Move any_success + decl before first goto out. + +2006-09-04 Jakub Jelinek <jakub@redhat.com> + + * Makerules (shlib.lds): If have-hash-style, put .hash section + at the end of the RO segment. + +2006-09-04 Ulrich Drepper <drepper@redhat.com> + + * elf/do-lookup.h (do_lookup_x): Initialize symidx in case the new + style hash table format is used. + +2006-09-04 Jakub Jelinek <jakub@redhat.com> + + * resolv/res_mkquery.c (res_nmkquery): Set hp->id to statp->id after + randomization rather than before. + * resolv/res_init.c (res_randomid): Don't call gettimeofday here. + +2006-08-31 Jakub Jelinek <jakub@redhat.com> + + * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Add ld.so. + + * malloc/malloc.c (_int_malloc): Use full list insert and not + shortcut which assumes the list is empty for large requests + too. + + * elf/tst-addr1.c (do_test): Allow i.dli_sname "_IO_printf". + +2006-08-30 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (splice): Add offin + and offout arguments to the prototype. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (splice): Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (splice): Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (splice): Likewise. + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (splice): Likewise. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (splice): Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (splice): Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (splice): Likewise. + * sysdeps/unix/sysv/linux/syscalls.list (splice): Adjust args string. + +2006-08-28 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-load.c (_dl_init_paths): Expand DSTs. + + * elf/dl-open.c (dl_open_worker): Allow $LIB and $PLATFORM in + dlopen parameters. + +2006-08-28 Jakub Jelinek <jakub@redhat.com> + + * inet/getnameinfo.c (getnameinfo): For AF_INET, check errno + only if herrno is NETDB_INTERNAL. Handle errors other than + ERANGE outside of the loops, handle TRY_AGAIN. + + * locale/programs/ld-ctype.c (translit_flatten): Issue error + if other's ctype category was missing. + * locale/programs/ld-collate.c (collate_read): Return if + copy_locale's collate category is missing. + +2006-08-27 Ulrich Drepper <drepper@redhat.com> + + [BZ #2684] + * malloc/malloc.c (public_rEALLOc): Try harder by using other + arenas if allocation failed. + Patch mostly by Jan Edler <jan.edler@indexengines.com>. + +2006-08-26 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (bin_at): Rewrite to be more clear and to not + waste bins[0..1]. + (malloc_state): Reduce bins size by 2. + (_int_malloc): Fix test for large enough buffer for early termination. + When no unsorted block matches perfectly and an exiting block has + to be split, use full list insert and not shortcut which assumes + the list is empty. + + * locale/programs/ld-ctype.c (ctype_read): Better patch for read + failure. + +2006-08-24 Ulrich Drepper <drepper@redhat.com> + + * locale/programs/ld-ctype.c (ctype_read): If CTYPE is NULL, don't + do anything. + + * sysdeps/generic/ldsodefs.h (DL_ADDR_SYM_MATCH): For undefined + symbol require exact match (these are PLTs). + * sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h + (_dl_ppc64_addr_sym_match): Likewise. + + [BZ #2683] + * elf/dl-addr.c (_dl_addr): Don't ignore all undefined symbols. + If symbol has a value use it. + * elf/tst-dladdr1.c: New file. + * elf/Makefile: Add rules to build and run tst-addr1. + +2006-08-24 Jakub Jelinek <jakub@redhat.com> + + * malloc/malloc.c (sYSMALLOc): Avoid infinite loop if MMAP + keeps failing and heap growth or new heap creation isn't + successful either. + * malloc/tst-malloc.c (main): Add new tests. + +2006-08-24 Ulrich Drepper <drepper@redhat.com> + + [BZ #2734] + * sysdeps/i386/bits/byteswap.h (__bswap_32): Use same conditions + as in the x86-64 code to use bswap. + +2006-05-21 Joseph S. Myers <joseph@codesourcery.com> + + [BZ #2680] + * posix/unistd.h (getlogin_r): Condition on __USE_POSIX199506, not + __USE_UNIX98. + * posix/bits/unistd.h: Likewise. + +2006-05-15 Mike Frysinger <vapier@gentoo.org> + + [BZ #2751] + * string/strchr.c: Add cast to avoid warning. + +2006-08-21 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (DEFAULT_MMAP_THRESHOLD_MAX): For 32-bit + platforms define as 512K. For 64-bit platforms as 32MB. The lower + limit is needed to avoid the exploding of the address space + requirement for secondary heaps. + * malloc/arena.c (HEAP_MAX_SIZE): Define using + DEFAULT_MMAP_THRESHOLD_MAX if it is defined. + +2006-07-30 Joseph S. Myers <joseph@codesourcery.com> + + [BZ #3018] + * Makerules (depfiles): Handle extra-test-objs the same as + extra-objs. + (common-mostlyclean): Likewise. + * dlfcn/Makefile (extra-objs): Add modules to extra-test-objs + instead. + * elf/Makefile (extra-objs): Likewise. + * stdlib/Makefile (extra-objs): Likewise. + +2006-08-14 Eric Blake <ebb9@byu.net> + + [BZ #3044] + * misc/error.h: Assume C89 or better. + * misc/error.c: Likewise. + +2006-08-21 Ulrich Drepper <drepper@redhat.com> + + [BZ #3040] + * sysdeps/unix/sysv/linux/openat.c: Fix compilation if + __ASSUME_ATFCTS is defined. + +2006-08-19 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (_int_malloc): Limit number of unsorted blocks + to sort in each call. + + * nis/nss_nis/nis-service.c (internal_nis_getservent_r): . If map + is empty simply return and use next service. + * nis/nss_nis/nis-rpc.c (internal_nis_getrpcent_r): Likewise. + + * locale/programs/charmap.c (charmap_read): Add new parameter. It + tells us when not finding a charmap file is an error. + * locale/programs/charmap.h: Adjust charmap_read prototype. + * iconv/iconv_prog.c (main): Tell charmap_read it's no error if we + cannot find a charmap. + * locale/programs/localedef.c (main): Adjust charmap_read call. + +2006-08-15 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Use + sysdeps/posix/pause.c implementation instead. + +2006-08-09 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/nice.c (nice): Transform EACCES errno from setpriority + to EPERM. + +2006-08-13 Andreas Schwab <schwab@suse.de> + + * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_runtime_resolve): + Don't clobber caller's LRSAVE. + (_dl_prof_resolve): Likewise. + +2006-08-14 Ulrich Drepper <drepper@redhat.com> + + [BZ #1996] + * libio/memstream.c (open_memstream): Allocate initial buffer with + calloc. + * libio/wmemstream.c (open_wmemstream): Likewise. + * libio/strops.c: Pretty printing. + (_IO_str_overflow): Clear uninitialized part of the new buffer. + (enlarge_userbuf): New function. + (_IO_str_seekoff): Call it if seek position is larger than current + buffer. + * libio/wstrops.c: Likewise. + * libio/vasprintf.c: Add comment as to why we do not have to use + calloc instead of malloc to allocate initial buffer. + * libio/Makefile (tests): Add bug-memstream1 and bug-wmemstream1. + * libio/bug-memstream1.c: New file. + * libio/bug-wmemstream1.c: New file. + +2006-08-13 Ulrich Drepper <drepper@redhat.com> + + * libio/wstrops.c: Remove dead macro definitions and comments. + * libio/strops.c: Likewise. + + [BZ #2764] + * login/utmpname.c (__utmpname): Remove unnecessary test. + +2006-06-08 Joseph Myers <jsm28@gcc.gnu.org> + + [BZ #2832] + * math/gen-libm-test.pl (clean_up_number): Do not remove trailing + 0s from integers. + +2006-08-13 Ulrich Drepper <drepper@redhat.com> + + [BZ #2987] + * sysdeps/unix/sysv/linux/clock_settime.c: Add code to use syscall + for CPU clocks. + * sysdeps/unix/clock_settime.c: Add support for platform-specific + setting of CPU clocks. + +2006-06-23 Paul Eggert <eggert@cs.ucla.edu> + + [BZ #2841] + * sysdeps/generic/stdint.h (UINT8_C, UINT16_C): Don't append 'U', + since C99 requires the result to promote to 'int' when uint_least8_t + and uint_least16_t promote to 'int'. + +2006-08-12 Ulrich Drepper <drepper@redhat.com> + + [BZ #3013] + * locale/programs/ld-ctype.c (ctype_output): Adjust alignments, fix + lenght of one output field, correct bitmask creation. + * locale/programs/ld-time.c: Add alignment. + + [BZ #2997] + * misc/error.c: Add space between program name and message if file + name is missing. + +2006-08-03 Eric Blake <ebb9@byu.net> + + [BZ #2998] + * misc/error.c (error_tail) [_LIBC]: Avoid invalid free. + +2006-08-09 Ulrich Drepper <drepper@redhat.com> + + * malloc/memusagestat.c: Silence warnings. + + * malloc/malloc.c: Dynamically size mmap treshold if the program + frees mmaped blocks. + Patch by Valerie Henson and Arjan van de Ven. + +2006-08-08 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_DIRECT): Protect with + __USE_GNU. + + * stdlib/strtol_l.c (__strtol_ul_max_tab, __strtol_ul_rem_tab, + __strtol_ull_max_tab, __strtol_ull_rem_tab): Declare. + (DEF): Don't put the var into .gnu.linkonce.r.* section. + Only provide var definitions in strtol_l (or for *ull* + in strtoll_l). + + * stdio-common/bug16.c (tests): New array. + (do_tests): Allow the first hexadecimal digit + to be 1, 2, 4 or 8. Do 3 additional tests. + + * sysdeps/s390/fpu/libm-test-ulps: Update. + + * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c (fchownat): Use + fchownat syscall if available. + * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Likewise. + * sysdeps/unix/sysv/linux/sh/fchownat.c (fchownat): Likewise. + * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Likewise. + +2006-08-07 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_xdr.c: Avoid some function calls. + +2006-08-07 Jakub Jelinek <jakub@redhat.com> + Ulrich Drepper <drepper@redhat.com> + + * nis/nis_call.c (rec_dirsearch) [case LOWER_NAME]: Don't take + short cut if only one name component is stripped away. + +2006-08-07 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_call.c: Minor cleanups throughout. + (rec_dirsearch) [case HIGHER_NAME]: Correctly size ndomain array. + (first_shoot): Add search_parent_first parameter. Only if it is set + search parent server first. + If directory for table found through cold start cache is not the same + as referenced in the cache, don't use it. + (__nisfind_server): Take additional parameter. Pass it on to + first_shoot. + (__prepare_niscall): Adjust __nisfind_server call. + * nis/rpcsvc/nislib.h: Adjust __nisfind_server prototype. + * nis/nis_table.c: Adjust __nisfind_server call. + * nis/nis_lookup.c: Likewise. + (nis_lookup): Don't loop endlessly if name is reduced to ".". + +2006-08-03 Ulrich Drepper <drepper@redhat.com> + + [BZ #2182] + * math/s_cacosh.c: Return values from positive branch. + * math/s_cacoshf.c: Likewise. + * math/s_cacoshl.c: Likewise. + + [BZ #2883] + * sysvipc/sys/msg.h: Change return value to ssize_t. + * sysdeps/unix/sysv/linux/msgrcv.c: Likewise. + * sysvipc/msgrcv.c: Likewise. + * include/sys/msg.h: Likewise. + + * grp/initgroups.c (internal_getgrouplist): Remove unnecessary + test introduced in patch for bz #661. + (getgrouplist): Simplify code a bit. Don't allocate one additional + element for NEWGROUPS. + + [BZ #2908] + * stdio-common/printf_fphex.c (__printf_fphex): When rounding up + 'f', use '1' as leading digit not '\1'. + * stdio-common/Makefile (tests): Add bug16. + * stdio-common/bug16.c: New file. + + [BZ #2914] + * sysdeps/unix/sysv/linux/gethostid.c: Don't define OLD_HOSTIDFILE + and don't try to open it. The patch introducing the macro + contained a bug and used the same file name as the new file + instead of using /var/adm/hostid. Nobody complaint so I'm taking + this out completely. + + [BZ #2926] + * assert/assert.h: Move cast to void inside ?: to quiet gcc. + Patch by Jerry James <Jerry.James@usu.edu>. + + * rt/Makefile (tests): Add tst-clock2. + * rt/tst-clock2.c: New file. + + [BZ #2978] + * resolv/gai_notify.c (__gai_notify_only): Copy memory for thread + function and its parameters and pass it to new thread. + (__gai_notify): Add support for alternative waiting for completion. + * resolv/gai_suspend.c (gai_suspend): Add support for alternative + waiting for completion. + * resolv/getaddrinfo_a.c: Likewise. + * resolv/gai_misc.h (struct waitlist): Don't add cond if alternative + waiting for completion is used. + * resolv/gai_misc.c: Allow overwriting code to start helper thread. + * resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h". + * resolv/gai_error.c: Likewise. + * resolv/gai_sigqueue.c: Likewise. + +2006-08-02 Thomas Schwinge <tschwinge@gnu.org> + + * hurd/getdport.c (__getdport): Don't return EBADF; instead set + errno to EBADF and return MACH_PORT_NULL. + +2006-06-23 Joseph Myers <joseph@codesourcery.com> + + [BZ #2980] + * posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables. + +2006-08-02 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-addr.c (_dl_addr): If GNU-style hash tables are present, + walk them instead of the symbol table. + +2006-08-01 Ulrich Drepper <drepper@redhat.com> + + [BZ #2098] + * nscd/initgrcache.c (addinitgroupsX): Judge successful lookups by + status of NSS calls, not the number of returned entries. + + * sysdeps/unix/sysv/linux/syscalls.list: Remove add_key, + request_key, keyctl. + +2006-07-31 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/dl-osinfo.h: Remove unnecessary include. + +2006-07-16 Jeff Bailey <jbailey@ubuntu.com> + + * elf/tst-auditmod1.c: Fix typo in #error. + +2006-07-31 Ulrich Drepper <drepper@redhat.com> + + * elf/tst-auditmod1.c: Remove code for unsupported architectures. + + * iconvdata/run-iconv-test.sh: Run cmp in C locale. + +2006-07-20 Adam Nemet <anemet@caviumnetworks.com> + + * stdlib/test-canon.c (do_test): Close fd before unlinking file so + that the directory is empty even on non-POSIX filesystems. + +2006-07-31 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-open.c (dl_open_worker): Add branch prediction. + + * nis/nss_compat/compat-grp.c: Avoid unnecessary setgrent calls into + the backend NSS module. If backend setgrent call failed, don't have + internal_setgrent fail. Just remember this until it is needed. + * nis/nss_compat/compat-pwd.c: Likewise. + * nis/nss_compat/compat-spwd.c: Likewise. + +2006-07-30 Roland McGrath <roland@redhat.com> + + * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed. + * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed. + * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed. + * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed. + + * sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro. + (nanosleep_not_cancel): New macro. + (sigsuspend_not_cancel): new macro. + * sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS] + (do_sigsuspend): Define as inline. + (__sigsuspend): Always use do_sigsuspend. + [! NO_CANCELLATION] (__sigsuspend_nocancel): New function. + * include/signal.h: Declare __sigsuspend_nocancel. + * sysdeps/posix/pause.c + [! NO_CANCELLATION] (__pause_nocancel): New function. + + * include/unistd.h (__pause_nocancel): Add attribute_hidden. + * include/time.h (__nanosleep_nocancel): Likewise. + +2006-07-30 Ulrich Drepper <drepper@redhat.com> + + * locale/programs/localedef.c (add_to_readlist): Rename local + variables to avoid confusion. + + * locale/programs/charmap.c (charmap_read): Emit error message if + charmap couldn't be found or read. + +2006-07-28 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/kernel-features.h: Define + __ASSUME_FUTEX_LOCK_PI. + * include/time.h: Declare __nanosleep_nocancel. + * include/unistd.h: Declare __pause_nocancel. + + * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Use this instead of + LDFLAGS. Add -lgcc_eh and libc_nonshared (again) to make sure we + get the __stack_chk_fail_local definition when it's needed. + +2006-07-26 Ulrich Drepper <drepper@redhat.com> + + * dlfcn/Makefile: Add rules to build and run bug-atexit3. + * dlfcn/bug-atexit3.c: New file. + * dlfcn/bug-atexit3-lib.cc: New file. + + * dlfcn/dlmopen.c (dlmopen_doit): Don't allow RTLD_GLOBAL to be + used when the namespace is not the base namespace. + +2006-07-26 Gavin Romig-Koch <gavin@redhat.com> + + * stdlib/cxa_atexit.c (__new_exitfn_called): New variable. + (__new_exitfn): Bump it in every successful call. + * stdlib/cxa_finalize.c (__cxa_finalize): If destructor registered + more exit handlers, call them right away. + * stdlib/exit.h: Declare __new_exitfn_called. + +2006-07-25 Ulrich Drepper <drepper@redhat.com> + + * stdlib/cxa_finalize.c (__cxa_finalize): Fix race condition when + calling registered handler. + + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fix comment. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + +2006-07-10 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-lookup.c (dl_new_hash): New functions. + (_dl_lookup_symbol_x): Rename hash to old_hash and don't compute + value here. Compute new-style hash value. Pass new hash value + and reference to variable with the old value to do_lookup_x. + (_dl_setup_hash): If DT_GNU_HASH is defined, use it and not + old-style hash table. + (_dl_debug_bindings): Pass new hash value and reference to variable + with the old value to do_lookup_x. + * elf/do-lookup.h (do_lookup_x): Accept additional parameter with + new-style hash value and change old-style hash value parameter to + be a reference. Reoganize functions to determine whether + new-style hash table is available. Only fall back on old-style + table. If old-style hash value is needed, compute it here. + * elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH + entry. + * elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT, + DT_TLSDEC_GOT. Adjust DT_ADDRNUM. + * include/link.h (struct link_map): Add l_gnu_bitmask_idxbits, + l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero. + * Makeconfig: If linker supports --hash-style option add it to all + linker command lines to build DSOs. + * config.make.in: Define have-hash-style. + * configure.in: Test whether linker supports --hash-style option. + + * elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const. + * sysdeps/generic/ldsodefs.h: Adjust prototype. + +2006-06-27 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-load.c (open_path): Fix test to determine whether DSO is + auditing. + + * elf/dl-load.c (_dl_map_object): Try harder to avoid looking at + RPATH of main map twice. + +2006-06-22 Ulrich Drepper <drepper@redhat.com> + + * intl/dcigettext.c (DCIGETTEXT): If _nl_find_msg returns -1 don't + look further, return original strings. + (_nl_find_msg): Do not return found translation if the conversion + failed. Either signal the string is unusable or that something went + wrong and the original should be used. + +2006-06-21 Ulrich Drepper <drepper@redhat.com> + + * string/_strerror.c (__strerror_r): Add __builtin_expect. + +2006-06-14 Jakub Jelinek <jakub@redhat.com> + + [BZ #2766] + * misc/insremque.c (insque): Handle prev == NULL. + * misc/Makefile (tests): Add tst-insremque. + * misc/tst-insremque.c: New test. + +2006-06-17 Ulrich Drepper <drepper@redhat.com> + + [BZ #2792] + * elf/dl-deps.c (expand_dst): Rename __cnt variable to not + conflict with DL_DST_REQUIRED. + +2006-06-16 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_subr.c (nis_getnames): Fix the implementation to better + match what Solaris does. + +2006-06-04 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/spawni.c (__spawni): Use local_seteuid and + local_setegid instead of seteuid and setegid. + * sysdeps/generic/local-setxid.h: New file. + * sysdeps/unix/sysv/linux/local-setxid.h: New file. + + * sysdeps/posix/spawni.c (__spawni): Use non-cancelable interfaces. + + * string/Makefile (tests): Add bug-envz1. + * string/bug-envz1.c: New file. + +2006-06-02 Jakub Jelinek <jakub@redhat.com> + + * posix/regex_internal.c (re_string_skip_chars): If no character has + been converted at all, set *last_wc to WEOF. If mbrtowc failed, set wc + to the byte which couldn't be converted. + (re_string_reconstruct): Don't clear valid_raw_len before calling + re_string_skip_chars. If wc is WEOF after re_string_skip_chars, set + tip_context using re_string_context_at. + * posix/Makefile: Add rules to build and run bug-regex25 test. + * posix/bug-regex25.c: New test. + +2006-06-02 Ryan S. Arnold <rsa@us.ibm.com> + + [BZ #2703] + * string/envz.c (envz_strip): Correct erroneously reversed src + and dest parameters to memmove() invocation. + +2006-05-30 Jakub Jelinek <jakub@redhat.com> + + * nscd/nscd.h (prune_cache): Add fd argument to prototype. + * nscd/nscd.c (parse_opt): Read response from INVALIDATE request + to make sure the database has been already invalidated. + * nscd/cache.c (prune_cache): Add fd argument. Write response to fd + after the cache has been invalidated. Use pthread_mutex_lock rather + than pthread_mutex_trylock if fd != -1. + * nscd/connections.c (invalidate_cache): Add fd argument, write + response to fd if not calling prune_cache, pass fd to prune_cache. + (handle_request): Adjust invalidate_cache caller. + (nscd_run): Pass -1 as fd to prune_cache. + +2006-05-30 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/posix/getaddrinfo.c (gaiconf_init): Initialize bits in + the correct place. + +2006-05-29 Ulrich Drepper <drepper@redhat.com> + + * nscd/nscd.h (struct database_dyn): Add prunelock field. + * nscd/cache.c (prune_cache): Take prunelock before starting the + work. Just return in case it is already taken. + * nscd/connections.c (dbs): Initialize .prunelock. + +2006-05-25 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_removemember.c (nis_removemember): Avoid unnecessary + copying. No need to allocate new array for group members. Just + move the pointers and update the size. + + * nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying. + Avoid memory leak in case realloc fails. Simplification for + better code generation. + + Avoid deprecation warning because of libc_hidden_proto for + inet6_option_alloc. + * inet/inet6_option.c (option_alloc): Renamed from + inet6_option_alloc. Made static. + (inet6_option_alloc): Now a simple wrapper around option_alloc. + (inet6_option_append): Call option_alloc. + * include/netinet/in.h: Remove libc_hidden_proto for + inet6_option_alloc. + + * nis/nis_callback.c (__nis_create_callback): Always call xdr_free + for cleanup when cb!=NULL [Coverity CID 233]. + +2006-05-24 Ulrich Drepper <drepper@redhat.com> + + [BZ #2693] + * inet/Makefile (routines): Add inet6_opt and inet6_rth. + * inet/Versions (libc, GLIBC_2.5): Add inet6_opt_init, + inet6_opt_append, inet6_opt_finish, inet6_opt_set_val, inet6_opt_next, + inet6_opt_find, inet6_opt_get_val, inet6_rth_space, inet6_rth_init, + inet6_rth_add, inet6_rth_reverse, inet6_rth_segments, + and inet6_rth_getaddr. + * inet/netinet/ip6.h (struct ip6_rthdr0): Make ip6r0_addr a flexible + array. + * inet/netinet/in.h (struct ip6_mtuinfo): Define. + Mark inet6_option_* interfaces as deprecated. + Declare inet6_opt_init, inet6_opt_append, inet6_opt_finish, + inet6_opt_set_val, inet6_opt_next, inet6_opt_find, inet6_opt_get_val, + inet6_rth_space, inet6_rth_init, inet6_rth_add, inet6_rth_reverse, + inet6_rth_segments, and inet6_rth_getaddr. + * inet/inet6_opt.c: New file. + * inet/inet6_rth.c: New file. + + * inet/netinet/icmp6.h: Pretty printing. + + [BZ #2683] + * elf/dl-addr.c (_dl_addr): Don't match undefined references. + +2006-05-23 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of + doing it all here. When server does not know the answer do not + fail immediate, try parent first. + + * nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer + overflow test. + +2006-05-20 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_call.c (__prepare_niscall): New function. Split out + from __do_niscall. + * nis/nis_table.c (__create_ib_request): Renamed from create_ib_request + and exported. + (__follow_path): New function. Split out from nis_list. + * nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and + _xdr_nis_result. + * nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and + _xdr_nis_result. + * nis/libnsl.h: Declare __prepare_niscall, __create_ib_request, + and __follow_path. + * nis/Versions: Export __prepare_niscall, __create_ib_request, + __follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result + from libnsl for version GLIBC_PRIVATE. + * nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk. + Remove entry parameter from _nss_nisplus_parse_pwent and + _nss_nisplus_parse_grent. + * nis/nss_nisplus/nisplus-parser.c: Likewise. + * nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ + again. Rewrite getpwent handling to not use nis_first_entry and + nis_next_entry. Roll out own niscall handling. + * nis/nss_nisplus/nisplus-grp.c: Likewise. + + * sunrpc/xdr_rec.c: Fix typo in comment. + +2006-05-19 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_call.c (__do_niscall3): Avoid code duplication in error + handling. + + * nis/nis_callback.c (internal_nis_do_callback): Don't use malloc + to allocate memory for my_pollfd. Better initialization of + cb_is_running. Use TEMP_FAILURE_RETRY. + + * malloc/memusage.sh (memusageso): Add quotes. + (memusagestat): Likewise. + * debug/xtrace.sh (pcprofileso): Likewise. + (pcprofiledump): Likewise. + * debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR + replacement. + * malloc/Makefile ($(objpfx)memusage): Likewise. + + * nis/nis_callback.c (__nis_create_callback): Calls to + svcudp_bufcreate and svctcp_create can fail. Free ->xprt if + asprintf call fails. + + * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_sendreq): Make sure + no uninitialized memory is passed to sendto. + +2006-05-18 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_callback.c (__nis_create_callback): Use asprinf instead + of snprintf+strdup. Handle OOM. + * nis/nis_callback.c (__nis_create_callback): Allocate cb and + cb->serv together. Remove now obsolete free calls. + (__nis_destroy_callback): Remove now obsolete free call. + +2006-05-18 David Woodhouse <dwmw2@redhat.com> + + * sysdeps/posix/getaddrinfo.c: Add unique labels to the default + RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local + and ULA respectively). Set precedence for IPv4 address to 10 as + defined in RFC3484 for preferring IPv6. + * posix/gai.conf: Update to match the new default tables. + +2006-05-18 Jakub Jelinek <jakub@redhat.com> + + * nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent + returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS. + * nis/nss_compat/compat-spwd.c (internal_setspent): Likewise. + * nis/nss_compat/compat-grp.c (internal_setgrent): Likewise. + + * nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent): + Removed. + (init_nss_interface): Remove initialization of these variables. + +2006-05-18 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_call.c (rec_dirsearch): Little optimization: pull + nis_free_directory forward to avoid duplication. + +2006-05-17 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and + rec_dirsearch returning NULL. + (first_shoot): Handle __nis_finddirectory returning NULL. + (__nisfind_server): Fix leak when rec_dirsearch returns NULL. + + * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOSE, IN_MOVE, + IN_ONLYDIR, IN_DONT_FOLLOW, and IN_MASK_ADD. + +2006-05-17 Jakub Jelinek <jakub@redhat.com> + + * sunrpc/key_call.c (getkeyserv_handle): Call auth_destroy if + pid changed. + +2006-05-15 Ulrich Drepper <drepper@redhat.com> + + * include/rpc/pmap_prot.h: Mark all functions as hidden. + + * nscd/nscd_initgroups.c: Mark __gr_map_handle as hidden. + * nscd/nscd_getgr_r.c: Likewise. + + * include/rpc/pmap_rmt.h: Mark all functions as hidden. + + * nscd/nscd_getai.c (__hst_map_handle): Mark as hidden. + * nscd/nscd_gethst_r.c (__hst_map_handle): Likewise. + + * stdlib/longlong.h (__clz_tab): Mark as hidden. + + * iconv/gconv_int.h: Mark __gconv_lock as hidden. + + * include/rpc/key_prot.h: Mark all _internal functions as hidden. + + * include/rpc/auth.h: Mark xdr_des_block_internal and + xdr_opaque_auth_internal as hidden. + + * sysdeps/unix/sysv/linux/getdents.c: Mark __have_no_getdents64 as + hidden. + + * include/rpc/xdr.h: Mark all _internal functions as hidden. + + * misc/getusershell.c (okshells): Don't use static initializers, + do it dynamically. + + * stdlib/fmtmsg.c (keywords): Change type of len element to + uint32_t to not waste space on 64bit machines. + + * locale/setlocale.c: Change _nl_category_names into a string. + Add new _nl_category_name_idxs. Change all users. + * locale/localeinfo.h: Adjust declaration of _nl_category_names. + Declare _nl_category_name_idxs. + * locale/findlocale.c: Adjust for _nl_category_names change. + * locale/loadlocale.c: Likewise. + * locale/newlocale.c: Likewise. + * intl/dcigettext.c: Likewise. + + * iconv/gconv_conf.c (add_alias): Move actual alias handling to... + (add_alias2): ...here. New function. + (__gconv_read_conf): Simplify builtin alias handling. + (builtin_aliases): Convert to string to avoid relocations. + * iconv/gconv_builtin.h: Add comment about correct formatting. + +2006-05-15 Jakub Jelinek <jakub@redhat.com> + + * resolv/res_debug.c (loc_ntoa): Make error const. + +2006-05-14 Andreas Schwab <schwab@suse.de> + + * math/complex.h [__LDBL_COMPAT]: Use __REDIRECT_NTH. + +2006-05-12 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/sched_getaffinity.c: Include sys/param.h. + (__sched_getaffinity_new): Don't crash if cpusetsize is smaller than + sizeof (cpu_set_t). + +2006-05-11 Ulrich Drepper <drepper@redhat.com> + + * resolv/res_debug.c (loc_ntoa): Define error as array, not pointer. + + * include/arpa/nameser.h: Declare _ns_flagdata as hidden. + + * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master. + * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master. + + * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp. + * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp. + + * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data. + * include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for + xdr_cback_data. + + * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args. + * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for + xdr_ypupdate_args. + + * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order. + * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order. + + * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist. + * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist. + + * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p. + * include/rpcsvc/nis_callback.h: New file. + + * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val. + * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val. + + * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey. + * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey. + + * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist. + * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist. + + * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey. + * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey. + + * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args. + * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for + xdr_ypdelete_args. + + * nis/nis_xdr.h: Mark all functions as hidden. Remove + __BEGIN_DECLS and __END_DECLS, the header is not installed. + + * nis/nis_error.c: Remove table of strings. Use position + independent mechanism. + * nis/nis_error.h: New file. + +2006-05-11 Jakub Jelinek <jakub@redhat.com> + + * locale/programs/ld-time.c (time_finish): If wide era name or + format aren't provided, set both wname and wformat to L"". + +2006-05-10 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Only store + results if the call was succesful. + + * nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden. + + * nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count + as hidden. + +2006-05-10 Jakub Jelinek <jakub@redhat.com> + + * misc/sys/queue.h: Remove uses of all QUEUEDEBUG_* macros. + +2006-05-10 Ulrich Drepper <drepper@redhat.com> + + * posix/wordexp.c (parse_glob): No need to check ifs for NULL, the + caller makes sure this is not the case. + (wordexp): Simplify ifs_white creation. [Coverity CID 231] + +2006-05-09 Ulrich Drepper <drepper@redhat.com> + + * posix/wordexp.c: Remove numerous NULL pointer tests before FREE + calls. + + * io/ftw.c (open_dir_stream): Return right away if REALLOC fails. + [Coverity CID 229, 230] + + * argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and + DGETTEXT calls. + (hol_help): Likewise. [Coverity CID 226, 227] + + * string/argz-replace.c (__argz_replace): Unconditionally call + free on SRC. [Coverity CID 225] + + * nis/nis_creategroup.c (nis_creategroup): No need to duplicate + the return value of __nis_default_owner and __nis_default_group, + it has been especially allocated. [Coverity CID 224] + + * nis/nis_defaults.c (searchXYX): New functions. Used by both + searchgroup and searchowner. Significantly simplified. + (__nis_default_owner): Remove duplication. Do not locally copy the + string before duplicating it. + (__nis_default_group): Likewise. + + * nis/nis_lookup.c (nis_lookup): After calling nis_free_directory, + we must clear the variable before calling __nisfind_server. + + * nis/nis_lookup.c (nis_lookup): Always free memory allocated with + nis_getnames. [Coverity CID 223] + + * locale/programs/locfile.c (locfile_read): Use alloca instead of + xmalloc to allocate local repertoire name. [Coverity CID 222] + + * iconv/iconv_charmap.c (use_to_charmap): No need to dynamically + allocate memory for the input to add_bytes. [Coverity CID 221] + + * posix/wordexp.c (w_addword): Free word if realloc fails and it + was allocated here. [Coverity CID 219, 220] + + * posix/getconf.c (print_all): Free confstr data after printing. + [Coverity CID 218] + + * sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if + list allocation fails. [Coverity CID 215] + + * nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition. + [Coverity CID 213] + + * argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if + string is NULL. [Coverity CID 212] + * argp/Makefile: Add rules to build and run bug-argp1. + * argp/bug-argp1.c: New file. + + * io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find + end of string. + * stdlib/canonicalize.c (__realpath): Likewise. + + * locale/programs/ld-time.c (time_finish): Don't dereference NULL + pointer. [Coverity CID 206] + + * elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map + in statically linked code. + * elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in + statically built code, be prepared to have no link map. + [Coverity CID 205] + + * argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in + dgettext calls. [Coverity CID 204] + + * argp/argp-help.c (struct uparams): Remove valid member. Change + the one user. + (uparam_names): Reduce size. Avoid relative relocations. + Moved to read-only segment. + (fill_in_uparams): Update for new layout. + + * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be + assumed to always be != NULL. [Coverity CID 202] + + * argp/argp-help.c (hol_entry_help): Remove some dead code + [Coverity CID 200]. + + * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize + away a few more unconditional yperr2nss calls. + (_nss_nis_getservbyname_r): Likewise. + +2006-05-06 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/generic/ldsodefs.h: Remove support for non-core + architectures. + + * sysdeps/unix/sysv/linux/check_pf.c (make_request): Make sure + that unused memory passed to sendto is nevertheless initialized. + + [BZ #2499] + * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Avoid + possibly unaligned memory accesses. + + * include/arpa/nameser.h: Also optimize NS_PUT16 and NS_PUT32. + * resolv/res_mkquery.c: Use NS_PUT16 and NS_PUT32 instead of __putshort + and __putlong respectively. Correct buffer overflow check for + NS_NOTIFY_OP. + + * resolv/res_send.c (send_vc): Use ns_put16 instead of putshort. + + * resolv/res_send.c (res_queriesmatch): Fix typo in comment. + (send_dg): Rewrite error handling to be more compact and avoid + double recomputation of timeouts. Pass MSG_NOSIGNAL to send. + + * include/arpa/nameser.h: Add optimizations for NS_GET16 and NS_GET32. + + * resolv/res_send.c (res_nameinquery): Use NS_GET16 directly + instead of ns_get16. + (res_queriesmatch): Likewise. Minor optimization. + + [BZ #2499] + * resolv/res_query.c (__libc_res_nquery): If answerp != NULL, + __libc_res_nsend might reallocate the buffer for the answer. In + this case we have to reload the HP pointer. + +2006-05-05 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/vfscanf.c (memory_error): Remove definition. Add + some branch prediction hints. + + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Define SPLICE_F_*. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + +2006-05-05 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * sysdeps/s390/s390-32/elf/start.S: Replace pc relative relocation + by a GOT relocation to make Scrt1.o position independent. + * sysdeps/s390/s390-64/elf/start.S: Likewise. + + * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S: Add support for + six system call parameters. + * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise. + +2006-05-05 Ulrich Drepper <drepper@redhat.com> + + * sunrpc/svcauth_des.c (cache_init): Use calloc instead of + malloc&bzero. + + * sunrpc/svc_udp.c (BZERO): Remove definition. + (CALLOC): Define. + (svc_enablecache): Use CALLOC instead of ALLOC&BZERO. + + * sunrpc/des_impl.c: Remove ALT_ECB support. We never used it. + (des_SPtrans): Use uint32_t type. + (des_skb): Likewise. + + * sunrpc/xdr_ref.c (xdr_reference): Use calloc instead of malloc&bzero. + +2006-05-05 Jakub Jelinek <jakub@redhat.com> + + [BZ #2509] + * stdio-common/tst-printf.sh: Adjust for tst-printf.c change even + on 32-bit arches. + +2006-05-05 Ulrich Drepper <drepper@redhat.com> + + * locale/programs/ld-address.c (address_finish): Fix one more + place where the iso639 array might be accessed beyond the limits. + +2006-05-04 Ulrich Drepper <drepper@redhat.com> + + * nis/nis_table.c (nis_list): Avoid clearing res twice before + filling it for the first time. + + * nis/nis_table.c (get_tablepath): Renamed from __get_tablepath. + Adjust all callers. + Free res object content before returning. + + * sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero. + + * sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free + client->cl_auth. + + * sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire + cleanup for initial thread, just the free call on TVP. + + * nscd/gai.c (__getline): Define. + + +See ChangeLog.16 for earlier changes. |