glibc/ChangeLog
Ulrich Drepper fab1a490ac * locale/programs/repertoire.c (repertoire_read): Always free
memory for repertoire file name [Coverity CID 270].
2007-10-13 05:26:27 +00:00

6339 lines
227 KiB
Plaintext

2007-10-12 Ulrich Drepper <drepper@redhat.com>
* locale/programs/repertoire.c (repertoire_read): Always free
memory for repertoire file name [Coverity CID 270].
* elf/cache.c (save_aux_cache): Free memory allocated for
temporary file name [Coverity CID 267].
2007-10-12 Jakub Jelinek <jakub@redhat.com>
* misc/Makefile (headers): Add bits/error.h.
2007-10-12 Ulrich Drepper <drepper@redhat.com>
* posix/fnmatch_loop.c: Take rule index returned as part of
findidx return value into account when accessing weights.
* posix/regcomp.c: Likewise.
* posix/regexec.c: Likewise.
* locale/programs/ld-collate.c (collate_read): Optimize a bit.
(skip_to): Fix problems with parameter of elifdef/elifndef.
2007-10-11 Ulrich Drepper <drepper@redhat.com>
* iconv/gconv_simple.c: Add some branch prediction.
2007-10-12 Jakub Jelinek <jakub@redhat.com>
* locale/programs/ld-collate.c (collate_read): If ignore_content
and nowtok is tok_define, eat any tok_eol tokens.
2007-10-11 Jakub Jelinek <jakub@redhat.com>
* sysdeps/gnu/netinet/tcp.h: Include sys/socket.h if __USE_MISC.
(struct tcp_md5sig): Change tcpm_addr type to struct sockaddr_storage.
* inet/netinet/in.h: Don't include bits/socket.h.
* sysdeps/unix/sysv/linux/bits/socket.h: Only check _SYS_SOCKET_H
macro.
* sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
2007-10-10 Ulrich Drepper <drepper@redhat.com>
* locale/programs/locfile-token.h: Remove tok_elif, add tok_elifdef
and tok_elifndef.
* locale/programs/locfile-kw.gperf: Likewise.
* locale/programs/ld-collate.c: Implement primitive preprocessor.
2007-10-10 Jakub Jelinek <jakub@redhat.com>
* stdio-common/printf-parse.h: Include string.h and wchar.h.
(__find_specwc): Change into __extern_always_inline function.
(__find_specmb): Likewise. Remove ps argument. Use __strchrnul.
(__parse_one_specmb): Remove ps argument.
* stdio-common/vfprintf.c (vfprintf): Remove mbstate variable.
Adjust __find_specmb and __parse_one_specmb callers.
* stdio-common/printf-prs.c (parse_printf_format): Likewise.
* stdio-common/printf-parsemb.c (__find_specwc, __find_specmb):
Removed.
(__parse_one_specmb): Remove ps argument, adjust __find_specmb
caller.
2007-10-09 Ulrich Drepper <drepper@redhat.com>
* sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Work around problem
with some Pentium Ds.
2007-10-08 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/eventfd_read.c (eventfd_read): Use
__read not read.
* sysdeps/unix/sysv/linux/eventfd_write.c (eventfd_write): Use
__write not write.
2007-10-07 Ulrich Drepper <drepper@redhat.com>
[BZ #181]
* locale/C-time.c: Set week_1stday data to 19971201.
* locale/programs/ld-time.c (time_finish): Default for
first_workday is Monday.
[BZ #2633]
* wcsmbs/wchar.h: Move many C99 functions into std namespace.
[BZ #5103]
* posix/glob.c (glob): Recognize patterns starting \/.
* posix/tst-gnuglob.c (find_file): Handle absolute path names.
(main): Add test for pattern starting \/.
* misc/error.h: Use __const instead of const.
* misc/bits/error.h: Likewise.
2007-10-07 Andreas Jaeger <aj@suse.de>
* include/bits/error.h: New file.
* misc/bits/error.h (error_at_line): Fix prototype.
2007-10-06 Ulrich Drepper <drepper@redhat.com>
[BZ #3924]
* sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix a few
more little bugs in creating the stack frame when pltexit has to
be called.
* nscd/nscd_helper.c (__nscd_cache_search): Prevent endless loops.
* nscd/connections.c (verify_persistent_db): Recognize circular lists.
[BZ #4407]
* sysdeps/ieee754/dbl-64/e_lgamma_r.c: Fix *signgamp for -0.0.
* sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise.
* sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise.
* math/libm-test.inc: Add test for this case.
[BZ #5010]
* sunrpc/svc.c (struct svc_callout): Add sc_mapped element.
(svc_register): Initialize sc_mapped. Set to TRUE if call to
map service succeeded.
(svc_is_mapped): New function.
(svc_unregister): Use it before trying to unmap service.
2007-10-05 Ulrich Drepper <drepper@redhat.com>
* timezone/zic.c: Update from tzcode2007h.
[BZ #5063]
* timezone/africa: Update from tzdata2007h.
* timezone/antarctica: Likewise.
* timezone/asia: Likewise.
* timezone/australasia: Likewise.
* timezone/europe: Likewise.
* timezone/leapseconds: Likewise.
* timezone/northamerica: Likewise.
* timezone/southamerica: Likewise.
* timzeone/zone.tab: Likewise.
[BZ #5104]
* elf/do-lookup.h (do_lookup_x): Don't ignore STT_COMMON symbols.
[BZ #5113]
* string/bits/string2.h (__strdup): Cast parameters to calloc to
avoid warning with -Wconversion.
(__strndup): Likewise.
Half the patch by Christian Iseli <christian.iseli@licr.org>.
[BZ #5112]
* nscd/connections.c (restart): Don't resync if database is
disabled. Patch mostly by Brian De Wolf <bldewolf@csupomona.edu>.
* sysdeps/gnu/netinet/tcp.h: Define TCP_MD5SIG, TCP_MD5SIG_MAXKEYLEN,
struct tcp_md5sig. Extend struct tcp_info according to recent kernels.
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add eventfd,
evetnfd_read, eventfd_write.
* sysdeps/unix/sysv/linux/eventfd.c: New file.
* sysdeps/unix/sysv/linux/eventfd_read.c: New file.
* sysdeps/unix/sysv/linux/eventfd_write.c: New file.
* sysdeps/unix/sysv/linux/sys/eventfd.h: New file.
* sysdeps/unix/sysv/linux/Versions: Export eventfd, eventfd_read,
eventfd_write for GLIBC_2.7.
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add signalfd.
* sysdeps/unix/sysv/linux/signalfd.c: New file.
* sysdeps/unix/sysv/linux/sys/signalfd.h: New file.
* sysdeps/unix/sysv/linux/Versions: Export signalfd for GLIBC_2.7.
2007-10-04 Jakub Jelinek <jakub@redhat.com>
* stdlib/msort.c: Include stdint.h.
(struct msort_param): New type.
(msort_with_tmp): Use struct msort_param pointer for unchanging
parameters. Add optimized handling for several common sizes
and indirect sorting mode.
(qsort): Adjust msort_with_tmp callers. For big S use indirect
sorting.
Suggested by Belazougui Djamel .
* stdlib/Makefile (tests): Add tst-qsort2.
* stdlib/tst-qsort2.c: New test.
2007-10-04 Ulrich Drepper <drepper@redhat.com>
* login/login_tty.c (login_tty): The Linux kernel can return EBUSY
for dup2 in case another thread races with the current one. Retry
in this case.
* misc/error.h: Remove support for use outside of libc. We have to
include <features.h> now. Include <bits/error.h> if possible.
* misc/bits/error.h: New file.
2007-10-03 Jakub Jelinek <jakub@redhat.com>
* string/bits/string3.h (memcpy, memmove, mempcpy, memset, bcopy,
bzero, strcpy, stpcpy, strncpy, strcat, strncat): Use
__extern_always_inline functions unconditionally, drop macros.
* misc/sys/cdefs.h (__REDIRECT_LDBL, __REDIRECT_NTH_LDBL): New macros.
* wcsmbs/bits/wchar2.h (__swprintf_alias, __vswprintf_alias): Use
__REDIRECT_NTH_LDBL macro rather than __REDIRECT_NTH.
* misc/sys/cdefs.h (__extern_always_inline): For GCC 4.3+
add __artificial__ attribute.
2007-10-02 Ulrich Drepper <drepper@redhat.com>
* string/strcoll_l.c (STRCOLL): Correct handling of switching from
backward to forward direction.
* string/strcoll_l.c (STRCOLL): Correct test for alloca use.
[BZ #645]
* locale/programs/ld-collate.c (collate_finish): Compare against last
used section which is known to have rules defined.
(collate_read): After order_start, correctly record order of sections
and queue sections up.
2007-10-01 Ulrich Drepper <drepper@redhat.com>
[BZ #5071]
* malloc/malloc.c (mremap_chunk): Avoid resizing of new block has
the same number of pages.
Patch by Tomash Brechko <tomash.brechko@gmail.com>.
* locale/programs/ld-collate.c (collate_read): After initial copy
statement, continue in state 0.
* include/stdio_ext.h (__fsetlocking): Define as macro.
2007-09-30 Ulrich Drepper <drepper@redhat.com>
* locale/programs/ld-collate.c (collate_finish): Compare all bytes
of section order.
* po/pt_BR.po: Fix typo.
2007-09-29 Ulrich Drepper <drepper@redhat.com>
* iconvdata/Makefile (modules): Add ISO8859-9E.
(distribute): Add iso8859-9e.c.
(gen-8bit-gap-modules): Add iso8859-9e.
* iconvdata/iso8859-9e.c: New file.
* iconvdata/gconv-modules: Add entries for ISO-8859-9E.
* iconvdata/TESTS: Likewise.
* iconvdata/tst-tables.sh: Likewise.
* iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
* locale/iso-639.def: Add several new entries.
2007-09-24 Jakub Jelinek <jakub@redhat.com>
* sysdeps/generic/ldsodefs.h (struct dl_scope_free_list): Store
void * pointers instead of struct link_map **.
(_dl_scope_free): Change argument type to void *.
* include/link.h (struct link_map): Change type of l_reldeps
to struct link_map_reldeps, move l_reldepsact into that
struct too.
* elf/dl-deps.c: Include atomic.h.
(_dl_map_object_deps): Only change l->l_initfini when it is
fully populated, use _dl_scope_free for freeing it. Optimize
removal of libs from reldeps by using l_reserved flag, when
some removal is needed, allocate a new list instead of
reallocating and free the old with _dl_scope_free. Adjust
for l_reldeps and l_reldepsact changes.
* elf/dl-lookup.c (add_dependency): Likewise. Reorganize to allow
searching in l_initfini and l_reldeps without holding dl_load_lock.
* elf/dl-fini.c (_dl_sort_fini): Adjust for l_reldeps and
l_reldepsact changes.
* elf/dl-close.c (_dl_close_worker): Likewise.
* elf/dl-open.c (_dl_scope_free): Change argument type to void *.
2007-09-28 Ulrich Drepper <drepper@redhat.com>
* iconvdata/Makefile (modules): Add KOI8-RU.
(distribute): Add koi8-ru.c.
(gen-8bit-gap-modules): Add koi8-ru.
* iconvdata/koi8-ru.c: New file.
* iconvdata/gconv-modules: Add entries for KOI8-RU.
* iconvdata/TESTS: Likewise.
* iconvdata/tst-tables.sh: Likewise.
* iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
2007-09-26 Jakub Jelinek <jakub@redhat.com>
* misc/sys/cdefs.h (__warndecl, __errordecl): For GCC 4.3+ define
with __warning__/__error__ attributes.
(__warnattr): Define.
* stdlib/bits/stdlib.h (__realpath_chk_warn, __ptsname_r_chk_warn,
__mbstowcs_chk_warn, __wcstombs_chk_warn): New aliases with
__warnattr.
(realpath, ptsname_r, mbstowcs, wcstombs): Call __*_chk_warn instead
of __*_chk if compile time detectable overflow is found.
* libio/bits/stdio2.h (__fgets_chk_warn, __fread_chk_warn,
__fgets_unlocked_chk_warn, __fread_unlocked_chk_warn): New aliases
with __warnattr.
(fgets, fread, fgets_unlocked, fread_unlocked): Call __*_chk_warn
instead of __*_chk if compile time detectable overflow is found.
(__gets_alias): Rename to...
(__gets_warn): ... this. Add __warnattr.
(gets): Call __gets_warn instead of __gets_alias.
* socket/bits/socket2.h (__recv_chk_warn, __recvfrom_chk_warn): New
aliases with __warnattr.
(recv, recvfrom): Call __*_chk_warn instead of __*_chk if compile
time detectable overflow is found.
* posix/bits/unistd.h (__read_chk_warn, __pread_chk_warn,
__pread64_chk_warn, __readlink_chk_warn, __readlinkat_chk_warn,
__getcwd_chk_warn, __confstr_chk_warn, __getgroups_chk_warn,
__ttyname_r_chk_warn, __getlogin_r_chk_warn, __gethostname_chk_warn,
__getdomainname_chk_warn): New aliases with __warnattr.
(read, pread, pread64, readlink, readlinkat, getcwd, confstr,
getgroups, ttyname_r, getlogin_r, gethostname, getdomainname): Call
__*_chk_warn instead of __*_chk if compile time detectable overflow
is found.
(__getgroups_chk): Rename argument to __listlen from listlen.
(__getwd_alias): Rename to...
(__getwd_warn): ... this. Add __warnattr.
(getwd): Call __getwd_warn instead of __getwd_alias.
* wcsmbs/bits/wchar2.h (__wmemcpy_chk_warn, __wmemmove_chk_warn,
__wmempcpy_chk_warn, __wmemset_chk_warn, __wcsncpy_chk_warn,
__wcpncpy_chk_warn, __fgetws_chk_warn, __fgetws_unlocked_chk_warn,
__mbsrtowcs_chk_warn, __wcsrtombs_chk_warn, __mbsnrtowcs_chk_warn,
__wcsnrtombs_chk_warn): New aliases with __warnattr.
(wmemcpy, wmemmove, wmempcpy, wmemset, mbsrtowcs, wcsrtombs,
mbsnrtowcs, wcsnrtombs): Call __*_chk_warn instead of __*_chk if
compile time detectable overflow is found.
(wcsncpy, wcpncpy): Likewise. For constant __n fix check whether
to use __*_chk or not.
(fgetws, fgetws_unlocked): Divide __bos by sizeof (wchar_t), both
in comparisons which function should be called and in __*_chk*
arguments. Call __*_chk_warn instead of __*_chk if compile time
detectable overflow is found.
(swprintf, vswprintf): Divide __bos by sizeof (wchar_t) in
__*_chk argument.
* debug/tst-chk1.c (do_test): Add a few more tests.
2007-09-24 Ulrich Drepper <drepper@redhat.com>
[BZ #5058]
* intl/gettextP.h (struct loaded_domain): Add conversions_lock member.
* intl/loadmsgcat.c (_nl_load_domain): Initialize conversions_lock.
(_nl_unload_domain): Finalize conversions_lock.
* intl/dcigettext.c (_nl_find_msg): Take conversions_lock before
handling table of known conversions.
2007-09-24 Jakub Jelinek <jakub@redhat.com>
* sysdeps/posix/getaddrinfo.c (getaddrinfo): Use
close_not_cancel_no_status instead of close.
2007-09-13 Aurelien Jarno <aurelien@aurel32.net>
[BZ #5028]
* posix/regcomp.c (lookup_collation_sequence_value): Check that
nrules != 0 for multibyte chars.
2007-09-23 Ulrich Drepper <drepper@redhat.com>
* resolv/ns_print.c (ns_sprintrrf): Handle ns_t_a6 and ns_t_opt.
Provide better error message in case the type is unknown.
[BZ #4963]
* wcsmbs/wcsnlen.c: Don't reference before checking the length.
* string/stratcliff.c: Make usable to test wide char functions.
* wcsmbs/wcsatcliff.c: New file.
* wcsmbs/Makefiel (tests): Add wcsatcliff.
[BZ #4972]
* iconvdata/Makefile (modules): Add MAC-CENTRALEUROPE.
(distribute): Add mac-centraleurope.c.
(gen-8bit-gap-modules): Add mac-centraleurope.
* iconvdata/mac-centraleurope.c: New file.
* iconvdata/gconv-modules: Add entries for MAC-CENTRALEUROPE.
* iconvdata/TESTS: Likewise.
* iconvdata/tst-tables.sh: Likewise.
[BZ #5043]
* iconv/iconv_open.c (iconv_open): For large codeset names use malloc.
2007-09-21 Ulrich Drepper <drepper@redhat.com>
* sysdeps/x86_64/cacheinfo.c (__x86_64_data_cache_size_half): Renamed
from __x86_64_core_cache_size_half.
(init_cacheinfo): Compute shared cache size for AMD processors with
shared L3 correctly.
* sysdeps/x86_64/memcpy.S: Adjust for __x86_64_data_cache_size_half
name change.
Patch in large parts by Evandro Menezes.
2007-09-19 Ulrich Drepper <drepper@redhat.com>
* elf/dl-lookup.c (add_dependency): Handle failing memory
allocation for dependency list. Remove unnecessary check.
* sysdeps/posix/getaddrinfo.c (getaddrinfo): Avoid unnecessary
open/close when determining source addresses.
* crypt/Makefile (libcrypt-routines): Add sha256-crypt, sha256,
sha512-crypt, and sha512.
(tests): Add sha256test, sha256c-test, sha512test, and sha512c-test.
(distribute): Add sha256.h and sha512.h.
* crypt/crypt-entry.c (crypt): Recognize the new $5$ and $6$ prefixes
and call the appropriate code.
* crypt/sha256-crypt.c: New file.
* crypt/sha256.c: New file.
* crypt/sha256.h: New file.
* crypt/sha256c-test.c: New file.
* crypt/sha256test.c: New file.
* crypt/sha512-crypt.c: New file.
* crypt/sha512.c: New file.
* crypt/sha512.h: New file.
* crypt/sha512c-test.c: New file.
* crypt/sha512test.c: New file.
2007-09-19 Jakub Jelinek <jakub@redhat.com>
* misc/bits/syslog.h (syslog): Remove extraneous argument from
the inline, pass __USE_FORTIFY_LEVEL - 1 as second argument to
__syslog_chk.
2007-09-18 Jakub Jelinek <jakub@redhat.com>
* locale/programs/charmap-dir.c (charmap_aliases): Use %ms instead of
%as in fscanf format strings.
* sysdeps/sparc/sparc32/elf/start.S: Remove cfi_* markup.
* sysdeps/sparc/sparc64/elf/start.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start):
Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start):
Likewise.
* sysdeps/generic/ldsodefs.h (DL_LOOKUP_GSCOPE_LOCK): New definition.
* elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Or in
DL_LOOKUP_GSCOPE_LOCK into flags after THREAD_GSCOPE_SET_FLAG ().
* elf/dl-sym.c (do_sym): Likewise.
* include/link.h (struct link_map): Add l_serial field.
* elf/dl-object.c (_dl_new_object): Initialize l_serial.
* elf/dl-lookup.c (add_dependency): Add flags argument.
Remember map->l_serial, if DL_LOOKUP_GSCOPE_LOCK is among
flags, use THREAD_GSCOPE_RESET_FLAG before and
THREAD_GSCOPE_SET_FLAG after
__rtld_lock_lock_recursive (GL(dl_load_lock)) to avoid deadlock.
Don't dereference map until it has been found on some list.
If map->l_serial changed, return -1.
2007-09-17 Jakub Jelinek <jakub@redhat.com>
* include/stdio.h (__isoc99_fscanf, __isoc99_scanf,
__isoc99_sscanf, __isoc99_vscanf): New prototypes.
(__isoc99_vsscanf, __isoc99_vfscanf): New prototypes, add
libc_hidden_proto.
* include/wchar.h (__isoc99_fwscanf, __isoc99_wscanf,
__isoc99_swscanf, __isoc99_vwscanf): New prototypes.
(__isoc99_vswscanf, __isoc99_vfwscanf): New prototypes,
add libc_hidden_proto.
* libio/stdio.h (fscanf, scanf, sscanf, vfscanf, vscanf,
vsscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
conformance requested.
* wcsmbs/wchar.h (fwscanf, wscanf, swscanf, vfwscanf, vwscanf,
vswscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
conformance requested.
* libio/bits/stdio-ldbl.h (fscanf, scanf, sscanf, vfscanf, vscanf,
vsscanf): Redirect to __nldbl___isoc99_* if strict ISO C99 or POSIX
conformance requested.
* wcsmbs/bits/wchar-ldbl.h (fwscanf, wscanf, swscanf, vfwscanf,
vwscanf, vswscanf): Redirect to __nldbl___isoc99_* if strict
ISO C99 or POSIX conformance requested.
* stdio-common/Versions (libc): Export __isoc99_scanf@@GLIBC_2.7,
__isoc99_vscanf@@GLIBC_2.7, __isoc99_fscanf@@GLIBC_2.7,
__isoc99_vfscanf@@GLIBC_2.7, __isoc99_sscanf@@GLIBC_2.7
and __isoc99_vsscanf@@GLIBC_2.7.
* stdio-common/Makefile (routines): Add isoc99_scanf, isoc99_vscanf,
isoc99_fscanf, isoc99_vfscanf, isoc99_sscanf and isoc99_vsscanf.
(tests): Add scanf14.
(CFLAGS-vfprintf.c, CFLAGS-fprintf.c, CFLAGS-printf.c,
CFLAGS-vfwprintf.c, CFLAGS-vfscanf.c, CFLAGS-vfwscanf.c,
CFLAGS-fscanf.c, CFLAGS-scanf.c, CFLAGS-isoc99_vfscanf.c,
CFLAGS-isoc99_vscanf.c, CFLAGS-isoc99_fscanf.c,
CFLAGS-isoc99_scanf.c): Add $(exceptions).
(CFLAGS-scanf15.c): Add various -I paths to prevent the compiler
from using internal headers.
* wcsmbs/Versions (libc): Export __isoc99_wscanf@@GLIBC_2.7,
__isoc99_vwscanf@@GLIBC_2.7, __isoc99_fwscanf@@GLIBC_2.7,
__isoc99_vfwscanf@@GLIBC_2.7, __isoc99_swscanf@@GLIBC_2.7
and __isoc99_vswscanf@@GLIBC_2.7.
* wcsmbs/Makefile (routines): Add isoc99_wscanf, isoc99_vwscanf,
isoc99_fwscanf, isoc99_vfwscanf, isoc99_swscanf and isoc99_vswscanf.
(CFLAGS-isoc99_wscanf.c, CFLAGS-isoc99_fwscanf.c,
CFLAGS-isoc99_vwscanf.c, CFLAGS-isoc99_vfwscanf.c): Add $(exceptions).
(CPPFLAGS): Add -D_IO_MTSAFE_IO if needed.
* stdio-common/isoc99_scanf.c: New file.
* stdio-common/isoc99_vsscanf.c: New file.
* stdio-common/isoc99_vscanf.c: New file.
* stdio-common/isoc99_vfscanf.c: New file.
* stdio-common/isoc99_fscanf.c: New file.
* stdio-common/isoc99_sscanf.c: New file.
* wcsmbs/isoc99_fwscanf.c: New file.
* wcsmbs/isoc99_vswscanf.c: New file.
* wcsmbs/isoc99_swscanf.c: New file.
* wcsmbs/isoc99_wscanf.c: New file.
* wcsmbs/isoc99_vwscanf.c: New file.
* wcsmbs/isoc99_vfwscanf.c: New file.
* libio/libio.h (_IO_FLAGS2_SCANF_STD): Define.
* libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Also
clear _IO_FLAGS2_SCANF_STD bit from _flags2.
* stdio-common/vfscanf.c (_IO_vfscanf_internal): Don't
handle %as, %aS and %a[ if _IO_FLAGS2_SCANF_STD is set in _flags2.
* stdio-common/scanf14.c: New test.
* stdio-common/scanf15.c: New test.
* sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add
isoc99_scanf, isoc99_fscanf, isoc99_sscanf,
isoc99_vscanf, isoc99_vfscanf, isoc99_vsscanf,
isoc99_wscanf, isoc99_fwscanf, isoc99_swscanf,
isoc99_vwscanf, isoc99_vfwscanf and isoc99_vswscanf.
* sysdeps/ieee754/ldbl-opt/Versions (libc): Export
__nldbl___isoc99_scanf@@GLIBC_2.7,
__nldbl___isoc99_fscanf@@GLIBC_2.7,
__nldbl___isoc99_sscanf@@GLIBC_2.7,
__nldbl___isoc99_vscanf@@GLIBC_2.7,
__nldbl___isoc99_vfscanf@@GLIBC_2.7,
__nldbl___isoc99_vsscanf@@GLIBC_2.7,
__nldbl___isoc99_wscanf@@GLIBC_2.7,
__nldbl___isoc99_fwscanf@@GLIBC_2.7,
__nldbl___isoc99_swscanf@@GLIBC_2.7,
__nldbl___isoc99_vwscanf@@GLIBC_2.7,
__nldbl___isoc99_vfwscanf@@GLIBC_2.7
and __nldbl___isoc99_vswscanf@@GLIBC_2.7.
* sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__isoc99_scanf,
__isoc99_fscanf, __isoc99_sscanf, __isoc99_vscanf,
__isoc99_vfscanf, __isoc99_vsscanf, __isoc99_wscanf,
__isoc99_fwscanf, __isoc99_swscanf, __isoc99_vwscanf,
__isoc99_vfwscanf, __isoc99_vswscanf): Add NLDBL_DECL.
* sysdeps/ieee754/ldbl-opt/nldbl-compat.c
(__nldbl___isoc99_scanf, __nldbl___isoc99_fscanf,
__nldbl___isoc99_sscanf, __nldbl___isoc99_vscanf,
__nldbl___isoc99_vfscanf, __nldbl___isoc99_vsscanf,
__nldbl___isoc99_wscanf, __nldbl___isoc99_fwscanf,
__nldbl___isoc99_swscanf, __nldbl___isoc99_vwscanf,
__nldbl___isoc99_vfwscanf, __nldbl___isoc99_vswscanf): New
functions.
* sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfscanf.c: New file.
* sysdeps/ieee754/ldbl-opt/nldbl-isoc99_swscanf.c: New file.
* sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vwscanf.c: New file.
* sysdeps/ieee754/ldbl-opt/nldbl-isoc99_wscanf.c: New file.
* sysdeps/ieee754/ldbl-opt/nldbl-isoc99_scanf.c: New file.
* sysdeps/ieee754/ldbl-opt/nldbl-isoc99_sscanf.c: New file.
* sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vsscanf.c: New file.
* sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fwscanf.c: New file.
* sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfwscanf.c: New file.
* sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vswscanf.c: New file.
* sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vscanf.c: New file.
* sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fscanf.c: New file.
* stdio-common/Makefile (tests): Add scanf13.
(scanf13-ENV): New.
* stdio-common/vfscanf.c (_IO_vfscanf_internal): Handle
m modifier followed by l.
(STRING_ARG): Add width argument.
(_IO_vfscanf_internal) <case L_('c')>: Handle %mc.
<case L_('C')>: Handle %mlc and %mC.
<case L_('s'), case L_('S'), case L_('[')>: Adjust STRING_ARG
arguments.
* stdio-common/scanf13.c: New test.
* libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Clear
the _IO_FLAGS2_FORTIFY bit from _flags2 rather than _flags.
2007-09-18 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Correct return value
type and __THROW marker of splice, vmsplice, and tee.
* sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/syscalls.list: Mark splice, vmsplice, and tee
as cancellation points.
2003-11-01 Daniel Jacobowitz <dan@debian.org>
* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion): Don't
parse more than three parts of the version number.
2007-09-15 Ulrich Drepper <drepper@redhat.com>
* stdio-common/vfscanf.c (_IO_vfwscanf): Add support for 'm'
modifier. Patch by Jakub Jelinek.
2007-08-26 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/i386/Makefile (sysdep_routines): Add
call_fallocate in misc subdir.
* sysdeps/unix/sysv/linux/i386/call_fallocate.S: New file.
* sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate64): Remove.
* sysdeps/unix/sysv/linux/i386/posix_fallocate.c: Use __call_fallocate
instead of __fallocate64.
* sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: Likewise.
2007-09-15 Jakub Jelinek <jakub@redhat.com>
* rt/Versions (librt): Export __mq_open_2@@GLIBC_2.7.
* rt/Makefile (headers): Add bits/mqueue2.h.
* rt/mqueue.h: Include bits/mqueue2.h if -D_FORTIFY_SOURCE=2,
optimizing with GCC and __va_arg_pack_len is defined.
* rt/bits/mqueue2.h: New file.
* rt/mq_open.c (__mq_open): Renamed from mq_open.
(mq_open): New strong_alias.
(__mq_open_2): New function.
* sysdeps/unix/sysv/linux/mq_open.c (__mq_open): Renamed from mq_open.
(mq_open): New strong_alias.
(__mq_open_2): New function.
* debug/Versions (libc): Export __fortify_fail@@GLIBC_PRIVATE.
* Versions.def (librt): Add GLIBC_2.7 version.
* debug/fortify_fail.c (__fortify_fail): Add libc_hidden_def.
* include/stdio.h (__fortify_fail): Add libc_hidden_proto.
* misc/sys/cdefs.h (__errordecl, __va_arg_pack_len): Define.
* io/fcntl.h: Include bits/fcntl2.h when __va_arg_pack_len
is defined rather than when not C++.
* io/bits/fcntl2.h (__open_alias, __open64_alias, __openat_alias,
__openat64_alias): New redirects.
(__open_too_many_args, __open_missing_mode, __open64_too_many_args,
__open64_missing_mode, __openat_too_many_args, __openat_missing_mode,
__openat64_too_many_args, __openat64_missing_mode): New __errordecls.
(open, open64, openat, openat64): Rewrite as __extern_always_inline
functions instead of function-like macros.
2007-09-14 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/i386/i586/memcpy.S (__memcpy_chk): New definition.
* sysdeps/i386/i586/mempcpy.S (__memcpy_chk): New definition.
* sysdeps/i386/i586/memset.S (__memset_chk): New definition.
2007-09-15 Mike Frysinger <vapier@gentoo.org>
* inet/inet_net.c: Reset digit to 0 for inputs starting with "0x".
* inet/tst-network.c (tests): Add edge case tests for "0", "0x", "0x0".
2007-09-14 Mike Frysinger <vapier@gentoo.org>
* inet/tst-network.c: Increment ERRORS for failing tests.
2007-09-07 Jakub Jelinek <jakub@redhat.com>
* misc/sys/cdefs.h (__va_arg_pack): Define for GCC 4.3+.
* misc/bits/syslog.h (syslog): When __va_arg_pack is defined,
implement as __extern_always_inline function.
(vsyslog): Define as __extern_always_inline function unconditionally.
* libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf):
When __va_arg_pack is defined, implement as __extern_always_inline
functions.
(vsprintf, vsnprintf, vprintf, vfprintf): Define as
__extern_always_inline functions unconditionally.
* libio/bits/stdio.h (vprintf): Ifdef out the inline when
bits/stdio2.h will be included.
* wcsmbs/bits/wchar2.h (__swprintf_alias): New redirect.
(swprintf, wprintf, fwprintf): When __va_arg_pack is defined,
implement as __extern_always_inline functions.
(vswprintf, vwprintf, vfwprintf): Define as
__extern_always_inline functions unconditionally.
* debug/tst-chk1.c (do_test): Enable remaining tests for C++.
2007-09-03 Jakub Jelinek <jakub@redhat.com>
* misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Only
define in C++ for GCC 4.3+, in C++ always use __gnu_inline__
attribute.
* include/features.h (__USE_EXTERN_INLINES): Define only when
__extern_inline is defined.
* stdlib/stdlib.h: Include bits/stdlib.h when __extern_always_inline
is defined instead of when not __cplusplus.
* misc/sys/syslog.h: Include bits/syslog.h when __extern_always_inline
is defined instead of when not __cplusplus.
* socket/sys/socket.h: Include bits/socket2.h when
__extern_always_inline is defined instead of when not __cplusplus.
* libio/stdio.h: Include bits/stdio2.h when __extern_always_inline
is defined instead of when not __cplusplus.
* posix/unistd.h: Include bits/unistd.h when __extern_always_inline
is defined instead of when not __cplusplus.
* string/string.h: Include bits/string3.h when __extern_always_inline
is defined instead of when not __cplusplus.
* wcsmbs/wchar.h: Include bits/wchar2.h when __extern_always_inline
is defined instead of when not __cplusplus.
(btowc, wctob): Don't guard the inlines with ifndef __cplusplus.
* io/fcntl.h: Don't include bits/fcntl2.h if __extern_always_inline
is not defined.
* misc/bits/syslog-ldbl.h: Guard *_chk stuff with
defined __extern_always_inline instead of !defined __cplusplus.
* libio/bits/stdio-ldbl.h: Likewise.
* wcsmbs/bits/wchar-ldbl.h: Likewise.
* misc/bits/syslog.h (syslog): Don't define for C++.
(vsyslog): Use __extern_always_inline function for C++ instead of
a macro.
* libio/bits/stdio.h (__STDIO_INLINE): Define to __extern_inline
whenever that macro is defined.
(vprintf): Don't provide the inline for C++.
(fread_unlocked, fwrite_unlocked): Don't define the macros for C++.
* libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf): Don't
define the macros for C++.
(vsprintf, vsnprintf, vprintf, vfprintf): Define as
__extern_always_inline functions for C++.
* io/sys/stat.h (stat, lstat, fstat, fstatat, mknod, mknodat,
stat64, lstat64, fstat64, fstatat64): Don't define if not
__USE_EXTERN_INLINES.
* wcsmbs/bits/wchar2.h: Fix #error message.
(swprintf, wprintf, fwprintf): Don't define the macros for C++.
(vswprintf, vwprintf, vfwprintf): Define using
__extern_always_inline functions for C++.
* string/bits/string3.h: Don't #undef macros if __cplusplus.
(memcpy, memmove, mempcpy, memset, bcopy, bzero, strcpy, stpcpy,
strncpy, strcat, strncat): Define as __extern_always_inline
functions instead of macros for C++.
* math/bits/cmathcalls.h: Guard __extern_inline routines with
defined __extern_inline.
* sysdeps/alpha/fpu/bits/mathinline.h (__MATH_INLINE): Define
to __extern_inline whenever that macro is defined.
* sysdeps/ia64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
* sysdeps/i386/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
* sysdeps/i386/i486/bits/string.h (__STRING_INLINE): Likewise.
* sysdeps/s390/bits/string.h (__STRING_INLINE): Likewise.
* sysdeps/s390/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
* sysdeps/powerpc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
* sysdeps/x86_64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
* sysdeps/sparc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
* sysdeps/unix/sysv/linux/sys/sysmacros.h (gnu_dev_major,
gnu_dev_minor, gnu_dev_makedev): Remove __extern_inline from
prototypes. Only provide __extern_inline routines if
__USE_EXTERN_INLINES.
* debug/Makefile: Add rules to build and run tst-{,lfs}chk{4,5,6}
tests.
* debug/tst-chk1.c (do_prepare, do_test): Allow compilation as C++.
For now avoid some *printf tests in C++. Skip all testing
if __USE_FORTIFY_LEVEL is defined, but __extern_always_inline macro
is not.
* debug/tst-chk4.cc: New file.
* debug/tst-chk5.cc: New file.
* debug/tst-chk6.cc: New file.
* debug/tst-lfschk4.cc: New file.
* debug/tst-lfschk5.cc: New file.
* debug/tst-lfschk6.cc: New file.
* include/wchar.h (__vfwprintf_chk, __vswprintf_chk): Avoid
prototypes in C++.
* include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
__vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
__vfprintf_chk, __fgets_unlocked_chk, __fgets_chk): Likewise.
2007-09-13 Ulrich Drepper <drepper@redhat.com>
* po/cs.po: Update from translation team.
2007-09-11 Roland McGrath <roland@redhat.com>
* posix/Makefile ($(objpfx)getconf.speclist): Make it empty if cross
compiling.
2007-09-07 Samuel Thibault <samuel.thibault@ens-lyon.org>
* sysdeps/mach/hurd/bits/ioctls.h (TAB3): New macro.
2007-09-05 Roland McGrath <roland@redhat.com>
* manual/signal.texi (Signaling Another Process): Typo fix.
From Karl Berry <karl@freefriends.org>.
2007-08-29 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/check_pf.c (IFA_F_OPTIMISTIC): Define to
zero if not defined.
(make_request): Recognize optimistic addresses and treat them like
deprecated addresses.
Reported by Neil Horman <nhorman@redhat.com>.
2007-08-28 Ulrich Drepper <drepper@redhat.com>
* nscd/connections.c (send_ro_fd): Also transfer file size.
* nscd/nscd_helper.c (get_mapping): If nscd also transfers the
file size don't call fstat.
* nscd/nscd_helper.c (get_mapping): Avoid the pread call, just go
ahead and map the file. This should always be correct and we can
catch problems later.
2007-08-28 Jakub Jelinek <jakub@redhat.com>
* libio/bits/stdio2.h (__fread_chk, __fread_unlocked_chk): New
prototypes.
(__fread_alias, __fread_unlocked_alias): New aliases.
(fread): New extern inline.
(fread_unlocked): Likewise. Undef macro before definition of
the inline function.
* debug/Makefile (routines): Add fread_chk and fread_u_chk.
(CFLAGS-fread_chk.c, CFLAGS-fread_u_chk.c): Add.
* debug/Versions (libc): Export __fread_chk@@GLIBC_2.7
and __fread_unlocked_chk@@GLIBC_2.7.
* debug/fread_chk.c: New file.
* debug/fread_u_chk.c: New file.
* debug/tst-chk1.c (do_test): Add fread and fread_unlocked tests.
2007-08-27 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/syscalls.list
(personality): Change caller to EXTRA.
2007-08-25 Ulrich Drepper <drepper@redhat.com>
* iconvdata/iso-2022-kr.c (BODY): Fake initialization of array buf
to keep gcc quiet.
* iconvdata/iso-2022-cn.c (BODY): Likewise.
* locale/programs/ld-collate.c (collate_output): Avoid warning if
NDEBUG is defined.
* Makerules: Use -p option with mkdir.
* sunrpc/key_prot.c (xdr_unixcred): Work around gcc alias warning.
* nis/nis_xdr.c (_xdr_nis_server): Likewise.
(_xdr_directory_obj): Likewise.
(xdr_entry_obj): Likewise.
(xdr_group_obj): Likewise.
(xdr_link_obj): Likewise.
(xdr_table_obj): Likewise.
(_xdr_nis_result): Likewise.
(_xdr_ns_request): Likewise.
(_xdr_ib_request): Likewise.
(_xdr_nis_taglist): Likewise.
(xdr_cback_data): Likewise.
* nis/yp_xdr.c (xdr_ypmaplist): Likewise.
(xdr_ypresp_maplist): Likewise.
* stdio-common/Makefile: Avoid format string warning for tst-sprint.
* posix/regex_internal.h: Prevent some declarations and definitions
to be seen when used in tests.
* posix/tst-rfc3484.c (__idna_to_unicode_lzlz): Initialize *OUTPUT.
* posix/tst-rfc3484-2.c (__idna_to_unicode_lzlz): Likewise.
* debug/Makefile: Disable format checking when compiling tst-chk?.c.
* config.make.in (datarootdir): Add to shut up configure.
* sysdeps/x86_64/cacheinfo.c (handle_amd): Fix computation of
associativity for fully-associative caches.
* sysdeps/x86_64/cacheinfo.c (handle_amd): Handle L3 cache
requests. Fill on more associativity values for L2.
Patch mostly by Evandro Menezes.
2007-08-24 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/init-first.c
(_libc_vdso_platform_setup): Avoid using exported variable by using
alias.
* resolv/arpa/nameser.h (NS_OPT_DNSSEC_OK): Define.
* sysdeps/unix/sysv/linux/i386/syscalls.list: No reason to mark
fallocate64 as EXTRA. It is not referenced if the symbol isn't
defined.
2007-08-23 Ulrich Drepper <drepper@redhat.com>
* sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Correctly
align stack for call if pltexit is to be used.
[BZ #3924]
* sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Correctly
align for function call in case pltexit has to be called later.
* sysdeps/i386/dl-trampoline.S (_dl_runtime_resolve): Avoid
implicit atomic operation when storing function pointer.
(_dl_runtime_profile): Likewise.
2007-08-17 Jakub Jelinek <jakub@redhat.com>
* nis/nis_table.c (nis_list): Don't fail if __follow_path returned
NIS_NOTFOUND.
2007-08-21 Ulrich Drepper <drepper@redhat.com>
[BZ #4566]
* string/strtok.c: Fix typo in comment.
[BZ #4582]
* debug/segfault.c: Fix typos in comments.
[BZ #4588]
* stdio-common/tempnam.c: Fix comment, it is not checked that
TMPDIR points to a writable directory.
[BZ #4726]
* resolv/res_send.c (__libc_res_nsend): Initialize all of the
memory allocated for the name server address.
[BZ #4946]
* nscd/connections.c (handle_request): Using sendfile always
requires that mmap is used for the database.
Patch by Petr Baudis <pasky@suse.cz>.
[BZ #4905]
* nscd/hstcache.c (cache_addhst): When reloading an entry which
suddenly has two or more addresses, ignore it and remove the old
entry.
[BZ #4814]
* resolv/res_hconf.c: Prepare for compiling outside libc.
* nscd/res_hconf.c: New file.
* nscd/Makefile (nscd-modules): Add res_hconf. Add rules to build
the new file.
* nscd/gethstbynm2_r.c (NEED__RES_HCONF): Define.
* nscd/gethstbyad_r.c (NEED__RES_HCONF): Likewise.
* nscd/hstcache.c (cache_addhst): Minimal optimization.
[BZ #4925]
* debug/pcprofiledump.c: Turn on internationalization by calling
setlocale. Patch mostly by Benno Schulenberg.
[BZ #4936]
* iconv/gconv.c (__gconv): If flush was successful, clear rest of
the state.
* iconvdata/Makefile: Add rules to build and run bug-iconv5.
* iconvdata/bug-iconv5.c: New file.
2007-08-04 Carlos O'Donell <carlos@systemhalted.org>
[BZ #4896]
* elf/elf.h: Define R_PARISC_PLABEL21L, R_PARISC_PLABEL14R,
R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT, R_PARISC_TLS_GD21L,
R_PARISC_TLS_GD14R, R_PARISC_TLS_GDCALL, R_PARISC_TLS_LDM21L,
R_PARISC_TLS_LDM14R, R_PARISC_TLS_LDMCALL, R_PARISC_TLS_LDO21L,
R_PARISC_TLS_LDO14R, R_PARISC_TLS_DTPMOD32, R_PARISC_TLS_DTPMOD64,
R_PARISC_TLS_DTPOFF32, R_PARISC_TLS_DTPOFF64, R_PARISC_TLS_LE21L,
R_PARISC_TLS_LE14R, R_PARISC_TLS_IE21L, R_PARISC_TLS_IE14R,
R_PARISC_TLS_TPREL32, R_PARISC_TLS_TPREL64.
2007-08-21 Ulrich Drepper <drepper@redhat.com>
[BZ #4937]
* elf/do-lookup.h (do_lookup_x): Minimal improvement in hash
lookup loop. Suggested by John Reiser.
2007-08-21 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/alpha/sysdep.h: Include tls.h.
2007-08-20 Ulrich Drepper <drepper@redhat.com>
* csu/libc-start.c: Don't handle VDSO_SETUP here.
* sysdeps/unix/sysv/linux/init-first.c: Handle it here instead.
* sysdeps/unix/sysv/linux/x86_64/libc-start.c: Renamed to...
* sysdeps/unix/sysv/linux/x86_64/init-first.c: ...this. New file.
* sysdeps/unix/sysv/linux/powerpc/libc-start.c: Move VDSO_SETUP code
to...
* sysdeps/unix/sysv/linux/x86_64/init-first.c: ...here. New file.
2007-08-18 Ulrich Drepper <drepper@redhat.com>
* po/nl.po: Update from translation team.
2007-08-16 Andreas Jaeger <aj@suse.de>
* locale/localeinfo.h: Make _nl_category_name_idxs extern.
Reported by Peter Festner <peter.festner@ewetel.net>.
2007-08-17 Jakub Jelinek <jakub@redhat.com>
* login/tst-grantpt.c (test_einval): Add 3rd argument to open.
2007-08-16 Jakub Jelinek <jakub@redhat.com>
* elf/Makefile ($(objpfx)ld.so): Use readelf -s and awk instead of nm -u
to check for undefined symbols.
* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone):
If the syscall fails, set errno to the actual returned error number
rather than EINVAL.
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If
arguments are incorrect, set errno to EINVAL, if the syscall
fails, set errno to the actual returned error number.
* stdlib/bits/stdlib-ldbl.h (__strtold_internal): Remove.
* wcsmbs/bits/wchar-ldbl.h (__wcstold_internal): Remove.
* sysdeps/sparc/sparc32/sparcv9b/memcpy.S: Moved to...
* sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: ... here. New
file.
(ASI_PNF, ASI_BLK_P): Don't define.
* sysdeps/sparc/sparc32/sparcv9v/memcpy.S: Moved to...
* sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: ... here. New
file.
* sysdeps/sparc/sparc32/sparcv9v/memset.S: Moved to...
* sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: ... here. New
file.
2007-08-15 Jakub Jelinek <jakub@redhat.com>
* sysdeps/sparc/fpu/fraiseexcpt.c (__feraiseexcept): Fix raising
FE_UNDERFLOW on Niagara CPUs.
* sysdeps/sparc/fpu/feholdexcpt.c (feholdexcept): Clear all
exceptions.
2007-08-14 Jakub Jelinek <jakub@redhat.com>
* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): No
need to check GLRO(dl_hwcap) & HWCAP_SPARC_FLUSH on sparcv9.
(sparc_fixup_plt): Add do_flush argument instead of figuring whether
flush should be used or not inside of the function.
(elf_machine_fixup_plt, elf_machine_rela): Adjust caller.
* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone,
__thread_start): Use HIDDEN_JUMPTARGET.
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone,
__thread_start): Likewise.
* sysdeps/unix/sysv/linux/sparc/sysdep.h (JUMPTARGET): Define.
* sysdeps/ieee754/ldbl-64-128/strtold_l.c (__STRTOF): Declare.
Add libc_hidden_proto.
(STRTOF): Add libc_hidden_proto.
(___new_strtold_l, ___new_wcstold_l): New weak aliases.
(strtold_l, wcstold_l): Use them as second argument for
long_double_symbol.
2007-08-14 Ulrich Drepper <drepper@redhat.com>
* elf/dl-misc.c: Undo last change. The kernel won't allow it.
2007-08-13 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* stdlib/strtold_l.c: Include wchar.h if needed. Add libc_hidden_def.
2007-08-14 Ulrich Drepper <drepper@redhat.com>
* po/bg.po: New file. From the translation team.
2007-08-13 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PSELECT,
__ASSUME_PPOLL, __ASSUME_ATFCTS, __ASSUME_SET_ROBUST_LIST,
__ASSUME_UTIMENSAT, __ASSUME_FALLOCATE): Update per-arch conditions
when each feature was introduced.
* sysdeps/unix/sysv/linux/dl-vdso.c: Don't include dl-hash.h.
* sysdeps/unix/sysv/linux/dl-vdso.h: Don't include dl-hash.h if NDEBUG.
(CHECK_HASH): New macro.
(PREPARE_VERSION): Use it.
* sysdeps/unix/sysv/linux/pselect.c (__generic_pselect): Only provide
prototype if not __ASSUME_PSELECT.
* sysdeps/unix/sysv/linux/ppoll.c (__generic_ppoll): Only provide
prototype if not __ASSUME_PPOLL.
* sysdeps/unix/sysv/linux/dl-osinfo.h (ROUND): #undef after use.
* sysdeps/unix/clock_settime.c (freq, __pthread_clock_settime,
hp_timing_settime): Don't define or declare if HANDLED_CPUTIME
is defined.
2007-08-13 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/libc-start.c
(_libc_vdso_platform_setup): If vDSO is not available point
__vdso_gettimeofday to the vsyscall.
* sysdeps/unix/sysv/linux/x86_64/gettimeofday.S [SHARED]: Use
__vdso_gettimeofday instead of vsyscall.
2007-08-13 Jakub Jelinek <jakub@redhat.com>
* nscd/servicescache.c: Include kernel-features.h.
* nscd/gai.c: Likewise.
* sysdeps/unix/sysv/linux/statfs64.c: Likewise.
* sysdeps/unix/sysv/linux/fstatfs64.c: Likewise.
* sysdeps/unix/sysv/linux/fxstatat.c: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/mmap.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S: Likewise.
* sysdeps/unix/sysv/linux/xstatconv.c: Likewise.
* sysdeps/unix/sysv/linux/if_index.c: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: Likewise.
* sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
2007-08-12 Ulrich Drepper <drepper@redhat.com>
* elf/dl-dst.h: No need for _dl_dst_count, _dl_dst_substitute,
and _dl_get_origin defines anymore.
* sysdeps/unix/sysv/linux/clock_gettime.c (maybe_syscall_gettime_cpu):
Build fix for systems which might lack POSIX timer support.
* sysdeps/unix/sysv/linux/x86_64/libc-start.c
(_libc_vdso_platform_setup): Mangle function pointers before storing
them.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h (INLINE_VSYSCALL):
Demangle vdso pointer before use.
(INTERNAL_VSYSCALL): Likewise.
* elf/cache.c (primes): Mark as const.
Noted by Roland McGrath.
2007-08-01 Andreas Jaeger <aj@suse.de>
Jakub Jelinek <jakub@redhat.com>
* elf/ldconfig.c (opt_ignore_aux_cache): Add new option.
(options): Add option.
(parse_opt): Handle option.
(manual_link): Adjust process_file caller. Call implicit_soname.
(search_dir): Formatting. Use and populate auxiliary cache.
(main): Load and save auxiliary cache.
* elf/readlib.c (process_file): Add stat_buf argument. Pass struct
stat64 from fstat64 to caller.
(implicit_soname): New function.
* elf/readelflib.c (process_elf_file): If DT_SONAME is not present,
leave *soname as NULL.
* elf/cache.c: Include libgen.h.
(print_entry, print_cache, compare, save_cache, add_to_cache):
Formatting and cleanups.
(aux_cache_entry_id, aux_cache_entry, aux_cache_file_entry,
aux_cache_file): New structures.
(AUX_CACHEMAGIC): Define.
(primes): New array.
(aux_hash_size, aux_hash): New variables.
(aux_cache_entry_id_hash, nextprime, init_aux_cache,
search_aux_cache, insert_to_aux_cache, add_to_aux_cache,
load_aux_cache, save_aux_cache): New functions.
* sysdeps/generic/ldconfig.h (_PATH_LDCONFIG_AUX_CACHE): Define.
(init_aux_cache, search_aux_cache, add_to_aux_cache,
load_aux_cache, save_aux_cache, implicit_soname): New prototypes.
(process_file): Adjust prototype.
2007-08-12 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Include stddef.h
with __need_size_t.
2007-08-12 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/dl-vdso.c (_dl_vdso_vsym): Expect
r_found_version structure as second parameter.
* sysdeps/unix/sysv/linux/dl-vdso.h (PREPARE_VERSION): Define.
(_dl_vdso_vsym): Change type of second parameter accordingly.
* sysdeps/unix/sysv/linux/x86-64/libc-start.c
(_libc_vdso_platform_setup): Adjust.
* sysdeps/unix/sysv/linux/powerpc/libc-start.c
(_libc_vdso_platform_setup): Likewise.
* sysdeps/unix/sysv/linux/powerpc/dl-vdso.c: Move to...
* sysdeps/unix/sysv/linux/dl-vdso.c: ...here.
* sysdeps/unix/sysv/linux/powerpc/dl-vdso.h: Move to...
* sysdeps/unix/sysv/linux/dl-vdso.h: ...here.
* csu/libc-start.c: Pretty printing.
Use VDSO_SETUP if defined.
* sysdeps/unix/sysv/linux/powerpc/libc-start.c: Define VDSO_SETUP
and let generic code call into _libc_vdso_platform_setup.
* sysdeps/unix/sysv/linux/x86_64/libc-start.c: New file.
* sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: New file.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Pretty printing.
Define INLINE_VSYSCALL and INTERNAL_VSYSCALL.
* sysdeps/unix/sysv/linux/x86_64/Versions: Export __vdso_clock_gettime
for GLIBC_PRIVATE.
* sysdeps/unix/sysv/linux/x86_64/Makefile [subdir=elf]
(sysdep_rountines): Add dl-vdso.
* sysdeps/unix/sysv/linux/powerpc/Makefile: Use sysdep_routines instead
of routines.
* sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h: Add
attribute_hidden to __vdso_gettimeofday prototype.
2007-08-12 Roland McGrath <roland@redhat.com>
* manual/stdio.texi (Variable Arguments Output): Fix xref to gcc manual.
From: Karl Berry <karl@freefriends.org>.
2007-08-11 Ulrich Drepper <drepper@redhat.com>
* elf/dl-misc.c (_dl_sysdep_read_whole_file): We really don't need
an atime update for the files we read.
2007-08-10 Ulrich Drepper <drepper@redhat.com>
* shadow/lckpwdf.c (__lckpwdf): Use O_CLOEXEC if possible.
* nscd/connections.c: Use O_CLOEXEC if possible. Use mkostemp
instead of mkstemp.
* misc/Makefile (routines): Add mkostemp and mkostemp64.
* misc/Versions: Export mkostemp and mkostemp64 for GLIBC_2.7.
* misc/mkostemp.c: New file.
* misc/mkostemp64.c: New file.
* stdlib/stdlib.h: Declare the new functions.
* sysdeps/posix/tempname.c: Add new parameter which is added to
the flags for open. Remove __GT_BIGFILE handling.
* stdio-common/tempname.c: Likewise.
* include/stdio.h: Adjust __gen_tempname prototype.
Renumber __GT_* constants.
* libio/oldtmpfile.c: Adjust for __gen_tempname interface change.
* misc/mkdtemp.c: Likewise.
* misc/mkstemp.c: Likewise.
* misc/mkstemp64.c: Likewise.
* misc/mktemp.c: Likewise.
* stdio-common/tempnam.c: Likewise.
* stdio-common/tmpfile.c: Likewise.
* stdio-common/tmpfile64.c: Likewise.
* stdio-common/tmpnam.c: Likewise.
* stdio-common/tmpnam_r.c: Likewise.
2007-08-10 Roland McGrath <roland@frob.com>
* sysdeps/mach/hurd/bits/ioctls.h (NLDLY, TABDLY, BSDLY, VTDLY):
New macros.
(NLDELAY, CRDELAY, TBDELAY, BSDELAY, VTDELAY): Define to those.
Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
2007-08-10 Ulrich Drepper <drepper@redhat.com>
* nss/nss_files/files-XXX.c (internal_setent): Use O_CLOEXEC if
possible.
* nss/nss_files/files-alias.c (internal_setent): Likewise.
* nss/Makefile (libnss_files-routines): Add files-have_o_cloexec.
* nss/nss_files/files-have_o_cloexec.c: New file.
* sysdeps/unix/sysv/linux/shm_open.c (shm_open): Use O_CLOEXEC if
available.
2007-08-10 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ieee754/ldbl-128ibm/strtold_l.c (___new_strtold_l,
___new_wcstold_l): New weak aliases.
(strtold_l, wcstold_l): Use them as second argument for
long_double_symbol.
2007-08-09 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: Use correct
register in test for error.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_CLOEXEC): Define.
* sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_CLOEXEC): Likewise.
* po/sv.po: Update from translation team.
2007-08-06 Roland McGrath <roland@redhat.com>
* include/stdlib.h: Add libc_hidden_proto for strto*, __strto*_l.
Remove __strto*_l inlines.
* include/wchar.h: Add libc_hidden_proto for wcsto*, __wcsto*_l.
* stdlib/strtod.c: Add libc_hidden_def.
* stdlib/strtod_l.c: Likewise.
* stdlib/strtold.c [__LONG_DOUBLE_MATH_OPTIONAL]: Add libc_hidden_proto
for __new_strtold and __new_wcstold.
* sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Add libc_hidden_proto for
__STRTOF, STRTOF.
* stdlib/strtol.c: Add libc_hidden_def.
* stdlib/strtol_l.c: Likewise.
* sysdeps/wordsize-64/strtol.c: Add libc_hidden_ver for strtoll and
strtoq.
* scripts/data/localplt-powerpc-linux-gnu.data: New file.
* scripts/data/localplt-x86_64-linux-gnu.data: File renamed to ...
* scripts/data/localplt-generic.data: ... here.
* elf/Makefile (check-data): Get generic file if no other.
($(objpfx)check-localplt.out): Make target unconditional.
* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion):
Use ElfW(Nhdr).
2007-08-05 Ulrich Drepper <drepper@redhat.com>
* po/zh_CN.po: Updated translation from translation team.
2007-08-05 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket):
Don't use CGOTSETUP and CGOTRESTORE macros.
2007-08-04 Roland McGrath <roland@redhat.com>
* posix/Makefile ($(objpfx)getconf.speclist): Fix typo.
2007-08-04 Jakub Jelinek <jakub@redhat.com>
* io/bits/fcntl2.h (open, open64, openat, openat64): Add
__extension__ around the whole statement expression.
2007-08-04 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/opendir.c (__alloc_dir): Correct order of DIR
elements during initialization.
* po/pl.po: Updated translation from translation team.
* po/tr.po: Likewise.
* po/nl.po: Likewise.
2007-08-03 Ulrich Drepper <drepper@redhat.com>
* rt/aio.h: Add __nonnull attributes.
2007-08-03 Jakub Jelinek <jakub@redhat.com>
* stdlib/strtod_l.c (____STRTOF_INTERNAL): Properly handle -0.
* stdlib/Makefile (tests): Add tst-strtod5.
(tst-strtod5-ENV): New.
* stdlib/tst-strtod5.c: New file.
* intl/dcigettext.c (_nl_find_msg): Free encoding if __gconv_open
failed.
* intl/finddomain.c (_nl_find_domain): Free normalized_codeset
on failure.
* elf/dl-load.c (decompose_rpath): Free copy if result couldn't be
allocated.
2007-08-03 Jakub Jelinek <jakub@redhat.com>
* rt/mqueue.h (mq_timedreceive, mq_timedsend): Fix nonnull argument
numbers.
2007-08-02 Ulrich Drepper <drepper@redhat.com>
* io/Makefile (aux): Add have_o_cloexec.
* include/fcntl.h: Declare __have_o_cloexec.
* io/have_o_cloexec.c: New file.
* sysdeps/unix/opendir.c (__opendir): Use O_CLOEXEC is available.
(__alloc_dir): If O_CLOEXEC has been used, don't duplicate the
fcntl call if not necessary.
* login/utmp_file.c (setutent_file): Use __have_o_cloexec instead
of local variable.
* sysdeps/unix/opendir.c (__alloc_dir): Don't initialize ->data.
Avoid memset, add explicit initialization.
* sysdeps/unix/dirstream.h (struct __dirstream): Move data elemtn
to the end and change into zero-sized array.
Move lock member to fill a hole on 64-bit platforms.
* stdlib/stdlib.h: Remove __strto*_internal prototypes and strto*
inline functions.
* include/stdlib.h: Add __strto*_internal prototypes here.
* wcsmbs/wchar.h: Remove __wcsto*_internal prototypes and wcsto*
inline functions.
* include/wchar.h: Add __wcsto*_internal prototypes.
* sysdeps/generic/inttypes.h: No need to protect the declaration
of the __strto*_internal and __wcsto*_internal members here.
* rt/mqueue.h: Change const to __const and add nonnull attributes.
2007-08-02 Roland McGrath <roland@redhat.com>
* posix/Makefile ($(inst_libexecdir)/getconf): Make hard links to
$(inst_bindir)/getconf if possible.
* posix/Makefile ($(objpfx)getconf.speclist): New target.
(generated): Add it.
($(inst_libexecdir)/getconf): Use it.
2007-08-01 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Using
/proc is faster and sufficient. /sys is still needed for
__get_nprocs_conf.
2007-08-01 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate): Add fallocate
syscall as __fallocate64.
* sysdeps/unix/sysv/linux/i386/posix_fallocate.c: New file.
* sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: New file.
2007-07-30 Jakub Jelinek <jakub@redhat.com>
* stdlib/tst-strtod2.c (do_test): Use %tu in fmt string for ptrdiff_t
value.
* stdio-common/tst-fmemopen2.c (do_test): Avoid fmt string warning
if off_t is different rank from size_t.
* sysdeps/generic/unwind-dw2.c (extract_cie_info, execute_cfa_program,
uw_frame_state_for): Avoid type punning warnings.
* sysdeps/generic/unwind-dw2-fde-glibc.c
(_Unwind_IteratePhdrCallback): Likewise.
* sysdeps/generic/unwind-dw2-fde.c (_Unwind_Find_FDE): Likewise.
(binary_search_single_encoding_fdes, binary_search_mixed_encoding_fdes,
get_cie_encoding, linear_search_fdes): Don't mix char and unsigned char
pointers.
2007-07-31 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs_conf): Count
total processors using sysfs.
(__get_nprocs): Use sysfs to determine which processors are online.
2007-07-31 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/posix_fallocate.c (posix_fallocate): Fix
syscall arguments count.
* stdio-common/tfformat.c (sprint_doubles): Add 12 new tests.
2007-07-30 Roland McGrath <roland@redhat.com>
* manual/libc.texinfo: Update copyrights, formatting magic, and
@dircategory. From Karl Berry <karl@freefriends.org>.
2007-07-29 Ulrich Drepper <drepper@redhat.com>
[BZ #4860]
* io/Makefile (headers): Add bits/fcntl2.h.
* sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO_S): Optimize
using gcc builtin.
(__CPU_EQUAL_S): Likewise.
* posix/Makefile (routines): Add sched_cpualloc and sched_cpufree.
(tests): Add tst-cpuset.
* posix/sched_cpualloc.c: New file.
* posix/sched_cpufree.c: New file.
* posix/tst-cpuset.c: New file.
* posix/Versions: Export __sched_cpualloc and __sched_cpufree for
GLIBC_2.7.
* sysdeps/unix/sysv/linux/bits/sched.h: Define __CPU_*_S macros.
* posix/sched.h: Define old CPU_* macros in temers of __CPU_*_S
macros. Define CPU_*_S macros.
2007-07-28 Ulrich Drepper <drepper@redhat.com>
* posix/getconf.c (vars): Add missing _SC_LEVEL4_CACHE_LINESIZE
entry.
[BZ #4858]
* stdio-common/printf_fp.c (___printf_fp): Fix special case of
#.0g and value rounded to 1.0.
* stdio-common/tfformat.c (sprint_doubles): Add two new tests.
2007-07-26 Jakub Jelinek <jakub@redhat.com>
* locale/programs/ld-monetary.c (monetary_finish): Avoid range check
for int_frac_digits and frac_digits.
* login/logout.c (logout): Avoid aliasing violation.
* login/logwtmp.c (logwtmp): Likewise.
* libio/genops.c (_IO_un_link): Avoid aliasing violation.
* nscd/selinux.c (preserve_capabilities): Initialize new_caps
to avoid warning.
* iconv/gconv_open.c (__gconv_open): Initialize ptr to avoid
warning.
* nis/nis_subr.c (nis_getnames): Initialize saveptr to avoid
warning.
* resolv/inet_ntop.c (inet_ntop6): Initialize best.len and cur.len
to avoid warnings.
* nss/nsswitch.c (__nss_lookup_function): Don't cast &ni->known to
void **.
* nss/nsswitch.h (service_user): Use void * type for KNOWN field.
* nss/nss_files/files-hosts.c (LINE_PARSER): Cast host_addr to
char * to avoid warning.
* nis/nss_nis/nis-hosts.c (LINE_PARSER): Likewise.
* timezone/Makefile (CFLAGS-zdump.c): Add -fwrapv.
* locale/programs/ld-ctype.c (ctype_finish, set_class_defaults,
allocate_arrays): Cast second argument to charmap_find_symbol
to char * to avoid warnings.
* locale/programs/repertoire.c (repertoire_new_char): Change
from_nr, to_nr and cnt to unsigned long, adjust printf format
string.
* locale/programs/ld-collate.c (insert_value, handle_ellipsis):
Cast second argument to new_element to char * to avoid warnings.
* locale/weightwc.h (findidx): Cast &extra[-i] to const int32_t *.
* intl/gettextP.h (struct loaded_domain): Change plural to const
struct expression *.
* intl/plural-eval.c (plural_eval): Change first argument to
const struct expression *.
* intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Change first
argument to const struct expression **.
* intl/plural-exp.h (EXTRACT_PLURAL_EXPRESSION, plural_eval): Adjust
prototypes.
* intl/loadmsgcat (_nl_unload_domain): Cast away const
in call to __gettext_free_exp.
* posix/fnmatch.c (fnmatch): Rearrange code to avoid maybe
unitialized wstring/wpattern var warnings.
* posix/runtests.c (struct a_test): Make data field const char *.
* stdio-common/tst-sprintf2.c (main): Don't declere u, v and buf
vars if not LDBL_MANT_DIG >= 106.
* stdio-common/Makefile (CFLAGS-vfwprintf.c): Add -Wno-unitialized.
* stdio-common/vfprintf.c (vfprintf): Cast first arugment to
__find_specmb to avoid warning.
* rt/tst-mqueue1.c (do_one_test): Add casts to avoid warnings.
* debug/test-strcpy_chk.c (do_tests, do_random_tests): Add casts
to avoid warnings.
* sysdeps/ieee754/ldbl-96/s_roundl.c (huge): Add L suffix to
initializer.
* sysdeps/unix/clock_gettime.c (clock_gettime): Only define
tv var when it will be actually used.
* sunrpc/rpc_cmsg.c (xdr_callmsg): Cast IXDR_PUT_* to void
to avoid warnings.
* iconvdata/gbk.c (BODY): Make buf and cp char instead of unsigned
char array resp. pointer.
* iconvdata/iso-2022-kr.c (BODY): Make buf unsigned char instead of
char array.
* iconvdata/cns11643.h (cns11643_to_ucs4): Change first argument
to const unsigned char **.
(ucs4_to_cns11643): Change second argument to unsigned char *.
* iconvdata/euc-tw.c (BODY): Change endp type to
const unsigned char *.
* iconvdata/iso-ir-165.h (ucs4_to_isoir165): Change second argument
to unsigned char *.
* iconvdata/ibm1008_420.c (LOOP_NEED_FLAGS): Don't define.
* iconvdata/iso-2022-cn.c (BODY): Change buf to unsigned char array.
* iconvdata/iso-2022-cn-ext.c (BODY): Change buf, tmpbuf, tmp
types to unsigned char pointers/arrays instead of char.
* iconvdata/jis0201.h (ucs4_to_jisx0201): Change second argument
to unsigned char *.
* iconvdata/jis0208.h (ucs4_to_jisx0208): Likewise.
* iconvdata/jis0212.h: Include assert.h.
(ucs4_to_jisx0212): Change second argument to unsigned char *.
assert that if cp[0] is not '\0', cp[1] is not '\0' either instead
of trying to handle that.
* iconvdata/euc-kr.c (euckr_from_ucs4): Initialize also cp[1] to
shut up a warning.
* iconvdata/euc-jp-ms.c (from_ucs4_lat1, from_ucs4_greek,
from_ucs4_cjk, from_ucs4_cjkcpt, from_ucs4_extra): Change type to
two dimensional const unsigned char arrays.
(BODY): Cast "" to (const unsigned char *) for assignment to cp.
Initialize endp to inptr to shut up a warning.
2007-07-20 Jakub Jelinek <jakub@redhat.com>
[BZ #4772]
* time/strptime_l.c (__strptime_internal): Silently ignore
strftime modifiers and field width in recursive calls.
* include/time.h (enum ptime_locale_status): Remove.
(__strptime_internal): Remove decided and era_cnt arguments,
add statep argument.
* time/strptime_l.c (__strptime_internal): Remove decided
and era_cnt arguments, add statep argument. Don't recompute
any fields in recursive calls, only update caller's tm
and state, if recursive call fails, don't change tm nor
any state.
(get_alt_number): Adjust.
(recursive): Adjust caller.
(strptime): Likewise.
* time/strptime.c (strptime): Likewise.
2007-07-19 Jakub Jelinek <jakub@redhat.com>
* iconv/gconv_int.h (__GCONV_NULCONV): New internal only error code.
* iconv/gconv_cache.c (__gconv_lookup_cache): Return __GCONV_NULCONV
if from and to charsets are the same.
* iconv/gconv_db.c (__gconv_find_transform): Likewise.
* intl/dcigettext.c (_nl_find_msg): Return NULL even if __gconv_open
returns __GCONV_NOCONV, but not for __GCONV_NULCONV.
2007-07-17 Jakub Jelinek <jakub@redhat.com>
* wcsmbs/wchar.h: Only define wint_t if __need_wint_t.
Don't define wint_t when __need_mbstate_t unless it
is necessary.
(__mbstate_t): Use __WINT_TYPE__ rather than wint_t
in the typedef if possible.
* wctype/wctype.h (wint_t): Define by including
wchar.h with __need_wint_t instead of including stddef.h
with __need_wint_t and as fallback definining it ourselves.
* iconv/gconv.h (__need_wint_t): Define before including
wchar.h.
* sysdeps/gnu/_G_config.h: Don't include gconv.h if not _LIBC
or _GLIBCPP_USE_WCHAR_T.
(__need_wchar_t): Don't define
if not _LIBC or _GLIBCPP_USE_WCHAR_T.
(__need_wint_t): Don't define before including stddef.h,
define before including wchar.h only if _LIBC or
_GLIBCPP_USE_WCHAR_T.
(_G_iconv_t): Don't define if not _LIBC or _GLIBCPP_USE_WCHAR_T.
* sysdeps/mach/hurd/_G_config.h: Likewise.
* sysdeps/generic/_G_config.h: Likewise.
* libio/libio.h (__wunderflow, __wuflow, __woverflow): Only
prototype if _LIBC or _GLIBCPP_USE_WCHAR_T.
(_IO_getwc_unlocked, _IO_putwc_unlocked): Only define
if _LIBC or _GLIBCPP_USE_WCHAR_T.
2007-07-28 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/posix_fallocate64.c: Undefine
__posix_fallocate64_l64 before alias handling.
* sysdeps/unix/sysv/linux/posix_fallocate.c: New file.
* sysdeps/unix/sysv/linux/posix_fallocate64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate64.c: New file.
* io/tst-posix_fallocate.c: Include <fcntl.h>.
2007-07-23 Jakub Jelinek <jakub@redhat.com>
* locale/programs/ld-collate.c (atwc): New variable.
(add_to_tablewc): New toplevel function, moved from collate_output.
(collate_output): Remove add_to_tablewc nested function.
* iconv/iconvconfig.c (hash_table, hash_size): New toplevel vars.
(name_insert): New function.
(write_output): Remove hash_table and hash_size vars and name_insert
nested function.
2007-07-24 Roland McGrath <roland@redhat.com>
* Makerules (install-others-programs-nosubdir): New target.
(install-no-libc.a-nosubdir): Depend on it.
* iconv/Makefile (install-others-programs): Set this instead of
install-others.
* login/Makefile (install-others-programs): Likewise.
* posix/Makefile (install-others-programs): Likewise.
* Makerules (install-no-libc.a-nosubdir): Clean up conditional
dependencies.
2007-07-23 Ulrich Drepper <drepper@redhat.com>
* io/Makefile (tests): Add tst-posix_fallocate.
* io/tst-posix_fallocate.c: New file.
* sysdeps/unix/sysv/linux/kernel-features.h: Define
__ASSUME_FALLOCATE.
2007-07-22 Roland McGrath <roland@frob.com>
* hurd/getdport.c: Add missing copyright year update.
* sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU] (O_CLOEXEC): New macro.
* hurd/port2fd.c (_hurd_port2fd): Implement O_CLOEXEC.
2007-07-22 Ulrich Drepper <drepper@redhat.com>
* login/utmp_file.c (setutent_file): Use O_CLOEXEC if possible.
* libio/fileops.c (_IO_new_file_fopen): Recognize 'e' flag and set
O_CLOEXEC is needed.
* nis/nss_compat/compat-grp.c: Use 'e' flag when opening file.
Avoid additional fcntl to set O_CLOEXEC if not needed.
* nis/nss_compat/compat-initgroups.c: Likewise.
* nis/nss_compat/compat-pwd.c: Likewise.
* nis/nss_compat/compat-spwd.c: Likewise.
2007-07-21 Samuel Thibault <samuel.thibault@ens-lyon.org>
[BZ #3665]
* manual/errno.texi: Change ECANCELED value to 119.
[BZ #4610]
* mach/lock-intern.h: Include <sys/cdefs.h>.
[BZ #4178]
* sysdeps/mach/hurd/sigaction.c (__sigaction): Check ACT != NULL before
reading A.
[BZ #4126]
* sysdeps/mach/hurd/sigsuspend.c (sigsuspend_not_cancel): Define alias
to __sigsuspend.
* sysdeps/mach/i386/sysdep.h: Include <dl-sysdep.h> and <tls.h>.
2006-06-13 Thomas Schwinge <tschwinge@gnu.org>
* sysdeps/mach/hurd/tls.h: Change `ASSEMBLER' conditional to
`__ASSEMBLER__'.
* sysdeps/mach/hurd/i386/tls.h: Likewise.
2007-07-21 Ulrich Drepper <drepper@redhat.com>
* nscd/nscd_helper.c (get_mapping): Use MSG_CMSG_CLOEXEC for
descriptor received from nscd.
* sysdeps/unix/sysv/linux/bits/socket.h: Define MSG_CMSG_CLOEXEC.
* sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define O_CLOEXEC.
* sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
2007-07-20 Jakub Jelinek <jakub@redhat.com>
[BZ #4816]
* manual/signal.texi (Non-atomic Example): Make memory var volatile.
[BZ #4813]
* login/forkpty.c (forkpty): Close master and slave fds on
fork failure. Patch by
Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>.
2007-07-18 Jakub Jelinek <jakub@redhat.com>
* include/features.h (__USE_ISOC95): New define.
* wcsmbs/wchar.h (fwprintf, fwscanf, wprintf, wscanf, swprintf,
swscanf, vfwprintf, vwprintf, vswprintf, fwide): Define even
for -std=iso9899:199409.
* CONFORMANCE: Remove comments about unsupported AMD1.
2007-07-17 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ia64/sched_cpucount.c: New file.
* sysdeps/powerpc/sched_cpucount.c: New file.
* sysdeps/unix/sysv/linux/bits/sched.h (__sched_cpucount): Add
__BEGIN_DECLS/__END_DECLS around the prototype.
* bits/sched.h (__sched_cpucount): Likewise. Make second argument
pointer to const cpu_set_t.
* bits/types.h: Don't include stddef.h, don't define __need_size_t.
* signal/signal.h <__USE_BSD || __USE_XOPEN_EXTENDED>: Define
__need_size_t and include stddef.h.
* sysvipc/sys/msg.h: Likewise.
* posix/sched.h: Likewise.
* hurd/hurd/signal.h (__need_size_t): Define.
* CONFORMANCE: ctype.h and wctype.h no longer define size_t,
neither does signal.h in pedantic ISO C namespaces. stdio.h
no longer defines wint_t or wchar_t.
* libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): New function.
* debug/vfwprintf_chk.c (__vfwprintf_chk): Use
_IO_acquire_lock_clear_flags2 instead of _IO_acquire_lock.
* debug/vprintf_chk.c (__vprintf_chk): Likewise.
* debug/vwprintf_chk.c (__vwprintf_chk): Likewise.
* debug/vfprintf_chk.c (__vfprintf_chk): Likewise.
* debug/fwprintf_chk.c (__fwprintf_chk): Likewise.
* debug/printf_chk.c (__printf_chk): Likewise.
* debug/fprintf_chk.c (__fprintf_chk): Likewise.
* debug/wprintf_chk.c (__wprintf_chk): Likewise.
* sysdeps/pthread/bits/stdio-lock.h (_IO_acquire_lock_clear_flags2):
Define.
* bits/confname.h (_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS): Define.
* posix/getconf.c (vars): Add POSIX_V6_WIDTH_RESTRICTED_ENVS.
2007-07-16 Jakub Jelinek <jakub@redhat.com>
[BZ #4792]
* stdlib/stdlib.h (realloc): Remove __attribute_malloc__.
* malloc/malloc.h (realloc): Likewise.
* libio/iopopen.c (_IO_new_proc_open): Don't close child_std_end
if one of proc_file_chain streams has that fileno.
* stdio-common/Makefile (tests): Add tst-popen2.
* stdio-common/tst-popen2.c: New test.
2007-07-14 Jakub Jelinek <jakub@redhat.com>
* elf/ldconfig.c: Allow GPLv2 or any later version.
* elf/readlib.c: Likewise.
* elf/chroot_canon.c: Likewise.
* elf/cache.c: Likewise.
* nscd/mem.c: Likewise.
* nscd/getpwuid_r.c: Likewise.
* nscd/grpcache.c: Likewise.
* nscd/aicache.c: Likewise.
* nscd/getsrvbynm_r.c: Likewise.
* nscd/nscd.c: Likewise.
* nscd/servicescache.c: Likewise.
* nscd/getsrvbypt_r.c: Likewise.
* nscd/initgrcache.c: Likewise.
* nscd/gethstbyad_r.c: Likewise.
* nscd/gethstbynm2_r.c: Likewise.
* nscd/getgrnam_r.c: Likewise.
* nscd/nscd_setup_thread.c: Likewise.
* nscd/getpwnam_r.c: Likewise.
* nscd/gai.c: Likewise.
* nscd/connections.c: Likewise.
* nscd/dbg_log.c: Likewise.
* nscd/cache.c: Likewise.
* nscd/hstcache.c: Likewise.
* nscd/nscd_conf.c: Likewise.
* nscd/getgrgid_r.c: Likewise.
* nscd/pwdcache.c: Likewise.
* catgets/gencat.c: Likewise.
* locale/programs/linereader.h: Likewise.
* locale/programs/locarchive.c: Likewise.
* locale/programs/ld-paper.c: Likewise.
* locale/programs/locfile-kw.h: Likewise.
* locale/programs/ld-address.c: Likewise.
* locale/programs/xmalloc.c: Likewise.
* locale/programs/ld-time.c: Likewise.
* locale/programs/localedef.c: Likewise.
* locale/programs/simple-hash.c: Likewise.
* locale/programs/xstrdup.c: Likewise.
* locale/programs/ld-numeric.c: Likewise.
* locale/programs/locfile-kw.gperf: Likewise.
* locale/programs/ld-collate.c: Likewise.
* locale/programs/charmap-kw.gperf: Likewise.
* locale/programs/charmap.h: Likewise.
* locale/programs/charmap-kw.h: Likewise.
* locale/programs/config.h: Likewise.
* locale/programs/locfile.c: Likewise.
* locale/programs/ld-ctype.c: Likewise.
* locale/programs/charmap.c: Likewise.
* locale/programs/ld-messages.c: Likewise.
* locale/programs/repertoire.h: Likewise.
* locale/programs/locale.c: Likewise.
* locale/programs/ld-name.c: Likewise.
* locale/programs/linereader.c: Likewise.
* locale/programs/locfile.h: Likewise.
* locale/programs/3level.h: Likewise.
* locale/programs/ld-monetary.c: Likewise.
* locale/programs/ld-measurement.c: Likewise.
* locale/programs/charmap-dir.c: Likewise.
* locale/programs/ld-identification.c: Likewise.
* locale/programs/localedef.h: Likewise.
* locale/programs/charmap-dir.h: Likewise.
* locale/programs/repertoire.c: Likewise.
* locale/programs/simple-hash.h: Likewise.
* locale/programs/ld-telephone.c: Likewise.
* locale/programs/locale-spec.c: Likewise.
* locale/programs/locfile-token.h: Likewise.
* posix/getconf.c: Likewise.
* iconv/dummy-repertoire.c: Likewise.
* iconv/iconv_charmap.c: Likewise.
* iconv/iconvconfig.c: Likewise.
* iconv/iconv_prog.c: Likewise.
* malloc/memusagestat.c: Likewise.
* sysdeps/unix/sysv/linux/nscd_setup_thread.c: Likewise.
2007-07-06 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/sh/bsd-setjmp.S (setjmp): Use correct argument registers.
* sysdeps/sh/bsd-_setjmp.S (_setjmp): Likewise.
* sysdeps/unix/sysv/linux/sh/clone.S (__clone): Do correct sanity
check for the first argument.
2007-07-12 Jakub Jelinek <jakub@redhat.com>
[BZ #4775]
* math/tgmath.h (__tgmath_real_type_sub): Formatting.
(__tgmath_real_type): Fix if expr is const int or other const
qualified integral type.
(__TGMATH_UNARY_REAL_ONLY): Rewritten to avoid using statement
expressions and handle const qualified arguments.
(__TGMATH_BINARY_FIRST_REAL_ONLY, __TGMATH_UNARY_REAL_IMAG,
__TGMATH_UNARY_REAL_IMAG_RET_REAL): Likewise.
(__TGMATH_UNARY_REAL_RET_ONLY): Rewritten to avoid using
statement expressions.
(__TGMATH_BINARY_REAL_ONLY, __TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY,
__TGMATH_TERNARY_REAL_ONLY, __TGMATH_BINARY_REAL_IMAG): Likewise.
(__TGMATH_UNARY_IMAG): Define.
(conj, cproj): Use __TGMATH_UNARY_IMAG macro.
* math/Makefile (tests): Add test-tgmath2.
(CFLAGS-test-tgmath2.c): Add.
* math/test-tgmath.c (fy, dy, ly, fz, dz, lz, count_cdouble,
count_cfloat, count_cldouble): New variables.
(NCCALLS): Define.
(main): Check number of complex calls as well.
(F(compile_test)): Add complex tests and tests with const qualified
arguments.
(y, z, ccount): Define.
(F(cacos), F(casin), F(catan), F(ccos), F(csin), F(ctan), F(cacosh),
F(casinh), F(catanh), F(ccosh), F(csinh), F(ctanh), F(cexp), F(clog),
F(csqrt), F(cpow), F(cabs), F(carg), F(creal), F(cimag), F(conj),
F(cproj)): New functions.
* math/test-tgmath2.c: New test.
2007-07-11 Jakub Jelinek <jakub@redhat.com>
[BZ #4776]
* elf/dl-load.c (_dl_rtld_di_serinfo): Output / in LD_LIBRARY_PATH,
RPATH etc. as "/" rather than "", don't segfault on empty paths,
instead output ".".
* dlfcn/Makefile (distribute): Add glreflib3.c.
(module-names): Add glreflib3.
($(objpfx)tst-dlinfo.out): Depend on glreflib3.so rather than
glreflib1.so.
(LDFLAGS_glreflib3.so): New.
* dlfcn/tst-dlinfo.c (do_test): Load glreflib3.so instead of
glreflib1.so.
* dlfcn/glreflib3.c: New file.
* intl/finddomain.c (_nl_find_domain): If _nl_explode_name
returned -1, return NULL.
* intl/explodename.c (_nl_explode_name): Return -1 if
_nl_normalize_codeset failed.
2007-07-07 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power6/memset.S: Update comments.
Specify .machine power6 to get ISA-V2.0 branch hints. Unroll loops
and avoid branch misspredicts for > 31 bytes memset case.
* sysdeps/powerpc/powerpc64/power6/memset.S: Likewise.
Remove toc ref to __cache_line_size.
* sysdeps/powerpc/powerpc32/power4/memcmp.S: Specify .machine power4
to get ISA-V2.0 branch hints.
* sysdeps/powerpc/powerpc32/power4/memcpy.S: Likewise
* sysdeps/powerpc/powerpc32/power4/memset.S: Likewise
* sysdeps/powerpc/powerpc32/power6/memcpy.S: Likewise.
* sysdeps/powerpc/powerpc64/power4/memcmp.S: Likewise.
* sysdeps/powerpc/powerpc64/power4/memcpy.S: Likewise.
* sysdeps/powerpc/powerpc64/power4/memset.S: Likewise.
Remove toc ref to __cache_line_size.
* sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S:
Include math_ldbl_opt.h.
2007-07-10 Ulrich Drepper <drepper@redhat.com>
[BZ #4773]
* time/strptime_l.c (__strptime_internal): Implement greedy
matching of weekday and month names.
2007-07-09 Roland McGrath <roland@redhat.com>
* elf/elf.h (NT_GNU_ABI_TAG): New macro.
(ELF_NOTE_ABI): Use it.
(NT_GNU_HWCAP, NT_GNU_BUILD_ID): New macros.
2007-07-09 Ulrich Drepper <drepper@redhat.com>
* sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new entries.
* sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
2007-07-07 Ulrich Drepper <drepper@redhat.com>
[BZ #4745]
* stdio-common/vfscanf.c (_IO_vfscanf): Add additional test for EOF
in loop to look for conversion specifier to avoid testing of
wrong errno value.
* stdio-common/Makefile (tests): Add bug18, bug18a, bug19, bug19a.
* stdio-common/bug18.c: New file.
* stdio-common/bug18a.c: New file.
* stdio-common/bug19.c: New file.
* stdio-common/bug19a.c: New file.
2007-07-05 Mike Frysinger <vapier@gentoo.org>
* Makeconfig ($(common-objpfx)gnu/lib-names.stmp): Use LC_ALL=C when
running awk script.
2007-07-01 Jakub Jelinek <jakub@redhat.com>
* elf/dl-sysdep.c (_dl_important_hwcaps): Add integer overflow check.
* elf/dl-minimal.c (__libc_memalign): Likewise. Handle malloc (0).
Return NULL if mmap failed instead of asserting it does not.
(calloc): Check for integer overflow.
* elf/dl-minimal.c (__strtoul_internal): Fix parsing of numbers bigger
than LONG_MAX / 10.
2007-07-03 Jakub Jelinek <jakub@redhat.com>
[BZ #4702]
* nis/nss-default.c: Include errno.h.
(init): Preserve errno.
2007-07-02 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/socket.h (PF_UNIX): Update comment.
2007-06-30 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/socket.h: Add PF_RXRPC and AF_RXRPC.
2007-06-29 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/bits/socket.h: Add PF_IUCV and AF_IUCV.
2007-06-29 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/dl-procinfo.c: New file.
* sysdeps/s390/dl-procinfo.h: New file.
* sysdeps/unix/sysv/linux/s390/dl-procinfo.h: New file.
2007-06-29 Jakub Jelinek <jakub@redhat.com>
* elf/dl-load.c (open_verify): Find .note.ABI-tag notes even
in PT_NOTE segments with multiple notes.
* elf/readelflib.c (process_elf_file): Likewise.
2007-06-22 Ulrich Drepper <drepper@redhat.com>
* nis/nis_domain_of.c (__nis_domain_of): Make the code a bit more
ISO C compliant.
2007-06-19 Ulrich Drepper <drepper@redhat.com>
* elf/dl-close.c (free_mem): Free _dl_scope_free_list.
2007-06-13 Jakub Jelinek <jakub@redhat.com>
* include/link.h: Don't include rtld-lowlevel.h.
(struct link_map): Remove l_scope_lock.
* sysdeps/generic/ldsodefs.h: Don't include rtld-lowlevel.h.
(_dl_scope_free_list): New field (variable) in _rtld_global.
(DL_LOOKUP_SCOPE_LOCK): Remove.
(_dl_scope_free): New prototype.
* elf/dl-runtime.c (_dl_fixup): Don't use __rtld_mrlock_*lock.
Don't pass DL_LOOKUP_SCOPE_LOCK to _dl_lookup_symbol_x.
(_dl_profile_fixup): Likewise.
* elf/dl-sym.c (do_sym): Likewise. Use wrapped _dl_lookup_symbol_x
whenever !RTLD_SINGLE_THREAD_P, use THREAD_GSCOPE_SET_FLAG and
THREAD_GSCOPE_RESET_FLAG around it.
* elf/dl-close.c (_dl_close_worker): Don't use
__rtld_mrlock_{change,done}. Call _dl_scope_free on the old
scope. Make sure THREAD_GSCOPE_WAIT () happens if any old
scopes were queued or if l_scope_mem has been abandoned.
* elf/dl-open.c (_dl_scope_free): New function.
(dl_open_worker): Use it. Don't use __rtld_mrlock_{change,done}.
* elf/dl-support.c (_dl_scope_free_list): New variable.
* elf/dl-lookup.c (add_dependency): Remove flags argument.
Remove DL_LOOKUP_SCOPE_LOCK handling.
(_dl_lookup_symbol_x): Adjust caller. Remove DL_LOOKUP_SCOPE_LOCK
handling.
* elf/dl-object.c (_dl_new_object): Don't use
__rtld_mrlock_initialize.
2007-06-19 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/ldsodefs.h (rtld_global): Reorder some elements
to fill in holes
(rtld_global_ro): Likewise.
2007-06-18 Jakub Jelinek <jakub@redhat.com>
* elf/dl-addr.c (_dl_addr): Skip PT_LOAD checking if l_contiguous.
Move PT_LOAD checking to...
(_dl_addr_inside_object): ... here, new function.
* elf/dl-sym.c (do_sym): If not l_contiguous,
call _dl_addr_inside_object.
* elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise.
* dlfcn/dlinfo.c (dlinfo_doit): Likewise.
* elf/dl-open.c (dl_open_worker): Likewise.
(_dl_addr_inside_object): New function if IS_IN_rtld.
* elf/dl-load.c (_dl_map_object_from_fd): Set l_contiguous if no
holes are present or are PROT_NONE protected.
* include/link.h (struct link_map): Add l_contiguous field.
* sysdeps/generic/ldsodefs.h (_dl_addr_inside_object): New prototype.
2007-06-18 Jakub Jelinek <jakub@redhat.com>
Tomas Janousek <tjanouse@redhat.com>
Ulrich Drepper <drepper@redhat.com>
[BZ #4647]
* resolv/res_send.c (send_dg): Remove socket_pf. Use ipv6_unavail
member in __res_state, only convaddr4to6 if nssocks[ns] is a PF_INET6
socket.
* resolv/resolv.h (__res_state): Add ipv6_unavail member. Make
unused member a bitmap.
* resolv/res_init.c (__res_vinit): Reset ipv6_unavail if IPv6
servers are configured.
2007-06-18 Jakub Jelinek <jakub@redhat.com>
* elf/rtld.c (dl_main): Don't call init_tls more than once.
2007-06-17 Andreas Schwab <schwab@suse.de>
* sysdeps/generic/initfini.c: Tell gcc about the nonstandard sections.
2007-06-16 Andreas Jaeger <aj@suse.de>
[BZ #4125]
* sysdeps/unix/sysv/linux/sys/ptrace.h
(PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK,
PTRACE_O_TRACEVFORK, PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC,
PTRACE_O_TRACEVFORKDONE, PTRACE_O_TRACEEXIT, PTRACE_O_MASK,
PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK, PTRACE_EVENT_CLONE,
PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE, PTRACE_EVENT_EXIT):
Define.
* sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
* sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise.
2007-06-16 Ulrich Drepper <drepper@redhat.com>
[BZ #4599]
* sysdeps/unix/sysv/linux/check_pf.c (make_request): When
determining whether there are IPv4/IPv6 addresses, ignore loopback
addresses.
2007-06-14 Uros Bizjak <ubizjak@gmail.com>
* soft-fp/soft-fp.h (CMPtype): Define to "int" if undefined.
* soft-fp/eqdf2.c (__eqdf2): Use CMPtype instead of int
as the return type. Change type of "r" variable to CMPtype.
* soft-fp/eqsf2.c (__eqsf2): Likewise.
* soft-fp/eqtf2.c (__eqtf2): Likewise.
* soft-fp/gedf2.c (__gedf2): Likewise.
* soft-fp/gesf2.c (__gesf2): Likewise.
* soft-fp/getf2.c (__getf2): Likewise.
* soft-fp/ledf2.c (__ledf2): Likewise.
* soft-fp/lesf2.c (__lesf2): Likewise.
* soft-fp/letf2.c (__letf2): Likewise.
* soft-fp/unorddf2 (__unorddf2): Likewise.
* soft-fp/unordsf2 (__unordsf2): Likewise.
* soft-fp/unordtf2 (__unordtf2): Likewise.
2007-06-09 Ulrich Drepper <drepper@redhat.com>
* elf/do-lookup.h (do_lookup_x): Read r_nlist before r_list and
make sure gcc doesn't mess around with this.
2007-06-08 Ulrich Drepper <drepper@redhat.com>
* elf/dl-lookup.c (_dl_lookup_symbol_x): Remove use of r_nlist.
2007-06-08 Jakub Jelinek <jakub@redhat.com>
* elf/dl-close.c (_dl_close_worker): Remove all to be removed
libraries from the global scope at once and call THREAD_GSCOPE_WAIT
at most once per _dl_close_worker.
2007-06-08 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/sched.h: Make second parameter of
__sched_cpucount as const.
* posix/sched_cpucount.c: Adjust.
* posix/sched_cpucount.c (__sched_cpucount): Allow using special
instruction for counting bits.
* sysdeps/x86_64/sched_cpucount.c: New file.
2007-06-07 Ulrich Drepper <drepper@redhat.com>
* configure.in: Avoid variable named BASH.
* config.make.in: Likewise.
Patch in part by Mike Frysinger.
2007-06-06 Jakub Jelinek <jakub@redhat.com>
[BZ #4586]
* sysdeps/i386/ldbl2mpn.c (__mpn_extract_long_double): Treat
pseudo-zeros as zero.
* sysdeps/x86_64/ldbl2mpn.c: New file.
* sysdeps/ia64/ldbl2mpn.c: New file.
2007-06-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Remove
unused ily variable. Fix nextafterl on +-__LDBL_MAX__ and +-Inf.
Remove unreachable code at the end.
2007-06-01 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c: Correct description of
ldbl-128ibm in comment.
(fpclassifyl): Correct classification of denormals.
* sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Correct
return value for MIN denormal. Rewrite using long double math too
correctly handle denormals and canonicalize the results.
2007-06-05 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
(__mpn_construct_long_double): Fix conversion where result ought
to be smaller than __LDBL_MIN__, or the low double should be
denormal. Fix decision where to negate low double - honor round
to even rules.
* stdio-common/tst-sprintf2.c: Include string.h.
(COMPARE_LDBL): Define.
(TEST): Also test whether a string hexadecimal float representation
can be parsed back to the number.
(main): Add a couple of further tests.
2007-06-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
(PRINT_FPHEX_LONG_DOUBLE): Fix printing numbers where lower double
is non-zero, but smaller than 2 * __DBL_MIN__.
* stdio-common/tst-sprintf2.c: New test.
* stdio-common/Makefile (tests): Add tst-sprintf2.
* math/test-misc.c (main): Don't run last batch of tests with
IBM long double format.
2007-05-31 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/970/fpu/Implies: New file.
* sysdeps/powerpc/powerpc32/power5/fpu/Implies: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/Implies: New file.
* sysdeps/powerpc/powerpc32/power6/fpu/Implies: New file.
* sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
* sysdeps/powerpc/powerpc64/970/fpu/Implies: New file.
* sysdeps/powerpc/powerpc64/power5/fpu/Implies: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/Implies: New file.
* sysdeps/powerpc/powerpc64/power6/fpu/Implies: New file.
* sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies:
New file.
2007-05-31 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: Move.
* sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S: To here.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: Move.
* sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S: To here.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: Move.
* sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: To here.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: Move.
* sysdeps/powerpc/powerpc32/power4/fpu/s_llroundf.S: To here.
2007-05-22 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S
(LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S
(LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S
(LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S
(LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
2007-05-21 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c: New file.
* sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: New file.
* sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c: New file.
* sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c: New file.
2007-03-15 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S
[LONG_DOUBLE_COMPAT]: Add compat_symbol for llrintl@@GLIBC_2_1.
2006-02-13 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: New File
* sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S: New File
* sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: New File
* sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: New File
2006-10-20 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c: New file.
* sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c: New file.
2006-10-03 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: New file.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: New file.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: Moved.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: Likewise.
* sysdeps/powerpc/powerpc32/power4/fpu/Makefile: To here.
* sysdeps/powerpc/powerpc32/power4/fpu/mpa.c: Likewise.
2006-09-29 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power6x/fpu/s_lrint.S: New file.
* sysdeps/powerpc/powerpc32/power6x/fpu/s_lround.S: New file.
* sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S: New file.
* sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S: New file.
2006-09-28 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: New file.
* sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S: New file.
* sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
2006-08-31 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: New file.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: New file.
* sysdeps/powerpc/powerpc64/power4/fpu/Makefile: New file.
* sysdeps/powerpc/powerpc64/power4/fpu/mpa.c: New file.
2006-06-15 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_ceilf.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_roundf.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_truncf.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_ceilf.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_roundf.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_truncf.S: New file.
2006-03-20 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: New file.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: New file.
2007-06-01 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power6/memset.S: New file.
* sysdeps/powerpc/powerpc64/power6/memset.S: New file.
2007-05-31 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/970/Implies: New file.
* sysdeps/powerpc/powerpc32/power5/Implies: New file.
* sysdeps/powerpc/powerpc32/power5+/Implies: New file.
* sysdeps/powerpc/powerpc32/power6/Implies: New file.
* sysdeps/powerpc/powerpc32/power6x/Implies: New file.
* sysdeps/powerpc/powerpc64/970/Implies: New file.
* sysdeps/powerpc/powerpc64/power5/Implies: New file.
* sysdeps/powerpc/powerpc64/power5+/Implies: New file.
* sysdeps/powerpc/powerpc64/power6/Implies: New file.
* sysdeps/powerpc/powerpc64/power6x/Implies: New file.
2007-05-21 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power4/memset.S: New file
2007-03-13 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc64/memcpy.S: Improve aligned loop to minimize
branch miss-predicts. Ensure that cache line crossing does not impact
dispatch grouping.
2006-12-13 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc64/power4/memcopy.h: Replace with include
"../../powerpc32/power4/memcopy.h".
* sysdeps/powerpc/powerpc64/power4/wordcopy.c: Replace with include
"../../powerpc32/power4/wordcopy.c".
2006-10-03 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/powerpc64/Makefile: Moved.
* sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: Likewise.
* sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: Likewise.
* sysdeps/powerpc/powerpc32/power4/Makefile: To here.
* sysdeps/powerpc/powerpc32/power4/memcopy.h: Likewise.
* sysdeps/powerpc/powerpc32/power4/wordcopy.c: Likewise.
2006-09-10 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power6/memcpy.S: New file.
2006-08-31 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power6/wordcopy.c: New file.
* sysdeps/powerpc/powerpc32/powerpc64/Makefile: New file.
* sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: New file.
* sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: New file.
* sysdeps/powerpc/powerpc64/power4/Makefile: New file.
* sysdeps/powerpc/powerpc64/power4/memcopy.h: New file.
* sysdeps/powerpc/powerpc64/power4/wordcopy.c: New file.
* sysdeps/powerpc/powerpc64/power6/wordcopy.c: New file.
2006-07-06 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc64/power6/memcpy.S: New file.
2006-03-20 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power4/memcmp.S: New file.
* sysdeps/powerpc/powerpc32/power4/memcpy.S: New file.
* sysdeps/powerpc/powerpc32/power4/memset.S: New file.
* sysdeps/powerpc/powerpc32/power4/strncmp.S: New file.
* sysdeps/powerpc/powerpc64/power4/memcmp.S: New file.
* sysdeps/powerpc/powerpc64/power4/memcpy.S: New file.
* sysdeps/powerpc/powerpc64/power4/strncmp.S: New file.
2007-05-29 Roland McGrath <roland@redhat.com>
* po/Makefile (po-sed-cmd): New variable.
(libc.pot.files): Move sed command text in there, avoid \ inside ''.
2007-05-29 Ulrich Drepper <drepper@redhat.com>
* crypt/md5-crypt.c: Fix comment.
* nscd/nscd_helper.c (get_mapping): Handle short replies instead
of crashing. When this is the case or if the reply is malformed,
don't try to close the new file descriptor since it does not
exist.
Patch in part by Guillaume Chazarain <guichaz@yahoo.fr>.
2007-05-28 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/futimes.c (miss_utimensat): Don't define
if __NR_utimensat is not defined.
2007-05-26 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/libc-start.c: Include <sysdep.h>.
2007-05-25 Jakub Jelinek <jakub@redhat.com>
* io/bits/fcntl2.h (__open_2): Add nonnull attribute.
(open): Fix comment typos. Don't call __open_2 if flags
is a compile time constant without O_CREAT.
(__open64_2): Add nonnull attribute.
(open64): Fix comment typos. Don't call __open64_2 if flags
is a compile time constant without O_CREAT.
(__openat_2): Add nonnull attribute, fix nonnull attribute
on redirect.
(openat): Fix comment typos. Don't call __openat_2 if flags
is a compile time constant without O_CREAT.
(__openat64_2): Add nonnull attribute, fix nonnull attribute
on redirect.
(openat64): Fix comment typos. Don't call __openat64_2 if flags
is a compile time constant without O_CREAT.
2007-05-24 Ulrich Drepper <drepper@redhat.com>
* Makerules (sysd-rules): Define PTW for ptw-* files.
* Versions: Define GLIBC_2.7 for libc.
* include/stdio.h: Declare __fortify_fail.
* debug/fortify_fail.c: New file.
* debug/Makefile (routines): Add fortify_fail.
* debug/chk_fail.c: Use __fortify_fail.
* debug/stack_chk_fail.c: Likewise.
* io/Versions: Export __open_2, __open64_2, __openat_2, and
__openat64_2 for GLIBC_2.7.
* io/fcntl.h: When compiling with fortification, include bits/fcntl2.h.
* io/open.c: Define *_2 variant of function which checks for O_CREAT
and fails if necessary.
* io/open64.c: Likewise.
* io/openat.c: Likewise.
* io/openat64.c: Likewise.
* sysdeps/unix/sysv/linux/open64.c: Likewise.
* sysdeps/unix/sysv/linux/openat.c: Likewise.
* sysdeps/unix/sysv/linux/openat64.c: Likewise.
* io/bits/fcntl2.h: New file.
* include/fcntl.h: Declare __open_2, __open64_2, __openat_2, and
__openat64_2.
* include/bits/fcntl2.h: New file.
* sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
Add open_2.
* sysdeps/unix/sysv/linux/open_2.c: New file.
2007-05-21 Ulrich Drepper <drepper@redhat.com>
* sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Pass correct value
as second parameter to handle_intel.
* nscd/aicache.c (addhstaiX): If reported TTL is zero don't cache
the entry.
* sysdeps/unix/sysv/linux/x86_64/sysconf.c: Move cache information
handling to ...
* sysdeps/x86_64/cacheinfo.c: ... here. New file.
* sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add
cacheinfo.
* sysdeps/x86_64/memcpy.S: Complete rewrite.
* sysdeps/x86_64/mempcpy.S: Adjust appropriately.
Patch by Evandro Menezes <evandro.menezes@amd.com>.
* sysdeps/unix/sysv/linux/i386/epoll_pwait.S: New file.
2007-05-21 Jakub Jelinek <jakub@redhat.com>
[BZ #4525]
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add epoll_pwait.
* sysdeps/unix/sysv/linux/epoll_pwait.c: New file.
* sysdeps/unix/sysv/linux/syscalls.list (epoll_pwait): Remove.
* sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (epoll_pwait): Declare.
[BZ #4514]
* stdio-common/vfprintf.c (vfprintf): Don't shadow workstart variable,
reinitialize workend at the start of each do_positional format spec
loop, free workstart before do_positional loops.
(printf_unknown): Fix size of work_buffer.
* stdio-common/tst-sprintf.c (main): Add 3 new testcases.
* malloc/hooks.c (MALLOC_STATE_VERSION): Bump.
(public_sET_STATe): If ms->version < 3, put all chunks into
unsorted chunks and clear {fd,bk}_nextsize fields of largebin
chunks.
* malloc/malloc.c [MALLOC_DEBUG]: Revert 2007-05-13 changes.
* malloc/hooks.c: Likewise.
* malloc/arena.c: Likewise.
* malloc/malloc.c (do_check_malloc_state): Don't assert
n_mmaps is not greater than n_mmaps_max. This removes the need
for the previous change.
* malloc/Makefile (CFLAGS-malloc.c): Revert accidental
2007-05-07 commit.
2007-05-19 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PRIVATE_FUTEX):
Define for kernel >= 2.6.22.
2007-05-18 Ulrich Drepper <drepper@redhat.com>
* elf/dl-close.c (_dl_close_worker): When removing object from
global scope, wait for all lookups to finish afterwards.
* elf/dl-open.c (add_to_global): When global scope array must
grow, allocate a new one and free old array only after all
lookups finish.
* elf/dl-runtime.c (_dl_fixup): Protect using global scope.
(_dl_lookup_symbol_x): Likewise.
* elf/dl-support.c: Define _dl_wait_lookup_done.
* sysdeps/generic/ldsodefs.h (struct rtld_global): Add
_dl_wait_lookup_done.
* malloc/malloc.c (do_check_chunk): Correct check for mmaped block
not overlapping with arena.
* malloc/mcheck.c (reallochook): If size==0, free the block.
* rt/tst-shm.c: Use fstat64 instead of fstat.
* sysdeps/unix/sysv/linux/i386/sync_file_range.S: Fix case where
__NR_sync_file_range is not defined.
2007-05-17 Ulrich Drepper <drepper@redhat.com>
Dummy files to prevent stub versions from being used.
* sysdeps/x86_64/fpu/k_cosl.c: New file.
* sysdeps/x86_64/fpu/k_rem_pio2l.c: New file.
* sysdeps/x86_64/fpu/k_sinl.c: New file.
* sysdeps/x86_64/fpu/k_tanl.c: New file.
* version.h (VERSION): Set to 2.6.90.
2007-05-14 Ulrich Drepper <drepper@redhat.com>
* version.h (VERSION): Define to 2.6.
* include/features.h (__GLIBC_MINOR__): Define to 6.
* malloc/malloc.c: Use all small bin slots on 64-bit archs.
* malloc/malloc.c (largebin_index): Really have 32 buckets with 64
sizes.
2007-05-13 Ulrich Drepper <drepper@redhat.com>
* malloc/malloc.c [MALLOC_DEBUG]: Keep track of current maximum
number of mmaps. n_mmaps_max is the target.
* malloc/hooks.c: Likewise.
* malloc/arena.c: Likewise.
2007-05-12 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/tst-getcpu.c: Include <unistd.h> for
getpid.
2007-05-11 Ulrich Drepper <drepper@redhat.com>
* elf/dl-close.c (_dl_close_worker): Help gcc to optimize by
adding new variables.
* elf/dl-open.c (add_to_global): Introduce variable ns to help gcc
optimize. Completely extend global scope array before making the
new entries visible.
2007-05-10 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/tst-getcpu.c: New file.
* sysdeps/unix/sysv/linux/Makefile [subdir=posix] (tests): Add
tst-getcpu.
* include/link.h: Move l_version and l_nversion members around to
fill gaps.
* scripts/check-c++-types.sh: Don't use -fnu89-inline option.
* sysdeps/unix/sysv/linux/sched_setaffinity.c
(__sched_setaffinity_new): If syscall was successful and
RESET_VGETCPU_CACHE is defined, use it before returning.
* sysdeps/unix/sysv/linux/x86_64/sched_setaffinity.c: New file.
* io/sys/stat.h: Make sure struct timespec is defined for
__USE_ATFILE.
* sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Define UTIME_NOW and
UTIME_OMIT.
* sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/stat.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
* sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
* sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
* sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_UTIMENSAT.
* io/sys/stat.h: Declare utimensat, futimens.
* io/utimensat.c: New file.
* io/futimens.c: New file.
* sysdeps/unix/sysv/linux/utimensat.c: New file.
* sysdeps/unix/sysv/linux/futimens.c: New file.
* io/Makefile (routines): Add utimensat, futimens.
* io/Versions: Add utimensat, futimens to GLIBC_2.6.
* sysdeps/unix/sysv/linux/lutimes.c: New file.
* sysdeps/unix/sysv/linux/futimes.c: Use utimensat syscall if
available.
* include/sys/cdefs.h: Redefine __nonnull so that test for
incorrect parameters in the libc code itself are not omitted.
2007-05-09 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ia64/fpu/fraiseexcpt.c (feraiseexcept): Don't raise overflow
exception in addition to inexact when asked to raise only FE_INEXACT.
[BZ #3427]
* sysdeps/s390/fpu/feholdexcpt.c (feholdexcept): Don't clear exceptions
in *envp.
2007-05-07 Ulrich Drepper <drepper@redhat.com>
[BZ #4403]
* string/strfry.c (strfry): Make result more random.
2007-05-07 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/fpu/bits/mathinline.h (__isnanl): Don't define
if __NO_LONG_DOUBLE_MATH.
* sysdeps/unix/sysv/linux/alpha/ioperm.c: If BWX insns not
available in the compiler, add .arch directive to the assembly.
2007-05-07 Jakub Jelinek <jakub@redhat.com>
* sysdeps/alpha/fpu/s_nearbyint.c (nearbyintl): Fix version on
compat_symbol to GLIBC_2_1.
* sysdeps/alpha/fpu/s_fmin.S (fminl): Likewise.
* sysdeps/alpha/fpu/s_trunc.c (truncl): Likewise.
* sysdeps/alpha/fpu/s_fmax.S (fmaxl): Likewise.
* sysdeps/alpha/fpu/s_lrint.c (lrintl, llrintl): Likewise.
* sysdeps/alpha/fpu/s_lround.c (lroundl, llroundl): Likewise.
* sysdeps/alpha/fpu/s_round.c (roundl): Likewise.
* sysdeps/alpha/fpu/s_isnan.c (isnanl): Provide compat_symbol in
libc, not libm.
(__isnanl): New compat_symbol.
2007-05-07 Ulrich Drepper <drepper@redhat.com>
Jakub Jelinek <jakub@redhat.com>
* malloc/arena.c (heap_info): Add mprotect_size field, adjust pad.
(new_heap): Initialize mprotect_size.
(grow_heap): When growing, only mprotect from mprotect_size till
new_size if mprotect_size is smaller. When shrinking, use PROT_NONE
MMAP for __libc_enable_secure only, otherwise use MADV_DONTNEED.
2007-04-30 Steven Munroe <sjmunroe@us.ibm.com>
Peter Bergner <bergner@us.ibm.com>
* sysdeps/powerpc/bits/fenv.h: Declare __fe_mask_env extern.
Define FE_NOMASK_ENV as FE_EANBLED_ENV. Define FE_MASK_ENV.
* sysdeps/powerpc/fpu/Makefile: Add fe_mask to libm-support.
* sysdeps/powerpc/fpu/fe_mask.c: New file.
* sysdeps/powerpc/fpu/fe_nomask.c: Correct comment.
* sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept):
Call __fe_mask_env() if all FP exceptions disabled.
* sysdeps/powerpc/fpu/feholdexcpt.c (feholdexcept): Copy high 32-bits
from old FPSCR to new fenv to propagate DFP rounding modes.
Call __fe_mask_env() if FP exceptions previously enabled.
* sysdeps/powerpc/fpu/fesetenv.c (fesetenv): Change mask to merge
exceptions from env. Use __fe_nomask_env() or __fe_mask_env() when
transitioning from all exceptions disabled to any exception enabled
or visa versa.
* sysdeps/powerpc/fpu/feupdateenv.c (__feupdateenv): Change mask to
merge exceptions from env. Call __fe_nomask_env or __fe_mask_env
when transitioning from all exceptions disabled to any exception
enabled or visa versa.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Moved to...
* sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: ...here.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: Moved to...
* sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: ...here.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_mask.c: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c: New file.
2007-05-06 Ulrich Drepper <drepper@redhat.com>
[BZ #4465]
* posix/unistd.h: Remove __THROW from fdatasync.
2007-05-06 Mike Frysinger <vapier@gentoo.org>
[BZ #4465]
* sysdeps/unix/sysv/linux/syscalls.list (fdatasync): Add "C" to args.
2007-05-06 Ulrich Drepper <drepper@redhat.com>
* stdio-common/vfprintf.c (process_string_arg): Optimize
ridiculous precision in wide char code printing multi-byte string.
Reported by Jim Meyering <jim@meyering.net>.
[BZ #4131]
* elf/dl-addr.c (_dl_addr): Compare address with actual segment
boundaries to work around systems with overlapping binary loading.
Based on a patch by Suzuki <suzuki@in.ibm.com>.
2007-05-04 Ulrich Drepper <drepper@redhat.com>
* stdio-common/vfprintf.c (process_string_arg): Adjust call to
__mbsnrtowcs after last change.
* locale/programs/linereader.c (get_symname): Fix adding final NUL.
(get_ident): Likewise.
2007-05-03 Jakub Jelinek <jakub@redhat.com>
* soft-fp/op-common.h (FP_TRUNC): Replace raising of FP_EX_INEXACT
with setting the sticky bit.
* math/test-misc.c (main): Add more truncation tests.
2007-04-14 Uros Bizjak <ubizjak@gmail.com>
* soft-fp/floatunsidf.c (__floatunsidf): Use DFtype instead of
double in the function declaration.
* soft-fp/floatundidf.c (__floatundidf): Use DFtype instead of
double in the function declaration.
* soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
float in the function declaration.
* soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
float in the function declaration.
* soft-fp/extended.h (FP_UNPACK_RAW_E): Do not increase X##_e for
denormal operands. Do not generate FP_EX_DENORM exception.
(FP_UNPACK_RAW_EP): Ditto.
(FP_UNPACK_SEMIRAW_E): Use FP_UNPACK_RAW_E instead of
undefined _FP_UNPACK_RAW_E.
(FP_UNPACK_SEMIRAW_EP): Use FP_UNPACK_RAW_EP instead of
undefined _FP_UNPACK_RAW_EP.
(FP_PACK_SEMIRAW_E): Use FP_PACK_RAW_E instead of
undefined _FP_PACK_RAW_E.
(FP_PACK_SEMIRAW_EP): Use FP_PACK_RAW_EP instead of
undefined _FP_PACK_RAW_EP.
* soft-fp/op-2.h (_FP_FRAC_COPY_2_2): Define as alias to
_FP_FRAC_COPY_2.
* soft-fp/op-4.h (_FP_FRAC_COPY_2_2): Define as alias to
_FP_FRAC_COPY_4.
2007-04-16 Uros Bizjak <ubizjak@gmail.com>
Jakub Jelinek <jakub@redhat.com>
* soft-fp/op-common.h (FP_EXTEND): Do not abort when
_FP_EXPBIAS_##dfs == _FP_EXPBIAS_##sfs. Handle denormals for
this case.
* soft-fp/op-common.h (FP_TRUNC): Ditto.
2007-05-03 Jakub Jelinek <jakub@redhat.com>
* math/test-misc.c (main): Add tests for rounding long double
values close to smallest double denormalized value to double.
2007-04-30 Joseph Myers <joseph@codesourcery.com>
* soft-fp/op-common.h (FP_TRUNC): Correct off-by-one error in
condition for truncating to 0. Set sticky bit for such
truncation.
2007-05-02 Jakub Jelinek <jakub@redhat.com>
* stdio-common/vfprintf.c (process_string_arg): Use a VLA rather than
fixed length array for ignore.
2007-04-30 Ulrich Drepper <drepper@redhat.com>
[BZ #4438]
* stdio-common/vfprintf.c (process_string_arg): Don't overflow the
stack for large precisions.
* stdio-common/test-vfprintf.c (main): Add test for large
precision.
2007-04-30 Jakub Jelinek <jakub@redhat.com>
* stdio-common/printf_fp.c (___printf_fp): Don't print negative sign
for exponent 0.
* stdio-common/tfformat.c (sprint_doubles): Add a new test.
[BZ #4439]
* resolv/inet_ntop.c (inet_ntop4): Take terminating '\0' into
account in the size check.
* resolv/tst-inet_ntop.c: New test.
* resolv/Makefile (tests): Add tst-inet_ntop.
2007-04-30 Ulrich Drepper <drepper@redhat.com>
Jakub Jelinek <jakub@redhat.com>
[BZ #4349]
* malloc/malloc.c: Keep separate list for first blocks on the bin
lists with a given size. This helps skipping over list elements
we know won't fit in two places.
Inspired by a patch by Tomash Brechko <tomash.brechko@gmail.com>.
2007-04-28 Ulrich Drepper <drepper@redhat.com>
[BZ #4102]
* sysdeps/posix/getaddrinfo.c (default_labels): Assign separate
label to Teredo tunnel addresses 2001://32.
2007-04-27 Ulrich Drepper <drepper@redhat.com>
* locale/programs/ld-collate.c (collate_read): Allow order_start
after copy.
* locale/programs/ld-collate.c (collate_read): Fix printing of
error message.
[BZ #3213]
* locale/C-translit.h.in: Add entry for U2044.
[BZ #4342]
* stdio-common/vfscanf.c (_IO_vfscanf_internal): Allow
hexa-decimal floats without exponent.
* stdio-common/tstscanf.c (main): Adjust Test 8 test for success.
2007-04-25 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/sched.h: Declare sched_getcpu.
* sysdeps/unix/sysv/linux/sched_getcpu.c: New file.
* sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: New file.
* sysdeps/unix/sysv/linux/Versions: Export sched_getcpu for
GLIBC_2.6.
* sysdeps/unix/sysv/linux/Makefile [subdir=posix] (sysdep_routines):
Add sched_getcpu.
2007-04-25 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/check_pf.c (make_request): Return -1 instead
of 0 after the out_fail label.
2007-04-25 Ulrich Drepper <drepper@redhat.com>
[BZ #4406]
* iconv/gconv_charset.h (strip): Allow ':'.
* iconv/iconv_open.c (iconv_open): Adjust comment.
2007-04-25 Jakub Jelinek <jakub@redhat.com>
* libio/bits/stdio.h (fgetc_unlocked): Add extern inline optimized
version.
2007-04-23 Jakub Jelinek <jakub@redhat.com>
[BZ #4381]
* nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Ensure sufficient
alignment of buffer and tmp_buffer.
* nis/nss_nis/nis-hosts.c (internal_nis_gethostent_r,
internal_gethostbyname2_r, _nss_nis_gethostbyaddr_r): Ensure sufficient
alignment of buffer.
* resolv/nss_dns/dns-hosts.c (getanswer_r): Likewise. Handle buflen
bigger than INT_MAX.
* resolv/nss_dns/dns-network.c (getanswer_r): Likewise. Add errnop and
h_errnop arguments. Fail if buflen is too small.
(_nss_dns_getnetbyname_r, _nss_dns_getnetbyaddr_r): Adjust callers.
2007-04-23 Jakub Jelinek <jakub@redhat.com>
[BZ #4405]
* iconvdata/gconv-modules (E13B): Add a missing slash to the alias
name. Patch by Aurelien Jarno <aurelien@aurel32.net>.
2007-04-22 Roland McGrath <roland@redhat.com>
* elf/elf.h (NT_PRXFPREG): New macro.
2007-04-19 Andreas Jaeger <aj@suse.de>
[BZ #3905]
* bits/in.h (IPV6_ROUTER_ALERT, IPV6_MTU_DISCOVER, IPV6_MTU,
IPV6_RECVERR, IPV6_V6ONLY, IPV6_JOIN_ANYCAST, IPV6_LEAVE_ANYCAST):
Added.
2007-04-19 Ulrich Drepper <drepper@redhat.com>
* include/sys/mman.h: Mark madvise hidden.
* misc/madvise.c: Add libc_hidden_def.
2007-04-06 Jakub Jelinek <jakub@redhat.com>
* nis/nis_domain_of.c (__nis_domain_of): New function.
* include/rpcsvc/nislib.h (__nis_domain_of): New prototype.
* nis/nis_lookup.c (nis_lookup): Use __nis_domain_of.
* nis/nis_call.c (rec_dirsearch): Likewise.
(first_shoot): Likewise. Remove search_parent_first argument.
(struct nis_server_cache): Rename search_parent_first field
to search_parent.
(nis_server_cache_search, nis_server_cache_add): Rename
search_parent_first argument to search_parent.
(__nisfind_server): Likewise. If search_parent, call
__nis_domain_of.
2007-04-18 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/getaddrinfo.c: Remove commented-out code.
2007-04-17 Ulrich Drepper <drepper@redhat.com>
[BZ #4368]
* stdlib/stdlib.h: Remove obsolete part of comment for realpath.
2007-04-16 Ulrich Drepper <drepper@redhat.com>
[BZ #4364]
* posix/unistd.h (_XOPEN_VERSION): Define appropriately for SUSv3.
2007-04-15 Jakub Jelinek <jakub@redhat.com>
* locale/programs/locarchive.c (INITIAL_NUM_NAMES,
INITIAL_SIZE_STRINGS, INITIAL_NUM_LOCREC): Update to accomodate
current number of locales in SUPPORTED.
(create_archive): Initialize serial.
(enlarge_archive): Preserve aliases rather than duplicating
their locrecs.
2007-04-13 Jakub Jelinek <jakub@redhat.com>
* libio/genops.c (_IO_default_finish): Call _IO_lock_fini
after _IO_un_link, not before it.
* stdio-common/printf_fp.c (___printf_fp): Fix exponent -4
special case handling when wcp == wstartp + 1. Fix a comment typo.
* stdio-common/tfformat.c (sprint_doubles): Add a new testcase.
2007-03-30 Jakub Jelinek <jakub@redhat.com>
* libio/libio.h (__underflow, __uflow, __overflow, __wunderflow,
__wuflow, __woverflow, _IO_getc, _IO_putc, _IO_peekc_locked, _IO_padn,
_IO_sgetn, _IO_seekoff, _IO_seekpos, _IO_getwc, _IO_putwc, _IO_wpadn):
Remove __THROW.
* libio/fileops.c (new_do_write, _IO_file_xsgetn_mmap,
_IO_file_xsgetn_maybe_mmap): Likewise.
* libio/oldfileops.c (old_do_write): Likewise.
* libio/libioP.h (_IO_switch_to_get_mode, _IO_switch_to_wget_mode,
_IO_init_marker, _IO_init_wmarker, _IO_default_uflow,
_IO_wdefault_uflow, _IO_default_setbuf, _IO_default_seekpos,
_IO_do_write, _IO_new_do_write, _IO_old_do_write, _IO_wdo_write,
_IO_flush_all_lockp, _IO_flush_all, _IO_cleanup,
_IO_flush_all_linebuffered, _IO_new_fgetpos, _IO_old_fgetpos,
_IO_new_fsetpos, _IO_old_fsetpos, _IO_new_fgetpos64,
_IO_old_fgetpos64, _IO_new_fsetpos64, _IO_old_fsetpos64,
_IO_file_setbuf, _IO_file_seekoff, _IO_file_xsputn, _IO_file_xsgetn,
_IO_file_underflow, _IO_file_underflow_mmap,
_IO_file_underflow_maybe_mmap, _IO_file_overflow, _IO_file_attach,
_IO_file_open, _IO_file_fopen, _IO_file_write, _IO_file_read,
_IO_file_sync, _IO_file_close_it, _IO_file_finish,
_IO_new_file_attach, _IO_new_file_close_it, _IO_new_file_finish,
_IO_new_file_fopen, _IO_new_file_setbuf, _IO_file_setbuf_mmap,
_IO_new_file_sync, _IO_new_file_underflow, _IO_new_file_overflow,
_IO_new_file_seekoff, _IO_new_file_write, _IO_new_file_xsputn,
_IO_old_file_setbuf, _IO_old_file_seekoff, _IO_old_file_xsputn,
_IO_old_file_underflow, _IO_old_file_overflow, _IO_old_file_attach,
_IO_old_file_fopen, _IO_old_file_write, _IO_old_file_sync,
_IO_old_file_close_it, _IO_old_file_finish, _IO_wfile_xsputn,
_IO_wfile_setbuf, _IO_wfile_sync, _IO_wfile_underflow,
_IO_wfile_overflow, _IO_wfile_seekoff, _IO_old_proc_open,
_IO_old_proc_close, _IO_getdelim, _IO_flush_all_internal,
_IO_adjust_column_internal, _IO_default_uflow_internal,
_IO_default_xsgetn_internal, _IO_wdefault_xsputn_internal,
_IO_wdefault_xsgetn_internal, _IO_wdefault_uflow_internal,
_IO_file_setbuf_internal, _IO_file_seekoff_internal,
_IO_file_xsputn_internal, _IO_file_xsgetn_internal,
_IO_file_close_it_internal, _IO_file_underflow_internal,
_IO_file_overflow_internal, _IO_file_attach_internal,
_IO_file_fopen_internal, _IO_file_sync_internal,
_IO_file_finish_internal, _IO_wfile_xsputn_internal,
_IO_wfile_seekoff_internal, _IO_wfile_sync_internal,
_IO_switch_to_wget_mode_internal, _IO_padn_internal,
_IO_switch_to_get_mode_internal, _IO_seekoff_unlocked,
_IO_seekpos_unlocked): Likewise.
(_IO_strtod, _IO_dtoa, _IO_outfloat, _IO_read, _IO_write,
_IO_lseek, _IO_close, _IO_fstat): Remove unused prototypes.
2007-04-16 Jakub Jelinek <jakub@redhat.com>
* locale/programs/locarchive.c (show_archive_content): Fix sizeof
argument in xmalloc size computation.
2007-04-01 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (__nextafterl): Use
math_opt_barrier and math_force_eval macros.
2007-03-27 Jakub Jelinek <jakub@redhat.com>
[BZ #3306]
* math/math_private.h (math_opt_barrier, math_force_eval): Define.
* sysdeps/i386/fpu/math_private.h: New file.
* sysdeps/x86_64/fpu/math_private.h: New file.
* math/s_nexttowardf.c (__nexttowardf): Use math_opt_barrier and
math_force_eval macros. Use "+m" constraint on asm rather than
"=m" and "m".
* math/s_nextafter.c (__nextafter): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c (__nexttoward):
Likewise.
* sysdeps/ieee754/flt-32/s_nextafterf.c (__nextafterf): Likewise.
* sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward): Likewise.
* sysdeps/ieee754/ldbl-96/s_nexttoward.c (__nexttoward): Likewise.
* sysdeps/i386/fpu/s_nextafterl.c (__nextafterl): Use
math_opt_barrier and math_force_eval macros.
* sysdeps/ieee754/ldbl-128/s_nextafterl.c (__nextafterl): Likewise.
* sysdeps/ieee754/ldbl-96/s_nextafterl.c (__nextafterl): Likewise.
* sysdeps/i386/fpu/s_nexttoward.c: Include float.h.
(__nexttoward): Use math_opt_barrier and
math_force_eval macros. Use "+m" constraint on asm rather than
"=m" and "m". Only use asm to force double result if
FLT_EVAL_METHOD is 2.
* sysdeps/i386/fpu/s_nexttowardf.c: Include float.h.
(__nexttowardf): Use math_opt_barrier and
math_force_eval macros. Use "+m" constraint on asm rather than
"=m" and "m". Only use asm to force double result if
FLT_EVAL_METHOD is not 0.
* sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c: Include float.h.
(__nexttowardf): Use math_opt_barrier and
math_force_eval macros. If FLT_EVAL_METHOD is not 0, force
x to float using asm.
* sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c: Include float.h.
(__nldbl_nexttowardf): Use math_opt_barrier and
math_force_eval macros. If FLT_EVAL_METHOD is not 0, force
x to float using asm.
* sysdeps/ieee754/ldbl-96/s_nexttowardf.c: Include float.h.
(__nexttowardf): Use math_opt_barrier and math_force_eval
macros. If FLT_EVAL_METHOD is not 0, force x to float using asm.
* math/bug-nextafter.c (zero, inf): New variables.
(main): Add new tests.
* math/bug-nexttoward.c (zero, inf): New variables.
(main): Add new tests.
2007-03-22 Jakub Jelinek <jakub@redhat.com>
[BZ #3427]
* sysdeps/x86_64/fpu/feholdexcpt.c (feholdexcept): Clear all
exceptions both in SW and MXCSR.
* sysdeps/x86_64/fpu/feupdateenv.c: New file.
* sysdeps/x86_64/fpu/feenablxcpt.c (feenableexcept): Remove dead code.
* sysdeps/x86_64/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
* sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
in MXCSR if SSE is available.
* sysdeps/i386/fpu/feupdateenv.c: Include unistd.h, dl-procinfo.h
and ldsodefs.h.
(__feupdateenv): Query exceptions also from MXCSR if SSE is available.
Fix comment typo.
* sysdeps/ia64/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions.
Return 0 rather than 1.
* sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Fix comment typo.
Remove incorrect part of a comment. Fix argument to feraiseexcept.
* math/test-fenv.c (feholdexcept_tests): New function.
(main): Call it.
2007-01-05 Richard B. Kreckel <kreckel@ginac.de>
[BZ #3427]
* sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
in SW.
2007-04-13 Jakub Jelinek <jakub@redhat.com>
[BZ #4344]
* elf/ldconfig.c (search_dir): Fix 2 off-by-2 errors.
Reported by David Anderson <davea42@earthlink.net>.
2007-04-07 Ulrich Drepper <drepper@redhat.com>
* posix/sys/wait.h: Remove unnecessary forward declaration.
2007-04-05 Jakub Jelinek <jakub@redhat.com>
* nis/nis_call.c (__nisfind_server): Replace (*dir)->do_servers
with obj->do_servers after first_shoot.
2007-04-03 Ulrich Drepper <drepper@redhat.com>
* posix/Makefile (routines): Add sched_cpucount.
(tests): Add tst-cpucount.
* posix/sched_cpucount.c: New file.
* posix/tst-cpucount.c: New file.
* posix/Versions: Export __sched_cpucount with version GLIBC_2.6.
* bits/sched.h: Define __CPU_COUNT. Declare __sched_cpucount.
* sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
* posix/sched.h: Define CPU_COUNT.
2007-03-27 Jakub Jelinek <jakub@redhat.com>
* posix/fnmatch.c (STRUCT): Define.
(fnmatch): Pass NULL as last argument to internal_fn{,w}match.
* posix/fnmatch_loop.c (struct STRUCT): New type.
(FCT): Add ends argument. If ends != NULL and normal * is
seen in the pattern, store current pattern and string pointers
and return. Adjust recursive calls.
(EXT): Adjust FCT callers.
(STRUCT): Undef at the end of the file.
* posix/Makefile (tests): Add tst-fnmatch2.
* posix/tst-fnmatch2.c: New test.
2007-04-01 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ia64/fpu/fesetround.c (fesetround): Return 0 on success
and 1 on failure.
* sysdeps/unix/sysv/linux/sync_file_range.c (sync_file_range):
Change last argument to unsigned int.
2007-03-23 Jakub Jelinek <jakub@redhat.com>
* scripts/check-local-headers.sh: Filter out sys/capability.h.
2007-03-22 Jakub Jelinek <jakub@redhat.com>
* config.h.in (HAVE_LIBCAP): Add.
* nscd/selinux.h: Include sys/capability.h rather than non-existent
sys/capabilities.h.
* nscd/selinux.c (preserve_capabilities): Use cap_free instead of
free_caps. Cast away const from 4th cap_set_flag argument.
2007-03-26 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/Versions: Move sync_file_range to
GLIBC_2.6.
* sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
Add sync_file_range.
Reported by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
2007-03-19 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/bits/atomic.h
[!MUTEX_HINT_ACQ]: Define MUTEX_HINT_ACQ.
[!MUTEX_HINT_REL]: Define MUTEX_HINT_REL.
(__arch_compare_and_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
(__arch_compare_and_exchange_val_32_rel): Add MUTEX_HINT_REL to lwarx.
(__arch_atomic_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
(__arch_atomic_exchange_rel_32_rel): Add MUTEX_HINT_REL to lwarx.
* sysdeps/powerpc/powerpc32/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6X]:
Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
(__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
(__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
* sysdeps/powerpc/powerpc64/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6D]:
Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
(__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
(__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
(__arch_compare_and_exchange_bool_64_acq): Add MUTEX_HINT_ACQ to lwarx.
(__arch_compare_and_exchange_bool_64_rel): Add MUTEX_HINT_REL to lwarx.
(__arch_compare_and_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
(__arch_compare_and_exchange_val_64_rel): Add MUTEX_HINT_REL to lwarx.
(__arch_atomic_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
(__arch_atomic_exchange_rel_64_rel): Add MUTEX_HINT_REL to lwarx.
2007-03-20 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/libc-start.c
(__cache_line_size): Define the variable here. Add
attribute_hidden, remove weak_extern.
(__libc_start_main): Set __cache_line_size
unconditionally.
* sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
(__cache_line_size): Define the variable here. Add
attribute_hidden, remove weak_extern.
(DL_PLATFORM_AUXV): Set __cache_line_size
unconditionally.
* sysdeps/powerpc/powerpc32/dl-machine.c (__cache_line_size): Remove
weak_extern, add attribute_hidden.
(__elf_machine_runtime_setup): Assume __cache_line_size is always
defined in ld.so.
* sysdeps/powerpc/powerpc32/memset.S (__cache_line_size): Remove
definition.
* sysdeps/powerpc/powerpc64/memset.S (__cache_line_size): Likewise.
2007-03-26 Jakub Jelinek <jakub@redhat.com>
[BZ #4276]
* timezone/africa: Update from tzdata2007d.
* timezone/asia: Likewise.
* timezone/australasia: Likewise.
* timezone/backward: Likewise.
* timezone/europe: Likewise.
* timezone/iso3166.tab: Likewise.
* timezone/leapseconds: Likewise.
* timezone/northamerica: Likewise.
* timezone/southamerica: Likewise.
* timezone/zone.tab: Likewise.
* timezone/private.h: Update from tzcode2007d.
* timezone/zdump.c: Likewise.
* timezone/zic.c: Likewise.
2007-03-21 Jakub Jelinek <jakub@redhat.com>
* nis/nis_call.c: Include bits/libc-lock.h, sys/stat.h, unistd.h.
(nis_server_cache, nis_server_cache_lock, nis_cold_start_mtime): New
variables.
(nis_server_cache_search, nis_server_cache_add): New functions.
(__nisfind_server): Use them. Add dbp and flags argument, if
call __nisbind_create.
(__nisbind_create): Add server_used and current_ep arguments,
only call __nis_findfastest if server_used is ~0.
(__do_niscall2, __prepare_niscall): Adjust callers.
(ckey_cache, ckey_cache_size, ckey_cache_allocated, ckey_cache_pid,
ckey_cache_euid, ckey_cache_lock): New variables.
(get_ckey): New function.
(__nisbind_connect): If not dbp->use_udp, pass IPPROTO_TCP to
__pmap_getnisport. Save __pmap_getnisport result in
dbp->addr.sin_port if non-zero. Use get_ckey to create conversation
key.
* nis/nis_lookup.c (nis_lookup): Likewise.
* nis/nis_table.c (nis_list): Likewise.
* nis/rpcsvc/nislib.h (__nisbind_create, __nisfind_server): Adjust
prototypes.
* nis/nss_nisplus/nisplus-pwd.c (_nss_nisplus_getpwnam_r,
_nss_nisplus_getpwuid_r): Pass USE_DGRAM flag to nis_list.
* nis/nss_nisplus/nisplus-service.c (_nss_nisplus_getservbyname_r,
_nss_nisplus_getservbyport_r): Likewise.
* nis/nss_nisplus/nisplus-network.c (_nss_nisplus_getnetbyname_r,
_nss_nisplus_getnetbyaddr_r): Likewise.
* nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_getspnam_r): Likewise.
* nis/nss_nisplus/nisplus-ethers.c (_nss_nisplus_gethostton_r,
_nss_nisplus_getntohost_r): Likewise.
* nis/nss_nisplus/nisplus-rpc.c (_nss_nisplus_getrpcbyname_r,
_nss_nisplus_getrpcbynumber_r): Likewise.
2007-03-20 Jakub Jelinek <jakub@redhat.com>
* configure.in (libc_cv_gnu89_inline): Only do compile test.
* configure: Rebuilt.
* soft-fp/double.h (_FP_UNION_D): Use _FP_W_TYPE for frac
bit-fields.
* soft-fp/extended.h (_FP_UNION_E): Likewise.
2006-06-07 Joseph Myers <joseph@codesourcery.com>
[BZ #2831]
* soft-fp/quad.h (_FP_UNION_Q): Use _FP_W_TYPE for frac
bit-fields.
2007-03-18 Jakub Jelinek <jakub@redhat.com>
* nscd/gai.c: Include alloca.h.
(__libc_use_alloca): Define.
2007-03-16 Jakub Jelinek <jakub@redhat.com>
* elf/dl-open.c (dl_open_worker): Declare l in 2 different
smaller scopes.
* elf/dl-dst.h (DL_DST_REQ_STATIC): Add l as macro argument.
(DL_DST_REQUIRED): Adjust user.
* include/dlfcn.h (struct link_map): New forward decl.
* inet/getnameinfo.c: Include stddef.h.
(getnameinfo): Use offsetof.
* time/tst-mktime2.c (do_test): Don't rely on signed wrap.
* stdio-common/vfprintf.c (_itoa): Undef before redefining.
* string/strerror_l.c: Include stdlib.h.
* configure.in (libc_cv_gnu89_inline): Test for -fgnu89-inline.
* config.make.in (gnu89-inline-CFLAGS): New variable.
* Makeconfig (CFLAGS): Use $(gnu89-inline-CFLAGS) together with
-std=gnu99.
* misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Define.
* argp/argp.h: Use it.
* bits/mathinline.h: Likewise.
* bits/sigset.h: Likewise.
* bits/string.h: Likewise.
* ctype/ctype.h: Likewise.
* hurd/hurd.h: Likewise.
* hurd/hurd/fd.h: Likewise.
* hurd/hurd/port.h: Likewise.
* hurd/hurd/signal.h: Likewise.
* hurd/hurd/threadvar.h: Likewise.
* hurd/hurd/userlink.h: Likewise.
* io/sys/stat.h: Likewise.
* libio/bits/stdio.h: Likewise.
* libio/bits/stdio2.h: Likewise.
* mach/lock-intern.h: Likewise.
* mach/mach/mig_support.h: Likewise.
* math/bits/cmathcalls.h: Likewise.
* posix/bits/unistd.h: Likewise.
* socket/bits/socket2.h: Likewise.
* stdlib/bits/stdlib.h: Likewise.
* stdlib/stdlib.h: Likewise.
* string/argz.h: Likewise.
* string/bits/string2.h: Likewise.
* string/bits/string3.h: Likewise.
* sysdeps/alpha/fpu/bits/mathinline.h: Likewise.
* sysdeps/generic/inttypes.h: Likewise.
* sysdeps/generic/machine-lock.h: Likewise.
* sysdeps/generic/machine-sp.h: Likewise.
* sysdeps/i386/fpu/bits/mathinline.h: Likewise.
* sysdeps/i386/i486/bits/string.h: Likewise.
* sysdeps/ia64/fpu/bits/mathinline.h: Likewise.
* sysdeps/mach/alpha/machine-lock.h: Likewise.
* sysdeps/mach/alpha/machine-sp.h: Likewise.
* sysdeps/mach/i386/machine-lock.h: Likewise.
* sysdeps/mach/powerpc/machine-lock.h: Likewise.
* sysdeps/mach/powerpc/machine-sp.h: Likewise.
* sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
* sysdeps/s390/bits/string.h: Likewise.
* sysdeps/s390/fpu/bits/mathinline.h: Likewise.
* sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
* sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
* sysdeps/unix/sysv/linux/bits/sigset.h: Likewise.
* sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
* sysdeps/unix/sysv/linux/sys/sysmacros.h: Likewise.
* sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
* wcsmbs/bits/wchar2.h: Likewise.
* wcsmbs/wchar.h: Likewise.
* stdlib/gmp.h: Likewise. Include <features.h> to get
__extern_inline definition.
2007-03-15 Jakub Jelinek <jakub@redhat.com>
* locale/programs/ld-ctype.c (find_translit): Return NULL if ctype is
NULL.
[BZ #3919]
* math/libm-test.inc (log_test): Test -Inf and NaN.
(log10_test, log1p_test, log2_test): Test -Inf.
* sysdeps/i386/fpu/e_log.S (__ieee754_log): Don't raise
FE_INVALID when argument is qNaN.
* sysdeps/i386/fpu/e_logl.S (__ieee754_logl): Likewise.
* sysdeps/i386/fpu/e_logf.S (__ieee754_logf): Likewise.
* sysdeps/x86_64/fpu/e_logl.S (__ieee754_logl): Likewise.
* sysdeps/x86_64/fpu/e_log10l.S (__ieee754_log10l): Replace
andb $1, %ah with testb $1, %ah, don't test for parity, instead
testb $4, %ah and jump if non-zero.
* sysdeps/x86_64/fpu/e_log2l.S (__ieee754_log2l): Likewise.
* sysdeps/x86_64/fpu/s_log1pl.S (__log1pl): Likewise.
[BZ #4101]
* argp/argp-help.c (hol_cluster_cmp): Fix comparisons used to find
ancestors with the same depths.
Patch by Niels Moeller <nisse@lysator.liu.se>.
(filter_doc): Don't crash if argp is NULL.
* argp/Makefile (tests): Add tst-argp2.
* argp/tst-argp2.c: New test.
[BZ #4130]
* login/utmp_file.c (setutent_file): Use O_LARGEFILE for
open_not_cancel_2.
(updwtmp_file): Likewise.
[BZ #4181]
* inet/inet6_opt.c (add_padding): Only insert padding if npad > 0.
(inet6_opt_append): Don't check extlen is big enough if extbuf
is NULL.
(inet6_opt_finish): Likewise.
* inet/Makefile (tests): Add test-inet6_opt.
* inet/test-inet6_opt.c: New test.
* sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Never
reallocate the buffer, instead fail for MSG_TRUNC or for EBUSY
NLMSG_ERR. Instead use a page sized buffer.
* sysdeps/unix/sysv/linux/check_pf.c (make_request): Use page sized
buffer.
2007-03-14 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/fpu/s_llround.c: New file.
* sysdeps/alpha/fpu/s_llroundf.c: New file.
* sysdeps/alpha/fpu/s_lround.c: New file.
* sysdeps/alpha/fpu/s_lroundf.c: New file.
* sysdeps/alpha/fpu/s_round.c: New file.
* sysdeps/alpha/fpu/s_roundf.c: New file.
* sysdeps/alpha/fpu/s_trunc.c: New file.
* sysdeps/alpha/fpu/s_truncf.c: New file.
* sysdeps/alpha/fpu/s_ceil.c: Rewrite without branches.
* sysdeps/alpha/fpu/s_ceilf.c: Likewise.
* sysdeps/alpha/fpu/s_floor.c: Likewise.
* sysdeps/alpha/fpu/s_floorf.c: Likewise.
* sysdeps/alpha/fpu/s_rint.c: Likewise.
* sysdeps/alpha/fpu/s_rintf.c: Likewise.
* sysdeps/alpha/fpu/s_fmax.S: New file.
* sysdeps/alpha/fpu/s_fmaxf.S: New file.
* sysdeps/alpha/fpu/s_fmin.S: New file.
* sysdeps/alpha/fpu/s_fminf.S: New file.
* sysdeps/alpha/fpu/s_isnan.c: New file.
* sysdeps/alpha/fpu/s_isnanf.c: New file.
* sysdeps/alpha/fpu/s_llrint.c: New file.
* sysdeps/alpha/fpu/s_llrintf.c: New file.
* sysdeps/alpha/fpu/s_lrint.c: New file.
* sysdeps/alpha/fpu/s_lrintf.c: New file.
* sysdeps/alpha/fpu/s_nearbyint.c: New file.
* sysdeps/alpha/fpu/s_nearbyintf.c: New file.
* sysdeps/alpha/fpu/bits/mathinline.h (__floorf, __floor): Remove.
(__fdimf, fdimf, __fdim, fdim): Remove.
(__signbitf, __signbit, __signbitl): Use gcc builtin if available.
(__isnanf, __isnan, __isnanl): New.
2007-03-13 Richard Henderson <rth@redhat.com>
* sysdeps/ieee754/ldbl-128/Makefile: New file.
2007-03-13 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/Makefile (sysdep-CFLAGS): Force dynamic rounding.
* sysdeps/alpha/fpu/bits/mathinline.h (__signbitl): New.
* sysdeps/alpha/fpu/libm-test-ulps: Regenerate.
* sysdeps/unix/sysv/linux/alpha/alphaev6/fpu/Implies: New file.
* sysdeps/unix/sysv/linux/alpha/alphaev67/fpu/Implies: New file.
* sysdeps/unix/sysv/linux/alpha/fpu/Implies: New file.
2007-03-13 Richard Henderson <rth@redhat.com>
* elf/dl-support.c (_dl_aux_init): Honor DL_PLATFORM_AUXV.
* sysdeps/unix/sysv/linux/alpha/dl-auxv.h: New file.
* sysdeps/unix/sysv/linux/alpha/dl-support.c: New file.
* sysdeps/unix/sysv/linux/alpha/dl-sysdep.c (__libc_alpha_cache_shape):
Move to dl-auxv.h; initialize instead of extern weak.
(DL_PLATFORM_AUXV): Move to dl-auxv.h; don't test for undef
weak symbol.
* sysdeps/unix/sysv/linux/alpha/sysconf.c (__libc_alpha_cache_shape):
Extern instead of initialized.
2007-03-13 Richard Henderson <rth@redhat.com>
* sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add support for
__sigsuspend_nocancel.
2007-03-06 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/getaddrinfo.c (get_scope): Correct test for
172.16/12 address range.
2007-03-02 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Retry with
a new netlink socket if NLMSG_ERR -EBUSY is seen after some MSG_TRUNC
message.
2007-03-01 Jakub Jelinek <jakub@redhat.com>
[BZ #4069]
* sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Check for NaN
earlier.
* math/libm-test.inc (pow_test): Add more tests involving NaNs.
* sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Avoid invalid exception
for x qNaN and y either +-inf or non-integer value.
* sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Likewise.
* sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
* sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
2007-02-10 Mike Frysinger <vapier@gentoo.org>
* sysdeps/unix/sysv/linux/sh/Makefile: Remove sys/io.h
from sysdep_headers.
2007-02-28 Jakub Jelinek <jakub@redhat.com>
* time/tzfile.c (find_transition): Instead of a linear search try to
guess the transition index, use a linear search if the result is at
most 10 transitions away from the guess or binary search otherwise.
2007-02-27 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Fix
memory reallocation.
2007-02-21 Ulrich Drepper <drepper@redhat.com>
* stdlib/strtod_l.c (____STRTOF_INTERNAL): Add branch predictions
and fix some typos.
Optimize use of TOLOWER.
[BZ #3325]
* sysdeps/i386/fpu/e_fmodf.S: Revert last changes, keep using fprem.
* sysdeps/i386/fpu/e_fmodl.c: Likewise.
* sysdeps/i386/fpu/e_fmod.S: Likewise.
[BZ #3458]
* sysdeps/unix/sysv/linux/posix_madvise.c: New file.
* sysdeps/unix/sysv/linux/syscalls.list: Remove posix_madvise entry.
[BZ #4076]
* io/ftw.c (ftw_startup): Handle special case of FTW_CHDIR in /.
(open_dir_stream): Likewise.
* io/Makefile (tests): Add bug-ftw5.
* io/bug-ftw5.c: New file.
* nscd/hstcache.c (cache_addhst): Remove unnecessary conditional.
* nscd/servicescache.c (cache_addserv): Likewise.
* nscd/grpcache.c (cache_addgr): In case a record changed on
refresh, adjust key_copy.
[BZ #4074]
* nscd/pwdcache.c (cache_addpw): In case a record changed on
refresh, adjust key_copy.
[BZ #4070]
* stdio-common/printf_fp.c (___printf_fp): Handle a few more
special cases.
* stdio-common/tfformat.c (sprint_doubles): Some more tests.
2007-02-19 Ulrich Drepper <drepper@redhat.com>
* stdio-common/printf_fp.c (___printf_fp): Cleanups and minor
optimization.
* stdio-common/vfscanf.c: Small cleanups throughout.
2007-02-18 Ulrich Drepper <drepper@redhat.com>
[BZ #3325]
* sysdeps/i386/fpu/e_fmodf.S: Use fprem1 instead of fprem.
* sysdeps/i386/fpu/e_fmodl.c: Likewise.
* sysdeps/i386/fpu/e_fmod.S: Likewise.
Patch by Jared Casper <jaredcasper@gmail.com>.
* sysdeps/unix/closedir.c: Outside libc don't use locking.
* sysdeps/unix/opendir.c: Likewise.
* sysdeps/unix/readdir.c: Likewise.
[BZ #2211]
* stdio-common/vfscanf.c: Handle localized digits etc for floating
point numbers.
Patch mostly by Hamed Malek <hamed@farsiweb.info>.
* stdio-common/vfscanf.c: Fix problems in width accounting.
* stdio-common/tst-sscanf.c (double_tests): New tests.
(main): Hook them up.
* stdio-common/vfscanf.c: Remove unused WIDTH handling.
More simplifications of floating-point reader.
* stdio-common/Makefile (tests): Add tst-swscanf.
* stdio-common/tst-sscanf.c: Make tests usable for swscanf
testing.
* stdio-common/tst-swscanf.c: New file.
2007-02-17 Ulrich Drepper <drepper@redhat.com>
[BZ #2633]
* libio/stdio.h: Define struct _IO_FILE in global namespace.
* setjmp/setjmp.h: Define __jmp_buf_tag in global namespace.
Remove using for __jmp_buf_tag.
* locale/locale.h (struct lconv): Also define in std namespace.
* wcsmbs/wchar.h: Move using declaration for tm out of namespace.
[BZ #3842]
* sysdeps/posix/euidaccess.c [_LIBC] (euidaccess): Remove shortcut
using __libc_enable_secure.
[BZ #3818]
* sysdeps/unix/sysv/linux/sys/acct.h (struct acct_v3): Define.
[BZ #3745]
* locale/programs/ld-collate.c (handle_ellipsis): Fix generation
of names for ellipsises.
[BZ #3348]
* malloc/memusage.sh: Cleanups.
* debug/xtrace.sh: Quoting and trap changes.
2007-02-16 Ulrich Drepper <drepper@redhat.com>
* locale/iso-3166.def: Add Jersey, Guernsey, and Isle Of Man entries.
* locale/iso-3166.def: Update entry for Serbia.
* locale/iso-4217.def: Define RSD, remove CSD.
* sysdeps/x86_64/bits/atomic.h: One more change, this time for 16-
and 64-bit operations.
[BZ #4040]
* sysdeps/i386/i486/bits/atomic.h: One more change, this time for
16-bit operations.
* nscd/nscd.c (parse_opt): One more conversion to use send instead
of writev.
2007-02-15 Ulrich Drepper <drepper@redhat.com>
[BZ #3991]
* assert/assert.h (assert): Simplify.
(assert_perror): Likewise.
Patch by Israel G. Lugo <ilugo@bridonsecurity.com>.
* nscd/nscd_helper.c (open_socket): Don't send padding bytes from
reqdata.
* sysdeps/unix/sysv/linux/x86_64/send.c (__libc_send): Cosmetic
change: don't pass NULL in place of an integer.
2007-02-02 Bruno Haible <bruno@clisp.org>
[BZ #3954]
* iconvdata/ksc5601.c (__ksc5601_sym_to_ucs, __ksc5601_sym_from_ucs):
Add mapping for U+327E.
* iconvdata/ksc5601.h (KSC5601_SYMBOL): Increment.
* iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
mapping of 0xD9 0xE8.
* iconvdata/uhc.c (BODY for FROM_LOOP, BODY for TO_LOOP): Disable
mapping of U+327E.
Reported by Jungshik Shin <jungshik@google.com>.
[BZ #3955]
* iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
mapping of 0xD9 0xE6 and of 0xD9 0xE7.
Reported by Jungshik Shin <jungshik@google.com>.
2007-02-14 Ulrich Drepper <drepper@redhat.com>
* sysdeps/x86_64/bits/atomic;h: Fix asm parameters for some
byte variants.
[BZ #4040]
* sysdeps/i386/i486/bits/atomic.h: Fix asm parameters for some
byte variants. Patch mostly be tom@tommay.net.
2007-02-14 Jakub Jelinek <jakub@redhat.com>
[BZ #3996]
* posix/glob.c (attribute_hidden): Define if not defined.
(glob): Unescape dirname, filename or username when needed and not
GLOB_NOESCAPE. Handle \/ correctly. Handle GLOB_MARK if filename
is NULL. Handle unescaped [ in pattern without closing ].
Don't pass GLOB_CHECK down to recursive glob for directories.
(__glob_pattern_type): New function.
(__glob_pattern_p): Implement using __glob_pattern_type.
(glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
characters and backslashes if not GLOB_NOESCAPE or unterminated [.
Remove unreachable code.
* posix/globtest.sh: Add a couple of new tests.
2007-02-13 Ulrich Drepper <drepper@redhat.com>
* po/ru.po: Update from translation team.
2007-02-12 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/bits/byteswap.h (__bswap_32): Add __amdfam10__
to the list of i486+ CPUs.
* sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
2007-02-12 Ulrich Drepper <drepper@redhat.com>
* elf/rtld.c (RESOLVE_MAP): Always return bootstrap_map reference.
* elf/Makefile ($(objpfx)ld.so): Check that ld.so has no undefined
references.
2007-02-09 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Remove incorrect comment.
* resolv/res_init.c (res_setoptions): Recognize edns0 option.
* resolv/res_mkquery.c: Define __res_nopt.
* resolv/res_query.c (__libc_res_nquery): If RES_USE_EDNS0 is set
try adding EDNS0 record.
* resolv/res_send.c (send_dg): If request failed with FORMERR and
EDNS0 record was send make sure we don't try it again.
* resolv/resolv.h: Define RES_F_EDNS0ERR and RES_USE_EDNS0.
* include/resolv.h: Declare __res_nopt.
2007-02-08 Jakub Jelinek <jakub@redhat.com>
[BZ #3944]
* time/strptime_l.c (__strptime_internal): Set have_mon for
%b/%B/%h. Set have_mon and have_mday if tm_mon and tm_mday
have been computed from tm_yday and tm_year. Don't crash
in day_of_the_week or day_of_the_year if not have_mon
and tm_mon contains bogus value.
* time/Makefile (tests): Add tst-strptime3.
* time/tst-strptime3.c: New test.
2007-02-05 Jakub Jelinek <jakub@redhat.com>
[BZ #3957]
* posix/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
bit for RE_HAT_LISTS_NOT_NEWLINE.
(build_charclass_op): Remove bogus comment.
* posix/Makefile (tests): Add bug-regex27 and bug-regex28.
* posix/bug-regex27.c: New test.
* posix/bug-regex28.c: New test.
2007-02-03 Ulrich Drepper <drepper@redhat.com>
* po/sv.po: Update from translation team.
2007-02-02 Ulrich Drepper <drepper@redhat.com>
* nscd/nscd_helper.c (open_socket): Minor size optimization.
2007-02-02 Jakub Jelinek <jakub@redhat.com>
* include/locale.h (__uselocale): Add libc_hidden_proto.
* locale/uselocale.c (__uselocale): Add libc_hidden_def.
* nscd/nscd_helper.c (open_socket): Use __gettimeofday instead of
gettimeofday.
2007-02-01 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/sysdep.h (PTR_MANGLE): Roll value before
returning.
(PTR_DEMANGLE): Real definition now that it's not the same as
PRT_MANGLE anymore.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
* string/strerror_l.c: New file.
* string/Makefile (routines): Add strerror_l.
* string/string.h: Declare strerror_l.
* string/Versions: Export strerror_l for GLIBC_2.6.
2007-01-31 Ulrich Drepper <drepper@redhat.com>
* nscd/nscd_helper.c (open_socket): Now takes request type and key
as parameter. Construct request record. Try sending request
before the first poll use, it usually succeeds. Adjust all
callers.
* nscd/nscd-client.h: Define MAXKEYLEN.
* nscd/connections.c (nscd_run): Don't define MAXKEYLEN here.
2007-01-31 Jakub Jelinek <jakub@redhat.com>
* nscd/nscd-client.h (__nscd_cache_search): Remove const qualifier
from return value.
* nscd/nscd_helper.c: Include string.h.
(__nscd_cache_search): Remove const qualifier from return value.
On strict alignment architectures check hash entry and data head
alignment.
* nscd/nscd_getpw_r.c (nscd_getpw_r): Don't crash or fail because
mmapped data during GC cycle contains garbage. If
__nscd_drop_map_ref fails, decrement mapped->counter when returning
error or if retrying with NO_MAPPING, only __nscd_unmap if counter
dropped to 0.
* nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
* nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise.
* nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
* nscd/nscd_getai.c (__nscd_getai): Likewise.
* nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
2007-01-30 Ulrich Drepper <drepper@redhat.com>
* misc/hsearch_r.c (hdestroy_r): Remove unnecessary test.
2007-01-26 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Use register
names not numbers in cfi_*.
2007-01-26 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/sys/personality.h (ADDR_NO_RANDOMIZE,
ADDR_LIMIT_3GB, PER_LINUX_32BIT, PER_LINUX32_3GB): Add.
Correct values of PER_HPUX and PER_OSF4.
2007-01-24 Ulrich Drepper <drepper@redhat.com>
* elf/dl-minimal.c: Undefine _itoa first.
* stdio-common/_itoa.h: Define _itoa and _fitoa for 64-bit platforms.
* malloc/mtrace.c: Revert last change.
* posix/wordexp.c: Likewise.
2007-01-24 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/bits/byteswap.h (__bswap_32): Add __nocona__, __core2__
and __geode__ to the list of i486+ CPUs.
* sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
2007-01-23 Ulrich Drepper <drepper@redhat.com>
* stdio-common/_itoa.c: Include <limits.h>.
* stdio-common/_itowa.c: Likewise.
2007-01-22 Ulrich Drepper <drepper@redhat.com>
* stdio-common/_itowa.c: Don't compile _itowa for 64-bit
platforms.
* stdio-common/_itoa.c: Don't compile in _itoa and _fitoa for
64-bit platforms.
* malloc/mtrace.c (tr_where): Use _fitoa_word instead of _fitoa if
possible.
* posix/wordexp.c (parse_arith): Use _itoa_word instead of _itoa
if possible.
[BZ #3902]
* stdio-common/_itoa.c (_itoa): Make sure at least a zero is emitted.
* stdio-common/Makefile (tests): Add bug17.
* stdio-common/bug17.c: New file.
2007-01-19 Ulrich Drepper <drepper@redhat.com>
* iconvdata/brf.c: New file.
* iconvdata/testdata/BRF: New file.
* iconvdata/testdata/BRF..UTF8: New file.
Contributed by Samuel Thibault <samuel.thibault@ens-lyon.org>.
* iconvdata/Makefile: Add rules to build BRF.
* iconvdata/TESTS: Add BRF entry.
* iconvdata/gconv-modules: Likewise.
* iconvdata/tst-tables.sh: Likewise.
2007-01-18 Anton Nikishaev <anton.nik@gmail.com>
* wcsmbs/wchar.h (wcstoll): Fix comment, function returns value of
type `long long int', not `long int'.
(wcstoq): Likewise.
2007-01-18 Ulrich Drepper <drepper@redhat.com>
* scripts/gen-as-const.awk: Add cast to long to avoid int promotion
of values on 64-bit platforms which are too large.
2007-01-12 Steven Munroe <sjmunroe@us.ibm.com>
Joe Kerian <jkerian@us.us.ibm.com>
[BZ #2749]
* sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: Include
<math_ldbl_opt.h>. Remove weak_alias. Use long_double_symbol macro.
(__copysignl): Use signbit() for comparison.
* sysdeps/ieee754/ldbl-128ibm/s_fabsl.c (__fabsl): Correct parms for
SET_LDOUBLE_WORDS64.
[BZ #2423, #2749]
* sysdeps/ieee754/ldbl-128ibm/s_ceill.c: Don't include <fenv_libc.h>.
(__ceill): Remove calls to fegetround(), fesetround().
* sysdeps/ieee754/ldbl-128ibm/s_floorl.c: Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_roundl.c: Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_truncl.c: Likewise.
2007-01-17 Jakub Jelinek <jakub@redhat.com>
* nscd/nscd_getserv_r.c (nscd_getserv_r): Fix pastos.
* sysdeps/unix/sysv/linux/getdents.c (offsetof): Remove.
2007-01-17 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/fatal-prepare.h: Use PTHFCT_CALL to
demangle pointer.
* csu/libc-start.c: Likewise.
2007-01-16 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/system.c: Remove NO_WAITPID support, it cannot
really work anyway.
2007-01-15 Ulrich Drepper <drepper@redhat.com>
* nscd/connections.c (servinfo): Renamed to reqinfo. Change all
users.
(handle_request): Remove unnecessary tests.
* nscd/cache.c (cache_add): Record the failure to add to the cache.
2007-01-15 Jakub Jelinek <jakub@redhat.com>
* soft-fp/op-common.h (FP_TRUNC): When truncating a NaN, clear
workbits in semi-raw fraction.
* math/test-misc.c: Add new tests.
2007-01-14 Steven Munroe <sjmunroe@us.ibm.com>
* math/basic-test.c: Include test-skeleton.c.
(TEST_TRUNC): Define.
(truncdfsf_test, trunctfsf_test, trunctfdf_test): New.
(main): Rename to ...
(do_test): ...this. Run new tests.
(TEST_FUNCTION): Define.
2006-10-05 Steven Munroe <sjmunroe@us.ibm.com>
Joe Kerian <jkerian@us.us.ibm.com>
[BZ #2749]
* soft-fp/op-4.h (__FP_FRAC_SUB_3, __FP_FRAC_SUB_4): Correct borrow
handling for high words.
* soft-fp/op-common.h (_FP_OVERFLOW_SEMIRAW): Always set inexact
and overflow for infinity.
2007-01-15 Ulrich Drepper <drepper@redhat.com>
* nscd/connections.c (handle_request): Add a __builtin_expect.
* nscd/connections.c (serv2db): Change type into structure which
also says whether this is a request for data. Renamed to
servinfo. All users changed.
(handle_request): Much simpler test whether we should search the cache.
* nscd/connections.c (handle_request): Fix thinko in selinux test
invocation.
* sysdeps/generic/ldsodefs.h: Define DL_LOOKUP_SCOPE_LOCK.
* elf/dl-lookup.c (add_dependency): If scope map is locked, unlock
it before getting dl_load_lock and then relock.
(_dl_lookup_symbol_x): Pass flags to add_dependency.
When rerunning _dl_lookup_symbol_x, compute symbol_scope again in
case we unlocked the scope.
* elf/dl-runtime.c (_dl_fixup): Pass DL_LOOKUP_SCOPE_LOCK to
_dl_lookup_symbol_x in case we locked the scope.
(_dl_profile_fixup): Likewise.
* elf/dl-sym.c (do_sym): In flags passed to call_dl_lookup, also
set DL_LOOKUP_SCOPE_LOCK.
2007-01-13 Ulrich Drepper <drepper@redhat.com>
* inet/Makefile: Define CFLAGS-getsrvbynm_r.c and
CFLAGS-getsrvbynpt_r.c.
* nscd/getsrvbynm_r.c: New file.
* nscd/getsrvbypt_r.c: New file.
* nscd/nscd_getserv_r.c: New file.
* nscd/servicescache.c: New file.
* nscd/Makefile (routines): Add nscd_getserv_r.
(nscd-modules): Add getsrvbynm_r, getsrvbypt_r, and servicescache.
Define CFLAGS-servicescache.c, CFLAGS-getsrvbynm_r.c, and
CFLAGS-getsrvbypt_r.c.
* nscd/cache.c (prune_cache): Rewrite to get re-add function from
table. Add entries for services database.
* nscd/connections.c (serv2str): Mark as const. Add entries for
services database.
(dbs): Add .reset_res and servdb initialization.
(serv2db): Add entries for services database.
(verify_persistent_db): Accept dbnr == servdb.
(invalidate_cache): Rewrite database name recognition to use a table.
Call res_init() if .reset_res is set for database.
(handle_request): Add code to handle services database.
* nscd/gai.c: Don't define __getservbyname_r.
* nscd/nscd-client.h (request_type): Remove LASTDBREQ, add
GETSERVBYNAME, GETSERVBYPORT, GETFDSERV.
(serv_response_header): Define.
(struct datahead): Add serv_response_header member.
* nscd/nscd.c (parse_opt): Rewrite parsing of -i parameter value
using table.
* nscd/nscd.conf: Add entries for services database.
* nscd/nscd.h: Adjust declaration of dbnames and serv2str.
Declare serv_iov_disabled.
Declare addservbyname, readdservbyname, addservbyport, and
readdservbyport.
* nscd/nscd_conf.c (dbnames): Mark as const. Add services entry.
(find_db): Fix error message.
* nscd/nscd_proto.h: Declare __nss_not_use_nscd_services,
__nscd_getservbyname_r, and __nscd_getservbyport_r.
* nscd/selinux.c (perms): Add entries for services database.
* nss/Versions: Export __nss_services_lookup with GLIBC_PRIVATE.
* nss/nsswitch.c (__nss_disable_nscd): Also disable services database.
* nscd/grpcache.c: Remove obsolete code. Cleanups.
* nscd/hstcache.c: Likewise.
* nscd/pwdcache.c: Likewise.
* nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): Correct
computation of keylen.
* include/string.h: Only redefine strndupa if this is really for
libc code.
2007-01-12 Ulrich Drepper <drepper@redhat.com>
* nscd/nscd_gethst_r.c: Minor cleanups.
* nscd/connections.c (handle_request): Check selinux permissions
for all non-admin commands.
* sysdeps/i386/i486/bits/atomic.h: Define
atomic_compare_and_exchange_val_acq,
atomic_compare_and_exchange_bool_acq, and atomic_exchange_and_add
using __sync_* built-ins for gcc >= 4.1.
* sysdeps/x86_64/bits/atomic.h: Likewise.
[BZ #3840]
* scripts/check-local-headers.sh: Restrict to testing .o.d, .os.d,
and .oS.d files.
2007-01-05 Steven Munroe <sjmunroe@us.ibm.com>
* stdlib/tst-makecontext.c: Include errno.h. Change main()
to do_test(). Define TEST_FUNCTION. Include test-skeleton.c.
(do_test): Check errno and exit(0) if ENOSYS.
2007-01-11 Jakub Jelinek <jakub@redhat.com>
* stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix handling of multi-byte
thousands separators.
* stdlib/Makefile: Add rules to build and run tst-strtod4.
* stdlib/tst-strtod4.c: New test.
[BZ #3855]
* stdlib/strtod_l.c (____STRTOF_INTERNAL): 0x. not followed by
hexadecimal digit should accept just the initial 0.
* stdlib/tst-strtod2.c (tests): New variable.
(do_test): Run several tests rather than just one.
2007-01-11 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/soft-fp/sfp-machine.h: Remove.
* sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
2007-01-10 Ulrich Drepper <drepper@redhat.com>
* io/fts.c: Make sure fts_cur is always valid after return from
fts_read.
Patch by Miloslav Trmac <mitr@redhat.com>.
2006-10-27 Richard Sandiford <richard@codesourcery.com>
* elf/elf.h (R_MIPS_GLOB_DAT): Define.
(R_MIPS_NUM): Bump by 1.
2007-01-03 Jakub Jelinek <jakub@redhat.com>
* posix/execvp.c: Include alloca.h.
(allocate_scripts_argv): Renamed to...
(scripts_argv): ... this. Don't allocate buffer here nor count
arguments.
(execvp): Use alloca if possible.
* posix/Makefile: Add rules to build and run tst-vfork3 test.
* posix/tst-vfork3.c: New test.
2007-01-03 Ulrich Drepper <drepper@redhat.com>
* string/Makefile (tst-strxfrm2-ENV): Define.
* stdlib/Makefile (tst-strtod3-ENV): Define.
2007-01-02 Ulrich Drepper <drepper@redhat.com>
* posix/getconf.c: Update copyright year.
* nss/getent.c: Likewise.
* iconv/iconvconfig.c: Likewise.
* iconv/iconv_prog.c: Likewise.
* elf/ldconfig.c: Likewise.
* catgets/gencat.c: Likewise.
* csu/version.c: Likewise.
* elf/ldd.bash.in: Likewise.
* elf/sprof.c (print_version): Likewise.
* locale/programs/locale.c: Likewise.
* locale/programs/localedef.c: Likewise.
* nscd/nscd.c (print_version): Likewise.
* debug/xtrace.sh: Likewise.
* malloc/memusage.sh: Likewise.
* malloc/mtrace.pl: Likewise.
* debug/catchsegv.sh: Likewise.
2006-12-24 Ulrich Drepper <drepper@redhat.com>
* malloc/malloc.c (sYSMALLOc): Remove some unnecessary alignment
attempts.
2006-12-23 Ulrich Drepper <drepper@redhat.com>
* posix/wordexp.c: Remove some unnecessary tests.
2006-12-22 Gavin Romig-Koch <gavin@redhat.com>
* nis/nss_compat/compat-grp.c (internal_getgrgid_r): Don't
blacklist the group till after we look it up.
2006-12-21 Ulrich Drepper <drepper@redhat.com>
* include/atomic.h (atomic_forced_read): New macro.
2006-12-20 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
* sysdeps/unix/sysv/linux/sh/bits/shm.h: New file.
2006-12-19 Jakub Jelinek <jakub@redhat.com>
* nss/getXXbyYY_r.c: Include atomic.h.
(INTERNAL (REENTRANT_NAME)): Write startp after start_fct,
add atomic_write_barrier () in between.
* stdlib/Makefile (tests): Add tst-makecontext.
* stdlib/tst-makecontext.c: New test.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
(__makecontext): Don't realign uc_mcontext.uc_regs.
2006-11-28 Jakub Jelinek <jakub@redhat.com>
* elf/dl-support.c: Include dl-procinfo.h.
* sysdeps/powerpc/dl-procinfo.h (PPC_PLATFORM_POWER4,
PPC_PLATFORM_PPC970, PPC_PLATFORM_POWER5, PPC_PLATFORM_POWER5_PLUS,
PPC_PLATFORM_POWER6, PPC_PLATFORM_CELL_BE, PPC_PLATFORM_POWER6X):
Define.
(_dl_string_platform): Use PPC_PLATFORM_* macros instead of
hardcoded constants.
* sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_platform): Use
PPC_PLATFORM_* macros for array designators.
2006-11-11 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 3 new cap
names to the beginning.
(_dl_powerpc_platforms): Add "power6x".
* sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
(HWCAP_IMPORTANT): Add PPC_FEATURE_HAS_DFP.
(_DL_PLATFORMS_COUNT): Increase.
(_dl_string_platform): Handle power6x case.
* sysdeps/powerpc/sysdep.h (PPC_FEATURE_PA6T, PPC_FEATURE_HAS_DFP,
PPC_FEATURE_POWER6_EXT): Define.
(PPC_FEATURE_POWER5, PPC_FEATURE_POWER5_PLUS): Correct Comment.
2006-12-18 Jakub Jelinek <jakub@redhat.com>
[BZ #3747]
* stdlib/jrand48_r.c (__jrand48_r): Make sure result is in the
[-2^31 .. 2^31) range.
* stdlib/tst-rand48.c (main): Fix expected values for 64-bit
targets.
* stdlib/tst-rand48-2.c: New test.
* stdlib/Makefile (tests): Add tst-rand48-2.
2006-12-14 Jakub Jelinek <jakub@redhat.com>
* misc/tst-pselect.c (do_test): Fix sigblock argument.
2006-12-14 Ulrich Drepper <drepper@redhat.com>
* misc/tst-pselect.c (do_test): Make sure the helper process is
terminating when the test is aborted.
2006-12-13 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/statvfs.h: Define ST_RELATIME.
* sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags):
Handle relatime mount option.
[BZ #2337]
* libio/Makefile (tests): Add tst-setvbuf1.
* libio/tst-setvbuf1.c: New file.
2006-12-08 Jakub Jelinek <jakub@redhat.com>
[BZ #2337]
* libio/genops.c (__uflow): Fix a typo.
* libio/wfiledoalloc.c (_IO_wfile_doallocate): Don't stat
nor set _IO_LINE_BUF bit here. Size the wide buffer based on
the narrow buffer size.
2006-11-24 Jakub Jelinek <jakub@redhat.com>
[BZ #2337]
* libio/libio.h (_IO_FLAGS2_USER_WBUF): Define.
* libio/wgenops.c (_IO_wsetb, _IO_wdefault_finish): Test and set
_IO_FLAGS2_USER_WBUF bit in _flags2 instead of _IO_USER_BUF bit
in _flags.
* libio/wstrops.c (_IO_wstr_overflow, enlarge_userbuf,
_IO_wstr_finish): Likewise.
* libio/wmemstream.c (open_wmemstream): Likewise.
* libio/fileops.c (_IO_new_file_close_it): Call _IO_set[bgp]
even for wide streams.
2006-12-13 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Include
kernel-features.h.
2006-12-11 Ulrich Drepper <drepper@redhat.com>
* stdlib/strtod_l.c (____STRTOF_INTERNAL): Parse thousand
separators also if no non-zero digits found.
* stdlib/Makefile (tests): Add tst-strtod3.
2006-12-09 Ulrich Drepper <drepper@redhat.com>
[BZ #3632]
* include/features.h: Fix comment about default value for
_POSIX_C_SOURCE.
[BZ #3664]
* stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix test to recognize
empty parsed strings.
* stdlib/Makefile (tests): Add tst-strtod2.
* stdlib/tst-strtod2.c: New file.
[BZ #3673]
* stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix exp_limit
computation.
* stdlib/Makefile (tests): Add tst-atof2.
* stdlib/tst-atof2.c: New file.
[BZ #3674]
* stdlib/strtod_l.c (____STRTOF_INTERNAL): Adjust exponent value
correctly if removing trailing zero of hex-float.
* stdlib/Makefile (tests): Add tst-atof1.
* stdlib/tst-atof1.c: New file.
2006-12-09 Jakub Jelinek <jakub@redhat.com>
* misc/mntent_r.c (__hasmntopt): Check p[optlen] even when p == rest.
Start searching for next comma at p rather than rest.
* misc/Makefile (tests): Add tst-mntent2.
* misc/tst-mntent2.c: New test.
* misc/getusershell.c (initshells): Check for integer overflows.
Make strings buffer one bigger as fgets always succeeds when second
argument is 1. Don't use calloc for shells array. Disallow
/ as shell.
2006-12-08 Ulrich Drepper <drepper@redhat.com>
* malloc/memusage.c: Handle realloc with new size of zero and
non-NULL pointer correctly.
(me): Really write first record twice.
(struct entry): Make format bi-arch safe.
(dest): Write out more realloc statistics.
* malloc/memusagestat.c (struct entry): Make format bi-arch safe.
2006-12-05 Jakub Jelinek <jakub@redhat.com>
* nis/nis_subr.c (nis_getnames): Revert last change.
2006-12-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ttyname.c: Include termios.h.
(ttyname): Use tcgetattr instead of isatty, don't set errno to ENOTTY.
* sysdeps/unix/sysv/linux/ttyname_r.c: Include termios.h.
(__ttyname_r): Use tcgetattr instead of isatty, don't set errno to
ENOTTY.
* io/Makefile: Add rules to build and run tst-ttyname_r test.
* io/tst-ttyname_r.c: New test.
2006-12-03 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/unix/sysv/linux/sh/sys/io.h: Removed.
2006-11-30 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/i386/i686/memcmp.S: Use jump table as the base of
jump table entries.
2006-11-30 Jan Kratochvil <jan.kratochvil@redhat.com>
* sysdeps/unix/sysv/linux/i386/clone.S: Provide CFI for the outermost
`clone' function to ensure proper unwinding stop of gdb.
* sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
2006-12-01 Ulrich Drepper <drepper@redhat.com>
* nscd/nscd.init: Remove obsolete and commented-out -S option
handling.
2006-11-23 Jakub Jelinek <jakub@redhat.com>
[BZ #3514]
* manual/string.texi (strncmp): Fix pastos from wcscmp description.
[BZ #3515]
* manual/string.texi (strtok): Remove duplicate paragraph.
2006-12-01 Jan Kratochvil <jan.kratochvil@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/sigaction.c: Fix compatibility with
libgcc not supporting `rflags' unwinding (register # >= 17).
2006-11-30 Jakub Jelinek <jakub@redhat.com>
* sunrpc/svc_run.c (svc_run): Set my_pollfd to new_pollfd if realloc
succeeded.
2006-11-29 Daniel Jacobowitz <dan@codesourcery.com>
Jakub Jelinek <jakub@redhat.com>
Jan Kratochvil <jan.kratochvil@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/sigaction.c (restore_rt): Add correct
unwind information.
* sysdeps/unix/sysv/linux/x86_64/Makefile: Provide symbols for
'restore_rt' even in the 'signal' directory.
* sysdeps/unix/sysv/linux/x86_64/ucontext_i.sym: Extend the regs list.
2006-11-27 Jakub Jelinek <jakub@redhat.com>
[BZ #3559]
* sunrpc/svc_run.c (svc_run): Fail instead of segfaulting if
malloc crashed. Don't allocate memory unnecessarily in each
loop.
2006-10-21 Jakub Jelinek <jakub@redhat.com>
* resolv/mapv4v6addr.h (map_v4v6_address): Fix last change.
2006-11-20 Ulrich Drepper <drepper@redhat.com>
* resolv/mapv4v6addr.h (map_v4v6_address): Optimize a bit.
2006-11-18 Bruno Haible <bruno@clisp.org>
* sysdeps/unix/sysv/linux/i386/getgroups.c (__getgroups): Invoke
__sysconf only after having tried to call getgroups32.
2006-11-19 Ulrich Drepper <drepper@redhat.com>
* nss/nss_files/files-hosts.c (LINE_PARSER): Support IPv6-style
addresses for IPv4 queries if they can be mapped.
2006-11-16 Jakub Jelinek <jakub@redhat.com>
* sysdeps/x86_64/fpu/s_copysignf.S (__copysignf): Switch to .text.
* sysdeps/x86_64/fpu/s_copysign.S (__copysign): Likewise.
(signmask): Add .size directive.
(othermask): Add .type directive.
2006-11-14 Ulrich Drepper <drepper@redhat.com>
* po/nl.po: Update from translation team.
* timezone/zdump.c: Redo fix for BZ #3137.
2006-11-14 Jakub Jelinek <jakub@redhat.com>
* nss/nss_files/files-alias.c (get_next_alias): Set line back
to first_unused after parsing :include: file.
2006-11-10 Ulrich Drepper <drepper@redhat.com>
* timezone/africa: Update from tzdata2006o.
* timezone/antarctica: Likewise.
* timezone/asia: Likewise.
* timezone/australasia: Likewise.
* timezone/backward: Likewise.
* timezone/europe: Likewise.
* timezone/iso3166.tab: Likewise.
* timezone/northamerica: Likewise.
* timezone/southamerica: Likewise.
* timezone/zone.tab: Likewise.
* time/tzfile.c (__tzfile_read): Extend to handle new file format
on machines with 64-bit time_t.
* timezone/checktab.awk: Update from tzcode2006o.
* timezone/ialloc.c: Likewise.
* timezone/private.h: Likewise.
* timezone/scheck.c: Likewise.
* timezone/tzfile.h: Likewise.
* timezone/tzselect.ksh: Likewise.
* timezone/zdump.c: Likewise.
* timezone/zic.c: Likewise.
[BZ #3483]
* elf/ldconfig.c (main): Call setlocale and textdomain.
Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
[BZ #3480]
* manual/argp.texi: Fix typos.
* manual/charset.texi: Likewise.
* manual/errno.texi: Likewise.
* manual/filesys.texi: Likewise.
* manual/lang.texi: Likewise.
* manual/maint.texi: Likewise.
* manual/memory.texi: Likewise.
* manual/message.texi: Likewise.
* manual/resource.texi: Likewise.
* manual/search.texi: Likewise.
* manual/signal.texi: Likewise.
* manual/startup.texi: Likewise.
* manual/stdio.texi: Likewise.
* manual/sysinfo.texi: Likewise.
* manual/syslog.texi: Likewise.
* manual/time.texi: Likewise.
Patch by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
[BZ #3465]
* sunrpc/clnt_raw.c: Minimal message improvements.
* sunrpc/pm_getmaps.c: Likewise.
* nis/nss_nisplus/nisplus-publickey.c: Likewise.
* nis/nis_print_group_entry.c: Likewise.
* locale/programs/repertoire.c: Likewise.
* locale/programs/charmap.c: Likewise.
* malloc/memusage.sh: Likewise.
* elf/dl-deps.c: Likewise.
* locale/programs/ld-collate.c: Likewise.
* libio/vswprintf.c: Likewise.
* malloc/memusagestat.c: Likewise.
* sunrpc/auth_unix.c: Likewise.
* sunrpc/rpc_main.c: Likewise.
* nscd/cache.c: Likewise.
* locale/programs/repertoire.c: Unify output messages.
* locale/programs/charmap.c: Likewise.
* locale/programs/ld-ctype.c: Likewise.
* locale/programs/ld-monetary.c: Likewise.
* locale/programs/ld-numeric.c: Likewise.
* locale/programs/ld-time.c: Likewise.
* elf/ldconfig.c: Likewise.
* nscd/selinux.c: Likewise.
* elf/cache.c: Likewise.
Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
[BZ #3451]
* sysdeps/i386/fpu/bits/mathinline.h (floor): Make rounding mode
change atomic.
(ceil): Likewise.
2006-11-10 Jakub Jelinek <jakub@redhat.com>
* string/strxfrm_l.c (STRXFRM): Fix trailing \1 optimization
if N is one bigger than return value.
* string/tst-strxfrm2.c (do_test): Also test strxfrm with l1 + 1
and l1 last arguments, if buf is defined, verify the return value
equals to strlen (buf) and verify no byte beyond passed length
is modified.
2006-11-10 Ulrich Drepper <drepper@redhat.com>
* po/sv.po: Update from translation team.
2006-11-09 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word): Add
noinline attribute.
2006-11-10 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Add
noinline attribute.
* sysdeps/gnu/siglist.c (__old_sys_siglist, __old_sys_sigabbrev):
Use __new_sys_siglist instead of _sys_siglist_internal as
second macro argument.
(_old_sys_siglist): Use declare_symbol_alias macro instead of
strong_alias.
2006-11-09 Ulrich Drepper <drepper@redhat.com>
[BZ #3493]
* posix/unistd.h (sysconf): Remove const attribute.
* sysdeps/posix/getaddrinfo.c (getaddrinfo): Fix test for
temporary or deprecated addresses.
Patch by Sridhar Samudrala <sri@us.ibm.com>.
* string/Makefile (tests): Add tst-strxfrm2.
* string/tst-strxfrm2.c: New file.
2006-10-09 Jakub Jelinek <jakub@redhat.com>
* elf/dl-debug.c (_dl_debug_initialize): Check r->r_map for 0
rather than r->r_brk.
2006-11-08 Jakub Jelinek <jakub@redhat.com>
* string/strxfrm_l.c (STRXFRM): Do the trailing \1 removal
optimization even if needed > n.
* elf/dl-load.c (decompose_rpath): Return bool rather than void.
If l->l_name is on inhibit_rpath list, set sps->dirs to -1 and
return false, otherwise return true.
(cache_rpath): Return decompose_rpath return value.
2006-11-07 Jakub Jelinek <jakub@redhat.com>
* include/libc-symbols.h (declare_symbol): Rename to...
(declare_symbol_alias): ... this. Add ORIGINAL argument, imply
strong_alias (ORIGINAL, SYMBOL) in asm to make sure it preceedes
.size directive.
* sysdeps/gnu/errlist-compat.awk: Adjust for declare_symbol_alias
changes.
* sysdeps/gnu/siglist.c: Likewise.
2006-11-03 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/fpu/bits/mathinline.h
[__LIBC_INTERNAL_MATH_INLINES]: Moved to ...
* sysdeps/powerpc/fpu/math_private.h: ...here. New file.
2006-11-05 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word):
Update handling of cache descriptor 0x49 for new models.
* sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word):
Likewise.
2006-11-02 Jakub Jelinek <jakub@redhat.com>
* malloc/memusage.c (dest): Reset not_me back to false after
printing statistics.
2006-11-02 Ulrich Drepper <drepper@redhat.com>
* configure.in: Work around ld --help change and avoid -z relro
test completely if the architecture doesn't care about security.
2006-11-01 Ulrich Drepper <drepper@redhat.com>
* po/sv.po: Update from translation team.
2006-10-31 Ulrich Drepper <drepper@redhat.com>
* stdlib/atexit.c (atexit): Don't mark as hidden when used to
generate compatibility version.
2006-10-29 Ulrich Drepper <drepper@redhat.com>
* configure.in: Relax -z relro requirement a bit.
* po/sv.po: Update from translation team.
2006-10-29 Jakub Jelinek <jakub@redhat.com>
* elf/dl-sym.c (do_sym): Use RTLD_SINGLE_THREAD_P.
* elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Likewise.
* elf/dl-close.c (_dl_close_worker): Likewise.
* elf/dl-open.c (_dl_open_worker): Likewise.
* sysdeps/generic/sysdep-cancel.h (RTLD_SINGLE_THREAD_P): Define.
2006-10-27 Ulrich Drepper <drepper@redhat.com>
* configure.in: Require assembler support for visibility, compiler
support for visibility and aliases, linker support for various -z
options.
* Makeconfig: Remove conditional code which now is unnecessary.
* config.h.in: Likewise.
* config.make.in: Likewise.
* dlfcn/Makefile: Likewise.
* elf/Makefile: Likewise.
* elf/dl-load.c: Likewise.
* elf/rtld.c: Likewise.
* include/libc-symbols.h: Likewise.
* include/stdio.h: Likewise.
* io/Makefile: Likewise.
* io/fstat.c: Likewise.
* io/fstat64.c: Likewise.
* io/fstatat.c: Likewise.
* io/fstatat64.c: Likewise.
* io/lstat.c: Likewise.
* io/lstat64.c: Likewise.
* io/mknod.c: Likewise.
* io/mknodat.c: Likewise.
* io/stat.c: Likewise.
* io/stat64.c: Likewise.
* libio/stdio.c: Likewise.
* nscd/Makefile: Likewise.
* stdlib/Makefile: Likewise.
* stdlib/atexit.c: Likewise.
* sysdeps/generic/ldsodefs.h: Likewise.
* sysdeps/i386/dl-machine.h: Likewise.
* sysdeps/i386/sysdep.h: Likewise.
* sysdeps/i386/i686/memcmp.S: Likewise.
* sysdeps/powerpc/powerpc32/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
* Makerules: USE_TLS support is now default.
* tls.make.c: Likewise.
* csu/Versions: Likewise.
* csu/libc-start.c: Likewise.
* csu/libc-tls.c: Likewise.
* csu/version.c: Likewise.
* dlfcn/dlinfo.c: Likewise.
* elf/dl-addr.c: Likewise.
* elf/dl-cache.c: Likewise.
* elf/dl-close.c: Likewise.
* elf/dl-iteratephdr.c: Likewise.
* elf/dl-load.c: Likewise.
* elf/dl-lookup.c: Likewise.
* elf/dl-object.c: Likewise.
* elf/dl-open.c: Likewise.
* elf/dl-reloc.c: Likewise.
* elf/dl-support.c: Likewise.
* elf/dl-sym.c: Likewise.
* elf/dl-sysdep.c: Likewise.
* elf/dl-tls.c: Likewise.
* elf/ldconfig.c: Likewise.
* elf/rtld.c: Likewise.
* elf/tst-tls-dlinfo.c: Likewise.
* elf/tst-tls1.c: Likewise.
* elf/tst-tls10.h: Likewise.
* elf/tst-tls14.c: Likewise.
* elf/tst-tls2.c: Likewise.
* elf/tst-tls3.c: Likewise.
* elf/tst-tls4.c: Likewise.
* elf/tst-tls5.c: Likewise.
* elf/tst-tls6.c: Likewise.
* elf/tst-tls7.c: Likewise.
* elf/tst-tls8.c: Likewise.
* elf/tst-tls9.c: Likewise.
* elf/tst-tlsmod1.c: Likewise.
* elf/tst-tlsmod13.c: Likewise.
* elf/tst-tlsmod13a.c: Likewise.
* elf/tst-tlsmod14a.c: Likewise.
* elf/tst-tlsmod2.c: Likewise.
* elf/tst-tlsmod3.c: Likewise.
* elf/tst-tlsmod4.c: Likewise.
* elf/tst-tlsmod5.c: Likewise.
* elf/tst-tlsmod6.c: Likewise.
* include/errno.h: Likewise.
* include/link.h: Likewise.
* include/tls.h: Likewise.
* locale/global-locale.c: Likewise.
* locale/localeinfo.h: Likewise.
* malloc/arena.c: Likewise.
* malloc/hooks.c: Likewise.
* malloc/malloc.c: Likewise.
* resolv/Versions: Likewise.
* sysdeps/alpha/dl-machine.h: Likewise.
* sysdeps/alpha/libc-tls.c: Likewise.
* sysdeps/generic/ldsodefs.h: Likewise.
* sysdeps/generic/tls.h: Likewise.
* sysdeps/i386/dl-machine.h: Likewise.
* sysdeps/ia64/dl-machine.h: Likewise.
* sysdeps/ia64/libc-tls.c: Likewise.
* sysdeps/mach/hurd/fork.c: Likewise.
* sysdeps/mach/hurd/i386/tls.h: Likewise.
* sysdeps/powerpc/powerpc32/dl-machine.c: Likwise.
* sysdeps/powerpc/powerpc32/dl-machine.h: Likewise.
* sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
* sysdeps/s390/libc-tls.c: Likewise.
* sysdeps/s390/s390-32/dl-machine.h: Likewise.
* sysdeps/s390/s390-64/dl-machine.h: Likewise.
* sysdeps/sh/dl-machine.h: Likewise.
* sysdeps/sparc/sparc32/dl-machine.h: Likewise.
* sysdeps/sparc/sparc64/dl-machine.h: Likewise.
* sysdeps/x86_64/dl-machine.h: Likewise.
* elf/dl-close.c (_dl_close_worker): Renamed from _dl_close and
split out locking and parameter checking.
(_dl_close): Call _dl_close_worker after locking and checking.
* elf/dl-open.c (_dl_open): Call _dl_close_worker instead of
_dl_close.
* elf/Makefile: Add rules to build and run tst-thrlock.
* elf/tst-thrlock.c: New file.
[BZ #3426]
* stdlib/stdlib.h: Adjust comment for canonicalize_file_name to
reality.
[BZ #3429]
* elf/dl-open.c (dl_open_worker): Keep holding dl_load_lock until
we are sure we do not need it anymore for _dl_close. Also move
the asserts inside the lock region.
Patch mostly by Suzuki <suzuki@in.ibm.com>.
2006-10-27 Jakub Jelinek <jakub@redhat.com>
* elf/dl-lookup.c (_dl_debug_bindings): Remove unused symbol_scope
argument.
(_dl_lookup_symbol_x): Adjust caller.
* sysdeps/generic/ldsodefs.h (struct link_namespaces): Remove
_ns_global_scope.
* elf/rtld.c (dl_main): Don't initialize _ns_global_scope.
* elf/dl-libc.c: Revert l_scope name changes.
* elf/dl-load.c: Likewise.
* elf/dl-object.c: Likewise.
* elf/rtld.c: Likewise.
* elf/dl-close.c (_dl_close): Likewise.
* elf/dl-open.c (dl_open_worker): Likewise. If not SINGLE_THREAD_P,
always use __rtld_mrlock_{change,done}. Always free old scope list
here if not l_scope_mem.
* elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Revert l_scope name
change. Never free scope list here. Just __rtld_mrlock_lock before
the lookup and __rtld_mrlock_unlock it after the lookup.
* elf/dl-sym.c: Likewise.
* include/link.h (struct r_scoperec): Remove.
(struct link_map): Replace l_scoperec with l_scope, l_scoperec_mem
with l_scope_mem and l_scoperec_lock with l_scope_lock.
2006-10-25 Ulrich Drepper <drepper@redhat.com>
* sysdeps/gnu/netinet/tcp.h: Define TCP_CONGESTION.
2006-10-18 Ulrich Drepper <drepper@redhat.com>
* configure.in: Disable building profile libraries by default.
2006-10-17 Jakub Jelinek <jakub@redhat.com>
* sunrpc/xdr_mem.c (xdrmem_setpos): Don't compare addresses
as signed longs, check for x_base + pos overflow.
* sunrpc/Makefile (tests): Add tst-xdrmem2.
* sunrpc/tst-xdrmem2.c: New test.
2006-10-18 Ulrich Drepper <drepper@redhat.com>
* elf/dl-lookup.c (_dl_lookup_symbol_x): Add warning to
_dl_lookup_symbol_x code.
2006-10-17 Jakub Jelinek <jakub@redhat.com>
* elf/dl-runtime.c: Include sysdep-cancel.h.
(_dl_fixup, _dl_profile_fixup): Use __rtld_mrlock_* and
scoperec->nusers only if !SINGLE_THREAD_P. Use atomic_*
instead of catomic_* macros.
* elf/dl-sym.c: Include sysdep-cancel.h.
(do_sym): Use __rtld_mrlock_* and scoperec->nusers only
if !SINGLE_THREAD_P. Use atomic_* instead of catomic_* macros.
* elf/dl-close.c: Include sysdep-cancel.h.
(_dl_close): Use __rtld_mrlock_* and scoperec->nusers only
if !SINGLE_THREAD_P. Use atomic_* instead of catomic_* macros.
* elf/dl-open.c: Include sysdep-cancel.h.
(dl_open_worker): Use __rtld_mrlock_* and scoperec->nusers only
if !SINGLE_THREAD_P. Use atomic_* instead of catomic_* macros.
2006-10-17 Jakub Jelinek <jakub@redhat.com>
[BZ #3313]
* malloc/malloc.c (malloc_consolidate): Set maxfb to address of last
fastbin rather than end of fastbin array.
2006-10-18 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/i486/bits/atomic.h (catomic_decrement): Use correct
body macro.
* sysdeps/x86_64/bits/atomic.h
(__arch_c_compare_and_exchange_val_64_acq): Add missing casts.
(catomic_decrement): Use correct body macro.
2006-10-17 Jakub Jelinek <jakub@redhat.com>
* include/atomic.h: Add a unique prefix to all local variables
in macros.
* csu/tst-atomic.c (do_test): Test also catomic_* macros.
2006-10-16 Ulrich Drepper <drepper@redhat.com>
[BZ #3369]
* sysdeps/posix/getaddrinfo.c (rfc3484_sort): Fix typos in rules 4
and 7.
2006-10-14 Ulrich Drepper <drepper@redhat.com>
* resolv/arpa/nameser.h: Document that ns_t_a6 is deprecated.
2006-10-13 Ulrich Drepper <drepper@redhat.com>
[BZ #3313]
* malloc/malloc.c (malloc_consolidate): Don't use get_fast_max to
determine highest fast bin to consolidate, always look into all of
them.
(do_check_malloc_state): Only require for empty bins for large
sizes in main arena.
* libio/stdio.h: Add more __wur attributes.
* elf/dl-minimal.c (realloc): Optimize last patch.
2006-10-12 Richard Sandiford <richard@codesourcery.com>
[BZ #3352]
* elf/dl-minimal.c (realloc): Let malloc() return a new pointer,
and use memcpy() if it does.
2006-11-12 Andreas Jaeger <aj@suse.de>
[BZ #2510]
* manual/search.texi (Hash Search Function): Clarify.
(Array Search Function): Clarify.
2006-11-12 Joseph Myers <joseph@codesourcery.com>
[BZ #2830]
* math/atest-exp.c (main): Cast hex value to mp_limb_t before
shifting.
* math/atest-exp2.c (read_mpn_hex): Likewise.
* math/atest-sincos.c (main): Likewise.
2006-10-11 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/syscalls.list: Add epoll_pwait.
* sysdeps/unix/sysv/linux/sys/epoll.h: Declare epoll_pwait.
* sysdeps/unix/sysv/linux/Versions (libc): Add epoll_pwait for
version GLIBC_2.6.
* Versions.def: Add GLIBC_2.6 for libc.
* sysdeps/unix/sysv/linux/i386/sysdep.h (DOARGS_6): Fix offset.
* sysdeps/i386/i486/bits/atomic.h: Add catomic_* support.
2006-10-11 Jakub Jelinek <jakub@redhat.com>
* malloc/malloc.c (_int_malloc): Remove unused any_larger variable.
* nis/nis_defaults.c (__nis_default_access): Don't call getenv twice.
* nis/nis_subr.c (nis_getnames): Use __secure_getenv instead of getenv.
* sysdeps/generic/unsecvars.h: Add NIS_PATH.
2006-10-11 Ulrich Drepper <drepper@redhat.com>
* include/atomic.c: Define catomic_* operations.
* sysdeps/x86_64/bits/atomic.h: Likewise. Fix a few minor problems.
* stdlib/cxa_finalize.c: Use catomic_* operations instead of atomic_*.
* malloc/memusage.c: Likewise.
* gmon/mcount.c: Likewise.
* elf/dl-close.c: Likewise.
* elf/dl-open.c: Likewise.
* elf/dl-profile.c: Likewise.
* elf/dl-sym.c: Likewise.
* elf/dl-runtime.c: Likewise.
* elf/dl-fptr.c: Likewise.
* resolv/res_libc.c: Likewise.
2006-10-10 Ulrich Drepper <drepper@redhat.com>
* nis/nis_subr.c (nis_getnames): Add trailing dot to NIS_PATH
components which lack them.
* nis/nis_subr.c (nis_getnames): Make sure that we always return
at least one entry consisting of the parameter concatenated with
the domain.
2006-10-10 Roland McGrath <roland@frob.com>
* sysdeps/mach/hurd/utimes.c: Use a union to avoid an improper cast.
* sysdeps/mach/hurd/futimes.c: Likewise.
* sysdeps/mach/hurd/lutimes.c: Likewise.
2006-10-09 Ulrich Drepper <drepper@redhat.com>
Jakub Jelinek <jakub@redhat.com>
Implement reference counting of scope records.
* elf/dl-close.c (_dl_close): Remove all scopes from removed objects
from the list in objects which remain. Always allocate new scope
record.
* elf/dl-open.c (dl_open_worker): When growing array for scopes,
don't resize, allocate a new one.
* elf/dl-runtime.c: Update reference counters before using a scope
array.
* elf/dl-sym.c: Likewise.
* elf/dl-libc.c: Adjust for l_scope name change.
* elf/dl-load.c: Likewise.
* elf/dl-object.c: Likewise.
* elf/rtld.c: Likewise.
* include/link.h: Include <rtld-lowlevel.h>. Define struct
r_scoperec. Replace r_scope with pointer to r_scoperec structure.
Add l_scoperec_lock.
* sysdeps/generic/ldsodefs.h: Include <rtld-lowlevel.h>.
* sysdeps/generic/rtld-lowlevel.h: New file.
* include/atomic.h: Rename atomic_and to atomic_and_val and
atomic_or to atomic_or_val. Define new macros atomic_and and
atomic_or which do not return values.
* sysdeps/x86_64/bits/atomic.h: Define atomic_and and atomic_or.
Various cleanups.
* sysdeps/i386/i486/bits/atomic.h: Likewise.
* po/sv.po: Update from translation team.
2006-10-07 Ulrich Drepper <drepper@redhat.com>
* Versions.def: Add GLIBC_2.6 to libpthread.
* include/shlib-compat.h (SHLIB_COMPAT): Expand parameters before use.
(versioned_symbol): Likewise.
(compat_symbol): Likewise.
* po/tr.po: Update from translation team.
2006-10-06 Ulrich Drepper <drepper@redhat.com>
* nis/Banner: Removed. It's been integral part forever and the
author info is incomplete anyway.
* libio/Banner: Likewise.
* nis/nis_table.c (nis_list): If __follow_path fails in the new
code, make sure the nis_freeresult call doesn't crash and that the
result is reported correctly.
2006-09-27 Jakub Jelinek <jakub@redhat.com>
* nis/nis_table.c (nis_list): Handle FOLLOW_PATH | ALL_RESULTS
when callback is NULL.
* nis/Versions (libnss_nisplus): Add
_nss_nisplus_initgroups_dyn@@GLIBC_PRIVATE.
* nis/Makefile (libnss_nisplus-routines): Add nisplus-initgroups.
* nis/nss_nisplus/nisplus-grp.c (tablename_val, tablename_len,
_nss_create_tablename): Rename to...
(grp_tablename_val, grp_tablename_len, _nss_grp_create_tablename):
... these. No longer static.
(internal_setgrent): Adjust users.
(_nss_nisplus_getgrnam_r, _nss_nisplus_getgrgid_r): Likewise.
Don't use locking around _nss_grp_create_tablename call.
* nis/nss_nisplus/nisplus-initgroups.c: New file.
2006-10-06 Ulrich Drepper <drepper@redhat.com>
* version.h (VERSION): Bump to 2.5.90 for new development tree.
2006-10-06 Andreas Jaeger <aj@suse.de>
* include/features.h (__GLIBC_MINOR__): It's glibc 2.5 now.
2006-10-06 Ulrich Drepper <drepper@redhat.com>
* po/pl.po: Update from translation team.
* nscd/nscd.c (main): Fix typo in message.
Patch by Jakub Bogsz <qboosh@pld-linux.org>.
2006-10-02 Jakub Jelinek <jakub@redhat.com>
[BZ #3291]
* sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
errno.h, signal.h, unistd.h and sysdep-cancel.h.
(__sigprocmask): Define.
2006-10-02 Ulrich Drepper <drepper@redhat.com>
* elf/rtld.c (dl_main): Don't use prelinking if LD_DYNAMIC_WEAK is
used.
2006-10-02 Jakub Jelinek <jakub@redhat.com>
* nscd/mem.c (mempool_alloc): Round array size to 16 bytes
in oldtotal and newtotal calculation.
* nscd/nscd-client.h (struct mapped_database): Add datasize
field.
* nscd/nscd_helper.c (get_mapping): Initialize datasize field.
(__nscd_get_map_ref): Get a new mapping even if mapping's data_size
increased.
(__nscd_cache_search): Add checks to make sure we never reference
data beyond the current mapping.
2006-10-02 Dmitry V. Levin <ldv@altlinux.org>
* sysdeps/posix/getaddrinfo.c (match_prefix): Make mask and val
variables const to avoid compiler warnings.
* io/fts.c (fts_close): Remove redundant checks.
(fts_build): Likewise.
(fts_palloc): Likewise.
* manual/message.texi (Advanced gettext functions,
Using gettextized software): Fix typos.
2006-09-30 Ulrich Drepper <drepper@redhat.com>
* posix/glob.c (glob_in_dir): Add some comments and asserts to
explain why there are no leaks.
2006-09-29 Ulrich Drepper <drepper@redhat.com>
* libio/wmemstream.c: Include <wchar.h>.
* libio/bug-wmemstream1.c: Likewise.
* libio/tst-wmemstream1.c: Likewise.
* libio/tst-wmemstream2.c: Likewise.
* version.h (RELEASE): Bump to 2.5.
* README: Regenerated.
* locale/iso-3166.def: Add Aaland Islands and Montenegro.
[BZ #3273]
* nscd/nscd_initgroups.c (__nscd_getgrouplist): It is OK to have
found no group members.
Patch by Petr Baudis.
2006-09-29 Jakub Jelinek <jakub@redhat.com>
* elf/rtld.c (_dl_start_final): If not USE___THREAD, don't
assert bootstrap_map.l_tls_modid is zero.
(_dl_start): Initialize bootstrap_map.l_tls_modid to 0
if USE___THREAD.
2006-09-27 Ulrich Drepper <drepper@redhat.com>
* libio/stdio.h: Move open_wmemstream prototype to ...
* wcsmbs/wchar.h: ... here.
2006-09-25 Jakub Jelinek <jakub@redhat.com>
[BZ #3252]
* sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Handle only
fchownat syscall and __ASSUME_LCHOWN_SYSCALL case inline, call
__{,l}chown to handle the rest.
* sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Handle only
fchownat syscall and __ASSUME_32BITUIDS case inline, call
__{,l}chown to handle the rest.
* sysdeps/unix/sysv/linux/sparc/sparc32/fchownat.c: Include
i386/fchownat.c.
* sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c: Likewise.
* sysdeps/unix/sysv/linux/sh/fchownat.c: Likewise.
[BZ #3253]
* posix/glob.c (glob_in_dir): Don't alloca one struct globlink at a
time, rather allocate increasingly bigger arrays of pointers, if
possible with alloca, if too large with malloc.
2006-09-24 Jakub Jelinek <jakub@redhat.com>
* sysdeps/powerpc/fpu/libm-test-ulps: Updated.
* sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Fix 2 typos.
2006-09-24 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/getaddrinfo.c (rfc3484_sort): Implement rule 4,
home addresses.
* sysdeps/unix/sysv/linux/check_pf.c (make_request): Recognize
IFA_F_HOMEADDRESS flag for interfaces.
* include/ifaddrs.h (struct in6addrinfo): Define
in6ai_homeaddress.
2006-09-21 Jakub Jelinek <jakub@redhat.com>
[BZ #3225]
* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (PTR_MANGLE3,
PTR_DEMANGLE3): Define.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (PTR_MANGLE3,
PTR_DEMANGLE3): Likewise.
* sysdeps/powerpc/powerpc32/__longjmp-common.S (__longjmp): Use them.
* sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp):
Likewise.
* sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp): Likewise.
2006-09-20 Jakub Jelinek <jakub@redhat.com>
* po/libc.pot: Regenerated.
* po/be.po: Updated.
* po/ca.po: Likewise.
* po/cs.po: Likewise.
* po/da.po: Likewise.
* po/de.po: Likewise.
* po/el.po: Likewise.
* po/en_GB.po: Likewise.
* po/es.po: Likewise.
* po/fi.po: Likewise.
* po/fr.po: Likewise.
* po/gl.po: Likewise.
* po/hr.po: Likewise.
* po/hu.po: Likewise.
* po/ja.po: Likewise.
* po/ko.po: Likewise.
* po/nb.po: Likewise.
* po/nl.po: Likewise.
* po/pl.po: Likewise.
* po/pt_BR.po: Likewise.
* po/ru.po: Likewise.
* po/rw.po: Likewise.
* po/sk.po: Likewise.
* po/sv.po: Likewise.
* po/tr.po: Likewise.
* po/zh_CN.po: Likewise.
* po/zh_TW.po: Likewise.
[BZ #3137]
* iconv/iconv_prog.c (main): Fix spelling in error message.
* iconv/iconvconfig.c (main): Likewise.
* locale/programs/ld-collate.c (handle_ellipsis): Likewise.
* locale/programs/ld-ctype.c (charclass_symbolic_ellipsis): Likewise.
* locale/programs/localedef.c (main): Likewise.
* locale/programs/repertoire.c (repertoire_read): Likewise.
* timezone/zdump.c (main): Likewise.
* nscd/connections.c (handle_request): Fix spelling in log message.
Patch by Malcolm Parsons <malcolm.parsons@gmail.com>.
2006-09-20 Ulrich Drepper <drepper@redhat.com>
* inet/inet6_option.c: Also emit linker warnings for the RFC 2292
interfaces.
2006-09-20 Andreas Jaeger <aj@suse.de>
* math/libm-test.inc (lrint_test_upward): Fix typo.
2006-06-17 Joseph S. Myers <joseph@codesourcery.com>
[BZ #2592]
* math/libm-test.inc (lrint_test_tonearest): New function.
(lrint_test_towardzero): New function.
(lrint_test_downward): New function.
(lrint_test_upward): New function.
(main): Run these new tests.
* sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Correct rounding
of values near to 0.
(two52): Use double not long double.
* sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
* sysdeps/ieee754/flt-32/s_llrintf.c (__llrintf): Likewise.
(two23): Use float not double.
* sysdeps/ieee754/flt-32/s_lrintf.c (__lrintf): Likewise.
(two23): Use float not double.
* sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Likewise.
* sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
* sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Likewise.
* sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
2006-09-20 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c (__makecontext):
Cast sp to unsigned long to avoid compiler warning.
Use __makecontext_ret function instead of a trampoline on the stack.
(__makecontext_ret): New function.
* sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c: Likewise.
2006-09-19 Jakub Jelinek <jakub@redhat.com>
* elf/dl-cache.c (HWCAP_CHECK): If _DL_PLATFORMS_COUNT, but
platform == -1, reject any libs with non-zero _DL_HWCAP_PLATFORM
bits.
2006-09-19 Ulrich Drepper <drepper@redhat.com>
* elf/dl-close.c (_dl_close): If dependency is not unloaded make
sure no reference to the unloaded map's search list remains in the
dependency's scope.
2006-09-16 Jakub Jelinek <jakub@redhat.com>
* elf/Makefile: Add rules to build and run unload7 test.
* elf/unload7.c: New test.
* elf/unload7mod1.c: New file.
* elf/unload7mod2.c: New file.
2006-09-18 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sys/ptrace.h (PT_GETEVENTMSG): Fix pasto.
* sysdeps/unix/sysv/linux/s390/sys/ptrace.h (PTRACE_SETOPTIONS,
PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
* sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h (PTRACE_SETOPTIONS,
PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
* sysdeps/unix/sysv/linux/sparc/sys/ptrace.h (PTRACE_SETOPTIONS,
PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
* sysdeps/unix/sysv/linux/ia64/sys/ptrace.h (PTRACE_SETOPTIONS,
PTRACE_GETEVENTMSG): Likewise.
(PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Change to the arch independent
values.
2006-09-17 Mike Frysinger <vapier@gentoo.org>
* sysdeps/unix/sysv/linux/sys/ptrace.h (PTRACE_SETOPTIONS,
PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
* sysdeps/unix/sysv/linux/ptrace.c (ptrace): Check PTRACE_SETOPTIONS,
PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO and PTRACE_SETSIGINFO.
2006-09-16 Jakub Jelinek <jakub@redhat.com>
* sysdeps/powerpc/powerpc32/register-dump.h (register_dump): Don't
write '\0' to the fd.
* sysdeps/mach/hurd/powerpc/register-dump.h (register_dump): Likewise.
* sysdeps/powerpc/powerpc64/register-dump.h (register_dump): Likewise.
Change regs to unsigned long pointer from unsigned int, fix fscr
offset.
2006-09-14 Jakub Jelinek <jakub@redhat.com>
* io/Makefile (CFLAGS-fstatat.c): Set.
(CFLAGS-fstatat64.c): Likewise.
(CFLAGS-mknodat.c): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_llrintl.c: Comment fixes.
* sysdeps/ieee754/ldbl-128ibm/s_llroundl.c: Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_lrintl.c: Rewritten.
* sysdeps/ieee754/ldbl-128ibm/s_lroundl.c: Rewritten.
2006-09-14 Jakub Jelinek <jakub@redhat.com>
Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 4 new cap
names to the beginning. Rename "cell" to "cellbe".
(_dl_powerpc_platforms): New.
* sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
(HWCAP_IMPORTANT): Remove power{4,5,5+} and cell.
(_DL_PLATFORMS_COUNT, _DL_FIRST_PLATFORM): Define.
(_DL_HWCAP_PLATFORM): Define to new mask.
(_dl_platform_string, _dl_string_platform): New functions.
* sysdeps/powerpc/sysdep.h (PPC_FEATURE_BOOKE, PPC_FEATURE_SMT,
PPC_FEATURE_ICACHE_SNOOP, PPC_FEATURE_ARCH_2_05): Define.
2006-09-12 Jakub Jelinek <jakub@redhat.com>
[BZ #2526]
* README.libm: Fix a thinko in sqrt algorithm description.
[BZ #3143]
* manual/string.texi (argz_delete): Fix prototype.
Patch by <alpt@freaknet.org>.
2006-08-26 Joseph Myers <joseph@codesourcery.com>
[BZ #3138]
* io/test-lfs.c (do_prepare): Give name_len type size_t.
* io/tst-fcntl.c (do_prepare): Likewise.
* posix/tst-exec.c (do_prepare): Likewise.
* posix/tst-preadwrite.c (do_prepare): Likewise.
* posix/tst-spawn.c (do_prepare): Likewise.
* posix/tst-truncate.c (do_prepare): Likewise.
* rt/tst-aio.c (do_prepare): Likewise.
* rt/tst-aio64.c (do_prepare): Likewise.
* stdlib/test-canon2.c (do_prepare): Give test_dir_len type
size_t.
2006-09-09 Ulrich Drepper <drepper@redhat.com>
[BZ #2821]
* time/mktime.c (guess_time_tm): Fix overflow detection.
* time/Makefile (tests): Add bug-mktime1.
* time/bug-mktime1.c: New file.
[BZ #3189, #3188]
* misc/sys/mman.h (remap_file_pages): Make available for _GNU_SOURCE.
(mremap): Likewise.
2006-09-07 Jakub Jelinek <jakub@redhat.com>
[BZ #1006]
* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela):
Ensure relocation doesn't clobber any bits outside of the
immediate field for R_SPARC_TLS_LE_HIX22, R_SPARC_WDISP30,
R_SPARC_HI22 and R_SPARC_H44.
[BZ #2775]
* malloc/malloc.c (sYSMALLOc): Only call grow_heap if
(long) (MINSIZE + nb - old_size) is positive.
* malloc/arena.c (grow_heap): When growing bail even if new_size
is negative.
[BZ #3155]
* sysdeps/powerpc/powerpc32/fpu/s_lrint.S (__lrint): Don't access
stack below r1.
2006-09-06 Jakub Jelinek <jakub@redhat.com>
* posix/regex_internal.c (re_string_reconstruct): Handle
offset < pstr->valid_raw_len && pstr->offsets_needed case.
Ensure no bytes read before raw_mbs array. Pass a saved copy of
pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
re_string_context_at.
* posix/Makefile: Add rules to build and run bug-regex26 test.
* posix/bug-regex26.c: New test.
* locale/programs/ld-collate.c (collate_read): Goto sym_equiv_free
rather than col_sym_free. Move seqp declaration earlier.
* resolv/gai_suspend.c (gai_suspend): Make sure result is initialized.
2006-09-05 Jakub Jelinek <jakub@redhat.com>
* nscd/initgrcache.c (addinitgroupsX): Move any_success
decl before first goto out.
2006-09-04 Jakub Jelinek <jakub@redhat.com>
* Makerules (shlib.lds): If have-hash-style, put .hash section
at the end of the RO segment.
2006-09-04 Ulrich Drepper <drepper@redhat.com>
* elf/do-lookup.h (do_lookup_x): Initialize symidx in case the new
style hash table format is used.
2006-09-04 Jakub Jelinek <jakub@redhat.com>
* resolv/res_mkquery.c (res_nmkquery): Set hp->id to statp->id after
randomization rather than before.
* resolv/res_init.c (res_randomid): Don't call gettimeofday here.
2006-08-31 Jakub Jelinek <jakub@redhat.com>
* dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Add ld.so.
* malloc/malloc.c (_int_malloc): Use full list insert and not
shortcut which assumes the list is empty for large requests
too.
* elf/tst-addr1.c (do_test): Allow i.dli_sname "_IO_printf".
2006-08-30 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (splice): Add offin
and offout arguments to the prototype.
* sysdeps/unix/sysv/linux/s390/bits/fcntl.h (splice): Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (splice): Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (splice): Likewise.
* sysdeps/unix/sysv/linux/sh/bits/fcntl.h (splice): Likewise.
* sysdeps/unix/sysv/linux/i386/bits/fcntl.h (splice): Likewise.
* sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (splice): Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (splice): Likewise.
* sysdeps/unix/sysv/linux/syscalls.list (splice): Adjust args string.
2006-08-28 Ulrich Drepper <drepper@redhat.com>
* elf/dl-load.c (_dl_init_paths): Expand DSTs.
* elf/dl-open.c (dl_open_worker): Allow $LIB and $PLATFORM in
dlopen parameters.
2006-08-28 Jakub Jelinek <jakub@redhat.com>
* inet/getnameinfo.c (getnameinfo): For AF_INET, check errno
only if herrno is NETDB_INTERNAL. Handle errors other than
ERANGE outside of the loops, handle TRY_AGAIN.
* locale/programs/ld-ctype.c (translit_flatten): Issue error
if other's ctype category was missing.
* locale/programs/ld-collate.c (collate_read): Return if
copy_locale's collate category is missing.
2006-08-27 Ulrich Drepper <drepper@redhat.com>
[BZ #2684]
* malloc/malloc.c (public_rEALLOc): Try harder by using other
arenas if allocation failed.
Patch mostly by Jan Edler <jan.edler@indexengines.com>.
2006-08-26 Ulrich Drepper <drepper@redhat.com>
* malloc/malloc.c (bin_at): Rewrite to be more clear and to not
waste bins[0..1].
(malloc_state): Reduce bins size by 2.
(_int_malloc): Fix test for large enough buffer for early termination.
When no unsorted block matches perfectly and an exiting block has
to be split, use full list insert and not shortcut which assumes
the list is empty.
* locale/programs/ld-ctype.c (ctype_read): Better patch for read
failure.
2006-08-24 Ulrich Drepper <drepper@redhat.com>
* locale/programs/ld-ctype.c (ctype_read): If CTYPE is NULL, don't
do anything.
* sysdeps/generic/ldsodefs.h (DL_ADDR_SYM_MATCH): For undefined
symbol require exact match (these are PLTs).
* sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
(_dl_ppc64_addr_sym_match): Likewise.
[BZ #2683]
* elf/dl-addr.c (_dl_addr): Don't ignore all undefined symbols.
If symbol has a value use it.
* elf/tst-dladdr1.c: New file.
* elf/Makefile: Add rules to build and run tst-addr1.
2006-08-24 Jakub Jelinek <jakub@redhat.com>
* malloc/malloc.c (sYSMALLOc): Avoid infinite loop if MMAP
keeps failing and heap growth or new heap creation isn't
successful either.
* malloc/tst-malloc.c (main): Add new tests.
2006-08-24 Ulrich Drepper <drepper@redhat.com>
[BZ #2734]
* sysdeps/i386/bits/byteswap.h (__bswap_32): Use same conditions
as in the x86-64 code to use bswap.
2006-05-21 Joseph S. Myers <joseph@codesourcery.com>
[BZ #2680]
* posix/unistd.h (getlogin_r): Condition on __USE_POSIX199506, not
__USE_UNIX98.
* posix/bits/unistd.h: Likewise.
2006-05-15 Mike Frysinger <vapier@gentoo.org>
[BZ #2751]
* string/strchr.c: Add cast to avoid warning.
2006-08-21 Ulrich Drepper <drepper@redhat.com>
* malloc/malloc.c (DEFAULT_MMAP_THRESHOLD_MAX): For 32-bit
platforms define as 512K. For 64-bit platforms as 32MB. The lower
limit is needed to avoid the exploding of the address space
requirement for secondary heaps.
* malloc/arena.c (HEAP_MAX_SIZE): Define using
DEFAULT_MMAP_THRESHOLD_MAX if it is defined.
2006-07-30 Joseph S. Myers <joseph@codesourcery.com>
[BZ #3018]
* Makerules (depfiles): Handle extra-test-objs the same as
extra-objs.
(common-mostlyclean): Likewise.
* dlfcn/Makefile (extra-objs): Add modules to extra-test-objs
instead.
* elf/Makefile (extra-objs): Likewise.
* stdlib/Makefile (extra-objs): Likewise.
2006-08-14 Eric Blake <ebb9@byu.net>
[BZ #3044]
* misc/error.h: Assume C89 or better.
* misc/error.c: Likewise.
2006-08-21 Ulrich Drepper <drepper@redhat.com>
[BZ #3040]
* sysdeps/unix/sysv/linux/openat.c: Fix compilation if
__ASSUME_ATFCTS is defined.
2006-08-19 Ulrich Drepper <drepper@redhat.com>
* malloc/malloc.c (_int_malloc): Limit number of unsorted blocks
to sort in each call.
* nis/nss_nis/nis-service.c (internal_nis_getservent_r): . If map
is empty simply return and use next service.
* nis/nss_nis/nis-rpc.c (internal_nis_getrpcent_r): Likewise.
* locale/programs/charmap.c (charmap_read): Add new parameter. It
tells us when not finding a charmap file is an error.
* locale/programs/charmap.h: Adjust charmap_read prototype.
* iconv/iconv_prog.c (main): Tell charmap_read it's no error if we
cannot find a charmap.
* locale/programs/localedef.c (main): Adjust charmap_read call.
2006-08-15 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Use
sysdeps/posix/pause.c implementation instead.
2006-08-09 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/nice.c (nice): Transform EACCES errno from setpriority
to EPERM.
2006-08-13 Andreas Schwab <schwab@suse.de>
* sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_runtime_resolve):
Don't clobber caller's LRSAVE.
(_dl_prof_resolve): Likewise.
2006-08-14 Ulrich Drepper <drepper@redhat.com>
[BZ #1996]
* libio/memstream.c (open_memstream): Allocate initial buffer with
calloc.
* libio/wmemstream.c (open_wmemstream): Likewise.
* libio/strops.c: Pretty printing.
(_IO_str_overflow): Clear uninitialized part of the new buffer.
(enlarge_userbuf): New function.
(_IO_str_seekoff): Call it if seek position is larger than current
buffer.
* libio/wstrops.c: Likewise.
* libio/vasprintf.c: Add comment as to why we do not have to use
calloc instead of malloc to allocate initial buffer.
* libio/Makefile (tests): Add bug-memstream1 and bug-wmemstream1.
* libio/bug-memstream1.c: New file.
* libio/bug-wmemstream1.c: New file.
2006-08-13 Ulrich Drepper <drepper@redhat.com>
* libio/wstrops.c: Remove dead macro definitions and comments.
* libio/strops.c: Likewise.
[BZ #2764]
* login/utmpname.c (__utmpname): Remove unnecessary test.
2006-06-08 Joseph Myers <jsm28@gcc.gnu.org>
[BZ #2832]
* math/gen-libm-test.pl (clean_up_number): Do not remove trailing
0s from integers.
2006-08-13 Ulrich Drepper <drepper@redhat.com>
[BZ #2987]
* sysdeps/unix/sysv/linux/clock_settime.c: Add code to use syscall
for CPU clocks.
* sysdeps/unix/clock_settime.c: Add support for platform-specific
setting of CPU clocks.
2006-06-23 Paul Eggert <eggert@cs.ucla.edu>
[BZ #2841]
* sysdeps/generic/stdint.h (UINT8_C, UINT16_C): Don't append 'U',
since C99 requires the result to promote to 'int' when uint_least8_t
and uint_least16_t promote to 'int'.
2006-08-12 Ulrich Drepper <drepper@redhat.com>
[BZ #3013]
* locale/programs/ld-ctype.c (ctype_output): Adjust alignments, fix
lenght of one output field, correct bitmask creation.
* locale/programs/ld-time.c: Add alignment.
[BZ #2997]
* misc/error.c: Add space between program name and message if file
name is missing.
2006-08-03 Eric Blake <ebb9@byu.net>
[BZ #2998]
* misc/error.c (error_tail) [_LIBC]: Avoid invalid free.
2006-08-09 Ulrich Drepper <drepper@redhat.com>
* malloc/memusagestat.c: Silence warnings.
* malloc/malloc.c: Dynamically size mmap treshold if the program
frees mmaped blocks.
Patch by Valerie Henson and Arjan van de Ven.
2006-08-08 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_DIRECT): Protect with
__USE_GNU.
* stdlib/strtol_l.c (__strtol_ul_max_tab, __strtol_ul_rem_tab,
__strtol_ull_max_tab, __strtol_ull_rem_tab): Declare.
(DEF): Don't put the var into .gnu.linkonce.r.* section.
Only provide var definitions in strtol_l (or for *ull*
in strtoll_l).
* stdio-common/bug16.c (tests): New array.
(do_tests): Allow the first hexadecimal digit
to be 1, 2, 4 or 8. Do 3 additional tests.
* sysdeps/s390/fpu/libm-test-ulps: Update.
* sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c (fchownat): Use
fchownat syscall if available.
* sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Likewise.
* sysdeps/unix/sysv/linux/sh/fchownat.c (fchownat): Likewise.
* sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Likewise.
2006-08-07 Ulrich Drepper <drepper@redhat.com>
* nis/nis_xdr.c: Avoid some function calls.
2006-08-07 Jakub Jelinek <jakub@redhat.com>
Ulrich Drepper <drepper@redhat.com>
* nis/nis_call.c (rec_dirsearch) [case LOWER_NAME]: Don't take
short cut if only one name component is stripped away.
2006-08-07 Ulrich Drepper <drepper@redhat.com>
* nis/nis_call.c: Minor cleanups throughout.
(rec_dirsearch) [case HIGHER_NAME]: Correctly size ndomain array.
(first_shoot): Add search_parent_first parameter. Only if it is set
search parent server first.
If directory for table found through cold start cache is not the same
as referenced in the cache, don't use it.
(__nisfind_server): Take additional parameter. Pass it on to
first_shoot.
(__prepare_niscall): Adjust __nisfind_server call.
* nis/rpcsvc/nislib.h: Adjust __nisfind_server prototype.
* nis/nis_table.c: Adjust __nisfind_server call.
* nis/nis_lookup.c: Likewise.
(nis_lookup): Don't loop endlessly if name is reduced to ".".
2006-08-03 Ulrich Drepper <drepper@redhat.com>
[BZ #2182]
* math/s_cacosh.c: Return values from positive branch.
* math/s_cacoshf.c: Likewise.
* math/s_cacoshl.c: Likewise.
[BZ #2883]
* sysvipc/sys/msg.h: Change return value to ssize_t.
* sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
* sysvipc/msgrcv.c: Likewise.
* include/sys/msg.h: Likewise.
* grp/initgroups.c (internal_getgrouplist): Remove unnecessary
test introduced in patch for bz #661.
(getgrouplist): Simplify code a bit. Don't allocate one additional
element for NEWGROUPS.
[BZ #2908]
* stdio-common/printf_fphex.c (__printf_fphex): When rounding up
'f', use '1' as leading digit not '\1'.
* stdio-common/Makefile (tests): Add bug16.
* stdio-common/bug16.c: New file.
[BZ #2914]
* sysdeps/unix/sysv/linux/gethostid.c: Don't define OLD_HOSTIDFILE
and don't try to open it. The patch introducing the macro
contained a bug and used the same file name as the new file
instead of using /var/adm/hostid. Nobody complaint so I'm taking
this out completely.
[BZ #2926]
* assert/assert.h: Move cast to void inside ?: to quiet gcc.
Patch by Jerry James <Jerry.James@usu.edu>.
* rt/Makefile (tests): Add tst-clock2.
* rt/tst-clock2.c: New file.
[BZ #2978]
* resolv/gai_notify.c (__gai_notify_only): Copy memory for thread
function and its parameters and pass it to new thread.
(__gai_notify): Add support for alternative waiting for completion.
* resolv/gai_suspend.c (gai_suspend): Add support for alternative
waiting for completion.
* resolv/getaddrinfo_a.c: Likewise.
* resolv/gai_misc.h (struct waitlist): Don't add cond if alternative
waiting for completion is used.
* resolv/gai_misc.c: Allow overwriting code to start helper thread.
* resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h".
* resolv/gai_error.c: Likewise.
* resolv/gai_sigqueue.c: Likewise.
2006-08-02 Thomas Schwinge <tschwinge@gnu.org>
* hurd/getdport.c (__getdport): Don't return EBADF; instead set
errno to EBADF and return MACH_PORT_NULL.
2006-06-23 Joseph Myers <joseph@codesourcery.com>
[BZ #2980]
* posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables.
2006-08-02 Ulrich Drepper <drepper@redhat.com>
* elf/dl-addr.c (_dl_addr): If GNU-style hash tables are present,
walk them instead of the symbol table.
2006-08-01 Ulrich Drepper <drepper@redhat.com>
[BZ #2098]
* nscd/initgrcache.c (addinitgroupsX): Judge successful lookups by
status of NSS calls, not the number of returned entries.
* sysdeps/unix/sysv/linux/syscalls.list: Remove add_key,
request_key, keyctl.
2006-07-31 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/dl-osinfo.h: Remove unnecessary include.
2006-07-16 Jeff Bailey <jbailey@ubuntu.com>
* elf/tst-auditmod1.c: Fix typo in #error.
2006-07-31 Ulrich Drepper <drepper@redhat.com>
* elf/tst-auditmod1.c: Remove code for unsupported architectures.
* iconvdata/run-iconv-test.sh: Run cmp in C locale.
2006-07-20 Adam Nemet <anemet@caviumnetworks.com>
* stdlib/test-canon.c (do_test): Close fd before unlinking file so
that the directory is empty even on non-POSIX filesystems.
2006-07-31 Ulrich Drepper <drepper@redhat.com>
* elf/dl-open.c (dl_open_worker): Add branch prediction.
* nis/nss_compat/compat-grp.c: Avoid unnecessary setgrent calls into
the backend NSS module. If backend setgrent call failed, don't have
internal_setgrent fail. Just remember this until it is needed.
* nis/nss_compat/compat-pwd.c: Likewise.
* nis/nss_compat/compat-spwd.c: Likewise.
2006-07-30 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed.
* sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed.
* sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed.
* sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro.
(nanosleep_not_cancel): New macro.
(sigsuspend_not_cancel): new macro.
* sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS]
(do_sigsuspend): Define as inline.
(__sigsuspend): Always use do_sigsuspend.
[! NO_CANCELLATION] (__sigsuspend_nocancel): New function.
* include/signal.h: Declare __sigsuspend_nocancel.
* sysdeps/posix/pause.c
[! NO_CANCELLATION] (__pause_nocancel): New function.
* include/unistd.h (__pause_nocancel): Add attribute_hidden.
* include/time.h (__nanosleep_nocancel): Likewise.
2006-07-30 Ulrich Drepper <drepper@redhat.com>
* locale/programs/localedef.c (add_to_readlist): Rename local
variables to avoid confusion.
* locale/programs/charmap.c (charmap_read): Emit error message if
charmap couldn't be found or read.
2006-07-28 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/kernel-features.h: Define
__ASSUME_FUTEX_LOCK_PI.
* include/time.h: Declare __nanosleep_nocancel.
* include/unistd.h: Declare __pause_nocancel.
* dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Use this instead of
LDFLAGS. Add -lgcc_eh and libc_nonshared (again) to make sure we
get the __stack_chk_fail_local definition when it's needed.
2006-07-26 Ulrich Drepper <drepper@redhat.com>
* dlfcn/Makefile: Add rules to build and run bug-atexit3.
* dlfcn/bug-atexit3.c: New file.
* dlfcn/bug-atexit3-lib.cc: New file.
* dlfcn/dlmopen.c (dlmopen_doit): Don't allow RTLD_GLOBAL to be
used when the namespace is not the base namespace.
2006-07-26 Gavin Romig-Koch <gavin@redhat.com>
* stdlib/cxa_atexit.c (__new_exitfn_called): New variable.
(__new_exitfn): Bump it in every successful call.
* stdlib/cxa_finalize.c (__cxa_finalize): If destructor registered
more exit handlers, call them right away.
* stdlib/exit.h: Declare __new_exitfn_called.
2006-07-25 Ulrich Drepper <drepper@redhat.com>
* stdlib/cxa_finalize.c (__cxa_finalize): Fix race condition when
calling registered handler.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fix comment.
* sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
2006-07-10 Ulrich Drepper <drepper@redhat.com>
* elf/dl-lookup.c (dl_new_hash): New functions.
(_dl_lookup_symbol_x): Rename hash to old_hash and don't compute
value here. Compute new-style hash value. Pass new hash value
and reference to variable with the old value to do_lookup_x.
(_dl_setup_hash): If DT_GNU_HASH is defined, use it and not
old-style hash table.
(_dl_debug_bindings): Pass new hash value and reference to variable
with the old value to do_lookup_x.
* elf/do-lookup.h (do_lookup_x): Accept additional parameter with
new-style hash value and change old-style hash value parameter to
be a reference. Reoganize functions to determine whether
new-style hash table is available. Only fall back on old-style
table. If old-style hash value is needed, compute it here.
* elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH
entry.
* elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT,
DT_TLSDEC_GOT. Adjust DT_ADDRNUM.
* include/link.h (struct link_map): Add l_gnu_bitmask_idxbits,
l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero.
* Makeconfig: If linker supports --hash-style option add it to all
linker command lines to build DSOs.
* config.make.in: Define have-hash-style.
* configure.in: Test whether linker supports --hash-style option.
* elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const.
* sysdeps/generic/ldsodefs.h: Adjust prototype.
2006-06-27 Ulrich Drepper <drepper@redhat.com>
* elf/dl-load.c (open_path): Fix test to determine whether DSO is
auditing.
* elf/dl-load.c (_dl_map_object): Try harder to avoid looking at
RPATH of main map twice.
2006-06-22 Ulrich Drepper <drepper@redhat.com>
* intl/dcigettext.c (DCIGETTEXT): If _nl_find_msg returns -1 don't
look further, return original strings.
(_nl_find_msg): Do not return found translation if the conversion
failed. Either signal the string is unusable or that something went
wrong and the original should be used.
2006-06-21 Ulrich Drepper <drepper@redhat.com>
* string/_strerror.c (__strerror_r): Add __builtin_expect.
2006-06-14 Jakub Jelinek <jakub@redhat.com>
[BZ #2766]
* misc/insremque.c (insque): Handle prev == NULL.
* misc/Makefile (tests): Add tst-insremque.
* misc/tst-insremque.c: New test.
2006-06-17 Ulrich Drepper <drepper@redhat.com>
[BZ #2792]
* elf/dl-deps.c (expand_dst): Rename __cnt variable to not
conflict with DL_DST_REQUIRED.
2006-06-16 Ulrich Drepper <drepper@redhat.com>
* nis/nis_subr.c (nis_getnames): Fix the implementation to better
match what Solaris does.
2006-06-04 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/spawni.c (__spawni): Use local_seteuid and
local_setegid instead of seteuid and setegid.
* sysdeps/generic/local-setxid.h: New file.
* sysdeps/unix/sysv/linux/local-setxid.h: New file.
* sysdeps/posix/spawni.c (__spawni): Use non-cancelable interfaces.
* string/Makefile (tests): Add bug-envz1.
* string/bug-envz1.c: New file.
2006-06-02 Jakub Jelinek <jakub@redhat.com>
* posix/regex_internal.c (re_string_skip_chars): If no character has
been converted at all, set *last_wc to WEOF. If mbrtowc failed, set wc
to the byte which couldn't be converted.
(re_string_reconstruct): Don't clear valid_raw_len before calling
re_string_skip_chars. If wc is WEOF after re_string_skip_chars, set
tip_context using re_string_context_at.
* posix/Makefile: Add rules to build and run bug-regex25 test.
* posix/bug-regex25.c: New test.
2006-06-02 Ryan S. Arnold <rsa@us.ibm.com>
[BZ #2703]
* string/envz.c (envz_strip): Correct erroneously reversed src
and dest parameters to memmove() invocation.
2006-05-30 Jakub Jelinek <jakub@redhat.com>
* nscd/nscd.h (prune_cache): Add fd argument to prototype.
* nscd/nscd.c (parse_opt): Read response from INVALIDATE request
to make sure the database has been already invalidated.
* nscd/cache.c (prune_cache): Add fd argument. Write response to fd
after the cache has been invalidated. Use pthread_mutex_lock rather
than pthread_mutex_trylock if fd != -1.
* nscd/connections.c (invalidate_cache): Add fd argument, write
response to fd if not calling prune_cache, pass fd to prune_cache.
(handle_request): Adjust invalidate_cache caller.
(nscd_run): Pass -1 as fd to prune_cache.
2006-05-30 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/getaddrinfo.c (gaiconf_init): Initialize bits in
the correct place.
2006-05-29 Ulrich Drepper <drepper@redhat.com>
* nscd/nscd.h (struct database_dyn): Add prunelock field.
* nscd/cache.c (prune_cache): Take prunelock before starting the
work. Just return in case it is already taken.
* nscd/connections.c (dbs): Initialize .prunelock.
2006-05-25 Ulrich Drepper <drepper@redhat.com>
* nis/nis_removemember.c (nis_removemember): Avoid unnecessary
copying. No need to allocate new array for group members. Just
move the pointers and update the size.
* nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying.
Avoid memory leak in case realloc fails. Simplification for
better code generation.
Avoid deprecation warning because of libc_hidden_proto for
inet6_option_alloc.
* inet/inet6_option.c (option_alloc): Renamed from
inet6_option_alloc. Made static.
(inet6_option_alloc): Now a simple wrapper around option_alloc.
(inet6_option_append): Call option_alloc.
* include/netinet/in.h: Remove libc_hidden_proto for
inet6_option_alloc.
* nis/nis_callback.c (__nis_create_callback): Always call xdr_free
for cleanup when cb!=NULL [Coverity CID 233].
2006-05-24 Ulrich Drepper <drepper@redhat.com>
[BZ #2693]
* inet/Makefile (routines): Add inet6_opt and inet6_rth.
* inet/Versions (libc, GLIBC_2.5): Add inet6_opt_init,
inet6_opt_append, inet6_opt_finish, inet6_opt_set_val, inet6_opt_next,
inet6_opt_find, inet6_opt_get_val, inet6_rth_space, inet6_rth_init,
inet6_rth_add, inet6_rth_reverse, inet6_rth_segments,
and inet6_rth_getaddr.
* inet/netinet/ip6.h (struct ip6_rthdr0): Make ip6r0_addr a flexible
array.
* inet/netinet/in.h (struct ip6_mtuinfo): Define.
Mark inet6_option_* interfaces as deprecated.
Declare inet6_opt_init, inet6_opt_append, inet6_opt_finish,
inet6_opt_set_val, inet6_opt_next, inet6_opt_find, inet6_opt_get_val,
inet6_rth_space, inet6_rth_init, inet6_rth_add, inet6_rth_reverse,
inet6_rth_segments, and inet6_rth_getaddr.
* inet/inet6_opt.c: New file.
* inet/inet6_rth.c: New file.
* inet/netinet/icmp6.h: Pretty printing.
[BZ #2683]
* elf/dl-addr.c (_dl_addr): Don't match undefined references.
2006-05-23 Ulrich Drepper <drepper@redhat.com>
* nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of
doing it all here. When server does not know the answer do not
fail immediate, try parent first.
* nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer
overflow test.
2006-05-20 Ulrich Drepper <drepper@redhat.com>
* nis/nis_call.c (__prepare_niscall): New function. Split out
from __do_niscall.
* nis/nis_table.c (__create_ib_request): Renamed from create_ib_request
and exported.
(__follow_path): New function. Split out from nis_list.
* nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and
_xdr_nis_result.
* nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and
_xdr_nis_result.
* nis/libnsl.h: Declare __prepare_niscall, __create_ib_request,
and __follow_path.
* nis/Versions: Export __prepare_niscall, __create_ib_request,
__follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result
from libnsl for version GLIBC_PRIVATE.
* nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk.
Remove entry parameter from _nss_nisplus_parse_pwent and
_nss_nisplus_parse_grent.
* nis/nss_nisplus/nisplus-parser.c: Likewise.
* nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ
again. Rewrite getpwent handling to not use nis_first_entry and
nis_next_entry. Roll out own niscall handling.
* nis/nss_nisplus/nisplus-grp.c: Likewise.
* sunrpc/xdr_rec.c: Fix typo in comment.
2006-05-19 Ulrich Drepper <drepper@redhat.com>
* nis/nis_call.c (__do_niscall3): Avoid code duplication in error
handling.
* nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
to allocate memory for my_pollfd. Better initialization of
cb_is_running. Use TEMP_FAILURE_RETRY.
* malloc/memusage.sh (memusageso): Add quotes.
(memusagestat): Likewise.
* debug/xtrace.sh (pcprofileso): Likewise.
(pcprofiledump): Likewise.
* debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR
replacement.
* malloc/Makefile ($(objpfx)memusage): Likewise.
* nis/nis_callback.c (__nis_create_callback): Calls to
svcudp_bufcreate and svctcp_create can fail. Free ->xprt if
asprintf call fails.
* sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_sendreq): Make sure
no uninitialized memory is passed to sendto.
2006-05-18 Ulrich Drepper <drepper@redhat.com>
* nis/nis_callback.c (__nis_create_callback): Use asprinf instead
of snprintf+strdup. Handle OOM.
* nis/nis_callback.c (__nis_create_callback): Allocate cb and
cb->serv together. Remove now obsolete free calls.
(__nis_destroy_callback): Remove now obsolete free call.
2006-05-18 David Woodhouse <dwmw2@redhat.com>
* sysdeps/posix/getaddrinfo.c: Add unique labels to the default
RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local
and ULA respectively). Set precedence for IPv4 address to 10 as
defined in RFC3484 for preferring IPv6.
* posix/gai.conf: Update to match the new default tables.
2006-05-18 Jakub Jelinek <jakub@redhat.com>
* nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent
returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS.
* nis/nss_compat/compat-spwd.c (internal_setspent): Likewise.
* nis/nss_compat/compat-grp.c (internal_setgrent): Likewise.
* nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent):
Removed.
(init_nss_interface): Remove initialization of these variables.
2006-05-18 Ulrich Drepper <drepper@redhat.com>
* nis/nis_call.c (rec_dirsearch): Little optimization: pull
nis_free_directory forward to avoid duplication.
2006-05-17 Ulrich Drepper <drepper@redhat.com>
* nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and
rec_dirsearch returning NULL.
(first_shoot): Handle __nis_finddirectory returning NULL.
(__nisfind_server): Fix leak when rec_dirsearch returns NULL.
* sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOSE, IN_MOVE,
IN_ONLYDIR, IN_DONT_FOLLOW, and IN_MASK_ADD.
2006-05-17 Jakub Jelinek <jakub@redhat.com>
* sunrpc/key_call.c (getkeyserv_handle): Call auth_destroy if
pid changed.
2006-05-15 Ulrich Drepper <drepper@redhat.com>
* include/rpc/pmap_prot.h: Mark all functions as hidden.
* nscd/nscd_initgroups.c: Mark __gr_map_handle as hidden.
* nscd/nscd_getgr_r.c: Likewise.
* include/rpc/pmap_rmt.h: Mark all functions as hidden.
* nscd/nscd_getai.c (__hst_map_handle): Mark as hidden.
* nscd/nscd_gethst_r.c (__hst_map_handle): Likewise.
* stdlib/longlong.h (__clz_tab): Mark as hidden.
* iconv/gconv_int.h: Mark __gconv_lock as hidden.
* include/rpc/key_prot.h: Mark all _internal functions as hidden.
* include/rpc/auth.h: Mark xdr_des_block_internal and
xdr_opaque_auth_internal as hidden.
* sysdeps/unix/sysv/linux/getdents.c: Mark __have_no_getdents64 as
hidden.
* include/rpc/xdr.h: Mark all _internal functions as hidden.
* misc/getusershell.c (okshells): Don't use static initializers,
do it dynamically.
* stdlib/fmtmsg.c (keywords): Change type of len element to
uint32_t to not waste space on 64bit machines.
* locale/setlocale.c: Change _nl_category_names into a string.
Add new _nl_category_name_idxs. Change all users.
* locale/localeinfo.h: Adjust declaration of _nl_category_names.
Declare _nl_category_name_idxs.
* locale/findlocale.c: Adjust for _nl_category_names change.
* locale/loadlocale.c: Likewise.
* locale/newlocale.c: Likewise.
* intl/dcigettext.c: Likewise.
* iconv/gconv_conf.c (add_alias): Move actual alias handling to...
(add_alias2): ...here. New function.
(__gconv_read_conf): Simplify builtin alias handling.
(builtin_aliases): Convert to string to avoid relocations.
* iconv/gconv_builtin.h: Add comment about correct formatting.
2006-05-15 Jakub Jelinek <jakub@redhat.com>
* resolv/res_debug.c (loc_ntoa): Make error const.
2006-05-14 Andreas Schwab <schwab@suse.de>
* math/complex.h [__LDBL_COMPAT]: Use __REDIRECT_NTH.
2006-05-12 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sched_getaffinity.c: Include sys/param.h.
(__sched_getaffinity_new): Don't crash if cpusetsize is smaller than
sizeof (cpu_set_t).
2006-05-11 Ulrich Drepper <drepper@redhat.com>
* resolv/res_debug.c (loc_ntoa): Define error as array, not pointer.
* include/arpa/nameser.h: Declare _ns_flagdata as hidden.
* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master.
* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master.
* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp.
* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp.
* nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data.
* include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for
xdr_cback_data.
* nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args.
* include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
xdr_ypupdate_args.
* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order.
* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order.
* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist.
* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist.
* nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p.
* include/rpcsvc/nis_callback.h: New file.
* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val.
* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val.
* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist.
* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist.
* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
* nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args.
* include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
xdr_ypdelete_args.
* nis/nis_xdr.h: Mark all functions as hidden. Remove
__BEGIN_DECLS and __END_DECLS, the header is not installed.
* nis/nis_error.c: Remove table of strings. Use position
independent mechanism.
* nis/nis_error.h: New file.
2006-05-11 Jakub Jelinek <jakub@redhat.com>
* locale/programs/ld-time.c (time_finish): If wide era name or
format aren't provided, set both wname and wformat to L"".
2006-05-10 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Only store
results if the call was succesful.
* nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden.
* nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count
as hidden.
2006-05-10 Jakub Jelinek <jakub@redhat.com>
* misc/sys/queue.h: Remove uses of all QUEUEDEBUG_* macros.
2006-05-10 Ulrich Drepper <drepper@redhat.com>
* posix/wordexp.c (parse_glob): No need to check ifs for NULL, the
caller makes sure this is not the case.
(wordexp): Simplify ifs_white creation. [Coverity CID 231]
2006-05-09 Ulrich Drepper <drepper@redhat.com>
* posix/wordexp.c: Remove numerous NULL pointer tests before FREE
calls.
* io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
[Coverity CID 229, 230]
* argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and
DGETTEXT calls.
(hol_help): Likewise. [Coverity CID 226, 227]
* string/argz-replace.c (__argz_replace): Unconditionally call
free on SRC. [Coverity CID 225]
* nis/nis_creategroup.c (nis_creategroup): No need to duplicate
the return value of __nis_default_owner and __nis_default_group,
it has been especially allocated. [Coverity CID 224]
* nis/nis_defaults.c (searchXYX): New functions. Used by both
searchgroup and searchowner. Significantly simplified.
(__nis_default_owner): Remove duplication. Do not locally copy the
string before duplicating it.
(__nis_default_group): Likewise.
* nis/nis_lookup.c (nis_lookup): After calling nis_free_directory,
we must clear the variable before calling __nisfind_server.
* nis/nis_lookup.c (nis_lookup): Always free memory allocated with
nis_getnames. [Coverity CID 223]
* locale/programs/locfile.c (locfile_read): Use alloca instead of
xmalloc to allocate local repertoire name. [Coverity CID 222]
* iconv/iconv_charmap.c (use_to_charmap): No need to dynamically
allocate memory for the input to add_bytes. [Coverity CID 221]
* posix/wordexp.c (w_addword): Free word if realloc fails and it
was allocated here. [Coverity CID 219, 220]
* posix/getconf.c (print_all): Free confstr data after printing.
[Coverity CID 218]
* sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
list allocation fails. [Coverity CID 215]
* nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
[Coverity CID 213]
* argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
string is NULL. [Coverity CID 212]
* argp/Makefile: Add rules to build and run bug-argp1.
* argp/bug-argp1.c: New file.
* io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
end of string.
* stdlib/canonicalize.c (__realpath): Likewise.
* locale/programs/ld-time.c (time_finish): Don't dereference NULL
pointer. [Coverity CID 206]
* elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
in statically linked code.
* elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
statically built code, be prepared to have no link map.
[Coverity CID 205]
* argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
dgettext calls. [Coverity CID 204]
* argp/argp-help.c (struct uparams): Remove valid member. Change
the one user.
(uparam_names): Reduce size. Avoid relative relocations.
Moved to read-only segment.
(fill_in_uparams): Update for new layout.
* sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
assumed to always be != NULL. [Coverity CID 202]
* argp/argp-help.c (hol_entry_help): Remove some dead code
[Coverity CID 200].
* nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
away a few more unconditional yperr2nss calls.
(_nss_nis_getservbyname_r): Likewise.
2006-05-06 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/ldsodefs.h: Remove support for non-core
architectures.
* sysdeps/unix/sysv/linux/check_pf.c (make_request): Make sure
that unused memory passed to sendto is nevertheless initialized.
[BZ #2499]
* resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Avoid
possibly unaligned memory accesses.
* include/arpa/nameser.h: Also optimize NS_PUT16 and NS_PUT32.
* resolv/res_mkquery.c: Use NS_PUT16 and NS_PUT32 instead of __putshort
and __putlong respectively. Correct buffer overflow check for
NS_NOTIFY_OP.
* resolv/res_send.c (send_vc): Use ns_put16 instead of putshort.
* resolv/res_send.c (res_queriesmatch): Fix typo in comment.
(send_dg): Rewrite error handling to be more compact and avoid
double recomputation of timeouts. Pass MSG_NOSIGNAL to send.
* include/arpa/nameser.h: Add optimizations for NS_GET16 and NS_GET32.
* resolv/res_send.c (res_nameinquery): Use NS_GET16 directly
instead of ns_get16.
(res_queriesmatch): Likewise. Minor optimization.
[BZ #2499]
* resolv/res_query.c (__libc_res_nquery): If answerp != NULL,
__libc_res_nsend might reallocate the buffer for the answer. In
this case we have to reload the HP pointer.
2006-05-05 Ulrich Drepper <drepper@redhat.com>
* stdio-common/vfscanf.c (memory_error): Remove definition. Add
some branch prediction hints.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Define SPLICE_F_*.
* sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
2006-05-05 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/s390-32/elf/start.S: Replace pc relative relocation
by a GOT relocation to make Scrt1.o position independent.
* sysdeps/s390/s390-64/elf/start.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/syscall.S: Add support for
six system call parameters.
* sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
2006-05-05 Ulrich Drepper <drepper@redhat.com>
* sunrpc/svcauth_des.c (cache_init): Use calloc instead of
malloc&bzero.
* sunrpc/svc_udp.c (BZERO): Remove definition.
(CALLOC): Define.
(svc_enablecache): Use CALLOC instead of ALLOC&BZERO.
* sunrpc/des_impl.c: Remove ALT_ECB support. We never used it.
(des_SPtrans): Use uint32_t type.
(des_skb): Likewise.
* sunrpc/xdr_ref.c (xdr_reference): Use calloc instead of malloc&bzero.
2006-05-05 Jakub Jelinek <jakub@redhat.com>
[BZ #2509]
* stdio-common/tst-printf.sh: Adjust for tst-printf.c change even
on 32-bit arches.
2006-05-05 Ulrich Drepper <drepper@redhat.com>
* locale/programs/ld-address.c (address_finish): Fix one more
place where the iso639 array might be accessed beyond the limits.
2006-05-04 Ulrich Drepper <drepper@redhat.com>
* nis/nis_table.c (nis_list): Avoid clearing res twice before
filling it for the first time.
* nis/nis_table.c (get_tablepath): Renamed from __get_tablepath.
Adjust all callers.
Free res object content before returning.
* sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
* sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free
client->cl_auth.
* sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire
cleanup for initial thread, just the free call on TVP.
* nscd/gai.c (__getline): Define.
See ChangeLog.16 for earlier changes.