* Versions.def (ld.so): Add GLIBC_2.1.1.
* elf/Makefile (routines): Add dl-origin.
(tests): Add origtest. Add dependencies for the program.
* elf/Versions (ld.so) [GLIBC_2.1.1]: Add _dl_origin_path,
_dl_platformlen, _dl_dst_count and _dl_dst_substitute.
* elf/dl-deps.c (expand_dst): New macro. Expand DSTs in filename.
(_dl_map_object_deps): Use expand_dst to expand DSTs in DT_NEEDED,
DT_AUXILIARY, and DT_FILTER filenames.
* elf/dl-load.c (expand_dynamic_string_token): Explode into
two functions and three macros.
(_dl_dst_count, _dl_dst_substitute): New functions.
* elf/dl-dst.h: New file.
* elf/dl-open.c (_dl_open): Take extra parameter with address of
caller. Pass address in args structure.
(dl_open_worker): Recognize and expand DSTs in filename.
* elf/ldsodefs.h (_dl_open): Adapt prototype.
* elf/dlopen.c (dlopen_doit): Pass caller address to _dl_open.
(__dlopen_check): Pass caller address to dlopen_doit in args.
* elf/dlopendoit.c: Likewise.
* iconv/gconv_dl.c: Adapt call of _dl_open.
* nss/nsswitch.c: Likewise.
* elf/origtest.c: New file.
* sysdeps/generic/dl-origin.h: Moved to...
* sysdeps/generic/dl-origin.c: ...here.
* sysdeps/unix/sysv/linux/dl-origin.h: Moved to...
* sysdeps/unix/sysv/linux/dl-origin.c: ...here.
1999-05-02 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sunrpc/Makefile: Generate dependencies for all flavors of
librpcsvc objects.
(rpcgen-cmd): Pass -Y flag here and remove it from the macro
invocations.
1999-05-02 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* elf/dlopenold.c: Move #if down after includes to get
dependencies right.
1999-05-01 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sysdeps/generic/bzero.c: Undefine __bzero.
1999-05-02 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/sys/procfs.h: Remove greg_t, gregset_t,
and fpregset_t definition. They are defined in ucontext.h.
1999-04-14 Scott Bambrough <scottb@netwinder.org>
* sysdeps/unix/sysv/linux/arm/net/ethernet.h: struct ether_addr
and struct ether_header must be packed on the ARM. The default
alignment constraints add padding to the end of the structures.
1999-04-14 Scott Bambrough <scottb@netwinder.org>
* inet/arpa/tftp.h: struct tftphdr must be packed on the ARM. The
default alignment constraints add padding to the end of the
structure and between members.
1999-04-15 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sysdeps/unix/sysv/linux/fstatvfs.c: Set f_frsize to zero. Don't
include "linux_fsinfo.h".
Based on a patch by H.J. Lu <hjl@gnu.org>.
1999-04-14 Jakub Jelinek <jj@ultra.linux.cz>
* scripts/config.sub: Allow sparcv[6789]-* and sparcv8plus{,a}-*
architectures.
* sysdeps/sparc/sparc32/sparcv8/Makefile: Use sysdep-CFLAGS
instead of CFLAGS.
* sysdeps/sparc/sparc32/sparcv8/Makefile: Use sysdep-CFLAGS
instead of CFLAGS. For gnulib and string directories use
-Wa,-Av9a gcc ASFLAGS.
* sysdeps/sparc/sparc32/sparcv9/memmove.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: New file.
* shlib-versions: Handle sparcv[6789]-* and sparcv8plus{,a}-*
the same way as sparc-*.
1999-04-14 Scott Bambrough <scottb@netwinder.org>
* sysdeps/unix/sysv/linux/arm/socket.S: Socket calls could not be
restarted after being interrupted by a signal. The parameters on
the stack were corrupted by the signal handler.
* sysdeps/unix/sysv/linux/arm/mmap.S: mmap calls could not be
restarted after being interrupted by a signal. The parameters on
the stack were corrupted by the signal handler.
1999-04-12 Philip Blundell <philb@gnu.org>
* elf/elf.h: Update ARM definitions to match current gas2.
* sysdeps/arm/bits/endian.h: Support big endian operation.
* sysdeps/unix/sysv/linux/arm/ioperm.c (_outw, _outb, _outl):
Don't bother range checking the port number.
* sysdeps/unix/sysv/linux/arm/vfork.S: New file.
* sysdeps/unix/sysv/linux/arm/sysdep.h (INLINE_SYSCALL): Include
the syscall name in assembler output for ease of debugging.
* sysdeps/unix/sysv/linux/arm/sigaction.c: Don't rely on undefined
compiler behaviour.
* sysdeps/unix/sysv/linux/arm/sigrestorer.S: New file.
* sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = signal]
(sysdep_routines): Add sigrestorer.
* string/tester.c (test_strcpy): Add new tests for unaligned
arguments.
* sysdeps/arm/bits/string.h: Delete inline implementations of
strcpy and stpcpy.
1999-03-29 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/sparc/sparc32/sparcv8/Makefile: New file.
* sysdeps/sparc/sparc32/sparcv8/rem.S: Delay after write %y.
* sysdeps/sparc/sparc32/sparcv8/sdiv.S: Likewise.
* sysdeps/sparc/sparc32/sparcv8/udiv.S: Likewise.
* sysdeps/sparc/sparc32/sparcv8/urem.S: Likewise.
* sysdeps/sparc/sparc32/sparcv9/bcopy.c: New file.
* sysdeps/sparc/sparc32/sparcv9/bzero.c: New file.
* sysdeps/sparc/sparc32/sparcv9/memchr.S: New file.
* sysdeps/sparc/sparc32/sparcv9/memcmp.S: New file.
* sysdeps/sparc/sparc32/sparcv9/memcpy.S: New file.
* sysdeps/sparc/sparc32/sparcv9/memset.S: New file.
* sysdeps/sparc/sparc32/sparcv9/stpcpy.S: New file.
* sysdeps/sparc/sparc32/sparcv9/strcat.S: New file.
* sysdeps/sparc/sparc32/sparcv9/strchr.S: New file.
* sysdeps/sparc/sparc32/sparcv9/strcmp.S: New file.
* sysdeps/sparc/sparc32/sparcv9/strcpy.S: New file.
* sysdeps/sparc/sparc32/sparcv9/strcspn.S: New file.
* sysdeps/sparc/sparc32/sparcv9/strlen.S: New file.
* sysdeps/sparc/sparc32/sparcv9/strncpy.S: New file.
* sysdeps/sparc/sparc32/sparcv9/strpbrk.S: New file.
* sysdeps/sparc/sparc32/sparcv9/strrchr.c: New file.
* sysdeps/sparc/sparc32/sparcv9/strspn.S: New file.
* sysdeps/sparc/sparc32/sparcv9/dotmul.S: New file.
* sysdeps/sparc/sparc32/sparcv9/rem.S: New file.
* sysdeps/sparc/sparc32/sparcv9/sdiv.S: New file.
* sysdeps/sparc/sparc32/sparcv9/udiv.S: New file.
* sysdeps/sparc/sparc32/sparcv9/umul.S: New file.
* sysdeps/sparc/sparc32/sparcv9/urem.S: New file.
* sysdeps/sparc/sparc32/sparcv9/Makefile: New file.
* sysdeps/sparc/sparc32/sparcv9/stpncpy.S: New file.
* sysdeps/sparc/sparc32/sparcv9/strncmp.S: New file.
* sysdeps/sparc/sparc32/bcopy.c: New file.
* sysdeps/sparc/sparc32/bzero.c: New file.
* sysdeps/sparc/sparc32/memchr.S: New file.
* sysdeps/sparc/sparc32/memcpy.S: New file.
* sysdeps/sparc/sparc32/memmove.c: New file.
* sysdeps/sparc/sparc32/memset.S: New file.
* sysdeps/sparc/sparc32/stpcpy.S: New file.
* sysdeps/sparc/sparc32/strchr.S: New file.
* sysdeps/sparc/sparc32/strrchr.c: New file.
* sysdeps/sparc/sparc32/strcpy.S: New file.
* sysdeps/sparc/sparc32/strlen.S: New file.
* sysdeps/sparc/sparc32/strcat.S: New file.
* sysdeps/sparc/sparc32/strcmp.S: New file.
* sysdeps/sparc/sparc64/bcopy.c: New file.
* sysdeps/sparc/sparc64/bzero.c: New file.
* sysdeps/sparc/sparc64/memchr.S: New file.
* sysdeps/sparc/sparc64/memcmp.S: New file.
* sysdeps/sparc/sparc64/memcpy.S: New file.
* sysdeps/sparc/sparc64/memset.S: New file.
* sysdeps/sparc/sparc64/stpcpy.S: New file.
* sysdeps/sparc/sparc64/strcat.S: New file.
* sysdeps/sparc/sparc64/strchr.S: New file.
* sysdeps/sparc/sparc64/strcmp.S: New file.
* sysdeps/sparc/sparc64/strcpy.S: New file.
* sysdeps/sparc/sparc64/strcspn.S: New file.
* sysdeps/sparc/sparc64/strlen.S: New file.
* sysdeps/sparc/sparc64/strncpy.S: New file.
* sysdeps/sparc/sparc64/strpbrk.S: New file.
* sysdeps/sparc/sparc64/strrchr.c: New file.
* sysdeps/sparc/sparc64/strspn.S: New file.
* sysdeps/sparc/sparc64/stpncpy.S: New file.
* sysdeps/sparc/sparc64/strncmp.S: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/Makefile (ASFLAGS-.os):
Append -fPIC, don't replace.
* configure.in: Recognize sparcv8plus / sparcv9.
1999-03-27 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* malloc/obstack.h (obstack_free): Explicitly convert __obj to
char * to avoid C++ warning.
Patch by yasushi@cs.washington.edu [PR libc/1035].
1999-03-29 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/filesys.texi (Temporary Files): mktemp and mkstemp are
declared in stdlib.h, correct return value of mkstemp.
Reported by Andries Brouwer <Andries.Brouwer@cwi.nl>.
* sysdeps/unix/sysv/linux/net/if_arp.h (ARPHDRD_FC*): New defines
from Linux 2.2.5.
* misc/regexp.h (compile): Cast some pointers to (char *) to avoid
C++ warning.
* sysdeps/unix/sysv/linux/arm/getgroups.c: New file. Use the i386
implementation.
1999-03-18 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/getgroups.c: New file. Use the i386
implementation.
1999-03-13 Mark Kettenis <kettenis@gnu.org>
* sysdeps/unix/bsd/getpt.c (__getpt): Do not use `isatty' to check
if the opened master pty really is a pty. `isatty' checks for
tty-ness and a pty is not a tty. Return ENOENT instead of ENFILE
if we are out of pty's.
1999-03-13 Mark Kettenis <kettenis@gnu.org>
* sysdeps/generic/utmp_file.c (setutent_file): Make sure the just
opened file is closed on exec.
* login/utmp_daemon.c (setutent_daemon): Likewise for the just
opened socket.
1999-03-13 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/llio.texi (File Position Primitive): Reformat @end
command. Patch by Bruno Haible <haible@ilog.fr> [PR libc/1020].
* nscd/nscd_getpw_r.c (nscd_getpw_r): Set `errno' correctly if no
entry is found.
* nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
* nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
1999-03-08 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sysdeps/unix/sysv/linux/ttyname.c (ttyname): Undo last change.
/dev/pts status may change during runtime.
1999-03-08 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Undo last
change. /dev/pts status can change during runtime.
1999-03-07 Thorsten Kukuk <kukuk@suse.de>
* sunrpc/svc_tcp.c (readtcp): go into fatal error state if
poll reports error.
* nis/nss_nisplus/nisplus-parser.c: Avoid duplicate strlen calls,
add some more sanity checks.
* nis/nss_nisplus/nisplus-pwd.c: Include nisplus-parser.h for
parser prototype.
1999-03-05 Thorsten Kukuk <kukuk@suse.de>
* sunrpc/rpc/xdr.h: Add x_getint32/x_putint32 to xdr_ops,
change XDR_GETINT32/XDR_PUTINT32 to sue new functions.
* sunrpc/xdr_mem.c: Add xdrmem_getint32, xdrmem_putint32.
* sunrpc/xdr_rec.c: Add xdrrec_getint32, xdrrec_putint32.
* sunrpc/xdr_sizeof.c: Add x_putint32, add dummy function
for x_getint32.
* sunrpc/xdr_stdio.c: Add xdrstdio_getint32, xdrstdio_putint32.
* nis/nis_print.c: Fix ctime argument for platforms where
sizeof (time_t) != sizeof (int).
255. Patch by Bruno Haible <haible@ilog.fr> [PR libc/1010].
1999-03-01 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/i386/sys/ucontext.h (ucontext): Rename field uc_links to
uc_link which is the right name according to Unix98.
Reported by Craig Metz [PR libc/1001].
* sysdeps/arm/sys/ucontext.h (ucontext): Likewise.
* sysdeps/m68k/sys/ucontext.h (ucontext): Likewise.
* sysdeps/mips/sys/ucontext.h (ucontext): Likewise.
* sysdeps/unix/sysv/linux/alpha/sys/ucontext.h (ucontext): Likewise.
* sysdeps/unix/sysv/linux/i386/sys/ucontext.h (ucontext): Likewise
* sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h (ucontext): Likewise.
1999-02-25 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* manual/libc.texinfo: Wrap @top node inside @ifnottex instead of
@ifinfo.
1999-02-25 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* iconvdata/Makefile: Always include iconv-rules, but disable rule
to regenerate it if avoid-generated.
* Makeconfig: Always include sys-dirs, but disable rule to
regenerate it when avoid-generated.
* sysdeps/unix/Makefile: Put `ifndef avoid-generated' only around
rule to generate sysd-syscalls.
* elf/Makefile (generated): Remove $(objpfx) from names.
1999-02-23 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* malloc/malloc.c (mALLOC_SET_STATe): Handle the case where a
non-checked heap is restored when malloc checking was requested by
the user.
(struct malloc_state): Add using_malloc_checking.
(MALLOC_STATE_VERSION): Increment minor.
(using_malloc_checking, disallow_malloc_check): New variables.
(__malloc_check_init): Use them.
(mALLOC_GET_STATe): Use mALLOc to allocate the malloc_state, so
that it can the chunk is properly instrumented when malloc
checking is enabled. Set the new using_malloc_checking field.
(malloc_hook_ini): Correct signature when _LIBC is not defined.
1999-02-23 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sysdeps/unix/sysv/linux/i386/dl-librecon.h
(DISTINGUISH_LIB_VERSIONS): Don't relocate DT_STRTAB a second
time.
* elf/rtld.c (dl_main): Rename paths_initialized to rtld_is_main.
Don't call elf_get_dynamic_info and _dl_setup_hash a second time
if ld.so is the main program.
* stdio-common/vfprintf.c (vfprintf): If precision or width is too
1999-02-22 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/ttyname.c: Use __xstat and __fxstat
instead of stat and fstat.
* sysdeps/unix/sysv/linux/ttyname_r.c: Likewise.
1999-02-21 David S. Miller <davem@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h: Fix
parentheses in Feb 2 changes.
* sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h: Likewise.
1999-02-03 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/generic/segfault.c: Add ADVANCE_STACK_FRAME
macro, so that architectures which need to add some special
offset to stack pointer can share this file.
* sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/register-dump.h: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/bits/mman.h: Remove.
* sysdeps/unix/sysv/linux/sparc/sparc64/bits/mman.h: Remove.
* sysdeps/unix/sysv/linux/sparc/bits/mman.h: New file - common
between sparc32 and sparc64.
* sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: Remove.
* sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: Remove.
* sysdeps/unix/sysv/linux/sparc/vfork.S: New file - common
between sparc32 and sparc64.
* sysdeps/unix/sysv/linux/sparc/sparc32/fork.S: Remove.
* sysdeps/unix/sysv/linux/sparc/sparc64/fork.S: Remove.
* sysdeps/unix/sysv/linux/sparc/fork.S: New file - common
between sparc32 and sparc64.
* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.S: Remove.
* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.S: Remove.
* sysdeps/unix/sysv/linux/sparc/sysdep.S: New file - common
between sparc32 and sparc64.
1999-02-03 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S: Set branch
prediction correctly.
* sysdeps/unix/sysv/linux/sparc/sparc32/profil-counter.h: Signal
takes a pointer to __sigcontext_t.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S: Do a nop after retl.
* sysdeps/unix/sysv/linux/sparc/sparc32/Dist: Remove fork.S.
1999-02-02 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/reboot.c: Make sure first parameter is
correctly passed to the kernel even on 64bit platforms.
Patch by Bruce Elliott <bde@nwlink.com>.
* localedata/locales/it_CH: New file.
Contributed by Giacomo Amabile Catenazzi <gcatenaz@g26.ethz.ch>.
1999-01-31 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: If the kernel
doesn't have vfork, resort to using fork.
* sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: Likewise.
* sysdeps/unix/sparc/vfork.S: Correct comment.
* sysdeps/unix/sparc/fork.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove vfork.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/fork.S: No special case for
child necessary.
* sysdeps/unix/sysv/linux/sparc/sparc64/fork.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: New file.
Patches by Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>.
* sysdeps/libm-i387/s_fdim.S: Change fsubp to fsubrp for picky gas.
1999-01-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sysdeps/wordsize-32/stdint.h (INT8_C, INT16_C, INT32_C, INT64_C,
UINT8_C, UINT16_C, UINT32_C, UINT64_C): Remove casts, they must be
integer constants. Use ## directly instead of __CONCAT so that
the suffix string is not expanded as a macro.
* sysdeps/wordsize-64/stdint.h (INT8_C, INT16_C, INT32_C, INT64_C,
UINT8_C, UINT16_C, UINT32_C, UINT64_C): Likewise.
(INT64_MIN, INT64_MAX, UINT64_MAX, INT_LEAST64_MIN,
INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST16_MIN, INT_FAST32_MIN,
INT_FAST64_MIN, INT_FAST16_MAX, INT_FAST32_MAX, INT_FAST64_MAX,
UINT_FAST16_MAX, UINT_FAST32_MAX, UINT_FAST64_MAX, INTMAX_MIN,
INTMAX_MAX, UINTMAX_MAX): Define as long constants, not long long.
1999-01-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* locale/mb_cur_max.c (__ctype_get_mb_cur_max): Correct return
type to size_t.
* locale/broken_cur_max.c (__ctype_get_mb_cur_max): Likewise.
* stdlib/stdlib.h (__ctype_get_mb_cur_max): Likewise.
1999-01-27 Philip Blundell <pb@nexus.co.uk>
* sysdeps/unix/sysv/linux/arm/vfork.S: Deleted.
* sysdeps/unix/sysv/sysv4/solaris2/configure.in: New file.
* sysdeps/unix/sysv/sysv4/solaris2/configure: New file.
* sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c: New file.
Patch by Jeff Bailey <jbailey@phn.ca>.
* libio/genops.c (_IO_un_link): Move #ifdef introduced in last
change in right place.
* sysdeps/unix/sysv/linux/sys/timex.h: Add MAXTC from kernel
header. Suggested by Thomas Quinot <thomas@Cuivre.FR.EU.ORG>.
1999-01-28 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* libio/getc_u.c (__getc_unlocked): Avoid compiler warning.
1999-01-28 Ulrich Drepper <drepper@cygnus.com>
1999-01-26 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/sigaction.c: Update comment to say the
__libc_missing_rt_sigs is defined here.
* sysdeps/unix/sysv/linux/sigpending.c: Only declare
__libc_missing_rt_sigs.
* sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.
* sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.