* libio/Makefile (tests): Add tst_wprintf2.
(tst_wprintf2-ARGS): Define.
* libio/tst_wprintf2.c: New file.
Based on a test case by Yoshito Kawada <KAWADA@jp.ibm.com>.
* libio/wfiledoalloc.c: Only allocate external buffer if this
hasn't happened yet.
* libio/wfileops.c (_IO_wdo_write): Overflow only if there is really
something in the buffer. gconv call can write up to end of the
buffer, not only _IO_write_end.
(_IO_wfile_overflow): Allocate also external buffer.
* stdio-common/vfprintf.c (process_string_arg): Handle multibyte
strings with precision in vfwprintf correctly.
* stdio-common/vfprintf.c: Fix completely broken handling of
unbuffered wide character streams.
Reported by Yoshito Kawada <KAWADA@jp.ibm.com>.
* resolv/base64.c: Update from BIND 8.2.3-T5B.
* resolv/herror.c: Likewise.
* resolv/inet_addr.c: Likewise.
* resolv/inet_net_ntop.c: Likewise.
* resolv/inet_net_pton.c: Likewise.
* resolv/inet_neta.c: Likewise.
* resolv/inet_ntop.c: Likewise.
* resolv/nsap_addr.c: Likewise.
* resolv/inet_pton.c: Likewise. Reject a few more more invalid
IPv6 addresses (ISC bug #520).
* resolv/ns_name.c: Avoid emitting RCS ID in object file.
* resolv/ns_parse.c: Likewise.
* resolv/ns_netint.c: Likewise.
* resolv/ns_samedomain.c: Likewise.
* resolv/ns_ttl.c: Likewise.
* resolv/ns_print.c: Update from BIND 8.2.3-T5B. Avoid emitting
RCS ID in object file.
* resolv/res_debug.c: Update from BIND 8.2.3-T5B.
* resolv/res_mkquery.c: Likewise.
* resolv/res_query.c: Likewise.
* resolv/res_init.c: Likewise.
(res_setoptions): Mark internal.
* resolv/res_send.c: Likewise.
[_LIBC]: Fully reinstate the code that avoids the FD_SETSIZE limit
by using poll instead.
* resolv/res_comp.c: Likewise.
[SHLIB_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_2)]: Make dn_expand a
weak alias for __dn_expand.
* resolv/res_data.c: Likewise.
(res_close) [_LIBC]: Don't call res_nclose if RES_INIT isn't set
in _res.options. Avoids a potential security risk by avoiding a
close (0).
[SHLIB_COMPAT (libresolv, GLIBC_2_0, GLIBC_2_2)]: Make
res_mkquery, res_query, res_querydomain adn res_search weak
aliases for __res_mkquery, __res_query, __res_querydomain and
__res_search.
* resolv/res_libc.c: (_res): Don't initialize. Fix res_close
instead to avoid close(0).
(res_init): Always use the static resolver context.
[SHLIB_COMPAT (libc, GLIBC_2.0, GLIBC_2_2)]: Make res_init a weak
alias for __res_init.
* resolv/resolv.h: Update from BIND 8.2.3-T5B. Move definition of
RES_SET_H_ERRNO and accompanying comment to...
* include/resolv.h: ... here.
* resolv/arpa/namser.h: Update from BIND 8.2.3-T5B.
* resolv/arpa/nameser_compat.h: Likewise.
Bugfixes to the variant of the code for machines with no compare
and swap.
* spinlock.c (__pthread_alt_lock, __pthread_alt_timedlock): Wait
node was not being properly enqueued, due to failing to update
the lock->__status field.
* spinlock.c (__pthread_alt_timedlock): The oldstatus variable was
being set inappropriately, causing the suspend function to be called
with a null self pointer and crash.
* spinlock.c (__pthread_alt_lock, __pthread_alt_timedlock): Fixed
bug whereby thr field of waitnode structure would not be correctly
set unless a null self pointer is passed to the functions.
Eliminated redundant calls to thread_self().
(profile_fixup): Don't define for __BOUNDED_POINTERS__.
* sysdeps/i386/dl-machine.h: Don't use regparm attribute for
__BOUNDED_POINTERS__.
(ELF_MACHINE_RUNTIME_TRAMPOLINE): Use non-regparm version
for __BOUNDED_POINTERS__.
* iconv/gconv_trans.c: Add #include <stdlib.h> to get malloc decl.
* elf/dl-runtime.c (fixup): Trampoline passes unbounded pointer.
(profile_fixup): Don't define for __BOUNDED_POINTERS__.
* sysdeps/i386/dl-machine.h: Don't use regparm attribute for
__BOUNDED_POINTERS__.
(ELF_MACHINE_RUNTIME_TRAMPOLINE): Use non-regparm version
for __BOUNDED_POINTERS__.
* Makerules (o-objects): Supplement with $(o-objects$o).
* string/Makefile (o-objects.ob): Add variable to pull
unbounded versions of memcpy, memset and memchr into libc_b.
* Makerules (o-objects): Supplement with $(o-objects$o).
* string/Makefile (o-objects.ob): Add variable to pull
unbounded versions of memcpy, memset and memchr into libc_b.
* sysdeps/unix/make-syscalls.sh: Handle new arg signature
keyletters F, I, S, W. Remove unused keyletter V. Surround
signature argnames with angle-brackets for use as word delimiters,
and to induce syntax errors for any args not handled. Split
multi-echo echoes and comment each stage.
* sysdeps/unix/common/syscalls.list: Refine & correct signatures.
* sysdeps/unix/inet/syscalls.list: Likewise.
* sysdeps/unix/mman/syscalls.list: Likewise.
* sysdeps/unix/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/syscalls.list: Likewise.
* sysdeps/unix/sysv/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 Greg McGary <greg@mcgary.org>
* sysdeps/unix/make-syscalls.sh: Handle new arg signature
keyletters F, I, S, W. Remove unused keyletter V. Surround
signature argnames with angle-brackets for use as word delimiters,
and to induce syntax errors for any args not handled. Split
multi-echo echoes and comment each stage.
* sysdeps/unix/common/syscalls.list: Refine & correct signatures.
* sysdeps/unix/inet/syscalls.list: Likewise.
* sysdeps/unix/mman/syscalls.list: Likewise.
* sysdeps/unix/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/syscalls.list: Likewise.
* sysdeps/unix/sysv/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/powerpc/syscalls.list
* iconv/gconv_open.c (__gconv_open): Initialize the __data
field of struct __gconv_trans_data differently. Don't pass NULL to
trans_init_fct. Simplify list append operation.
2000-07-14 Bruno Haible <haible@clisp.cons.org>
* intl/dcigettext.c (dcigettext): Call plural_eval on all platforms,
not only those having tsearch.
2000-07-17 Ulrich Drepper <drepper@redhat.com>
* locale/langinfo.h: Add placeholder values in enum for removed
LC_CTYPE entries.
2000-07-17 Jakub Jelinek <jakub@redhat.com>
* elf/dl-addr.c (_dl_addr): Keep searching in the _dl_loaded
chain if the PHDR check fails.
2000-07-17 Mark Kettenis <kettenis@gnu.org>
* nss/getent.c (print_hosts): Make sure we always print a space
between numeric addresses and hostnames.
2000-07-17 Wolfram Gloger <wg@malloc.de>
* malloc/malloc.c (chunk_alloc): Use mmap_chunk() only if allowed,
i.e. if n_mmaps_max>0.
2000-07-16 Mark Kettenis <kettenis@gnu.org>
* resolv/netdb.h (AI_V4MAPPED, AI_ALL, AI_ADDRCONFIG): Adjust
values to remove possible clash with other AI_* constants.
(AI_PASSIVE, AI_CANONNAME, AI_NUMERICHOST): Define as
hexadecimal constants to stress the fact they're in fact
bit flags.
2000-07-15 Mark Kettenis <kettenis@gnu.org>
* nss/getXXent_r.c [NEED__RES]: Include <resolv.h>.
(SETFUNC_NAME, ENDFUNC_NAME, REENTRANT_GETNAME): Use res_ninit
instead of res_init.
* Makefile: Rewrite rules for tests to run them only when necessary.
* sort-test.sh: Produce output for failed tests.
* tst-fmon.sh: Likewise.
* tst-rpmatch.sh: Likewise.
* sysdeps/ia64/pt-machine.h (__compare_and_swap): Change it to
have acquire semantics.
(__compare_and_swap_with_release_semantics): New inline
function.
(HAS_COMPARE_AND_SWAP_WITH_RELEASE_SEMANTICS): New macro.
2000-01-28 Hans Boehm <hboehm@exch.hpl.hp.com>
* manager.c: Fix the problem with signals at startup.
Change the way that thread stacks are allocated on IA64.
Clean up some of the guard page allocation stuff.
1999-12-19 H.J. Lu <hjl@gnu.org>
* internals.h (page_roundup): New.
* attr.c (__pthread_attr_setguardsize); Use page_roundup
instead of roundup.
* manager.c (pthread_allocate_stack): Make sure guardaddr is
page aligned with page_roundup if NEED_SEPARATE_REGISTER_STACK
is define.
1999-12-17 Hans Boehm <hboehm@exch.hpl.hp.com>
* manager.c (pthread_allocate_stack): Unmap the stack top
if failed to map the stack bottom.
Fix the guard page.
(pthread_free): Fix the guard page.
* pthread.c (pthread_initialize): Set rlimit correctly for
NEED_SEPARATE_REGISTER_STACK.
1999-12-16 H.J. Lu <hjl@gnu.org>
* pthread.c (__pthread_initialize_manager): Pass
__pthread_manager_thread_bos instead of
__pthread_manager_thread_tos to __clone2.
1999-12-16 H.J. Lu <hjl@gnu.org>
* manager.c (pthread_allocate_stack): Correct the calculation
of "new_thread_bottom". Remove MAP_GROWSDOWN from mmap for
stack bottom.
1999-12-13 H.J. Lu <hjl@gnu.org>
* sysdeps/ia64/pt-machine.h (__compare_and_swap): Added a stop
bit after setting ar.ccv.
1999-12-12 H.J. Lu <hjl@gnu.org>
* manager.c (pthread_allocate_stack): Make the starting
address of the stack bottom page aligned. FIXME: it may
need changes in other places.
(pthread_handle_create): Likewise.
* intl/Makefile (test-srcs): Add tst-translit.
(tests): Likewise.
Add rules to build and run tst-translit.
* intl/tst-translit.c: New file.
* intl/tst-translit.sh: New file.
* elf/Versions (ld): Export _dl_out_of_memory for GLIBC_2.2.
* dlfcn/dlerror.c (dlerror): Don't free the error string if it is the
report that we are out of memory.
* elf/dl-deps.c (_dl_map_object_deps): Likewise.
* elf/dl-libc.c (dlerror_run): Likewise.
* elf/dl-open.c (_dl_open): Likewise.
* elf/rtld.c (dl_main): Likewise.
* elf/dl-error.c: Define _dl_out_of_memory.
(_dl_signal_error): Return _dl_signal_error if we cannot duplicate
the error string.
* sysdeps/generic/ldsodefs.h: Declare _dl_out_of_memory.
* dlfcn/dlerror.c (free_key_mem): Also free error string.
* elf/Makefile (SYSCONF-FLAGS): Added to pass sysconfdir to
compiler.
(CFLAGS-cache.c): Added, uses SYSCONF-FLAGS.
(CFLAGS-dl-cache.c): Likewise.
(CFLAGS-ldconfig.c): Added, passes directory locations.
* sysdeps/generic/dl-cache.h (LD_SO_CACHE): Use SYSCONFDIR to
locate cache.
* elf/ldconfig.c (LD_SO_CONF): Likewise.
(main): Use configured LIBDIR and SLIBDIR.
2000-07-11 Jakub Jelinek <jakub@redhat.com>
* math/bits/cmathcalls.h (cimag): Add __THROW.
(creal, conj): Likewise.
* wctype/wctype.h (_ISwbit): Avoid warnings about shifting left
by negative value.
* nss/getent.c (services_keys): Pass port number in network byte
order in call to getservbyport.
2000-07-11 Andreas Jaeger <aj@suse.de>
* stdlib/Makefile (test-canon-ARGS): Fix for building in the
source dir.
* intl/Makefile (do-gettext-test): Likewise.
* dirent/Makefile (opendir-tst1-ARGS): Likewise.
2000-07-11 Andreas Schwab <schwab@suse.de>
* Makeconfig (run-program-prefix): New rule.
(built-program-cmd): Use run-program-prefix.
Add extra level of macro expansion.
[!__ASSEMBLER__ && HAVE_WEAK_SYMBOLS] (weak_alias): nLikewise.
* sysdeps/generic/bp-thunks.h: Ensure `struct timeval' definition
is available at the time `select' prototype is declared.
* sysdeps/unix/make-syscalls.sh: Remove unused variables.
Collect non-versioned weak aliases. Consider only non-versioned
aliases for the user-visible systemcall name. Do checks inline with
call to primitive system call.
* sysdeps/unix/sysv/linux/ptrace.c (ptrace): Add void cast to
stand-alone bounds checks to suppress unused value warnings.
* sysdeps/unix/sysv/linux/sysctl.c (__sysctl): Likewise.
2000-07-11 Greg McGary <greg@mcgary.org>
* include/libc-symbols.h [!__ASSEMBLER__] (strong_alias):
Add extra level of macro expansion.
[!__ASSEMBLER__ && HAVE_WEAK_SYMBOLS] (weak_alias): nLikewise.
* sysdeps/generic/bp-thunks.h: Ensure `struct timeval' definition
is available at the time `select' prototype is declared.
* sysdeps/unix/make-syscalls.sh: Remove unused variables.
Collect non-versioned weak aliases. Consider only non-versioned
aliases for the user-visible systemcall name. Do checks inline with
call to primitive system call.
* sysdeps/unix/sysv/linux/ptrace.c (ptrace): Add void cast to
stand-alone bounds checks to suppress unused value warnings.
* sysdeps/unix/sysv/linux/sysctl.c (__sysctl): Likewise.
Andreas Jaeger [Mon, 10 Jul 2000 13:52:21 +0000 (13:52 +0000)]
Update.
* malloc/Makefile: Run tst-mtrace only with shared libs.
* stdio-common/Makefile: Run unbputc and tst-printf tests only
with shared libs.
2000-07-10 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Verify
that gpreg really points to the GOT section of the calling object.
Scan all PT_LOAD segments of objects for stub_pc, instead of only
checking a start address of first one.
Fix typos.
* sysdeps/mips/mips64/dl-machine.h (elf_machine_runtime_link_map):
Likewise.
* sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Fix a typo.
* stdio-common/Makefile (tests): Remove tst-printf here...
(tests-srcs): ...and add it here.
(distribute): Add tst-unbputc.sh and tst-printf.sh.
Add rules to run tst-printf.sh.
* stdio-common/tst-printf.c: Move code around so that there is really
no further output where it's stated.
* stdio-common/tst-printf.sh: New file.
(tests): Remove tst-printf here... (tests-srcs): ...and add it here. (distribute): Add tst-unbputc.sh and tst-printf.sh. Add rules to run tst-printf.sh.
Mark Kettenis [Fri, 7 Jul 2000 19:02:14 +0000 (19:02 +0000)]
* hurd/vpprintf.c [USE_IN_LIBIO]: Include <libioP.h>. (do_write): Renamed from pwrite. (vpprintf) [USE_IN_LIBIO]: Adjust for renaming and reshufling of `struct _IO_cookie_file'.
2000-07-07 Mark Kettenis <kettenis@gnu.org>
* hurd/vpprintf.c [USE_IN_LIBIO]: Include <libioP.h>.
(do_write): Renamed from pwrite.
(vpprintf) [USE_IN_LIBIO]: Adjust for renaming and reshufling of
`struct _IO_cookie_file'.