* 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>
1999-06-28 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/gethostid.c: Test for gethostbyname_r
function correctly.
* sunrpc/getrpcport.c: Test for gethostbyname_r function
correctly.
* sunrpc/clnt_simp.c: Test for gethostbyname_r function correctly.
* sunrpc/clnt_gen.c: Test for gethostbyname_r and getprotobyname_r
functions correctly.
* inet/rexec.c (rexec): Test for gethostbyname_r result correctly.
* inet/rcmd.c: Test for gethostbyname_r result correctly. Optimize
file reading a bit.
* sysdeps/generic/glob.c: Test for getpwnam_r result correctly.
1999-06-28 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/string.texi (Copying and Concatenation): Mention that
strndup is a GNU extension.
1999-06-28 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* pwd/getpw.c (__getpw): Fix check for error return.
1999-06-25 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* elf/dl-deps.c (_dl_map_object_deps): When looking for the next
occurence of the aux object start with the current list entry, not
the new one. Adjust tail pointer in the unique list. Explain how
the meaning of the variables changes [PR libc/1168].
hurd/hurd/threadvar.h, hurd/hurd/userlink.h: Instead of
_EXTERN_INLINE, use a macro specific to each file,
_HURD_FD_H_EXTERN_INLINE and the like.
* hurd/Makefile (inline-headers): New variable.
(routines): Remove hurdinline. Add $(inlines).
(inlines): New variable.
($(inlines:%=$(objpfx)%.c)): New static pattern rule to generate them.
(generated): Append those here.
* hurd/hurdinline.c: File removed.
1999-06-25 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/filesys.texi (Working on Directory Trees): Fix typos.
Reported by Andries.Brouwer@cwi.nl.
* math/complex.h: Don't define CX_LIMITED_RANGE_{ON,OFF,DEFAULT}.
These are *pragmas* not macros.
1999-06-24 Ulrich Drepper <drepper@cygnus.com>
* misc/tst-efgcvt.c (ecvt_tests): Test 92.0 with ndigits == 16.
* misc/efgcvt_r.c (ecvt_r): Limit ndigits before passing it to fcvt_r.
1999-06-23 Ulrich Drepper <drepper@cygnus.com>
* manual/arith.texi: Document restriction of ndigit parameter of
ecvt and friends.
* misc/efgcvt.c: Define NDIGIT_MAX.
(gcvt): Limit precision in sprintf call to NDIGIT_MAX.
Do not dynamically allocate the static buffers. They are small enough.
* misc/efgcvt_r.c: Define NDIGIT_MAX.
(fcvt_r): Limit precision in snprintf call to NDIGIT_MAX.
* misc/qefgcvt.c: Define NDIGIT_MAX.
* misc/qefgcvt_r.c: Likewise.
* misc/tst-efgcvt.c (special): Add test for large ndigit parameter.
1999-06-23 Ulrich Drepper <drepper@cygnus.com>
* stdio/fputc.c: Don't define alias if fputc is defined as a
macro.
* stdio/putc.c: Define weak alias here since it is not done
anymore in fputc.c.
1999-06-23 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* assert/assert.h: Don't produce `defined' as part of macro
expansion.
* sysdeps/mach/hurd/read.c (__libc_read): Just call __pread with
OFFSET argument of (off_t) -1.
* sysdeps/mach/hurd/write.c (__libc_write): Just call __pwrite with
OFFSET argument of (off_t) -1.
* sysdeps/mach/hurd/pwrite.c: New file.
* sysdeps/mach/hurd/pread.c: New file.
* hurd/fd-read.c (_hurd_fd_read): Take new parameter OFFSET and
pass it in the RPC instead of always -1.
* hurd/fd-write.c (_hurd_fd_write): Likewise.
* hurd/hurd/fd.h: Update decls.
* sysdeps/mach/hurd/read.c (__libc_read): Just call __pread with
OFFSET argument of (off_t) -1.
* sysdeps/mach/hurd/write.c (__libc_write): Just call __pwrite with
OFFSET argument of (off_t) -1.