2011-06-15 Ulrich Drepper * grp/initgroups.c (__nss_initgroups_database): Renamed and exported. (internal_getgrouplist): Adjust to name change. Update use_initgroups_entry if this is not the first call. * nss/databases.def: Add initgroups entry. * nss/makedb.c (compute_tables): Check result of multiple hash table sizes to minimize maximum chain length. 2011-06-14 Ulrich Drepper * Versions.def: Add entry for libnss_db. * shlib-versions: Likewise. * nss/Makefile: Add rules to build libnss_db. * nss/Versions: Add libnss_db information. Organize libnss_files entries better. * nss/db-Makefile: Add gshadow support. Change rules for the new makedb progra. Some minor improvements to generate smaller files. * nss/nss_db/nss_db.h: Move NSS database header data structures to here from... * nss/makedb.c: ...here. Improve database format to be smaller and require less memory at runtime. * nss/nss_db/db-XXX.x: Adjust for new database format. Don't use db anymore. * nss/nss_db/db-netgrp.c: Likewise. * nss/nss_db/db-open.c: Likewise. * nss/nss_files/flies-XXX.x: Adjust comments. * nss/nss_files/files-ethers.c: Adjust for new DB_LOOKUP definition. * nss/nss_files/files-grp.c: Likewise. * nss/nss_files/files-hosts.c: Likewise. * nss/nss_files/files-network.c: Likewise. * nss/nss_files/files-proto.c: Likewise. * nss/nss_files/files-pwd.c: Likewise. * nss/nss_files/files-rpc.c: Likewise. * nss/nss_files/files-service.c: Likewise. * nss/nss_files/files-sgrp.c: Likewise. * nss/nss_files/files-spwd.c: Likewise. * nss/nss_db/db-alias.c: Removed. * nss/nss_db/dummy-db.h: Removed. 2011-06-02 Ulrich Drepper * nss/makedb.c: Rewritten to not use database library. * nss/Makefile: Update to build new makedb program. 2011-06-14 Andreas Jaeger * sysdeps/unix/sysv/linux/check_native.c: Include for memset declaration. 2011-06-10 Andreas Schwab * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix logic allocating tmpbuf. 2011-06-10 Roland McGrath * Makerules (shlib.lds): Fail if the linker script comes out empty. * elf/Makefile ($(objpfx)ld.so): Likewise. * Makefile ($(common-objpfx)linkobj/libc.so): Break long lines with \. Don't list ld.so twice in dependencies. * posix/bug-regex31.c: Include . * nscd/hstcache.c (cache_addhst): Remove unused variable. * nis/nss_compat/compat-spwd.c (getspent_next_nss_netgr): Remove unused variable. * nis/nss_compat/compat-pwd.c (getpwent_next_nss_netgr): Likewise. * nis/nis_print_group_entry.c (nis_print_group_entry): Fix "Implicit nonmembers" output to use the right array. * resolv/nss_dns/dns-network.c (getanswer_r): Remove unused variable. * elf/dl-open.c (_dl_open): Quash warnings when DL_NNS==1. * locale/programs/ld-ctype.c (ctype_read): Remove unused variable. * locale/programs/ld-collate.c (add_to_tablewc): Likewise. * catgets/gencat.c (read_input_file): Likewise. * locale/programs/locarchive.c (enlarge_archive): Likewise. * sunrpc/clnt_udp.c (__libc_clntudp_bufcreate): Move DONTBLOCK variable definition inside #if's controlling its use. * inet/getnetgrent_r.c (innetgr): Remove unused variable. * resolv/res_hconf.c (_res_hconf_reorder_addrs): Fix errno restoration. * misc/syslog.c (__vsyslog_chk): Remove unused variable. * io/fts.c (fts_build): Use if (0 && ...) rather than #if 0 for unreachable code. * stdio-common/printf_fp.c (___printf_fp): Remove unused variable. * configure.in (nss-crypt check): Use AC_LANG_PROGRAM. * configure: Regenerated. * Makerules: Revert last change. * elf/Makefile: Likewise. 2011-06-09 Roland McGrath * Makerules ($(common-objpfx)libc_pic.os): Use -Wl, before -r. * elf/Makefile ($(objpfx)librtld.os): Likewise. (reloc-link): Likewise. 2011-06-09 Ulrich Drepper * elf/Makefile: Add rules to build pldd. * elf/pldd.c: New file. * elf/pldd-xx.c: New file. 2011-06-07 Ulrich Drepper * version.h: Update for 2.15 development version. 2011-06-07 David S. Miller * sysdeps/sparc/sparc32/dl-irel.h (elf_irela): Pass dl_hwcap to ifuncs. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela, elf_machine_lazy_rel): Likewise. * sysdeps/sparc/sparc64/dl-irel.h (elf_irela): Likewise. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela, elf_machine_lazy_rel): Likewise. * sysdeps/sparc/sparc64/multiarch/memcpy.S (memcpy): Fetch dl_hwcap via passed in argument. * sysdeps/sparc/sparc64/multiarch/memset.S (memset, bzero): Likewise. 2011-06-06 Andreas Krebbel * stdlib/longlong.h: Update from GCC. Fix smul_ppmm for S/390. 2011-06-06 Roland McGrath [BZ #12849] * manual/fdl-1.1.texi: New file, verbatim from: http://www.gnu.org/licenses/old-licenses/fdl-1.1.texi * manual/lgpl-2.1.texi: New file, verbatim from: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.texi * manual/Makefile (licenses): New variable, list those new file names. (texis): Use it. (chapters.% top-menu.%): Include $(licenses) with $(appendices). * manual/fdl.texi: File removed. * manual/lesser.texi: File removed. * manual/libc.texinfo (Copying, Documentation License): Use new @include file names, put @appendix directive before @include. 2011-06-04 Jakub Jelinek [BZ #12841] * rt/bits/mqueue2.h (__mq_open_2): Add __THROW. (__mq_open_alias): Use __REDIRECT_NTH instead of __REDIRECT. (mq_open): Add __NTH. 2011-06-02 H.J. Lu * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Assume Intel Core i3/i5/i7 processor if AVX is available. 2011-05-31 Ulrich Drepper * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard): Fix typo. 2011-05-31 Andreas Schwab * nscd/nscd_getserv_r.c (nscd_getserv_r): Don't free non-malloced memory. Use alloca_account. Fix memory leak when retrying. 2011-05-31 Ulrich Drepper * version.h (RELEASE): Bump for 2.14 release. * include/features.h (__GLIBC_MINOR__): Bump to 14. * config.make.in (RANLIB): Remove entry. 2011-05-30 Ulrich Drepper * po/Makefile (po-sed-cmd): Add ksh to extensions. (libc.pot): Work around missing support for .ksh extension in xgettext. [BZ #12684] * resolv/res_send.c (__libc_res_nsend): Only go to the next name server if both request failed. (send_dg): In case of server errors clear resplen or *resplen2. [BZ #12454] * elf/dl-deps.c (_dl_map_object_deps): Run initializer sorting only when there are multiple maps. * elf/dl-fini.c (_dl_sort_fini): Check for list of one. (_dl_fini): Remove test here. * elf/rtld.c (dl_main): Don't allow the loader to load itself. 2011-05-29 Ulrich Drepper [BZ #12350] * sysdeps/posix/getaddrinfo.c (gethosts): Restore only RES_USE_IENT6 bit from old_res_options. (gaih_inet): Likewise. [BZ #11099] * shadow/sgetspent_r.c (LINE_PARSER): Interpret numeric field values as signed. * resolv/res_init.c (res_setoptions): Make the code more compact. [BZ #11558] * resolv/res_init.c (res_setoptions): Recognize use-vc option and set RES_USEVC. [BZ #11634] * elf/Makefile (tests): Don't add tst-audit[67] without working -mavx. * malloc/malloc.h: Mark malloc hook variables as deprecated. [BZ #11781] * malloc/malloc.h: Declare malloc hook variables as volatile. * locale/programs/locarchive.c (add_locale_to_archive): Fix typo in last patch. [BZ #11799] * sysdeps/unix/sysv/linux/bits/siginfo.h (SI_USER): Don't mention raise in the comment. * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise. * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise. 2011-05-28 Ulrich Drepper [BZ #12811] * posix/regex_internal.c (build_wcs_buffer): Don't signal we have to grow the buffers more if it already has to be sufficient. (build_wcs_upper_buffer): Likewise. * posix/regexec.c (check_matching): Likewise. (clean_state_log_if_needed): Likewise. (extend_buffers): Don't enlarge buffers beyond size of the input buffer. Patches mostly by Emil Wojak . * posix/bug-regex32.c: New file. * posix/Makefile (tests): Add bug-regex32. * locale/findlocale.c (_nl_find_locale): Return right away if _nl_explode_name failed. * locale/programs/locarchive.c (add_locale_to_archive): Likewise. * sysdeps/unix/sysv/linux/socketcall.h (SOCKOP_sendmmsg): Define. * debug/xtrace.sh: Unify messages. * malloc/memusage.sh: Likewise. [BZ #12813] * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_time): Retrieve time symbol from vDSO. Substitute with vsyscall if not available. * sysdeps/unix/sysv/linux/x86_64/time.S [SHARED]: Use __vdso_time. * sysdeps/unix/sysv/linux/internal_sendmmsg.S: New file. * sysdeps/unix/sysv/linux/sendmmsg.c: New file. * sysdeps/unix/sysv/linux/Makefile [subdir=socket] (sysdep_routines): Add sendmmsg and internal_sendmmsg. * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14]: Add sendmmsg. * sysdeps/unix/sysv/linux/bits/socket.h: Declare sendmmsg. * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_SENDMMSG. * sysdeps/unix/sysv/linux/syscalls.list: Add setns entry. * sysdeps/unix/sysv/linux/bits/sched.h: Declare setns. * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14]: Add setns. 2011-05-27 Ulrich Drepper [BZ #12813] * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_getcpu): Retrieve getcpu symbol from vDSO. Substitute with vsyscall if not available. * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S [SHARED]: Use __vdso_getcpu. [BZ #12814] * iconvdata/Makefile (tests): Add bug-iconv9. * iconvdata/bug-iconv9.c: New file. 2011-05-27 Andreas Schwab [BZ #12814] * iconvdata/iso-2022-jp.c (BODY): Fix invalid variable shadowing. 2011-05-25 Jakub Jelinek * sysdeps/unix/sysv/linux/x86_64/sys/user.h (struct user_regs_struct): Change intcs field back to cs. 2011-05-25 Ulrich Drepper * po/ja.po: Update from translation team. 2011-05-23 Ulrich Drepper [BZ #12795] * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_RTTIME): Define. * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise. 2011-05-20 Andreas Schwab * stdlib/longlong.h: Update from GCC. 2011-05-23 Andreas Schwab * sysdeps/unix/sysv/linux/ia64/sysconf.c (HAS_CPUCLOCK): Add parameter name. * sysdeps/unix/sysv/linux/sysconf.c (has_cpuclock, HAS_CPUCLOCK): Add parameter name. (__sysconf): Pass it down. 2011-05-22 Ulrich Drepper [BZ #12671] * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Use malloc in some situations. * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise. * posix/glob.c (glob_in_dir): Take additional parameter alloca_used. add in in __libc_use_alloca calls. Adjust callers. (glob): Use malloc in some situations. * elf/dl-runtime.c (_dl_profile_fixup): Also store LA_SYMB_NOPLTENTER and LA_SYMB_NOPLTEXIT in flags which are passed to pltenter and pltexit. 2011-05-21 Ulrich Drepper * sysdeps/unix/sysv/linux/bits/time.h: Define CLOCK_REALTIME_ALARM and CLOCK_BOOTTIME_ALARM. [BZ #12782] * string/xpg-strerror.c (__xpg_strerror_r): Fill buffer even if error is returned. * string/_strerror.c (__strerror_r): Print negative errors as signed numbers. [BZ #12777] * iconvdata/cp1258.c (comp_table_data): Remove entry 0x00A5 0xEC. (decomp_table): Change U0385 entry to emit 0xA5 0xEC. * iconvdata/CP1258.irreversible: Adjust entry 0xA8EC. * configure.in: Fix typo in redirection and correct removal of test files in two cases. [BZ #12788] * locale/setlocale.c (new_composite_name): Fix test to check for identical name of all categories. [BZ #12792] * libio/filedoalloc.c (local_isatty): New function. (_IO_file_doallocate): Use local_isatty. * stdio-common/perror.c (perror): In case a new stream is used forward the stream error. * stdio-common/vfprintf.c (ARGCHECK): For read-only streams also set error flag. 2011-05-20 Ulrich Drepper [BZ #11869] * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't unconditionally use alloca. * include/alloca.h (extend_alloca_account): Define. [BZ #11857] * posix/regex.h: Fix comments with documentation of user-accessible fields after compilation and describe correct free'ing of pattern after re_compile_pattern. Patch by Reuben Thomas . 2011-05-18 Ryan S. Arnold * sysdeps/powerpc/powerpc64/Makefile (no-special-regs): Add -mno-vsx and -mno-altivec to prevent the compiler from using Altivec and/or VSX instructions when the corresponding registers are not available. 2011-05-19 Andreas Schwab * grp/compat-initgroups.c (__libc_use_alloca): Don't define. 2011-05-19 Ulrich Drepper * libio/freopen.c (freopen): Use __dup2, not dup2. * libio/freopen64.c (freopen64): Likewise. 2011-05-17 H.J. Lu [BZ #12775] * sysdeps/x86_64/fpu/e_powl.S: Fix a typo. * math/Makefile (tests): Add test-powl. (CFLAGS-test-powl.c): Define. * math/test-powl.c: New file. 2011-05-16 H.J. Lu * fileops.c (_IO_new_file_fopen): Get fd from _IO_fileno. 2011-05-17 Ulrich Drepper [BZ #11837] * iconvdata/gb18030.c: Update to GB18020-2005. 2011-05-16 Ulrich Drepper * posix/regex.h (RE_SYNTAX_AWK, RE_SYNTAX_GNU_AWK, RE_SYNTAX_POSIX_AWK): Update to match recent development. Patch by Aharon Robbins . [BZ #11892] * stdlib/putenv.c (putenv): Don't always create copy of the variable on the stack. [BZ #11895] * misc/pselect.c (__pselect): Handle timeout value errors hidden through underflows. [BZ #12766] * misc/error.c (error_at_line): Ensure file_name and old_file_name point to strings before performing equality test for error_one_per_line mode. [BZ #11697] * login/programs/pt_chown.c (do_pt_chown): Always call chown. [BZ #11820] * sysdeps/unix/sysv/linux/x86_64/sys/user.h (struct user_fpregs_struct): Avoid __uint*_t types. [BZ #6420] * malloc/mtrace.c (tr_where): Add additional parameter to point to symbol info. Use it instead of calling _dl_addr locally. (lock_and_info): New function. (tr_freehook): Call lock_and_info and pass symbol info as additional parameter to tr_where. (tr_mallochook): Likewise. (tr_reallochook): Likewise. (tr_memalignhook): Likewise. * malloc/mtrace.c: Remove support for USE_MTRACE_FILE. It is not used and couldn't be at all thread-safe. 2011-05-15 Ulrich Drepper * libio/freopen.c (freopen): Don't close old file descriptor before the new one is opened. Instead dup the new file descriptor to the old one after the new stream is created. * libio/freopen64.c (freopen64): Likewise. * libio/libio.h: Define _IO_FLAGS2_NOCLOSE and _IO_FLAGS2_CLOEXEC. * libio/fileops.c (_IO_new_file_close_it): Handle new _IO_FLAGS2_NOCLOSE flag. (_IO_new_file_fopen): Set _IO_FLAGS2_CLOEXEC for "e" mode. If _IO_file_open didn't set FD_CLOEXEC do it after the call. * libio/oldfileops.c (_IO_old_file_close_it): Handle new _IO_FLAGS2_NOCLOSE flag. * include/unistd.h: Add hidden_proto for dup3. Define __have_dup3. * io/dup3.c: Define hidden symbol. * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_DUP3. [BZ #7101] * posix/getopt.c (_getopt_internal_r): List all ambigious possibilities when an incomplete long option is used. * posix/tst-getopt_long1.c: New file. * posix/Makefile (tests): Add tst-getopt_long1. [BZ #10138] * scripts/config.guess: Update from autoconf-2.68. * scripts/config.sub: Likewise. [BZ #10157] * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Split out CPUTIME tests into ... (has_cpuclock): ...this. New function. * sysdeps/unix/sysv/linux/ia64/sysconf.c: Just define HAS_CPUCLOCK macro here based on has_cpuclock code. [BZ #10149] * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard): First byte (not low byte) is now always NUL. * sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Likewise. * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard): Use non-cancelable interfaces. [BZ #9809] * locale/iso-639.def: Add entry for Sorani. [BZ #11901] * include/stdlib.h: Move include protection to the right place. Define abort_msg_s. Declare __abort_msg with it. * stdlib/abort.c (__abort_msg): Adjust type. * assert/assert.c (__assert_fail_base): New function. Majority of code from __assert_fail. Allocate memory for __abort_msg with mmap. (__assert_fail): Now call __assert_fail_base. * assert/assert-perr.c: Remove bulk of implementation. Use __assert_fail_base. * include/assert.hL Declare __assert_fail_base. * sysdeps/posix/libc_fatal.c: Allocate memory for __abort_msg with mmap. * sysdeps/unix/sysv/linux/libc_fatal.c: Likewise. 2011-05-14 Ulrich Drepper [BZ #11952] [BZ #12453] * elf/dl-open.c (dl_open_worker): Delay calls to _dl_update_slotinfo until all modules are registered in the DTV. * elf/Makefile: Add rules to build and run tst-tls19. * elf/tst-tls19.c: New file. * elf/tst-tls19mod1.c: New file. * elf/tst-tls19mod2.c: New file. * elf/tst-tls19mod3.c: New file. Patch mostly by Martin von Gagern . [BZ #12083] * sysdeps/pthread/aio_misc.c (__aio_init): Compute optim.aio_num correctly. [BZ #12601] * iconvdata/cp932.c (BODY to UCS4): Fix incrementing inptr in case of two-byte sequence errors. * iconvdata/Makefile (tests): Add bug-iconv8. * iconvdata/bug-iconv8.c: New file. [BZ #12626] * sysdeps/generic/elf/backtracesymsfd.c (__backtrace_symbols_fd): Move buf2 definition. * libio/fileops.c (_IO_new_file_close_it): Initialize write_status. [BZ #12432] * sysdeps/ia64/backtrace.c (struct trace_reg): Add cfa element. (dummy_getcfa): New function. (init): Get _Unwind_GetCFA address, use dummy if not found. (backtrace_helper): In recursion check, also check whether CFA changes. (__backtrace): Completely initialize arg. * iconv/loop.c (SINGLE) [STORE_REST]: Add input bytes to bytebuf before storing incomplete byte sequence in state object. Avoid testing for guaranteed too small input if we know there is enough data available. 2011-05-11 Andreas Schwab * Makeconfig (+link-pie): Indent. * Rules (binaries-pie): Define if $(have-fpie) and $(build-shared). (binaries-shared): Also filter out $(binaries-pie). ($(addprefix $(objpfx),$(binaries-pie))): New rule. * nscd/Makefile (others-pie): Add nscd. (LDFLAGS-nscd): Set this instead of relro-LDFLAGS. ($(objpfx)nscd): Remove command override. * login/Makefile (others-pie): Add pt_chown. ($(objpfx)pt_chown): Remove command override. * elf/Makefile: Add PIE tests to tests and tests-pie variables and remove command overrides. 2011-05-13 Ulrich Drepper * libio/tst_putwc.c: Fix error messages. [BZ #12724] * libio/fileops.c (_IO_new_file_close_it): Always flush when currently writing and seek to current position when not. * libio/Makefile (tests): Add bug-fclose1. * libio/bug-fclose1.c: New file. 2011-05-12 Ulrich Drepper [BZ #12511] * elf/dl-lookup.c (enter): Don't test for copy relocation here and don't set DF_1_NODELETE here. (do_lookup_x): When entering new entry test for copy relocation and if necessary set DF_1_NODELETE flag. * elf/tst-unique4.cc: New file. * elf/tst-unique4.h: New file. * elf/tst-unique4lib.cc: New file. * elf/Makefile: Add rules to build and run tst-unique4. Patch by Piotr Bury . 2011-05-11 Ulrich Drepper [BZ #12052] * sysdeps/posix/spawni.c (__spawni): Fix sched_setscheduler call. [BZ #12625] * misc/mntent_r.c (addmntent): Flush the stream after the output [BZ #12393] * elf/dl-load.c (is_trusted_path): Remove unnecessary test. (is_trusted_path_normalize): Skip initial colon. Append slash to empty buffer. Duplicate is_trusted_path code but allow constructed patch to be prefix. (is_dst): Allow $ORIGIN followed by /. (_dl_dst_substitute): Correct clearing of check_for_trusted. Correct testing of result of is_trusted_path_normalize (decompose_rpath): Fix warning. 2011-05-10 Ulrich Drepper [BZ #11257] * grp/initgroups.c (internal_getgrouplist): When we found the service list through the initgroups entry in nsswitch.conf do not always continue on a successful lookup. Don't always use the __nss_group_database value if it is set. * nss/nsswitch.conf (initgroups): Change action for successful db lookup to continue for compatibility. 2011-05-09 Ulrich Drepper [BZ #11532] * iconvdata/Makefile: Add rules to build CP770, CP771, CP772, CP773, and CP774 modules. * iconvdata/gconv-modules: Add entries for CP770, CP771, CP772, CP773, and CP774 modules. * iconvdata/tst-tables.sh: Likewise. * iconvdata/cp770.c: New file. * iconvdata/cp771.c: New file. * iconvdata/cp772.c: New file. * iconvdata/cp773.c: New file. * iconvdata/cp774.c: New file. * iconvdata/testdata/CP770: New file. * iconvdata/testdata/CP770..UTF8: New file. * iconvdata/testdata/CP771: New file. * iconvdata/testdata/CP771..UTF8: New file. * iconvdata/testdata/CP772: New file. * iconvdata/testdata/CP772..UTF8: New file. * iconvdata/testdata/CP773: New file. * iconvdata/testdata/CP773..UTF8: New file. * iconvdata/testdata/CP774: New file. * iconvdata/testdata/CP774..UTF8: New file. * iconvdata/gen-8bit-gap-1.sh: End reading of charmap file at END CHARMAP line. * iconvdata/gen-8bit-gap.sh: Likewise. * iconvdata/gen-8bit.sh: Likewise. * locale/iso-639.def: Add ary entry. [BZ #11258] * locale/C-translit.h.in: Add U20A1 transliteration. [BZ #12178] * locale/iso-639.def: Add wae entry. Patch by Kevin Bortis . [BZ #12545] * locale/programs/localedef.c (construct_output_path): Use ssize_t for n. [BZ #12711] * locale/C-translit.h.in: Add entry for U20B9. Patch by pravin.d.s@gmail.com. 2011-05-08 Ulrich Drepper [BZ #12713] * sysdeps/unix/sysv/linux/getcwd.c: If getcwd syscall report ENAMETOOLONG use generic getcwd. * sysdeps/posix/getcwd.c: Add support to use openat. Make usable in rtld. Use *stat64. * sysdeps/unix/sysv/linux/Makefile [subdir=elf] (sysdep-rtld-routines): Add dl-getcwd, dl-openat64, dl-opendir, dl-fxstatat64. * sysdeps/unix/sysv/linux/dl-getcwd.c: New file. * sysdeps/unix/sysv/linux/dl-openat64.c: New file. * sysdeps/unix/sysv/linux/dl-opendir.c: New file. * sysdeps/unix/sysv/linux/dl-fxstat64.c: New file. * include/sys/stat.h: Define __fstatat, __lstat64, __fstat64, and __fstatat64 macros. * include/dirent.h: Add libc_hidden_proto for rewinddir. * dirent/rewinddir.c: Add libc_hidden_def. * sysdeps/mach/hurd/rewinddir.c: Likewise. * sysdeps/unix/rewinddir.c: Likewise. Don't do locking outside libc. * include/dirent.h (__alloc_dir): Add flags parameter. * sysdeps/unix/fdopendir.c (__fdopendir): Pass flags to __alloc_dir. * sysdeps/unix/opendir.c (__opendir): Pass 0 in new parameter to __alloc_dir. (__alloc_dir): Take new parameter. Don't call fcntl for invocations from fdopendir if O_CLOEXEC is already set. 2011-03-15 Alan Modra * elf/dl-reloc.c (_dl_try_allocate_static_tls ): Handle l_tls_firstbyte_offset non-zero. Save padding offset in l_tls_firstbyte_offset for later use. * elf/dl-close.c (_dl_close_worker ): Correct code freeing static tls block. 2011-03-05 Jonathan Nieder * sysdeps/unix/sysv/linux/sys/param.h: Fix an #ifndef __undef_ARG_MAX where #ifdef was intended. The intent is to prevent ARG_MAX from being defined by the kernel headers. 2011-05-07 Ulrich Drepper [BZ #12734] * resolv/resolv.h: Define RES_NOTLDQUERY. * resolv/res_init.c (res_setoptions): Recognize no_tld_query and no-tld-query and set RES_NOTLDQUERY. * resolv/res_debug.c (p_option): Handle RES_NOTLDQUERY. * resolv/res_query.c (__libc_res_nsearch): Backport changes from modern BIND to search name as TLD unless forbidden. 2011-05-07 Petr Baudis Ulrich Drepper [BZ #12393] * elf/dl-load.c (fillin_rpath): Move trusted path check... (is_trusted_path): ...to here. (is_trusted_path_normalize): Wrapper for /../ and /./ normalization. (_dl_dst_substitute): Verify expanded $ORIGIN path elements using is_trusted_path_normalize() in setuid scripts. 2011-05-06 Paul Pluzhnikov * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add missing __BEGIN/__END_DECLS. 2011-05-06 Ulrich Drepper * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn): Return NSS_STATUS_NOTFOUND if no record was found. 2011-05-05 Andreas Schwab * sunrpc/Makefile (headers): Add rpc/netdb.h. (headers-not-in-tirpc): Remove rpc/netdb.h * resolv/netdb.h: Revert last change. 2011-05-05 Paul Pluzhnikov * Makeconfig (link-libc-static): Use --{start,end}-group to handle circular dependency between libgcc.a and libc.a. 2011-05-05 Andreas Schwab * resolv/netdb.h: Don't include . * nis/Makefile: Don't install rpcsvc/*. * inet/protocols/timed.h: Include and instead of . (MAXHOSTNAMELEN): Define. 2011-05-03 Andreas Schwab * elf/ldconfig.c (add_dir): Don't crash on empty path. 2011-04-28 Maciej Babinski [BZ #12714] * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't bypass gethostbyname4_r when IPv6 results are possible. 2011-05-02 Ulrich Drepper [BZ #12723] * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Implement _PC_PIPE_BUF handling. 2011-04-30 Bruno Haible [BZ #12717] * conform/data/netdb.h-data (getnameinfo): Make POSIX compliant. * resolv/netdb.h (getnameinfo): Change type of flags parameter to 'int'. * inet/getnameinfo.c (getnameinfo): Likewise. 2011-04-29 Ulrich Drepper * grp/initgroups.c (internal_getgrouplist): Prefer initgroups setting to groups setting in database lookup. * nss/nsswitch.conf: Add initgroups entry. 2011-04-22 Ulrich Drepper [BZ #12685] * libio/fileops.c (_IO_new_file_fopen): Scan up to 7 bytes of the mode string. Patch by Eric Blake . 2011-04-20 H.J. Lu * sunrpc/Makefile (need-export-routines): Add svc_run. (routines): Remove svc_run. ($(objpfx)thrsvc): Add $(common-objpfx)linkobj/libc.so. * sunrpc/clnt_perr.c (clnt_perrno): Export. * sunrpc/svc_run.c (svc_run): Likewise. * sunrpc/svc_udp.c (svcudp_create): Likewise. 2011-04-21 Ulrich Drepper * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn): Fix problem in reallocation in last patch. 2011-04-20 Ulrich Drepper * sunrpc/Makefile: Move inclusion of Rules. 2011-04-19 Ulrich Drepper * nss/nss_files/files-initgroups.c: New file. * nss/Makefile (libnss_files-routines): Add files-initgroups. * nss/Versions (libnss_files) [GLIBC_PRIVATE]: Export _nss_files_initgroups_dyn. 2011-03-31 Richard Sandiford * elf/elf.h (R_ARM_IRELATIVE): Define. 2011-04-19 Ulrich Drepper * po/ru.po: Update from translation team. 2011-04-17 Ulrich Drepper * sunrpc/Makefile ($(rpc-compat-routines.os)): Add before-compile to dependencies. 2011-02-06 Mike Frysinger [BZ #12653] * sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S: Only protect MEMCPY_CHK with USE_AS_BCOPY ifdef check. * sysdeps/i386/i686/multiarch/memcpy-ssse3.S: Likewise. * sysdeps/x86_64/multiarch/memcpy-ssse3.S: Likewise. * sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: Likewise. 2011-03-28 Andreas Schwab * sysdeps/powerpc/powerpc32/power4/strncmp.S: Don't read past differing bytes. * sysdeps/powerpc/powerpc64/power4/strncmp.S: Likewise. * sysdeps/powerpc/powerpc32/power7/strncmp.S: Likewise. * sysdeps/powerpc/powerpc64/power7/strncmp.S: Likewise. 2011-04-17 Ulrich Drepper [BZ #12420] * sysdeps/unix/sysv/linux/x86_64/getcontext.S: Reload context after storing it. * stdlib/bug-getcontext.c: New file. * stdlib/Makefile: Add rules to build and run bug-getcontext. 2011-04-13 Andreas Krebbel * sysdeps/s390/s390-64/utf16-utf32-z9.c: Wrap the z9-109 instructions into .machine "z9-109". * sysdeps/s390/s390-64/utf8-utf16-z9.c: Likewise. * sysdeps/s390/s390-64/utf8-utf32-z9.c: Likewise. 2011-04-11 Andreas Krebbel * sysdeps/s390/s390-32/elf/start.S (_start): Skip extra zeroes between environment variables and auxiliary vector. 2011-04-16 Ulrich Drepper * Makefile: Add rules to build linkobj/libc.so. * include/libc-symbols.h: Define libc_hidden_nolink. * include/rpc/auth.h: Mark functions which are to be hidden. * include/rpc/auth_des.h: Likewise. * include/rpc/auth_unix.h: Likewise. * include/rpc/clnt.h: Likewise. * include/rpc/des_crypt.h: Likewise. * include/rpc/key_prot.h: Likewise. * include/rpc/pmap_clnt.h: Likewise. * include/rpc/pmap_prot.h: Likewise. * include/rpc/pmap_rmt.h: Likewise. * include/rpc/rpc_msg.h: Likewise. * include/rpc/svc.h: Likewise. * include/rpc/svc_auth.h: Likewise. * include/rpc/xdr.h: Likewise. * nis/Makefile: Link all DSOs against linkobj/libc.so. * nss/Makefile: Likewise. * sunrpc/Makefile: Don't install headers. Build library with normal entry points. Don't build rpcinfo. Link RPC tests appropriately. * sunrpc/auth_des.c: Hide exported symbols by default, export some for the compat linking library. Remove use of INTDEF/INTUSE. * sunrpc/auth_none.c: Likewise. * sunrpc/auth_unix.c: Likewise. * sunrpc/authdes_prot.c: Likewise. * sunrpc/authuxprot.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/key_call.c: Likewise. * sunrpc/key_prot.c: Likewise. * sunrpc/netname.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/publickey.c: Likewise. * sunrpc/rpc_cmsg.c: Likewise. * sunrpc/rpc_common.c: Likewise. * sunrpc/rpc_dtable.c: Likewise. * sunrpc/rpc_prot.c: Likewise. * sunrpc/rpc_thread.c: 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_intXX_t.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. 2011-04-10 Ulrich Drepper [BZ #12650] * sysdeps/i386/dl-tls.h: Define TLS_DTV_UNALLOCATED. * sysdeps/ia64/dl-tls.h: Likewise. * sysdeps/powerpc/dl-tls.h: Likewise. * sysdeps/s390/dl-tls.h: Likewise. * sysdeps/sh/dl-tls.h: Likewise. * sysdeps/sparc/dl-tls.h: Likewise. * sysdeps/x86_64/dl-tls.h: Likewise. * elf/dl-tls.c: Don't define TLS_DTV_UNALLOCATED here. 2011-03-14 Andreas Schwab * elf/dl-load.c (_dl_dst_substitute): When skipping the first rpath element also skip the following colon. (expand_dynamic_string_token): Add is_path parameter and pass down to DL_DST_REQUIRED and _dl_dst_substitute. (decompose_rpath): Call expand_dynamic_string_token with non-zero is_path. Ignore empty rpaths. (_dl_map_object_from_fd): Call expand_dynamic_string_token with zero is_path. 2011-04-08 Andreas Schwab * sysdeps/unix/sysv/linux/powerpc/powerpc64/sync_file_range.c: Make cancelable. 2011-04-09 Ulrich Drepper [BZ #12655] * sysdeps/unix/sysv/linux/sys/syscall.h: Fix comment. Patch by Filipe David Manana . 2011-04-07 Andreas Schwab * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S (CALL_FAIL): Maintain aligned stack. (CHECK_RSP): Remove unused macro. 2011-04-03 Ulrich Drepper * sysdeps/x86_64/cacheinfo.c (intel_02_known): Fix typo in table. * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise. 2011-04-02 Ulrich Drepper * sysdeps/unix/sysv/linux/bits/time.h (CLOCK_BOOTTIME): Define. * include/features.h: Mention __USE_XOPEN2K8 in comment. 2011-03-26 H.J. Lu [BZ #12518] * sysdeps/x86_64/Versions: Add memcpy to GLIBC_2.14. * sysdeps/x86_64/memcpy.S: Provide GLIBC_2_14 memcpy. * sysdeps/x86_64/memmove.c: New file. * sysdeps/x86_64/multiarch/memcpy.S: Include . (memcpy): Renamed to ... (__new_memcpy): This. (memcpy): Provide GLIBC_2_14 memcpy. * sysdeps/x86_64/multiarch/memmove.c: Include . (memcpy): Provide GLIBC_2_2_5 memcpy. 2011-04-01 Ulrich Drepper [BZ #12631] * wcsmbs/wchar.h: Make wcpcpy and wcpncpy visible for __USE_XOPEN2K8. 2011-03-30 Andreas Schwab * misc/syncfs.c: New file. * misc/Makefile (routines): Add syncfs. * posix/unistd.h: Declare syncfs. * sysdeps/unix/syscalls.list: Add syncfs. 2011-04-01 Andreas Schwab * sysdeps/unix/sysv/linux/Versions: Rename open_by_handle to open_by_handle_at. * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. * sysdeps/unix/sysv/linux/ia64/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/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. 2011-04-01 Ulrich Drepper * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define O_PATH. * 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. * io/Makefile: Compile fallocate.c, fallocate64.c, and sync_file_range.c with -fexceptions. * sysdeps/unix/sysv/linux/fallocate.c: Make cancelable. * sysdeps/unix/sysv/linux/fallocate64.c: Likewise. * sysdeps/unix/sysv/linux/i386/fallocate.c: Likewise. * sysdeps/unix/sysv/linux/i386/fallocate64.c: Likewise. * sysdeps/unix/sysv/linux/wordsize-64/fallocate.c: Likewise. * sysdeps/unix/sysv/linux/sync_file_range.c: Likewise. * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Mark sync_file_range as cancellation point * sysdeps/unix/sysv/linux/i386/sync_file_range.c: New file. This is now a wrapper around __call_sync_file_range with cancellation handling. * sysdeps/unix/sysv/linux/i386/sync_file_range.S: Renamed to ... * sysdeps/unix/sysv/linux/i386/call_sync_file_range.S: ...this. Change function name to __call_sync_file_range. * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (sysdep_routines): Add call_sync_file_range. 2011-04-01 Andreas Schwab * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add bits/timex.h. 2011-04-01 Ulrich Drepper * iconv/iconv.h: Fix typo in comment. * io/fcntl.h: Likewise. * libio/stdio.h: Likewise. * posix/spawn.h: Likewise. * posix/unistd.h: Likewise. * stdlib/stdlib.h: Likewise. * time/time.h: Likewise. * wcsmbs/wchar.h: Likewise. * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14] (name_to_handle_at, open_by_handle): Add. * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define struct file_handle and MAX_HANDLE_SZ. Declare name_to_handle_at and open_by_handle. Augment a few comments. * sysdeps/unix/sysv/linux/ia64/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/syscalls.list: Add name_to_handle_at and open_by_handle. * io/fcntl.h (AT_EMPTY_PATH): Define. 2011-03-30 Ulrich Drepper * sysdeps/unix/sysv/linux/syscalls.list: Add clock_adjtime. * sysdeps/unix/sysv/linux/bits/time.h: New file. * sysdeps/unix/sysv/linux/sys/timex.h: Move struct timex definition to... * sysdeps/unix/sysv/linux/bits/timex.h: ...here. New file. * Versions.def: Add GLIBC_2.14. * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14] (clock_adjtime): Export. 2011-03-22 Ulrich Drepper * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Increment round counter. * sysdeps/x86_64/cacheinfo.c (intel_check_word): Likewise. 2011-03-20 H.J. Lu [BZ #12597] * string/test-strncmp.c (do_page_test): New function. (check2): Likewise. (test_main): Call check2. * sysdeps/x86_64/multiarch/strcmp.S: Properly cross page boundary. 2011-03-20 Ulrich Drepper [BZ #12587] * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Handle cache information in CPU leaf 4. * sysdeps/x86_64/cacheinfo.c (intel_check_word): Likewise. 2011-03-18 Ulrich Drepper [BZ #12583] * posix/fnmatch.c (fnmatch): Check size of pattern in wide character representation. Partly based on a patch by Tomas Hoger . 2011-03-16 Ryan S. Arnold * sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S (isnanf): Fix END(__isnan) to END(__isnanf) to match function entry point/label EALIGN(__isnanf,...). 2011-03-10 Jakub Jelinek * wcsmbs/wchar.h (wmemcmp): Remove __restrict qualifiers. 2011-03-10 Ulrich Drepper [BZ #12510] * elf/dl-lookup.c (do_lookup_x): For copy relocations of unique objects copy from the symbol referenced in the relocation to initialize the used variable. Patch by Piotr Bury . * elf/Makefile: Add rules to build and tst-unique3. * include/bits/dlfcn.h: Remove _dl_mcount_wrapper_check declaration. * elf/tst-unique3.cc: New file. * elf/tst-unique3.h: New file. * elf/tst-unique3lib.cc: New file. * elf/tst-unique3lib2.cc: New file. * elf/Makefile: Don't run tst-execstack* tests of SELinux is enabled. 2011-03-10 Mike Frysinger * sysdeps/sparc/sparc64/elf/configure.in (libc_cv_sparc64_tls): Add $LDFLAGS and -nostdlib -nostartfiles to linking step. Change main to _start. 2011-03-06 Ulrich Drepper * elf/dl-load.c (_dl_map_object): If we are looking for the first to-be-loaded object along a path to loader is ld.so. 2011-03-02 Harsha Jagasia Ulrich Drepper * sysdeps/x86_64/memset.S: After aligning destination, code branches to different locations depending on the value of misalignment, when multiarch is enabled. Fix this. 2011-03-02 Harsha Jagasia * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Set _x86_64_preferred_memory_instruction for AMD processsors. * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Set bit_Prefer_SSE_for_memop for AMD processors. 2011-03-04 Ulrich Drepper * libio/fmemopen.c (fmemopen): Optimize a bit. 2011-03-03 Andreas Schwab * libio/fmemopen.c (fmemopen): Don't read past end of buffer. 2011-03-03 Roland McGrath * setjmp/bits/setjmp2.h: Canonicalize comment formatting. 2011-02-28 Aurelien Jarno * sysdeps/sparc/sparc64/multiarch/memset.S(__bzero): Call __bzero_ultra1 instead of __memset_ultra1. 2011-02-23 Andreas Schwab Ulrich Drepper [BZ #12509] * include/link.h (struct link_map): Add l_orig_initfini. * elf/dl-load.c (_dl_map_object_from_fd): Free realname before returning unsuccessfully. * elf/dl-close.c (_dl_close_worker): If this is the last explicit close of a file loaded at startup, restore the original l_initfini list. * elf/dl-deps.c (_dl_map_object_deps): Don't free old l_initfini list, store the pointer. * elf/Makefile ($(objpfx)noload-mem): New rule. (noload-ENV): Define. (tests): Add $(objpfx)noload-mem. * elf/noload.c: Include . (main): Call mtrace. Close all opened handles. 2011-02-17 Andreas Schwab [BZ #12454] * elf/dl-deps.c (_dl_map_object_deps): Signal error early when dependencies are missing. 2011-02-22 Samuel Thibault Fix __if_freereq crash: Unlike the generic version which uses free, Hurd needs munmap. * sysdeps/mach/hurd/ifreq.h: New file. 2011-01-27 Petr Baudis Ulrich Drepper [BZ 12445]# * stdio-common/vfprintf.c (vfprintf): Pass correct newlen to extend_alloca(). * stdio-common/bug23.c: New file. * stdio-common/Makefile (tests): Add bug23. 2010-09-28 Andreas Schwab Ulrich Drepper [BZ #12489] * elf/rtld.c (dl_main): Move setting of GLRO(dl_init_all_dirs) before performing relro protection. At old place add assertion to make sure nothing changed. 2011-02-17 Nathan Sidwell Glauber de Oliveira Costa * elf/elf.h: Add new ARM TLS relocs. 2011-02-16 Ryan S. Arnold * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: (INTERNAL_VSYSCALL_NCS INTERNAL_SYSCALL_NCS): Remove erroneous (int) cast from r3. * sysdeps/wordsize-64/Makefile: New file. Add tst-writev to 'tests' variable. * sysdeps/wordsize-64/tst-writev.c: New file. 2011-02-15 Ryan S. Arnold * sysdeps/powerpc/powerpc64/power7/Makefile: New file which adds -mno-vsx to the CFLAGS-rtld.c variable to avoid using VSX registers and insns in _dl_start to prevent a TOC reference before relocs are resolved. 2011-02-15 Ulrich Drepper [BZ #12469] * Makeconfig: Remove RANLIB definition. * Makerules: Don't use RANLIB. * aclocal.m4: Remove ranlib test. * configure.in: No need to check for ranlib. * elf/rtld-Rules: Don't use RANLIB. 2011-02-16 Samuel Thibault * sysdeps/mach/i386/sysdep.h: Add _MACH_I386_SYSDEP_H inclusion protection macro. * sysdeps/mach/i386/thread_state.h: Add _MACH_I386_THREAD_STATE_H inclusion protection macro. * stdio-common/psiginfo.c (psiginfo): Check pinfo->si_signo against SIGRTMIN and SIGRTMAX and print information in that case only when SIGRTMIN is defined. 2011-02-11 Jakub Jelinek * stdio-common/printf-parsemb.c (__parse_one_specmb): Handle arginfo fn returning -1. * stdio-common/_i18n_number.h (_i18n_number_rewrite): Ensure decimal and thousands string is zero terminated. 2011-02-03 Andreas Schwab * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Sync with sysdeps/unix/sysv/linux/bits/socket.h. 2011-01-30 Samuel Thibault * bits/sched.h (__CPU_ZERO, __CPU_SET, __CPU_CLR, __CPU_ISSET) (__CPU_COUNT): Remove old macros. (__CPU_ZERO_S, __CPU_SET_S, __CPU_CLR_S, __CPU_ISSET_S) (__CPU_COUNT, __CPU_EQUAL_S, __CPU_OP_S, __CPU_ALLOC_SIZE) (__CPU_ALLOC, __CPU_FREE): Add macros. (__sched_cpualloc, __sched_cpufree): Add declarations. 2011-02-05 Ulrich Drepper * nscd/nscd-client.h: Define MAX_TIMEOUT_VALUE. (struct datahead): Reuse 32 bits of the alignment for a TTL field. * nscd/aicache.c (addhstaiX): Return timeout of added value. (readdhstai): Return value of addhstaiX call. * nscd/grpcache.c (cache_addgr): Return timeout of added value. (addgrbyX): Return value returned by cache_addgr. (readdgrbyname): Return value returned by addgrbyX. (readdgrbygid): Likewise. * nscd/pwdcache.c (cache_addpw): Return timeout of added value. (addpwbyX): Return value returned by cache_addpw. (readdpwbyname): Return value returned by addhstbyX. (readdpwbyuid): Likewise. * nscd/servicescache.c (cache_addserv): Return timeout of added value. (addservbyX): Return value returned by cache_addserv. (readdservbyname): Return value returned by addservbyX: (readdservbyport): Likewise. * nscd/hstcache.c (cache_addhst): Return timeout of added value. (addhstbyX): Return value returned by cache_addhst. (readdhstbyname): Return value returned by addhstbyX. (readdhstbyaddr): Likewise. (readdhstbynamev6): Likewise. (readdhstbyaddrv6): Likewise. * nscd/initgrcache.c (addinitgroupsX): Return timeout of added value. (readdinitgroups): Return value returned by addinitgroupsX. * nscd/cache.c (readdfcts): Change return value of functions to time_t. (prune_cache): Keep track of timeout value of re-added entries. * nscd/connections.c (nscd_run_prune): Use MAX_TIMEOUT_VALUE. * nscd/nscd.h: Adjust prototypes of readd* functions. 2011-02-04 Roland McGrath * nis/nis_server.c (nis_servstate): Use the right name for 0. (nis_stats): Likewise. * nis/nis_modify.c (nis_modify): Likewise. * nis/nis_remove.c (nis_remove): Likewise. * nis/nis_add.c (nis_add): Likewise. * elf/dl-object.c (_dl_new_object): Remove unused variable L. * posix/fnmatch_loop.c: Add some consts. * sysdeps/x86_64/multiarch/memset-x86-64.S: Add an #undef. 2011-02-02 H.J. Lu [BZ #12460] * config.make.in (config-cflags-novzeroupper): Define. * configure.in: Substitute libc_cv_cc_novzeroupper. * elf/Makefile (AVX-CFLAGS): Define. (CFLAGS-tst-audit4.c): Replace -mavx with $(AVX-CFLAGS). (CFLAGS-tst-auditmod4a.c): Likewise. (CFLAGS-tst-auditmod4b.c): Likewise. (CFLAGS-tst-auditmod6b.c): Likewise. (CFLAGS-tst-auditmod6c.c): Likewise. (CFLAGS-tst-auditmod7b.c): Likewise. * sysdeps/i386/configure.in: Check -mno-vzeroupper. 2011-02-02 Ulrich Drepper * elf/dl-runtime.c (_dl_call_pltexit): Pass correct address of the function to the callback. Patch partly by Jiri Olsa . 2011-02-02 Andreas Schwab * shadow/sgetspent.c: Check return value of __sgetspent_r instead of errno. 2011-01-19 Ulrich Drepper [BZ #11724] * elf/dl-deps.c (_dl_map_object_deps): Rewrite sorting determining order of constructors. * elf/dl-fini.c (_dl_sort_fini): Rewrite sorting determining order of destructors. (_dl_fini): Don't call _dl_sort_fini if there is only one object. [BZ #11724] * elf/Makefile: Add rules to build and run new test. * elf/tst-initorder.c: New file. * elf/tst-initorder.exp: New file. * elf/tst-initordera1.c: New file. * elf/tst-initordera2.c: New file. * elf/tst-initordera3.c: New file. * elf/tst-initordera4.c: New file. * elf/tst-initorderb1.c: New file. * elf/tst-initorderb2.c: New file. * elf/tst-order-a1.c: New file. * elf/tst-order-a2.c: New file. * elf/tst-order-a3.c: New file. * elf/tst-order-a4.c: New file. * elf/tst-order-b1.c: New file. * elf/tst-order-b2.c: New file. * elf/tst-order-main.c: New file. New test case by George Gensure . 2010-10-01 Andreas Schwab * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't discard result of decoding ACE if AI_CANONIDN. 2011-01-18 Ulrich Drepper * elf/Makefile: Build IFUNC tests unless multi-arch = no. 2011-01-17 Ulrich Drepper * version.h (RELEASE): Bump for 2.13 release. * include/features.h: (__GLIBC_MINOR__): Bump to 13. * io/fcntl.h: Define AT_NO_AUTOMOUNT. * sysdeps/unix/sysv/linux/i386/bits/mman.h: Define MADV_HUGEPAGE and MADV_NOHUGEPAGE. * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise. * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise. * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise. * posix/getconf.c: Update copyright year. * catgets/gencat.c: Likewise. * csu/version.c: Likewise. * debug/catchsegv.sh: Likewise. * debug/xtrace.sh: Likewise. * elf/ldconfig.c: Likewise. * elf/ldd.bash.in: Likewise. * elf/sprof.c (print_version): Likewise. * iconv/iconv_prog.c: Likewise. * iconv/iconvconfig.c: Likewise. * locale/programs/locale.c: Likewise. * locale/programs/localedef.c: Likewise. * malloc/memusage.sh: Likewise. * malloc/mtrace.pl: Likewise. * nscd/nscd.c (print_version): Likewise. * nss/getent.c: Likewise. * sysdeps/unix/sysv/linux/bits/socket.h: Define AF_CAIF, AF_ALG, PF_CAIF, and PF_ALG. * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise. 2011-01-16 Andreas Schwab * elf/Makefile (tlsmod17a-modules, tlsmod18a-modules): Define. (modules-names): Use them. (ifunc-test-modules, ifunc-pie-tests): Define. (extra-test-objs): Add tlsmod17a-modules, tlsmod18a-modules, tst-pie1, ifunc-test-modules and ifunc-pie-tests objects. (test-extras): Likewise. ($(patsubst %,$(objpfx)%.os,$(tlsmod17a-modules))): Use $(compile-command.c). ($(patsubst %,$(objpfx)%.os,$(tlsmod18a-modules))): Likewise. (all-built-dso): Define. (check-textrel.out, check-execstack.out): Depend on it. * configure.in: Don't override --enable-multi-arch. 2011-01-15 Ulrich Drepper [BZ #6812] * nscd/hstcache.c (tryagain): Define. (cache_addhst): Return tryagain not notfound for temporary errors. (addhstbyX): Also set h_errno to TRY_AGAIN when memory allocation failed. 2011-01-14 Ulrich Drepper [BZ #10563] * sysdeps/unix/sysv/linux/i386/setgroups.c: Use INLINE_SETXID_SYSCALL to make the syscall. * sysdeps/unix/sysv/linux/setgroups.c: New file. [BZ #12378] * posix/fnmatch_loop.c (FCT): When matching '[' keep track of beginning and fall back to matching as normal character if the string ends before the matching ']' is found. This is what POSIX requires. * posix/testfnm.c: Adjust test result. * posix/globtest.sh: Adjust test result. Add new test. * posix/tst-fnmatch.input: Likewise. * posix/tst-fnmatch2.c: Add new test. 2010-12-28 Andreas Schwab * elf/Makefile (check-execstack): Revert last change. Depend on check-execstack.h. (check-execstack.h): New target. (generated): Add check-execstack.h. * elf/check-execstack.c: Include "check-execstack.h". (main): Revert last change. (handle_file): Return zero if GNU_STACK is absent and DEFAULT_STACK_PERMS doesn't include PF_X. 2011-01-13 Ulrich Drepper * sysdeps/posix/spawni.c (__spawni): Don't fail if close file action in child fails because the descriptor is already closed. * include/sys/resource.h: Add libc_hidden_proto for getrlimit64. * sysdeps/unix/sysv/linux/getrlimit64.c: Add libc_hidden_def. * sysdeps/unix/sysv/linux/i386/getrlimit64.c: Likewise. [BZ #12397] * sysdeps/unix/sysv/linux/mkdirat.c (mkdirat): Fix handling of missing syscall. [BZ #10484] * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Handle overflows of temporary buffer used to handle multi lookups locally. * include/alloca.h: Add libc_hidden_proto for __libc_alloca_cutoff. 2011-01-12 Ulrich Drepper * elf/dl-dst.h (DL_DST_REQUIRED): Allow l_origin to be NULL when loader is ld.so. 2011-01-10 Paul Pluzhnikov * sysdeps/i386/Makefile: stdlib/cxa_finalize.c needs 16-byte stack alignment for SSE2. 2011-01-12 Ulrich Drepper [BZ #12394] * stdio-common/printf_fp.c (__printf_fp): Add more room for grouping characters. When rounding increased number of integer digits recompute number of groups. * stdio-common/tst-grouping.c: New file. * stdio-common/Makefile: Add rules to build and run tst-grouping. 2011-01-09 Ulrich Drepper * sysdeps/i386/bits/select.h: Don't use asm code for __FD_SET, __FD_CLR, and __FS_ISSET. gcc generates better code on its own. * sysdeps/x86_64/bits/select.h: Mark value of __FD_SET and __FD_CLR as void. * bits/select.h: Likewise. 2011-01-08 Ulrich Drepper * po/ja.po: Update from translation team. 2011-01-04 David S. Miller [BZ #11155] * sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c: Use i386's implementation just like for lxstat, fxstatat, et al. 2010-12-27 Jim Meyering [BZ #12348] * posix/regexec.c (build_trtable): Return failure indication upon calloc failure. Otherwise, re_search_internal could infloop on OOM. 2010-12-25 Ulrich Drepper [BZ #12201] * sysdeps/unix/sysv/linux/getrlimit64.c: New file. * sysdeps/unix/sysv/linux/setrlimit64.c: New file. * sysdeps/unix/sysv/linux/i386/getrlimit64.c: Use ../getrlimit64.c. * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_PRLIMIT64. [BZ #12207] * malloc/malloc.c (do_check_malloc_state): Use fastbin macro. [BZ #12204] * string/xpg-strerror.c (__xpg_strerror_r): Return error code, not -1. * sysdeps/mach/xpg-strerror.c (__xpg_strerror_r): Likewise. 2010-12-15 H.J. Lu * config.h.in (NO_CTORS_DTORS_SECTIONS): Define. * configure.in: Define NO_CTORS_DTORS_SECTIONS if linker script has SORT_BY_INIT_PRIORITY. * elf/sofini.c: Remove `.ctors' and `.dtors' sections if NO_CTORS_DTORS_SECTIONS is defined. * elf/soinit.c: Likewise. * sysdeps/i386/init-first.c: Don't call __libc_global_ctors if NO_CTORS_DTORS_SECTIONS is defined. * sysdeps/mach/hurd/i386/init-first.c: Likewise. * sysdeps/mach/hurd/powerpc/init-first.c: Likewise. * sysdeps/sh/init-first.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Likewise. 2010-12-24 Ulrich Drepper * stdio-common/vfprintf.c (vfprintf): If printf handlers are installed always use the slow path. 2010-12-15 Ryan S. Arnold * elf/Makefile: (check-execstack): Replace $(native-compile) with a similar rule which adds the sysdep directories to the header search in order to pick up the correct platform stackinfo.h. * elf/check-execstack.c (main): Check DEFAULT_STACK_PERMS for PF_X and perform test if it is, otherwise return successfully without testing. * elf/dl-load.c (_dl_map_object_from_fd): Source stack_flags from DEFAULT_STACK_PERMS define in stackinfo.h. * elf/dl-support.c (_dl_stack_flags): Source from DEFAULT_STACK_PERMS defined in stackinfo.h. * elf/rtld.c (_dl_starting_up): Source ._dl_stack_flags from DEFAULT_STACK_PERMS defined in stackinfo.h. * sysdeps/i386/stackinfo.h: Define DEFAULT_STACK_PERMS with PF_X. * sysdeps/ia64/stackinfo.h: Likewise. * sysdeps/s390/stackinfo.h: Likewise. * sysdeps/sh/stackinfo.h: Likewise. * sysdeps/sparc/stackinfo.h: Likewise. * sysdeps/x86_64/stackinfo.h: Likewise. * sysdeps/powerpc/stackinfo.h: Define DEFAULT_STACK_PERMS without PF_X for powerpc64. Retain PF_X for powerpc32. 2010-12-19 Ulrich Drepper * sysdeps/unix/readdir_r.c (__READDIR_R): Compute reclen more accurately. * sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c: Define GETDENTS_64BIT_ALIGNED. 2010-12-14 Ulrich Drepper * sysdeps/i386/i686/multiarch/strcmp.S: Undo accidental checkin. 2010-12-10 Andreas Schwab * wcsmbs/wchar.h (wcpcpy, wcpncpy): Only declare under _GNU_SOURCE. * wcsmbs/wchar.h (wcpcpy, wcpncpy): Add __restrict. * wcsmbs/bits/wchar2.h (__wmemmove_chk_warn, wmemmove, wmemset): Remove __restrict. (wcscpy, __wcpcpy_chk, __wcpcpy_alias, wcpcpy, wcsncpy, wcpncpy) (wcscat, wcsncat, __wcrtomb_chk, wcrtomb): Add __restrict. 2010-12-09 Ulrich Drepper [BZ #11655] * stdlib/msort.c (qsort_r): Make sure both phys_pages and pagesize are initialized. 2010-12-09 Jakub Jelinek * string/bits/string3.h (memmove, bcopy): Remove __restrict. 2010-12-03 Ulrich Drepper * po/it.po: Update from translation team. 2010-12-01 H.J. Lu * sysdeps/i386/i686/multiarch/strcmp-ssse3.S (STRCMP): Remove unused codes. 2010-11-30 Ulrich Drepper * sysdeps/i386/fpu/libm-test-ulps: Relax ynf(10,0.75) test expectations. 2010-11-24 Andreas Schwab * resolv/nss_dns/dns-host.c (getanswer_r): Don't handle ttl == 0 specially. (gaih_getanswer_slice): Likewise. 2010-10-20 Jakub Jelinek * sysdeps/ieee754/ldbl-128/s_fmal.c (__fmal): Fix up inline asm. 2010-05-31 Petr Baudis [BZ #11149] * elf/ldconfig.c (main): Allow aux_cache_file open()ing to fail silently even in the chroot mode. 2010-11-22 Ulrich Drepper * nis/nss_compat/compat-initgroups.c (internal_getgrent_r): Optimize last patch a bit. Pretty printing 2010-05-31 Petr Baudis [BZ #10085] * nis/nss_compat/compat-initgroups.c (internal_getgrent_r): Fix initialization of skip_initgroups_dyn. 2010-11-19 Ulrich Drepper * sysdeps/unix/sysv/linux/i386/bits/mman.h: Define MAP_HUGETLB. * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise. 2010-11-16 Ulrich Drepper * sysdeps/unix/sysv/linux/sys/swap.h (SWAP_FLAG_DISCARD): Define. 2010-11-11 Andreas Schwab * posix/fnmatch_loop.c (NEW_PATTERN): Fix use of alloca. * posix/Makefile (tests): Add $(objpfx)tst-fnmatch-mem. (tst-fnmatch-ENV): Set MALLOC_TRACE. ($(objpfx)tst-fnmatch-mem): New rule. (generated): Add tst-fnmatch-mem and tst-fnmatch.mtrace. * posix/tst-fnmatch.c (main): Call mtrace. 2010-11-11 H.J. Lu * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Support Intel processor model 6 and model 0x2c. 2010-11-10 Luis Machado * sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c (__ieee754_sqrtl): Force signed comparison. 2010-11-09 H.J. Lu [BZ #12205] * string/test-strncasecmp.c (check_result): New function. (do_one_test): Use it. (check1): New function. (test_main): Use it. * sysdeps/i386/i686/multiarch/strcmp.S (nibble_ashr_use_sse4_2_exit): Support strcasecmp and strncasecmp. 2010-11-08 Ulrich Drepper [BZ #12194] * sysdeps/i386/bits/byteswap.h: Avoid warning in __bswap_16. * sysdeps/x86_64/bits/byteswap.h: Likewise. 2010-11-07 H.J. Lu * sysdeps/x86_64/memset.S: Check USE_MULTIARCH and USE_SSE2 for IFUNC support. * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add memset-x86-64. * sysdeps/x86_64/multiarch/bzero.S: New file. * sysdeps/x86_64/multiarch/cacheinfo.c: New file. * sysdeps/x86_64/multiarch/memset-x86-64.S: New file. * sysdeps/x86_64/multiarch/memset.S: New file. * sysdeps/x86_64/multiarch/memset_chk.S: New file. * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Set bit_Prefer_SSE_for_memop for Intel processors. * sysdeps/x86_64/multiarch/init-arch.h (bit_Prefer_SSE_for_memop): Define. (index_Prefer_SSE_for_memop): Define. (HAS_PREFER_SSE_FOR_MEMOP): Define. 2010-11-04 Luis Machado * sysdeps/powerpc/powerpc32/power7/mempcpy.S: New file. * sysdeps/powerpc/powerpc64/power7/mempcpy.S: New file. 2010-11-03 H.J. Lu [BZ #12191] * sysdeps/i386/i686/cacheinfo.c (__x86_64_raw_data_cache_size): New. (__x86_64_raw_data_cache_size_half): Likewise. (__x86_64_raw_shared_cache_size): Likewise. (__x86_64_raw_shared_cache_size_half): Likewise. * sysdeps/x86_64/cacheinfo.c (__x86_64_raw_data_cache_size): New. (__x86_64_raw_data_cache_size_half): Likewise. (__x86_64_raw_shared_cache_size): Likewise. (__x86_64_raw_shared_cache_size_half): Likewise. (init_cacheinfo): Set __x86_64_raw_data_cache_size, __x86_64_raw_data_cache_size_half, __x86_64_raw_shared_cache_size and __x86_64_raw_shared_cache_size_half. Round __x86_64_data_cache_size_half, __x86_64_data_cache_size __x86_64_shared_cache_size_half and __x86_64_shared_cache_size, to multiple of 256 bytes. 2010-11-03 Ulrich Drepper [BZ #12167] * sysdeps/unix/sysv/linux/ttyname.c (ttyname): Recognize new mangling of inacessible symlinks. Verify result of symlink before returning it. * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Likewise. Patch mostly by Miklos Szeredi . 2010-10-28 Erich Ritz * math/math.h (isinf): Fix typo in comment. 2010-11-01 Ulrich Drepper * po/da.po: Update from translation team. 2010-10-26 Ulrich Drepper * elf/rtld.c (dl_main): Move assertion after the point where rtld map is added to the list. 2010-10-20 Andreas Krebbel Ulrich Drepper * elf/dl-object.c (_dl_new_object): Don't append the new object to the global list here. Move code to... (_dl_add_to_namespace_list): ...here. New function. * elf/rtld.c (dl_main): Invoke _dl_add_to_namespace_list. * sysdeps/generic/ldsodefs.h (_dl_add_to_namespace_list): Declare. * elf/dl-load.c (lose): Don't remove the element from the list. (_dl_map_object_from_fd): Invoke _dl_add_to_namespace_list. (_dl_map_object): Likewise. 2010-10-25 Ulrich Drepper [BZ #12159] * sysdeps/x86_64/multiarch/strchr.S: Fix propagation of search byte into all bytes of SSE register. Patch by Richard Li . 2010-10-24 Ulrich Drepper [BZ #12140] * malloc/malloc.c (_int_free): Fill correct number of bytes when perturbing. 2010-10-20 Michael B. Brutman * sysdeps/powerpc/dl-procinfo.c: Add support for ppca2 platform * sysdeps/powerpc/dl-procinfo.h: Add support for ppca2 platform * sysdeps/powerpc/powerpc32/a2/memcpy.S: New file. * sysdeps/powerpc/powerpc64/a2/memcpy.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/a2/Implies: New submachine. * sysdeps/unix/sysv/linux/powerpc/powerpc64/a2/Implies: Likewise. 2010-10-22 Andreas Schwab * include/dlfcn.h (__RTLD_SECURE): Define. * elf/dl-load.c (_dl_map_object): Remove preloaded parameter. Use mode & __RTLD_SECURE instead. (open_path): Rename preloaded parameter to secure. * sysdeps/generic/ldsodefs.h (_dl_map_object): Adjust declaration. * elf/dl-open.c (dl_open_worker): Adjust call to _dl_map_object. * elf/dl-deps.c (openaux): Likewise. * elf/rtld.c (struct map_args): Remove is_preloaded. (map_doit): Don't use it. (dl_main): Likewise. (do_preload): Use __RTLD_SECURE instead of is_preloaded. (dlmopen_doit): Add __RTLD_SECURE to mode bits. 2010-09-09 Andreas Schwab * Makeconfig (sysd-rules-patterns): Add rtld-%:rtld-%. (sysd-rules-targets): Remove duplicates. * elf/rtld-Rules ($(objpfx)rtld-%.os): Add pattern rules with rtld-%.$o dependency. 2010-10-18 Andreas Schwab * elf/dl-open.c (dl_open_worker): Don't expand DST here, let _dl_map_object do it. 2010-10-19 Ulrich Drepper * sysdeps/i386/bits/mathdef.h (FP_FAST_FMA): If the GCC 4.6 port has fast fma builtins, define the macros in the C99 standard. (FP_FAST_FMAF): Likewise. (FP_FAST_FMAL): Likewise. * sysdeps/x86_64/bits/mathdef.h: Likewise. * bits/mathdef.h: Update copyright year. * sysdeps/powerpc/bits/mathdef.h: Likewise. 2010-10-19 Michael Meissner * bits/mathdef.h (FP_FAST_FMA): If the GCC 4.6 port has fast fma builtins, define the macros in the C99 standard. (FP_FAST_FMAF): Likewise. (FP_FAST_FMAL): Likewise. * sysdeps/powerpc/bits/mathdef.h (FP_FAST_FMA): Define, ppc as multiply/add. (FP_FAST_FMAF): Likewise. 2010-10-15 Jakub Jelinek [BZ #3268] * math/libm-test.inc (fma_test): Some new testcases. * sysdeps/ieee754/ldbl-128/s_fmal.c: New file. * sysdeps/ieee754/ldbl-96/s_fma.c (__fma): Fix fma with finite x and y and infinite z. Do multiplication by C already in long double. * sysdeps/ieee754/ldbl-96/s_fmal.c: New file. * sysdeps/ieee754/dbl-64/s_fma.c (__fma): Fix fma with finite x and y and infinite z. Do bitwise or of inexact bit into u.d. * sysdeps/ieee754/ldbl-64-128/s_fmal.c: New file. * sysdeps/i386/fpu/s_fmaf.S: Removed. * sysdeps/i386/fpu/s_fma.S: Removed. * sysdeps/i386/fpu/s_fmal.S: Removed. 2010-10-16 Jakub Jelinek [BZ #3268] * math/libm-test.inc (fma_test): Add IEEE quad long double fmal tests. * sysdeps/ieee754/ldbl-128/s_fmal.c (__fmal): Ensure a1 + u.d computation is not scheduled after fetestexcept. Fix value of minimum denormal long double. 2010-10-14 Jakub Jelinek [BZ #3268] * math/libm-test.inc (fma_test): Add some more tests. * sysdeps/ieee754/dbl-64/s_fma.c (__fma): Handle underflows correctly. 2010-10-15 Andreas Schwab * scripts/data/localplt-s390-linux-gnu.data: New file. * scripts/data/localplt-s390x-linux-gnu.data: New file. 2010-10-13 Jakub Jelinek [BZ #3268] * math/libm-test.inc (fma_test): Some more fmaf and fma tests. * sysdeps/i386/i686/multiarch/s_fma.c: Include ldbl-96 version instead of dbl-64. * sysdeps/i386/fpu/bits/mathinline.h (fma, fmaf, fmal): Remove inlines. * sysdeps/ieee754/ldbl-96/s_fma.c: New file. * sysdeps/ieee754/dbl-64/s_fma.c (__fma): Fix exponent adjustment if one of x and y is very large and the other is subnormal. * sysdeps/s390/fpu/s_fmaf.c: New file. * sysdeps/s390/fpu/s_fma.c: New file. * sysdeps/powerpc/fpu/s_fmaf.S: New file. * sysdeps/powerpc/fpu/s_fma.S: New file. * sysdeps/powerpc/powerpc32/fpu/s_fma.S: New file. * sysdeps/powerpc/powerpc64/fpu/s_fma.S: New file. * sysdeps/unix/sysv/linux/s390/fpu/s_fma.c: New file. 2010-10-12 Jakub Jelinek [BZ #3268] * math/libm-test.inc (fma_test): Add some more fmaf tests, add fma tests. * sysdeps/ieee754/dbl-64/s_fmaf.c (__fmaf): Fix Inf/Nan check. * sysdeps/ieee754/dbl-64/s_fma.c: New file. * sysdeps/i386/i686/multiarch/s_fma.c: Include sysdeps/ieee754/dbl-64/s_fma.c instead of math/s_fma.c. * sysdeps/x86_64/multiarch/s_fma.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_fma.c: Likewise. * sysdeps/ieee754/ldbl-128/s_fma.c: New file. 2010-10-12 Ulrich Drepper [BZ #12078] * posix/regcomp.c (parse_branch): One more memory leak plugged. * posix/bug-regex31.input: Add test case. 2010-10-11 Ulrich Drepper * posix/bug-regex31.c: Rewrite to run multiple tests from stdin. * posix/bug-regex31.input: New file. [BZ #12078] * posix/regcomp.c (parse_branch): Free memory when allocation failed. (parse_sub_exp): Fix last change, use postorder. * posix/bug-regex31.c: New file. * posix/Makefile: Add rules to build and run bug-regex31. * posix/regcomp.c (parse_bracket_exp): Add missing re_free calls. [BZ #12078] * posix/regcomp.c (parse_sub_exp): Free tree data when it is not used. [BZ #12108] * stdio-common/psiginfo.c (psiginfo): Don't expext SIGRTMIN..SIGRTMAX to have entries in sys_siglist. [BZ #12093] * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): ->ifa_addr might be NULL. 2010-10-07 Jakub Jelinek [BZ #3268] * math/libm-test.inc (fma_test): Add 2 fmaf tests. * sysdeps/ieee754/dbl-64/s_fmaf.c: New file. * sysdeps/i386/i686/multiarch/s_fmaf.c: Include sysdeps/ieee754/dbl-64/s_fmaf.c instead of math/s_fmaf.c. * sysdeps/x86_64/multiarch/s_fmaf.c: Likewise. * include/fenv.h (feupdateenv, fetestexcept): Add libm_hidden_proto. * math/feupdateenv.c (feupdateenv): Add libm_hidden_ver. * sysdeps/i386/fpu/feupdateenv.c (feupdateenv): Likewise. * sysdeps/powerpc/fpu/feupdateenv.c (feupdateenv): Likewise. * sysdeps/x86_64/fpu/feupdateenv.c (feupdateenv): Likewise. * sysdeps/sparc/fpu/feupdateenv.c (feupdateenv): Likewise. * sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Add libm_hidden_def. * sysdeps/s390/fpu/feupdateenv.c (feupdateenv): Likewise. * math/ftestexcept.c (fetestexcept): Likewise. * sysdeps/ia64/fpu/ftestexcept.c (fetestexcept): Likewise. * sysdeps/i386/fpu/ftestexcept.c (fetestexcept): Likewise. * sysdeps/s390/fpu/ftestexcept.c (fetestexcept): Likewise. * sysdeps/powerpc/fpu/ftestexcept.c (fetestexcept): Likewise. * sysdeps/x86_64/fpu/ftestexcept.c (fetestexcept): Likewise. * sysdeps/sparc/fpu/ftestexcept.c (fetestexcept): Likewise. * sysdeps/sh/sh4/fpu/ftestexcept.c (fetestexcept): Likewise. 2010-10-11 Ulrich Drepper [BZ #12107] * stdio-common/psiginfo.c (psiginfo): Terminate all strings with newline. 2010-10-06 Ulrich Drepper * string/bug-strstr1.c: New file. * string/Makefile: Add rules to build and run bug-strstr1. 2010-10-05 Eric Blake [BZ #12092] * string/str-two-way.h (two_way_long_needle): Always clear memory when skipping input due to the shift table. 2010-10-03 Ulrich Drepper [BZ #12005] * malloc/mcheck.c: Handle large requests. [BZ #12077] * sysdeps/x86_64/strcmp.S: Fix handling of remaining bytes in buffer for strncmp and strncasecmp. * string/stratcliff.c: Add tests for strcmp and strncmp. * wcsmbs/wcsatcliff.c: Adjust for stratcliff change. 2010-09-28 Nobuhiro Iwamatsu * sysdeps/sh/sh4/fpu/fpu_control.h: Add 'extern "C"' protection to __set_fpscr. 2010-09-30 Andreas Jaeger * sysdeps/unix/sysv/linux_fsinfo.h (BTRFS_SUPER_MAGIC): Define. (CGROUP_SUPER_MAGIC): Define. * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags): Handle btrfs and cgroup file systems. * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max): Likewise. 2010-09-27 Luis Machado * sysdeps/powerpc/powerpc32/rtld-memset.c: New file. * sysdeps/powerpc/powerpc64/rtld-memset.c: New file. 2010-09-29 Andreas Krebbel [BZ #12067] * sysdeps/s390/s390-32/elf/start.S: Fix address calculation when trying to locate the ELF header. 2010-09-27 Andreas Schwab [BZ #11611] * sysdeps/unix/sysv/linux/internal_statvfs.c (INTERNAL_STATVFS): Mask out sign-bit copies when constructing f_fsid. 2010-09-24 Petr Baudis * debug/stack_chk_fail_local.c: Add missing licence exception. * debug/warning-nop.c: Likewise. 2010-09-15 Joseph Myers * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): When implementing getdents64 using getdents syscall, set d_type if __ASSUME_GETDENTS32_D_TYPE. 2010-09-16 Andreas Schwab * elf/dl-close.c (free_slotinfo, free_mem): Move to... * elf/dl-libc.c (free_slotinfo, free_mem): ... here. 2010-09-21 Ulrich Drepper [BZ #12037] * posix/unistd.h: Undo change of feature selection for ftruncate from 2010-01-11. 2010-09-20 Ulrich Drepper * sysdeps/x86_64/strcmp.S: Fix another typo in x86-64 strncasecmp limit detection. 2010-09-20 Andreas Schwab * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Add fanotify_mark. * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Likewise. 2010-09-14 Andreas Schwab * sysdeps/s390/s390-32/__longjmp.c (__longjmp): Define register variables after CHECK_SP call. * sysdeps/s390/s390-64/__longjmp.c (__longjmp): Likewise. 2010-09-13 Andreas Schwab Ulrich Drepper * elf/rtld.c (dl_main): Set GLRO(dl_init_all_dirs) just before re-relocationg ld.so. * elf/dl-support.c (_dl_non_dynamic_init): And here after the _dl_init_paths call. * elf/dl-load.c (_dl_init_paths). Don't set GLRO(dl_init_all_dirs) here anymore. 2010-09-14 Ulrich Drepper * resolv/res_init.c (__res_vinit): Count the default server we added. 2010-09-08 Chung-Lin Tang Ulrich Drepper [BZ #11968] * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S (____longjmp_chk): Use %ebx for saving value across system call. Add unwind info. 2010-09-06 Andreas Schwab * manual/Makefile: Don't mix pattern rules with normal rules. 2010-09-05 Andreas Schwab * debug/vdprintf_chk.c (__vdprintf_chk): Remove undefined operation. * libio/iofdopen.c (_IO_new_fdopen): Likewise. * libio/iofopncook.c (_IO_cookie_init): Likewise. * libio/iovdprintf.c (_IO_vdprintf): Likewise. * libio/oldiofdopen.c (_IO_old_fdopen): Likewise. * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise. 2010-09-04 Ulrich Drepper [BZ #11979] * iconvdata/gconv-modules: Remove EBCDIC-CP-AR2 alias from IBM-930, IBM-933, IBM-935, IBM-937, and IBM-939. 2010-09-02 Ulrich Drepper * sysdeps/x86_64/add_n.S: Update from GMP 5.0.1. * sysdeps/x86_64/addmul_1.S: Likewise. * sysdeps/x86_64/lshift.S: Likewise. * sysdeps/x86_64/mul_1.S: Likewise. * sysdeps/x86_64/rshift.S: Likewise. * sysdeps/x86_64/sub_n.S: Likewise. * sysdeps/x86_64/submul_1.S: Likewise. 2010-09-01 Samuel Thibault This aligns bits/sched.h onto sysdeps/unix/sysv/linux/bits/sched.h: Define __sched_param instead of SCHED_* and sched_param when is included with __need_schedparam defined. * bits/sched.h [__need_schedparam] (SCHED_OTHER, SCHED_FIFO, SCHED_RR, sched_param): Do not define. [!__defined_schedparam && (__need_schedparam || _SCHED_H)] (__defined_schedparam): Define to 1. (__sched_param): New structure, identical to sched_param. (__need_schedparam): Undefine. 2010-08-31 Mike Frysinger * sysdeps/unix/sysv/linux/sparc/sys/epoll.h (epoll_create2): Delete. (epoll_create1): Declare. * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Fix typo. 2010-08-31 Andreas Schwab [BZ #7066] * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix array overflow when shifting retval into place. 2010-09-01 Ulrich Drepper * nis/rpcsvc/nis.h: Update copyright notice. * nis/rpcsvc/nis.x: Likewise. * nis/rpcsvc/nis_callback.h: Likewise. * nis/rpcsvc/nis_callback.x: Likewise. * nis/rpcsvc/nis_object.x: Likewise. * nis/rpcsvc/nis_tags.h: Likewise. * nis/rpcsvc/yp.h: Likewise. * nis/rpcsvc/yp.x: Likewise. * nis/rpcsvc/ypupd.h: Likewise. * nis/yp_xdr.c: Likewise. * nis/ypupdate_xdr.c: Likewise. * sunrpc/pm_getport.c (__libc_rpc_getport): New function. This is mainly the body of pmap_getport. Add parameters to specify timeouts. (pmap_getport): Use __libc_rpc_getport. * sunrpc/Versions: Export __libc_rpc_getport with GLIBC_PRIVATE. * include/rpc/pmap_clnt.h: Declare __libc_rpc_getport. * nis/nis_findserv.c: Remove pmap_getport copy. Use __libc_rpc_getport. 2010-08-31 Andreas Schwab * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Add fanotify_mark. 2010-08-27 Roland McGrath * sysdeps/i386/i686/multiarch/Makefile (CFLAGS-varshift.c): New variable. 2010-08-27 Ulrich Drepper * sysdeps/i386/i686/multiarch/varshift.S: File removed. * sysdeps/i386/i686/multiarch/varshift.c: New file. * sysdeps/x86_64/multiarch/strlen-no-bsf.S: Move to .text.slow section. * sysdeps/x86_64/strlen.S: Minimal code improvement. 2010-08-26 H.J. Lu * sysdeps/x86_64/strlen.S: Unroll the loop. * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add strlen-sse2 strlen-sse2-bsf. * sysdeps/x86_64/multiarch/strlen.S ((strlen): Return __strlen_no_bsf if bit_Slow_BSF is set. (__strlen_sse42): Removed. * sysdeps/x86_64/multiarch/strlen-no-bsf.S: New file. * sysdeps/x86_64/multiarch/strlen-sse4.S: New file. 2010-08-25 Roland McGrath * sysdeps/x86_64/multiarch/varshift.S: File removed. * sysdeps/x86_64/multiarch/varshift.c: New file. * sysdeps/x86_64/multiarch/Makefile (CFLAGS-varshift.c): New variable. * sysdeps/x86_64/multiarch/varshift.h: Clean up decls, fix a cast. * sysdeps/x86_64/multiarch/memmove.c: Move decls around. * sysdeps/x86_64/multiarch/memmove_chk.c: Likewise. 2010-08-25 H.J. Lu * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add strlen-sse2 strlen-sse2-bsf. * sysdeps/i386/i686/multiarch/strlen.S (strlen): Return __strlen_sse2_bsf if bit_Slow_BSF is unset. (__strlen_sse2): Removed. * sysdeps/i386/i686/multiarch/strlen-sse2-bsf.S: New file. * sysdeps/i386/i686/multiarch/strlen-sse2.S: New file. * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Set bit_Slow_BSF for Atom. * sysdeps/x86_64/multiarch/init-arch.h (bit_Slow_BSF): Define. (index_Slow_BSF): Define. (HAS_SLOW_BSF): Define. 2010-08-25 Ulrich Drepper [BZ #10851] * resolv/res_init.c (__res_vinit): When no server address at all is given default to loopback. 2010-08-24 Roland McGrath * configure.in: Remove config-name.h generation. * configure: Regenerated. * config-name.in: File removed. * scripts/config-uname.sh: New file. * posix/Makefile (uname.c): Depend on $(objdir)config-name.h. ($(objdir)config-name.h): New target. * sunrpc/rpc_parse.h: Avoid nested comment. 2010-08-24 Richard Henderson Ulrich Drepper H.J. Lu * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add varshift. * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Likewise. * sysdeps/x86_64/multiarch/strcspn-c.c: Include "varshift.h". Replace _mm_srli_si128 with __m128i_shift_right. Replace _mm_alignr_epi8 with _mm_loadu_si128. * sysdeps/x86_64/multiarch/strspn-c.c: Likewise. * sysdeps/x86_64/multiarch/strstr.c: Include "varshift.h". (__m128i_shift_right): Removed. * sysdeps/i386/i686/multiarch/varshift.h: New file. * sysdeps/i386/i686/multiarch/varshift.S: New file. * sysdeps/x86_64/multiarch/varshift.h: New file. * sysdeps/x86_64/multiarch/varshift.S: New file. 2010-08-21 Mike Frysinger * configure.in: Move assembler checks to before sysdep dir checking. 2010-08-20 Petr Baudis * LICENSES: Sync the sunrpc license. 2010-08-19 Ulrich Drepper * sunrpc/auth_des.c: Update copyright notice once again. * 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/nlm_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. * sysdeps/x86_64/multiarch/strcmp.S: Fix two typos in strncasecmp handling. 2010-08-19 Andreas Schwab * sysdeps/i386/i686/multiarch/strspn.S [!SHARED]: Fix SSE4.2 check. 2010-08-19 Luis Machado * sysdeps/powerpc/powerpc32/power7/memchr.S: New file. * sysdeps/powerpc/powerpc32/power7/memrchr.S: New file. * sysdeps/powerpc/powerpc32/power7/rawmemchr.S: New file. * sysdeps/powerpc/powerpc32/power7/strchr.S: New file. * sysdeps/powerpc/powerpc32/power7/strchrnul.S: New file. * sysdeps/powerpc/powerpc32/power7/strlen.S: New file. * sysdeps/powerpc/powerpc32/power7/strnlen.S: New file. * sysdeps/powerpc/powerpc64/power7/memchr.S: New file. * sysdeps/powerpc/powerpc64/power7/memrchr.S: New file. * sysdeps/powerpc/powerpc64/power7/rawmemchr.S: New file. * sysdeps/powerpc/powerpc64/power7/strchr.S: New file. * sysdeps/powerpc/powerpc64/power7/strchrnul.S: New file. * sysdeps/powerpc/powerpc64/power7/strlen.S: New file. * sysdeps/powerpc/powerpc64/power7/strnlen.S: New file. 2010-07-26 Anton Blanchard * malloc/malloc.c (sYSTRIm): Replace divide and multiply with mask. * malloc/arena.c (heap_trim): Likewise. 2010-08-16 Ulrich Drepper * sysdeps/unix/sysv/linux/syscalls.list: Add entry for fanotify_init here. Not... * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: ...here... * sysdeps/unix/sysv/linux/i386/syscalls.list: ... orhere. 2010-08-12 H.J. Lu * sysdeps/i386/elf/Makefile: New file. 2010-08-14 Andreas Schwab * sysdeps/unix/sysv/linux/sys/fanotify.h: Remove third argument from fanotify_init. * sysdeps/unix/sysv/linux/i386/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise. 2010-08-15 Ulrich Drepper * sysdeps/x86_64/strcmp.S: Use correct register for fourth parameter of strncasecmp_l. * sysdeps/multiarch/strcmp.S: Likewise. 2010-08-14 Ulrich Drepper * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add strncase_l-nonascii. * sysdeps/x86_64/multiarch/Makefile [subdir=string] (sysdep_routines): Add strncase_l-ssse3. * sysdeps/x86_64/multiarch/strcmp.S: Prepare for use as strncasecmp. * sysdeps/x86_64/strcmp.S: Likewise. * sysdeps/x86_64/multiarch/strncase_l-ssse3.S: New file. * sysdeps/x86_64/multiarch/strncase_l.S: New file. * sysdeps/x86_64/strncase.S: New file. * sysdeps/x86_64/strncase_l-nonascii.c: New file. * sysdeps/x86_64/strncase_l.S: New file. * string/Makefile (strop-tests): Add strncasecmp. * string/test-strncasecmp.c: New file. * sysdeps/x86_64/strcasecmp_l-nonascii.c: Add prototype to avoid warning. * sysdeps/x86_64/strcmp.S: Move definition of NO_NOLOCALE_ALIAS to... * sysdeps/x86_64/multiarch/strcasecmp_l-ssse3.S: ... here. 2010-08-14 Andreas Schwab * sysdeps/unix/sysv/linux/prlimit.c: Make it compile. 2010-08-12 Ulrich Drepper * sysdeps/unix/sysv/linux/bits/termios.h: Define EXTPROC. * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise. 2010-05-01 Alan Modra * sysdeps/powerpc/powerpc32/power4/memcmp.S: Correct cfi for r24. * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Move contents.. * sysdeps/powerpc/powerpc64/bsd-setjmp.S: ..and these too.. * sysdeps/powerpc/powerpc64/setjmp.S: ..to here.. * sysdeps/powerpc/powerpc64/setjmp-common.S: ..and here, with some tidying. Don't tail-call __sigjmp_save for static lib. * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): Correct save location. (CFI_SAVE_ARG, CFI_REST_ARG): New macros. (CALL_MCOUNT): Add eh info, and nop after bl. (TAIL_CALL_SYSCALL_ERROR): New macro. (PSEUDO_RET): Use it. * sysdeps/powerpc/powerpc64/dl-trampoline.S (_dl_runtime_resolve): Correct save location of integer regs and cr. (_dl_profile_resolve): Correct cr save location. Delete nops after bl when SHARED. Reduce cfi size a little by better placement of cfi directives. * sysdeps/powerpc/powerpc64/fpu/s_copysign.S (__copysign): Don't make a stack frame. Instead use parm save area as a temp. * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Don't make a stack frame. Use TAIL_CALL_SYSCALL_ERROR. * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S (__clone): Don't make a stack frame for parent, use parm save area. Increase child stack frame to 112 bytes. Don't save unused reg, and adjust reg usage. Set up cfi on error recovery and epilogue of parent, and use TAIL_CALL_SYSCALL_ERROR, PSEUDO_RET. * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S (__makecontext): Add dummy nop after jump to exit. * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket): Use correct parm save area and cr save, reduce stack frame. Correct cfi for possible PSEUDO_RET frame setup. * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S (__vfork): Branch to local label emitted by PSEUDO_RET rather than __syscall_error. 2010-08-12 Andreas Schwab [BZ #11904] * locale/programs/locale.c (print_assignment): New function. (show_locale_vars): Use it. 2010-08-11 Ulrich Drepper * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_flags field. (struct statfs64): Likewise. (_STATFS_F_FLAGS): Define. * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise. * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags): Don't define if __ASSUME_STATFS_F_FLAGS is defined. (ST_VALID): Define locally. (INTERNAL_STATVFS): If f_flags has ST_VALID set don't call __statvfs_getflags, use the provided value. * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_STATFS_F_FLAGS. * sysdeps/unix/sysv/linux/sys/inotify.h (IN_EXCL_UNLINK): Define. * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers): Add sys/fanotify.h. * sysdeps/unix/sysv/linux/Versions [libc]: Export fanotify_init and fanotify_mask for GLIBC_2.13. * sysdeps/unix/sysv/linux/i386/syscalls.list: Add entries for fanotify_init and fanotify_mark. * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/sys/fanotify.h: New file. * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_routines): Add prlimit. * sysdeps/unix/sysv/linux/Versions [libc]: Export prlimit and prlimit64 for GLIBC_2.13. * sysdeps/unix/sysv/linux/bits/resource.h: Declare prlimit and prlimit64. * sysdeps/unix/sysv/linux/i386/syscalls.list: Add entry for prlimit64 syscall. * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/sh/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.lis: Likewise. * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise. Also add prlimit alias. * sysdeps/unix/sysv/linux/prlimit.c: New file. [BZ #11903] * sysdeps/generic/netinet/ip.h (IPTOS_CLASS): Fix definition. Patch by Evgeni Bikov . * nss/Makefile: Add rules to build and run tst-nss-test1. * shlib-versions: Add entry for libnss_test1. * nss/nss_test1.c: New file. * nss/tst-nss-test1.c: New file. * nss/nsswitch.c (__nss_database_custom): Define new variable. (__nss_configure_lookup): Set appropriate entry in __nss_configure_lookup to true. * nss/nsswitch.h: Define enum with indeces of databases in databases and __nss_database_custom arrays. Declare __nss_database_custom. * grp/initgroups.c (internal_getgrouplist): Use __nss_database_custom to avoid using nscd when custom rules are installed. * nss/getXXbyYY_r.c: Likewise. * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise. * nss/nss_files/files-parse.c: Whitespace fixes. 2010-08-09 Ulrich Drepper [BZ #11883] * posix/fnmatch.c: Keep track of alloca use and fall back on malloc. * posix/fnmatch_loop.c: Likewise. 2010-07-17 Andi Kleen * sysdeps/i386/i386-mcount.S (__fentry__): Define. * sysdeps/x86_64/_mcount.S (__fentry__): Define. * stdlib/Versions (__fentry__): Add for GLIBC 2.13 * Versions.def [GLIBC_2.13]: Add. 2010-08-06 Ulrich Drepper * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): Also fail if tpwd after pwuid call is NULL. 2010-07-31 Samuel Thibault * hurd/hurdselect.c (_hurd_select): Round timeout up instead of down when converting to ms. 2010-06-06 Samuel Thibault * sysdeps/mach/hurd/ttyname.c (ttyname): Replace MIG_BAD_ID and EOPNOTSUPP errors with ENOTTY. * sysdeps/mach/hurd/ttyname_r.c (__ttyname_r): Replace MIG_BAD_ID and EOPNOTSUPP errors with ENOTTY. 2010-07-31 Ulrich Drepper * sysdeps/x86_64/multiarch/Makefile [subdir=string] (sysdep_routines): Add strcasecmp_l-ssse3. * sysdeps/x86_64/multiarch/strcmp.S: Add support to compile for strcasecmp. * sysdeps/x86_64/strcmp.S: Allow more flexible compiling of strcasecmp. * sysdeps/x86_64/multiarch/strcasecmp_l.S: New file. * sysdeps/x86_64/multiarch/strcasecmp_l-ssse3.S: New file. 2010-07-30 Ulrich Drepper * sysdeps/x86_64/multiarch/strcmp.S: Pretty printing. * string/Makefile (strop-tests): Add strcasecmp. * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add strcasecmp_l-nonascii. (gen-as-const-headers): Add locale-defines.sym. * sysdeps/x86_64/strcmp.S: Add support for strcasecmp implementation. * sysdeps/x86_64/strcasecmp.S: New file. * sysdeps/x86_64/strcasecmp_l.S: New file. * sysdeps/x86_64/strcasecmp_l-nonascii.c: New file. * sysdeps/x86_64/locale-defines.sym: New file. * string/test-strcasecmp.c: New file. * string/test-strcasestr.c: Test both ends of the range of characters. * sysdeps/x86_64/multiarch/strstr.c: Fix UCHIGH definition. 2010-07-29 Roland McGrath [BZ #11856] * manual/locale.texi (Yes-or-No Questions): Fix example code. 2010-07-27 Ulrich Drepper * sysdeps/x86_64/multiarch/strcmp-ssse3.S: Avoid compiling the file for ld.so. 2010-07-27 Andreas Schwab * manual/memory.texi (Malloc Tunable Parameters): Document M_PERTURB. 2010-07-26 Roland McGrath [BZ #11840] * configure.in (-fgnu89-inline check): Set and substitute gnu89_inline, not libc_cv_gnu89_inline. * configure: Regenerated. * config.make.in (gnu89-inline-CFLAGS): Use @gnu89_inline@. 2010-07-26 Ulrich Drepper * string/test-strnlen.c: New file. * string/Makefile (strop-tests): Add strnlen. * string/tester.c (test_strnlen): Add a few more test cases. * string/tst-strlen.c: Better error reporting. * sysdeps/x86_64/strnlen.S: New file. 2010-07-24 Ulrich Drepper * sysdeps/x86_64/multiarch/strstr.c (__m128i_strloadu_tolower): Use lower-latency instructions. 2010-07-23 Ulrich Drepper * string/test-strcasestr.c: New file. * string/test-strstr.c: New file. * string/Makefile (strop-tests): Add strstr and strcasestr. * string/str-two-way.h: Don't undefine MAX. * string/strcasestr.c: Don't define alias if NO_ALIAS is defined. 2010-07-21 Andreas Schwab * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add strcasestr-nonascii. (CFLAGS-strcasestr-nonascii.c): Define. * sysdeps/i386/i686/multiarch/strcasestr-nonascii.c: New file. * sysdeps/x86_64/multiarch/strcasestr-nonascii.c (STRSTR_SSE42): Remove unused attribute. 2010-07-20 Roland McGrath * elf/dl-sysdep.c (_dl_important_hwcaps): Add dsocaps mask to dl_hwcap_mask as well as dl_hwcap. Without this, dsocaps matching in ld.so.cache was broken. With it, there is no way to disable dsocaps like LD_HWCAP_MASK can disable hwcaps. 2010-06-02 Emilio Pozuelo Monfort * sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Fix memory leaks. 2010-07-16 Ulrich Drepper * sysdeps/x86_64/multiarch/strstr.c: Rewrite to avoid indirect function call in strcasestr. * sysdeps/x86_64/multiarch/strcasestr.c: Declare __strcasestr_sse42_nonascii. * sysdeps/x86_64/multiarch/Makefile: Add rules to build strcasestr-nonascii.c. * sysdeps/x86_64/multiarch/strcasestr-nonascii.c: New file. 2010-06-15 Luis Machado * sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S: New file. * sysdeps/powerpc/powerpc32/power6/fpu/s_copysignf.S: New file. * sysdeps/powerpc/powerpc64/power6/fpu/s_copysign.S: New file. * sysdeps/powerpc/powerpc64/power6/fpu/s_copysignf.S: New file. 2010-07-09 Ulrich Drepper * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use __fcntl not fcntl. 2010-07-06 Andreas Schwab [BZ #11577] * elf/dl-version.c (match_symbol): Don't pass NULL occation to dl_signal_cerror. 2010-07-06 Ulrich Drepper * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Implement _PC_PIPE_BUF using F_GETPIPE_SZ. 2010-07-05 Roland McGrath * manual/arith.texi (Rounding Functions): Fix rint description implicit in round description. 2010-07-02 Ulrich Drepper * elf/Makefile: Fix linking for a few tests to make recent linker happy. 2010-06-30 Andreas Schwab * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Readd $(common-objpfx)libc_nonshared.a. 2010-06-21 Luis Machado * sysdeps/powerpc/powerpc32/970/fpu/Implies: Remove. * sysdeps/powerpc/powerpc32/power5/fpu/Implies: Remove. * sysdeps/powerpc/powerpc32/power5+/fpu/Implies: Remove. * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: Remove. * sysdeps/powerpc/powerpc64/970/fpu/Implies: Remove. * sysdeps/powerpc/powerpc64/power5/fpu/Implies: Remove. * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: Remove. * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies: Remove. * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/fpu/Implies: Remove. * sysdeps/powerpc/powerpc32/970/Implies: Point to power4. * sysdeps/powerpc/powerpc32/power5/Implies: Point to power4. * sysdeps/powerpc/powerpc32/power5+/Implies: Point to power5. * sysdeps/powerpc/powerpc32/power6/Implies: Point to power5+. * sysdeps/powerpc/powerpc32/power6x/Implies: Point to power6. * sysdeps/powerpc/powerpc64/970/Implies: Point to power4. * sysdeps/powerpc/powerpc64/power5/Implies: Point to power4. * sysdeps/powerpc/powerpc64/power5+/Implies: Point to power5. * sysdeps/powerpc/powerpc64/power6/Implies: Point to power5+. * sysdeps/powerpc/powerpc64/power6x/Implies: Point to power6. * sysdeps/powerpc/powerpc32/power7/Implies: New file. * sysdeps/powerpc/powerpc64/power7/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc32/cell/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/cell/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/Implies: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/Implies: New file. 2010-06-25 H.J. Lu * debug/memmove_chk.c (__memmove_chk): Renamed to ... (MEMMOVE_CHK): ...this. Default to __memmove_chk. * string/memmove.c (memmove): Renamed to ... (MEMMOVE): ...this. Default to memmove. * sysdeps/x86_64/memcpy.S: Use ENTRY_CHK and END_CHK. * sysdeps/x86_64/sysdep.h (ENTRY_CHK): Define. (END_CHK): Define. * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add memcpy-ssse3 mempcpy-ssse3 memmove-ssse3 memcpy-ssse3-back mempcpy-ssse3-back memmove-ssse3-back. * sysdeps/x86_64/multiarch/bcopy.S: New file . * sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: New file. * sysdeps/x86_64/multiarch/memcpy-ssse3.S: New file. * sysdeps/x86_64/multiarch/memcpy.S: New file. * sysdeps/x86_64/multiarch/memcpy_chk.S: New file. * sysdeps/x86_64/multiarch/memmove-ssse3-back.S: New file. * sysdeps/x86_64/multiarch/memmove-ssse3.S: New file. * sysdeps/x86_64/multiarch/memmove.c: New file. * sysdeps/x86_64/multiarch/memmove_chk.c: New file. * sysdeps/x86_64/multiarch/mempcpy-ssse3-back.S: New file. * sysdeps/x86_64/multiarch/mempcpy-ssse3.S: New file. * sysdeps/x86_64/multiarch/mempcpy.S: New file. * sysdeps/x86_64/multiarch/mempcpy_chk.S: New file. * sysdeps/x86_64/multiarch/init-arch.h (bit_Fast_Copy_Backward): Define. (index_Fast_Copy_Backward): Define. (HAS_ARCH_FEATURE): Define. (HAS_FAST_REP_STRING): Define. (HAS_FAST_COPY_BACKWARD): Define. 2010-06-21 Andreas Schwab * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): Restore proper fallback handling. 2010-06-19 Ulrich Drepper [BZ #11701] * posix/group_member.c (__group_member): Correct checking loop. * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): Handle OOM in getpwuid_r correctly. Return error number when the caller should return, otherwise -1. (getlogin_r): Adjust to return also for result of __getlogin_r_loginuid call returning > 0 value. * sysdeps/unix/sysv/linux/getlogin.c (getlogin): Likewise. 2010-06-07 Andreas Schwab * dlfcn/Makefile: Remove explicit dependencies on libc.so and libc_nonshared.a from targets in modules-names. 2010-06-02 Kirill A. Shutemov * elf/dl-reloc.c: Flush cache after solving TEXTRELs if arch requires it. 2010-06-10 Luis Machado * sysdeps/powerpc/powerpc32/power7/memcmp.S: New file * sysdeps/powerpc/powerpc64/power7/memcmp.S: New file. * sysdeps/powerpc/powerpc32/power7/strncmp.S: New file. * sysdeps/powerpc/powerpc64/power7/strncmp.S: New file. 2010-06-02 Andreas Schwab * nis/nss_nis/nis-initgroups.c (get_uid): Properly resize buffer. 2010-06-14 Ulrich Drepper * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Define F_SETPIPE_SZ and F_GETPIPE_SZ. * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise. * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise 2010-06-14 Roland McGrath * manual/libc.texinfo (@copying): Change to GFDL v1.3. 2010-06-07 Jakub Jelinek * libio/stdio.h (sscanf, vsscanf): Use __REDIRECT_NTH instead of __REDIRECT followed by __THROW. * wcsmbs/wchar.h (swscanf, vswscanf): Likewise. * posix/getopt.h (getopt): Likewise. 2010-06-02 Emilio Pozuelo Monfort * hurd/lookup-at.c (__file_name_lookup_at): Accept AT_SYMLINK_FOLLOW in AT_FLAGS. Fail with EINVAL if both AT_SYMLINK_FOLLOW and AT_SYMLINK_NOFOLLOW are present in AT_FLAGS. * hurd/hurd/fd.h (__file_name_lookup_at): Update comment. * sysdeps/mach/hurd/linkat.c (linkat): Pass O_NOLINK in FLAGS. 2010-05-28 Luis Machado * sysdeps/powerpc/powerpc32/power7/memcpy.S: Exchange srdi for srwi. 2010-05-26 H.J. Lu [BZ #11640] * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Properly check family and model. 2010-05-26 Takashi Yoshii * sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Fix iov[] size. 2010-05-24 Luis Machado * sysdeps/powerpc/powerpc32/power7/memset.S: POWER7 32-bit memset fix. 2010-05-21 Ulrich Drepper * elf/dl-runtime.c (_dl_profile_fixup): Don't crash on unresolved weak symbol reference. 2010-05-19 Andreas Schwab * elf/dl-runtime.c (_dl_fixup): Don't crash on unresolved weak symbol reference. 2010-05-21 Andreas Schwab * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add recvmmsg and internal_recvmmsg. * sysdeps/unix/sysv/linux/recvmmsg.c: New file. * sysdeps/unix/sysv/linux/internal_recvmmsg.S: New file. * sysdeps/unix/sysv/linux/socketcall.h (SOCKOP_recvmmsg): Define. * sysdeps/unix/sysv/linux/syscalls.list (recvmmsg): Remove. * sunrpc/clnt_tcp.c (clnttcp_control): Add missing break. * sunrpc/clnt_udp.c (clntudp_control): Likewise. * sunrpc/clnt_unix.c (clntunix_control): Likewise. 2010-05-20 Andreas Schwab * sysdeps/unix/sysv/linux/sys/timex.h: Use __REDIRECT_NTH. 2010-05-17 Luis Machado POWER7 optimizations. * sysdeps/powerpc/powerpc64/power7/memset.S: New file. * sysdeps/powerpc/powerpc32/power7/memset.S: New file. 2010-05-19 Ulrich Drepper * version.h: Update for 2.13 development version. 2010-05-12 Andrew Stubbs * sysdeps/sh/sh4/fpu/feholdexcpt.c (feholdexcept): Really disable all exceptions. Return 0. 2010-05-07 Roland McGrath * elf/ldconfig.c (main): Add a const. 2010-05-06 Ulrich Drepper * nss/getent.c (idn_flags): Default to AI_IDN|AI_CANONIDN. (args_options): Add no-idn option. (ahosts_keys_int): Add idn_flags to ai_flags. (parse_option): Handle 'i' option to clear idn_flags. * malloc/malloc.c (_int_free): Possible race in the most recently added check. Only act on the data if no current modification happened. See ChangeLog.17 for earlier changes.