1999-07-26 Ulrich Drepper <drepper@cygnus.com>
* wcsmbs/wcsrtombs.c (__wcsrtombs): When computing maximum number
of wide characters to convert do it right and don't overestimate
by multiplying with MB_CUR_MAX.
Reported by Bruno Haible <haible@ilog.fr>.
1999-07-26 Jakub Jelinek <jj@ultra.linux.jz>
* string/bits/string2.h (__strcpy_small): Avoid compile time warning.
(__stpcpy_small): Likewise.
Union has no __uc member but __c.
* string/bits/string2.h: Fix aliasing problems.
* sysdeps/i386/i486/bits/string.h: Likewise.
* sysdeps/i386/bits/string.h: Likewise.
1998-12-28 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/dl-machine.c: Handle shared library profiling.
* elf/rtld.c (dl_main): Don't call malloc() between
re-relocating the dynamic linker and running the application's crt0.
1999-07-21 Paul D. Smith <psmith@gnu.org>
* sysdeps/generic/glob.c: Move getlogin{,_r} prototypes below
glob.h to get __P() macro.
* posix/fnmatch.c (internal_fnmatch): Use K&R definition syntax,
not ANSI.
(__strchrnul): This won't exist outside GLIBC, so create one.
1999-07-25 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/unix/sysv/linux/sparc/bits/types.h: Always define __qaddr_t.
__ino64_t should be 32bit unsigned type on sparc32.
Define __off64_t to __quad_t instead of __int64_t.
Make __pic_pid_t unsigned on sparc32.
1999-07-25 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* localedata/tst-rpmatch.sh: Use "&" instead of "§" to avoid a bug
in bash 2.03.
1999-07-25 Ulrich Drepper <drepper@cygnus.com>
1999-07-25 Ulrich Drepper <drepper@cygnus.com>
* iconvdata/euc-kr.c (euckr_from_ucs4): Set cp[0] to '\0' in case
of an error. Patch by Changwoo Ryu <cwryu@debian.org>.
1999-07-24 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-fini.c: Handle DT_FINI_ARRAY.
* elf/link.h (struct link_map): Remove l_init_running. Add l_runcount
and l_initcount.
* elf/dl-init.c: Handle DT_INIT_ARRAY.
* elf/dynamic-link.h: Change parameters. Now only get link_map
pointer. Calculate l_initcount.
* elf/link.h (struct link_map): Add l_runpath_dirs.
* elf/dynamic-link.h: If RUNPATH is given, set RPATH to NULL.
* elf/dl-load.c: Pretty print.
(decompose_rpath): Take new parameter with info from where the path
comes. Pass it the fillin_rpath.
(_dl_init_paths): Initialize l_runpath_dirs.
(_dl_map_object): Don't search using RPATHs if object has RUNPATH.
Search using RUNPATH after LD_LIBRARY_PATH.
* elf/dl-support.c: Adjust comment.
* elf/rtld.c: Adjust help message.
* sysdeps/generic/bits/termios.h (ONOEOT): Change value to 1<<3, to
match BSD value; previous value of 1<<8 was a typo. I bet nothing
ever used this, so I'm not going to worry about compatibility.
[__USE_GNU] (IUCLC, OLCUC): New macros.
* sysdeps/mach/_strerror.c: Include <libintl.h>.
1999-07-19 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdsig.c (_hurd_internal_post_signal): If a
hurd_signal_preemptor matches but its `preemptor' field is null, use
its `handler' field directly. This is to comply with behavior
documented in <hurd/sigpreempt.h>.
* sysdeps/mach/hurd/mmap.c (__mmap): Use correct arguments in
__vm_allocate calls.
1999-07-20 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/sysd-stdio.c (__stdio_read): Call
_hurd_fd_read with new OFFSET argument set to -1.
(__stdio_write): Call _hurd_fd_write with new OFFSET argument set
to -1.
1999-07-17 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdexec.c (_hurd_exec): Prune trailing null ports from the
descriptor table sent in the RPC.
* inet/Makefile (routines): Add getipnodebyad and freehostent.
* inet/Versions [GLIBC_2.2] (libc): Add getipnodebyad and freehostent.
* inet/freehostent.c: New file.
* inet/getipnodebyad.c: New file.
* nss/digits_dots.c: Fail if IPv6 is found and IPv4 is requested.
Add support for getipnode* functions.
* nss/digits_dots.c: Don't use __set_h_errno, assign to *h_errnop.
Set h_aliases to NULL and not to a pointer to an array with a NULL
pointer following XNS 5.2.
1999-07-18 Ulrich Drepper <drepper@cygnus.com>
* inet/gethstbyad_r.c (PREPROCESS): Test for unspecified IPv6 address
and return an error in this case.
* nss/getXXbyYY_r.c: Allow PREPROCESS be defined and use it if
available.
* resolv/netdb.h: Adjust parameters of gethostbyaddr and
gethostbyaddr_r.
* inet/gethstbyad.c: Correct type of len parameter.
* inet/gethstbyad_r.c: Likewise.
1999-07-17 Zack Weinberg <zack@rabi.columbia.edu>
* include/libc-symbol.h: Clean up definitions of weak_alias,
strong_alias, symbol_version, etc. etc.
* posix/getopt.h: Use ctype.h to get features.h included, and don't
include it at all if __GNU_LIBRARY__ is already defined.
1999-07-15 Jakub Jelinek <jj@ultra.linux.cz>
* math/Makefile: Add t_sincosl and k_sincosl support routines.
* math/math_private.h (__kernel_sincosl): New declaration.
* sysdeps/generic/t_sincosl.c: New file.
* sysdeps/generic/k_sincosl.c: New file.
* sysdeps/ieee754/ldbl-128/k_cosl.c: New file.
* sysdeps/ieee754/ldbl-128/k_sinl.c: New file.
* sysdeps/ieee754/ldbl-128/k_sincosl.c: New file.
* sysdeps/ieee754/ldbl-128/t_sincosl.c: New file.
* sysdeps/ieee754/ldbl-128/e_rem_pio2l.c: New file.
* sysdeps/ieee754/ldbl-128/s_sincosl.c (__sincosl): Use
__kernel_sincosl.
* sysdeps/ieee754/ldbl-128/math_ldbl.h (GET_LDOUBLE_LSW64): New
definition.
1999-07-14 Ulrich Drepper <drepper@cygnus.com>
* time/strptime.c (get_number): Handle number parsing more
consistent with strftime. Only parse a given number of digits.
(get_alt_number): Fix implementation. Was broken.
(strptime_internal): Add third parameter to get_number and
get_alt_number calls.
1999-07-13 Jakub Jelinek <jj@ultra.linux.cz>
* elf/ldd.bash.in: Add support for multiple dynamic linkers.
* sysdeps/unix/sysv/linux/sparc/ldd-rewrite.sed: On sparc*linux*,
try both 32bit and 64bit dynamic linker.
* sysdeps/unix/sysv/linux/configure.in: Apply sparc ldd-rewrite
script on all sparc targets.
1999-07-13 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/unix/sysv/linux/shmat.c (shmat): Avoid casting a pointer
to int.
1999-07-12 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/posix/getaddrinfo.c (gaih_inet): For non-passive
connections without a hostname set address to localhost address.
1999-07-11 H.J. Lu <hjl@gnu.org>
* nscd/grpcache.c: Add prefix "__" to get[a-z]*_r () to get
nscd's own strong version of the get[a-z]*_r function.
* nscd/hstcache.c: Likwise.
* nscd/pwdcache.c: Likwise.
1999-07-12 Andreas Schwab <schwab@suse.de>
* elf/rtld.c (dl_main): When putting back the interpreter object
handle the case where a missing object might occur in the list of
objects but not in the search list when in trace mode.
(_hurd_set_brk, init_brk): Use that instead of &__data_start.
Initialize it from &__data_start if defined, or else &_end.
1999-07-11 Roland McGrath <roland@baalperazim.frob.com>
1999-07-09 Cristian Gafton <gafton@redhat.com>
* nscd/nscd_gethst_r.c (nscd_gethst_r): Make sure
resultbuf->h_addr_list addresses are correctly aligned.
* sysdeps/i386/bits/string.h (__memcpy_c): Help some stupid old
compilers.
(__memset_cc): Likewise.
* sysdeps/generic/libc-start.c: For SUID binaries check whether
the standard file descriptors are open.
Reported by Chris Evans <chris@ferret.lmh.ox.ac.uk>.
* sysdeps/unix/sysv/linux/syscalls.list: Remove mmap64 alias for mmap.
* sysdeps/unix/sysv/linux/mmap64.c: Test whether mapped area is in
range of mmap. If not fail.
Patches by Daniel Jacobowitz <dan@debian.org>.
* elf/rtld.c: Split _dl_start in two pieces to prevent GOT usage
before the relocation happened.
Patch by Franz Sirl <Franz.Sirl-kernel@lauterbach.com>.
1999-07-08 Andreas Schwab <schwab@suse.de>
* libio/iofopncook.c (fopencookie): Set _fileno to -2.
* libio/libioP.h (_IO_file_is_open): Only check for -1, not all
negative numbers.
* libio/fileops.c (_IO_new_file_close_it): Set _fileno to -1, not
EOF.
* libio/oldfileops.c (_IO_old_file_close_it): Likewise.
1999-07-08 Andreas Schwab <schwab@suse.de>
* stdio-common/vfprintf.c (buffered_vfprintf): Initialize _mode.
1999-07-08 Andreas Schwab <schwab@suse.de>
* libio/fileno.c: Return -1 instead of EOF and set errno if the
stream is not a real file stream.
1999-07-08 Andreas Schwab <schwab@suse.de>
* manual/charset.texi: Fix typos.
* sysdeps/gnu/Makefile (libdl-routines): Add eval.
1999-07-06 Zack Weinberg <zack@rabi.columbia.edu>
* dlfcn: New directory. Move the following files from elf:
dladdr.c, dlclose.c, dlerror.c, dlfcn.h, dlopen.c,
dlopenold.c, dlsym.c, dlvsym.c.
* dlfcn/Makefile: New file.
* dlfcn/Versions: New file.
* dlfcn/dlsym.c: All ELF-specific code split out to new
function _dl_sym.
* dlfcn/dlvsym.c: All ELF-specific code split out to new
function _dl_vsym.
* elf/dl-sym.c: New file. _dl_sym and _dl_vsym are
implemented here.
* dlfcn/dladdr.c: Remove all references to ELF data structures
or headers.
* dlfcn/dlclose.c: Likewise.
* dlfcn/dlerror.c: Likewise.
* dlfcn/dlopen.c: Likewise.
* dlfcn/dlopenold.c: Likewise.
* Makeconfig (dlfcn): New variable - set to `dlfcn' if elf is
yes, empty otherwise.
(libdl): Set to dlfcn/libdl.so or libdl.a if elf is yes,
depending on build-shared.
(subdirs): Add $(dlfcn).
(rpath-dirs): Add dlfcn.
* elf/Makefile: Remove all references to libdl or its
components, except the ones relating to the test cases.
(routines): Add dl-sym.
* elf/Versions (libc): Add _dl_sym and _dl_vsym for GLIBC_2.2.
(libdl): Delete.
* elf/dl-close.c (_dl_close): Change argument to void *.
* elf/dl-open.c (_dl_open): Change return type to void *.
* elf/eval.c: Removed.
* elf/ldsodefs.h: Move prototypes of _dl_catch_error,
_dlerror_run, _dl_open, _dl_close, _dl_addr, and
_dl_mcount_wrapper_check to include/dlfcn.h. Delete
_CALL_DL_FCT macro.
* include/dlfcn.h: Also prototype _dl_sym and _dl_vsym here.
Include real header from dlfcn directory.
* include/ldsodefs.h: Removed.
* grp/initgroups.c: Use DL_CALL_FCT not _CALL_DL_FCT.
* nss/getXXbyYY_r.c: Likewise.
* nss/getXXent_r.c: Likewise.
* iconv/gconv.c: Likewise. Don't include ldsodefs.h.
* iconv/gconv_db.c: Likewise. Don't include ldsodefs.h.
* iconv/skeleton.c: Don't include ldsodefs.h.
* nss/nsswitch.h: Don't include ldsodefs.h. Include dlfcn.h.
1999-07-07 Ulrich Drepper <drepper@cygnus.com>
1999-07-07 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/sysv/linux/getpt.c: Check that /dev/pts is mounted.
(_PATH_DEVPTS, DEVPTS_SUPER_MAGIC): New definitions.
(_PATH_DEVPTMX): Use _PATH_DEV.
1999-07-07 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* malloc/tst-malloc.c: New file. Tests some basic functionality.
* malloc/Makefile (tests): Add tst-malloc.
* sysdeps/unix/sysv/linux/sparc/ldd-rewrite.sed: New file.
1999-07-06 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/alpha/ioperm.c: Update for some more
motherboards.
Patch by Jay Estabrook.
* sysdeps/unix/sysv/linux/configure.in: Don't test for libc4 in
ldd for SPARC.
* /sysdeps/unix/sysv/linux/sparc/ldd-rewrite.sed: New file.
Patch by Cristian Gafton.
1999-07-02 Cristian Gafton <gafton@redhat.com>
* sysdeps/unix/sysv/linux/bits/socket.h (__cmsg_nxthdr): "return 0"
instead of "return NULL" to make C++ happy.
1999-07-04 Mark Kettenis <kettenis@gnu.org>
* libio/iofdopen.c (_IO_new_fdopen): Set EINVAL if MODE is not
allowed by the file access mode of the open file.
1999-07-06 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/setfpucw.c: Include math.h to get all needed
macros defined.
1999-07-03 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/sparc/sparc64/submul_1.S: Fix carry handling. Optimize.
* sysdeps/sparc/sparc64/lshift.S: Make a leaf subroutine. Optimize.
* sysdeps/sparc/sparc64/rshift.S: Likewise.
* sysdeps/sparc/sparc64/mul_1.S: Optimize.
1999-07-04 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de>
* malloc/malloc.c (request2size): Check for overflow and return
NULL whenever it is encountered.
1999-07-04 Zack Weinberg <zack@rabi.columbia.edu>
* sysdeps/posix/tempname.c (__gen_tempname): Add
ability to create directories. Replace OPENIT and LARGEFILE
args with a single flags parameter.
* sysdeps/generic/tempname.c: Likewise.
* include/stdio.h: Adjust prototype of __gen_tempname to
match. Define symbolic constants for second argument.
* misc/mkdtemp.c: New file, provides new function mkdtemp().
* stdlib/stdlib.h: Prototype it.
* misc/Versions: Export it.
* misc/Makefile (routines): Add mktemp.
* manual/filesys.texi: Document it.
* misc/mktemp.c: Adjust call of __gen_tempname to match new
convention.
* misc/mkstemp.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.
1999-07-05 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Support
R_SPARC_OLO10 relocations.
* elf/elf.h (R_SPARC_OLO10): Fix comment.
1999-07-02 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp-test.c: Revert bogus 'unset IFS' change. It
doesn't belong in the tests, but in the wordexp implementation.
* posix/wordexp.c (exec_comm): Unset IFS so that subshells don't
split fields.
1999-07-01 Cristian Gafton <gafton@redhat.com>
* time/strptime.c (strptime): Initialize the tm struct first to avoid
returning bogus results on incomplete data.
(strptime_internal): day_of_the_week() requres bith tm_mon and
tm_mday to be initializaed.
Computer them first if they are not given.
(strptime_internal): (have_mon, have_mday): New variables.
1999-06-28 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* inet/rcmd.c (__icheckhost): Test for gethostbyname_r result
correctly.
1999-06-25 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/arith.texi (System V Number Conversion): Fix the
description which confused pointer and value to pointer.
Reported by Andries.Brouwer@cwi.nl.
1999-06-28 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* pwd/getpw.c (__getpw): Check for NULL result pointer.
1999-06-29 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/users.texi (Lookup User): Document POSIX return
semantics for getpwuid_r and getgrgid_r.
* manual/socket.texi (Host Names): Document that the result
pointer is null in case of error or host not found and fix a
typo. Give a small example.
* pwd/getpw.c: Add warning since no buffer size is given and
therefore no overrun tests are possible.
1999-06-30 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* pwd/pwd.h: Add getpw prototype declaration.
1999-06-30 Ulrich Drepper <drepper@cygnus.com>