* elf/elf.h: Add various DF_1_*, DTF_1_*, and DF_P1_* entries.
* elf/dl-close.c (_dl_close): Don't close an object if it is marked
with nodelete.
* elf/dl-open.c (dl_open_worker): Pass RTLD_NOLOAD as new parameter
to _dl_map_object. Return immediately if no object loaded.
Set DF_1_NODELETE bit in l_flags_1 if RTLD_NODELETE was passed.
* elf/dynamic-link.h (elf_get_dynamic_info): Copy DT_FLAGS_1 entry
if it exists into l_flags_1 word.
* elf/dl-load.c (_dl_map_object_from_fd): Take no parameter and use
it to determine whether loading is wanted or not.
(_dl_map_object): Likewise.
Call _dl_map_object_from_fd with new parameter.
* sysdeps/generic/ldsodefs.h: Update prototype.
* elf/dl-deps.c: Add new parameter to _dl_map_object calls.
* elf/rtld.c: Likewise.
* elf/Makefile (tests): Add noload. Add rules to generate noload.
* elf/noload.c: New file.
* include/link.h (struct link_map): Add l_feature_1 and l_flags_1.
* sysdeps/generic/bits/dlfcn.h: Define RTLD_NOLOAD and RTLD_NODELETE.
* sysdeps/mips/bits/dlfcn.h: Likewise.
2000-05-05 Ulrich Drepper <drepper@redhat.com>
* elf/dl-load.c (_dl_map_object_from_fd): Little of computation of
parameter to mprotect and for variable assignments.
2000-05-03 Jes Sorensen <jes@linuxcare.com>
* sysdeps/generic/ldsodefs.h (LOOKUP_VALUE_ADDRESS): Check the
validity of map before dereferencing it.
* elf/dl-reloc.c (RESOLVE_MAP): Define.
2000-05-02 Jes Sorensen <jes@linuxcare.com>
* elf/dl-runtime.c (fixup): Add the value returned in the symbol
lookup to the arguments to elf_machine_fixup_plt().
* sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add Link_map
of the symbol being resolved to input argument list and make the
function return the pointer to the reloc.
* sysdeps/alpha/dl-machine.h (elf_machine_fixup_plt): Change
return valuie to lookup_t and return the value.
* sysdeps/arm/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/generic/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/i386/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/m68k/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/powerpc/dl-machine.h (elf_machine_fixup_plt): Likewise.
Make it an inline function returning value after calling
__elf_machine_fixup_plt().
* elf/dl-sym.c (_dl_vsym): Use DL_SYMBOL_ADDRESS() to obtain the
symbol address.
* elf/dl-symbol.c (_dl_symbol_value): Use LOOKUP_VALUE_ADDRESS to
obtain the symbol address.
* sysdeps/generic/ldsodefs.h: Add generic DL_SYMBOL_ADDRESS() macro
depending on the definition of ELF_FUNCTION_PTR_IS_SPECIAL.
* sysdeps/ia64/dl-machine.h: Add DL_SYMBOL_ADDRESS() macro calling
_dl_symbol_address() - this way DL_SYMBOL_ADDRESS() turns into an
inline on non ia64.
2000-04-28 Jes Sorensen <jes@linuxcare.com>
* elf/dl-runtime.c (fixup): Use the portable macros to get the
symbol address of an object.
* elf/dl-runtime.c (fixup-profile): Use the portable macros to get
the symbol address of an object.
* elf/dl-libc.c (struct do_dlsym_args): Change loadbase to a lookup_t.
* elf/dl-lookup.c (_dl_lookup_symbol): Likewise.
(_dl_lookup_symbol_skip): Likewise.
(_dl_lookup_versioned_symbol): Likewise.
(_dl_lookup_versioned_symbol_skip): Likewise.
2000-04-27 Jes Sorensen <jes@linuxcare.com>
* elf/rtld.c (_dl_start): Get the function pointer return address
via _dl_start_address for architectures that need a function
pointer descriptor rather than just a pointer (ia64).
* sysdeps/generic/dl-lookupcfg.h: New file.
* sysdeps/ia64/dl-lookupcfg.h: New file.
* sysdeps/ia64/dl-machine.h: New file.
* sysdeps/ia64/dl-symaddr.c: New file.
* sysdeps/ia64/dl-fptr.c: New file.
* elf/elf.h: Add IA-64 specific definitions.
1999-08-09 Scott Bambrough <scottb@netwinder.org>
* elf/elf.h: Added definition of ELFOSABI_ARM.
* elf/dl-load.c (_dl_map_object_from_fd): Use VALID_ELF_HEADER,
VALID_ELF_OSABI, VALID_ELF_ABIVERSION to decide whether an
object's header and ABI values are acceptable.
(VALID_ELF_HEADER): New macro; provide default definition.
(VALID_ELF_OSABI): New macro; provide default definition.
(VALID_ELF_ABIVERSION): New macro; provide default definition.
* sysdeps/arm/dl-machine.h Define ARM specific versions of
VALID_ELF_HEADER, VALID_ELF_OSABI, VALID_ELF_ABIVERSION.
1999-08-09 Andreas Schwab <schwab@suse.de>
* inet/tst-ipnode.c (main): Don't compare integer with NULL.
1999-08-09 Thorsten Kukuk <kukuk@suse.de>
* sunrpc/svc_run.c (svc_run): Free my_pollfd.
1999-08-09 Andreas Schwab <schwab@suse.de>
* sunrpc/svc.c (svc_getreq_poll): Fix argument of xprt_unregister.
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-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.
1998-12-02 Ulrich Drepper <drepper@cygnus.com>
* elf/elf.h: Add R_MIPS_JALR and adjust R_MIPS_NUM appropriately.
1998-12-02 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* inet/Versions: Remove inet6_isipv4mapped.
1998-12-02 Philip Blundell <pb@nexus.co.uk>
* inet/in6_addr.c (inet6_isipv4mapped): Obsolete, deleted.
1998-11-30 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* manual/time.texi (Formatting Date and Time): Fix typo.
1998-11-30 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sysdeps/unix/sysv/linux/configure.in: Only check for symlinks
when configuring natively. Use autoconf macros instead of rolling
our own. Handle defaulted prefix.
1998-08-25 11:43 Ulrich Drepper <drepper@cygnus.com>
* elf/elf.h: Add syminfo stuff and other DT_* from Solaris' ELF.
1998-08-25 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
* argp/argp.h: Use __inline__ not inline.
* sysdeps/i386/bits/select.h (FD_ZERO): Rewrite asm not to indicate
an input register as being clobbered.
* sysdeps/i386/memset.c (memset): Likewise.
* sysdeps/i386/bzero.c (__bzero): Likewise.
* sysdeps/i386/memcopy.h ({BYTE,WORD}_COPY_[FB]WD): Likewise.
1998-08-25 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* stdlib/jrand48_r.c (__jrand48_r): Set also upper half of result.
Fixes PR libc/757 (Reported by Michael Creutz <creutz@bnl.gov).
1998-08-14 10:08 Ulrich Drepper <drepper@cygnus.com>
* manual/texinfo.tex: Update.
1998-08-07 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/backtrace.c: New file.
1998-08-14 Philip Blundell <pb@nexus.co.uk>
* sysdeps/arm/fpu/setjmp.S: Correct value of R0 before calling
sigjmp_save.
* sysdeps/arm/elf/setjmp.S: Obsolete, deleted.
1998-08-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile (install-symbolic-link): Fix spelling.
1998-08-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/elf.h (SHT_HIOS): Fix value.
1998-08-10 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* posix/regex.c (WIDE_CHAR_SUPPORT): Don't generate defined as
part of the expansion, this is undefined by the standard.
1998-07-31 17:59 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/bits/byteswap.h: Fix problems with side effects.
* manual/filesys.texi: Document truncate and ftruncate.
Patch by Michael Deutschmann <michael@talamasca.wkpowerlink.com>.
* shadow/putspent.c: Lock stream while generating the output.
* sunrpc/clnt_unix.c: Use ucred instead of cmsgcred again.
(__msgwrite): Rewrite accordingly.
* sunrpc/svc_unix.c: Likewise.
* sysdeps/unix/sysv/linux/Dist: Remove __recvmsg.S and __sendmsg.S.
* sysdeps/unix/sysv/linux/Makefile [$(subdir)==socket]
(sysdep_routines): Remove __sendmsg and __recvmsg.
* sysdeps/unix/sysv/linux/__recvmsg.S: Removed.
* sysdeps/unix/sysv/linux/__sendmsg.S: Removed.
* sysdeps/unix/sysv/linux/recvmsg.c: Removed.
* sysdeps/unix/sysv/linux/sendmsg.c: Removed.
* sysdeps/unix/sysv/linux/recvmsg.S: New file.
* sysdeps/unix/sysv/linux/sendmsg.S: New file.
* sysdeps/unix/sysv/linux/bits/socket.h: Define SCM_CREDENTIALS and
struct ucred. Remove struct cmsgcred.
Patches by Thorsten Kukuk.
1998-08-03 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* inet/rcmd.c (__ivaliduser): Allow '#' as comment character.
1998-08-08 14:42 Ulrich Drepper <drepper@cygnus.com>
* argp/argp-help.c: Prepare to be used outside glibc without gcc by
adding usual alloca cruft.
Reported by Eleftherios Gkioulekas <lf@amath.washington.edu>.
1998-04-05 Jim Meyering <meyering@ascend.com>
* lib/regex.c (WIDE_CHAR_SUPPORT): Define.
This now depends on HAVE_BTOWC so systems that lack btowc (like
solaris-2.5.1) don't lose.
1998-08-07 Mark Kettenis <kettenis@phys.uva.nl>
* sysdeps/generic/bits/sigaction.h: Remove definition of SA_DISABLE.
* sysdeps/generic/bits/sigstack.h: Define SS_DISABLE, SS_ONSTACK,
MINSIGSTKZ and SIGSTKSZ. Definitions match BSD.
* hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Use SS_ONSTACK
instead of SA_ONSTACK.
* sysdeps/mach/hurd/sigaltstack.c (__sigaltstack): Renamed from
sigaltstack, and created a weak alias. Use SS_DISABLE and
SS_ONSTACK instead of SA_DISABLE and SA_ONSTACK.
* sysdeps/mach/hurd/sigstack.c (sigstack): Use SS_ONSTACK instead
of SA_ONSTACK. Call __sigaltstack instead of sigaltstack.
* sysdeps/mach/hurd/i386/sigreturn.c (__sigreturn): Use SS_ONSTACK
instead of SA_ONSTACK.
* sysdeps/mach/hurd/alpha/sigreturn.c (__sigreturn): Likewise.
* sysdeps/mach/hurd/mips/sigreturn.c (__sigreturn): Likewise.
* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
Use SS_DISABLE instead of SA_DISABLE. Use SS_ONSTACK instead of
SA_ONSTACK where appropriate.
* sysdeps/mach/hurd/alpha/trampoline.c (_hurd_setup_sighandler):
Likewise.
* sysdeps/mach/hurd/hppa/trampoline.c (_hurd_setup_sighandler):
Likewise.
* sysdeps/mach/hurd/mips/trampoline.c (_hurd_setup_sighandler):
Likewise.
* manual/signal.texi (Signal Stack): Talk about SS_DISABLE and
SS_ONSTACK instead of SA_DISABLE and SA_ONSTACK in discussion of
the `ss_flags' member of `struct sigaltstack'.
1998-08-05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* libio/Makefile (routines) [$(versioning)=yes]: Add oldtmpfile.
(shared-only-routines): Likewise.
* libio/oldtmpfile.c: New file
* stdio-common/tmpfile.c: Use __fdopen and __close.
[USE_IN_LIBIO]: Use _IO_fdopen instead of _IO_new_fdopen. Put
tmpfile on symbol version GLIBC_2.1.
* stdio-common/tmpfile64.c: Use __fdopen and __close.
[USE_IN_LIBIO]: Use _IO_fdopen instead of _IO_new_fdopen.
* stdio-common/Version [GLIBC_2.1]: Add tmpfile.
* stdio-common/tempnam.c: Use __strdup instead of strdup.
* sysdeps/posix/fdopen.c: Define __fdopen and make fdopen weak
alias.
* sysdeps/generic/fdopen.c: Likewise.
* sysdeps/mach/hurd/fdopen.c: Likewise.
* stdio/stdio.h: Declare __fdopen.
* sunrpc/openchild.c: Use __fdopen instead of fdopen.
[USE_IN_LIBIO]: Map __fdopen to _IO_fdopen.
* sysdeps/posix/tempname.c (__gen_tempname): Don't bother checking
__stub_open64, it is never defined.
1998-08-05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* libio/iofopen64.c: Fix typo. Avoid unnessary casts.
* libio/iopopen.c: Unlink file before freeing it if command
creation failed. Avoid unnessary casts.
* libio/iofdopen.c: Avoid unnecessary cast.
* pwd/fgetpwent_r.c [USE_IN_LIBIO]: Map funlockfile to
_IO_funlockfile.
* pwd/fgetspent_r.c [USE_IN_LIBIO]: Likewise.
1998-08-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* grp/grp.h, pwd/pwd.h: Don't declare __grpopen, __grpread,
__grpalloc, __grpscan and the corresponding pwd functions, they
were removed long ago.
1998-08-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* math/libm-test.c (csqrt_test): Adjust epsilons.
(casinh_test): Likewise.
1998-08-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* posix/globtest.sh: Fix typo. Remove second test output file.
1998-08-07 Cristian Gafton <gafton@redhat.com>
* pwd/putpwent.c (putpwent): Avoid writting (none) in the passwd file.
* shadow/putspent.c (putspent): Likewise.
* grp/putgrent.c: New file.
* grp/Makefile (routines): Add putgrent.
* grp/Versions [GLIBC_2.1]: Add putgrent.
* grp/grp.h: Add putgrent prototype.
1998-08-04 19:33 Ulrich Drepper <drepper@cygnus.com>
* elf/elf.h: More ELF definitions.
1998-08-03 16:36 Ulrich Drepper <drepper@cygnus.com>
* catgets/catgets.c: Use mmap/munmap only is _POSIX_MAPPED_FILES
is defined.
* catgets/open_catalog.c: Likewise.
* iconv/iconv_prog.c: Likewise.
* intl/loadmsgcat.c: Likewise.
* locale/findlocale.c: Likewise.
* locale/loadlocale.c: Likewise.
* locale/programs/localedef.c: Likewise.
* malloc/malloc.c: Likewise.
* elf/elf.h: Fix typo.
* math/Makefile: Use $(LN_S) instead of ln.
* sysdeps/generic/getpgid.c: Fix return type.
1998-08-01 02:49 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
* sysdeps/posix/tempname.c (__stdio_gen_tempname): Rename to
__gen_tempname and simplify the interface. Strip out the
code to do path search and create FILE objects. This function
now takes a mktemp() style template and returns either a name
or a file descriptor.
(__path_search): New function; searches for directories for
temp files.
* sysdeps/generic/tempname.c: Stub out __gen_tempname and
__path_search, not __stdio_gen_tempname.
* libio/stdio.h: Prototype __gen_tempname and __path_search,
not __stdio_gen_tempname.
* stdio/stdio.h: Likewise.
* stdio-common/tempnam.c: Use __path_search and __gen_tempname.
* stdio-common/tmpfile.c: Likewise.
* stdio-common/tmpfile64.c: Likewise.
* stdio-common/tmpnam.c: Likewise.
* stdio-common/tmpnam_r.c: Likewise.
* misc/mkstemp.c: New file. Use __gen_tempname.
* misc/mktemp.c: Likewise.
* sysdeps/posix/mkstemp.c: Removed.
* sysdeps/posix/mktemp.c: Removed.
* sysdeps/generic/mkstemp.c: Removed.
* sysdeps/generic/mktemp.c: Removed.
1998-08-02 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* configure.in: Check, if door add-on is installed.
* config.make.in: Add have_doors.
* sunrpc/Makefile: Add HAVE_DOOR define.
* sunrpc/key_call.c: Add keyserv/door interface.
* sunrpc/svc_unix.c: Call setsockopt only if SO_PASSCRED is defined.
* sunrpc/clnt_unix.c: Likewise.
1998-08-02 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* inet/netinet/in.h (IN_CLASSC): Correct mask.
Reported by Ian Staniforth <I.Staniforth@sheffield.ac.uk> [fixes
PR libc/727].
1998-08-03 10:23 Ulrich Drepper <drepper@cygnus.com>
* misc/Makefile: Fix installation problem with --disable-shared.
* posix/Makefile: Likewise.
1998-08-02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* posix/regex.c (re_search_2): Optimize searching for anchored
pattern if '^' cannot match at embedded newlines.
(regerror): Renamed from __regerror, which it should only be
called if _LIBC.
1998-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sunrpc/svc_unix.c (__msgread): Check setsockopt return value.
1998-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/generic/glob.c: Remove obsolete cast.
1998-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Rules (tests): Fix last change.
1998-07-31 11:10 Ulrich Drepper <drepper@cygnus.com>
* elf/elf.h: Add lots of new symbols from Irix and Solaris.
* sysdeps/unix/sysv/linux/sigstack.c: Include stddef.h to get NULL
definition.
1998-07-31 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* sunrpc/xcrypt.c: Use only the first 8 characters of the password.
1998-07-30 21:06 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
* sysdeps/generic/glob.c: Undefine strdup before defining it,
because bits/string2.h may have defined it already.
1998-07-29 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* stdio-common/vfscanf.c: Optimize looking for type modifiers.
Fix recognition of 'a' modifier vs. 'a' format.
(TYPEMOD): Removed.
* stdio-common/printf-parse.h (parse_one_spec): Optimize looking
for type modifiers. Fix recognition of 'hh' modifier.
1998-07-31 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* sunrpc/svc_unix.c: Fix typo.
1998-07-31 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* sysdeps/unix/sysv/linux/recvmsg.c: Don't check for SCM_CREDS before
syscall.
1998-07-24 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/glob.c (glob): Fix problems with handle tilde.
Reported by Brian Wellington <bwelling@anomaly.munge.com>.
* elf/elf.h: Really define Elf64_Verdef, Elf64_Verdaux, Elf64_Verneed,
and Elf64_Vernaux.
1998-07-24 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* configure.in: Recognize pgcc as compiler.
Reported by sauron@angband.ee.ualberta.ca.
1998-07-02 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* nscd/dbg_log.c: Make sure, that debug message is really written.
* nscd/nscd.c: Don't use daemon(), set signal handler after fork.
SVID more for gamma(x) with x integer <= 0.
1998-04-06 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
* elf/dl-runtime.c (fixup, profile_fixup): The final arg to
_dl_lookup_*symbol is DL_LOOKUP_NOPLT not ELF_MACHINE_JMP_SLOT.
* elf/elf.h (EM_SPARC64): Remove.
(EM_SPARC32PLUS, EM_SPARCV9): Add.
(HWCAP_SPARC_V9): Add.
* elf/ldsodefs.h (_dl_hwcap): Declare.
* sysdeps/sparc/sparc32/dl-machine.h (_dl_hwcap, _dl_hwcap_mask):
Weaken so dlopen from static progies works.
(WEAKADDR): New macro.
(elf_machine_matches_host): Accept EM_SPARC32PLUS on a v9 cpu.
(LD_SO_PRELOAD): New macro.
(elf_machine_fixup_plt): Cope with weak _dl_hwcap.
(elf_machine_rela): Weaken _dl_rtld_map.
* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S: Rename __libc_clone
to __clone, and remove the later's alias.
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c: Copy to/from
the kernel's structure.
* sysdeps/generic/libc-start.c: Allow init and fini to be null.
1998-03-01 Richard Henderson <rth@cygnus.com>
* shlib-versions: Match alpha*.
* sysdeps/unix/sysv/linux/alpha/syscalls.list: Add adjtimex.
* sysdeps/unix/sysv/linux/alpha/adjtimex.S: Remove.
* sysdeps/alpha/fpu/bits/mathinline.h (isunordered et al): New.
Implement copysign* with and without __ prefix.
Likewise for fabs; use builtin for gcc 2.8.
(floor*): New.
(fdim*): New.
* elf/elf.h (EF_SPARC*, EF_ALPHA*, SHT_ALPHA*, SHF_ALPHA*): New.
(R_SPARC*): Match current v9 ABI.
* sysdeps/wordsize-64/stdint.h (intptr_t): Is a long.
* sunrpc/clnt_udp.c (clntudp_call): Use socklen_t.
* sunrpc/pmap_rmt.c (clnt_broadcast): Likewise.
* sunrpc/svc_tcp.c (svctcp_create, rendezvous_request): Likewise.
* sysdeps/generic/getresgid.c: Use prototype form because of warning.
* sysdeps/unix/sysv/linux/getdents.c: Likewise.
* sysdeps/unix/sysv/linux/alpha/adjtime.c: Likewise.
* sysdeps/unix/grantpt.c (argv): Fix consts.
* sysdeps/unix/sysv/linux/getpt.c: Include <string.h>
* sysdeps/unix/sysv/linux/sigaction.c: Likewise.
1997-08-24 12:24 Ulrich Drepper <drepper@cygnus.com>
* configure.in (INSTALL): Quote `$'.
* libc.map: Add __xpg_basename.
* csu/Makefile (initfini.s): Disable optimization.
* elf/dl-deps.c: Implement handling of DL_FILTER.
* elf/dl-load.c (_dl_init_paths): Add error check.
* intl/finddomain.c (_nl_find_domain): Correct comment.
* intl/localealias.c: Include <bits/libc-lock.h> not <libc-lock.h>.
* libio/stdio.h: Make {,v}snprintf available if __USE_BSD.
Change extern inline functions to work correctly in C++.
* locale/iso-4217.def: Update for more recent ISO 4217 version.
* locale/loadlocale.c (_nl_load_locale): Add cast.
* manual/message.texi: Finish gettext section.
* posix/getopt_init.c: Don't use relative #include path.
(__getopt_clean_environment): Change function to take pointer to
environment as argument. Optimize generation of test string a bit.
* sysdeps/unix/sysv/linux/init-first.c: Call __getopt_clean_environment
with additional argument.
* poisx/glob.c: Add prototype for next_brace_sub.
* sysdeps/generic/dl-sysdep.c: Recognize AT_BASE value on auxiliary
vector.
* sysdeps/i386/dl-machine.h (elf_machine_load_address): Rewrite
to not generate relocation entry. Suggested by Richard Henderson.
(ELF_MACHINE_BEFORE_RTLD_RELOC): Removed.
(elf_machine_runtime_setup): Add .aligns.
* sysdeps/i386/fpu/fraiseexcpt.c: Add volatile to asms.
* sysdeps/i386/fpu/bits/mathinline.h: Partially undo change of
1997-08-14 03:14. gcc 2.7.2* is really broken in some aspects.
* sysdeps/standalone/i386/i386.h: Clean up asm statements a bit.
* sysdeps/standalone/i960/i960ca.h: Likewise.
1997-08-22 19:04 Richard Henderson <rth@cygnus.com>
* elf/rtld.c (_dl_start): Init _dl_rtld_map.l_opencount due to
undocumented test addition in _dl_map_object.
Support ET_EXEC versions of ld.so, for debugging at least:
* elf/dl-load.c (_dl_map_object): Add_name_to_object could get
called despite the DT_SONAME != NULL test, segfaulting. Simplify
the code here as well.
* elf/dl-lookup.c (do_lookup): Skip objects with no symtab.
(_dl_setup_hash): Likewise for hash tables.
* elf/dl-version.c (_dl_check_map_versions): Likewise for strtabs.
* elf/rtld.c (_dl_start): Likewise for rpath.
(_dl_rtld_libname2): New variable.
(dl_main): Use it to add an soname for ourselves when we don't have
one of our own. Base it on the target's .interp.
(dl_main): Again, skip printing of objects that don't have strtabs.
Sparc 32 merge:
* elf/dl-runtime.c (ELF_FIXUP_RETURN_VALUE): Provide default value.
(fixup): Simplify code. Use ELF_FIXUP_RETURN_VALUE.
(profile_fixup): Likewise, though this still needs fixing for
Sparc32 and PPC.
* sysdeps/powerpc/dl-machine.h: Transmute ELF_FIXUP_RETURNS_ADDRESS
to ELF_FIXUP_RETURN_VALUE.
* sysdeps/sparc/sparc32/dl-machine.h: Implement lazy relocation.
Fix up _dl_start_user to handle _dl_skip_args properly.
Use _dl_hwcap to determine if "flush" is available/needed.
* sysdeps/sparc/configure.in: Remove. It doesn't actually do
anything anymore, and what it did do is done somewhere else.
* sysdeps/sparc/configure: Likewise.
* sysdeps/sparc/fpu/bits/mathdef.h (FP_ILOGB0, FP_ILOGBNAN): New.
* sysdeps/sparc/fpu/fraiseexcpt.c: Rearrange for smaller code.
* sysdeps/sparc/sparc32/Makefile: Fix sparc->sparc/sparc32 bits
in divrem expansions.
* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (END, LOC): New
definitions for assembly syntax differences.
* sysdeps/sparc/sparc32/__longjmp.S: %g6,%g7 are reserved to the
"system". Use %g2,%g3 instead. Use new local label macro.
* sysdeps/sparc/sparc32/add_n.S: Use <sysdep.h> and ENTRY, END,
and LOC for proper assembly headers/footers.
* sysdeps/sparc/sparc32/addmul_1.S: Likewise.
* sysdeps/sparc/sparc32/alloca.S: Likewise.
* sysdeps/sparc/sparc32/dotmul.S: Likewise.
* sysdeps/sparc/sparc32/lshift.S: Likewise.
* sysdeps/sparc/sparc32/mul_1.S: Likewise.
* sysdeps/sparc/sparc32/rshift.S: Likewise.
* sysdeps/sparc/sparc32/sparcv8/addmul_1.S: Likewise.
* sysdeps/sparc/sparc32/sparcv8/mul_1.S: Likewise.
* sysdeps/sparc/sparc32/sparcv8/submul_1.S: Likewise.
* sysdeps/sparc/sparc32/sparcv8/udiv_qrnnd.S: Likewise.
* sysdeps/sparc/sparc32/sub_n.S: Likewise.
* sysdeps/sparc/sparc32/submul_1.S: Likewise.
* sysdeps/sparc/sparc32/udiv_qrnnd.S: Likewise.
* sysdeps/sparc/sparc32/umul.S: Likewise.
* sysdeps/sparc/sparc32/divrem.m4: Likewise.
* sysdeps/sparc/sparc32/rem.S: Regenerate.
* sysdeps/sparc/sparc32/sdiv.S: Regenerate.
* sysdeps/sparc/sparc32/udiv.S: Regenerate.
* sysdeps/sparc/sparc32/urem.S: Regenerate.
* sysdeps/sparc/sparc32/sparcv8/dotmul.S: New file.
* sysdeps/sparc/sparc32/sparcv8/rem.S: New file.
* sysdeps/sparc/sparc32/sparcv8/sdiv.S: New file.
* sysdeps/sparc/sparc32/sparcv8/udiv.S: New file.
* sysdeps/sparc/sparc32/sparcv8/umul.S: New file.
* sysdeps/sparc/sparc32/sparcv8/urem.S: New file.
* sysdeps/sparc/sparc32/bsd-_setjmp.S: Dike out.
* sysdeps/sparc/sparc32/bsd-setjmp.S: Likewise.
* sysdeps/sparc/sparc32/setjmp.S: Add _setjmp and setjmp entry points.
* sysdeps/unix/sysv/linux/sparc/sparc32/__sigtrampoline.S:
Clean up PIC code.
* sysdeps/sparc/sparc32/elf/start.S: New file, slightly modified
from the sparc64 version.
* sysdeps/sparc/sparc32/elf/start.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc32/init-first.h: Rewrite in
assembly based on the sparc64 version.
* sysdeps/sparc/sparc32/fpu/bits/fenv.h: Duh. Use proper syntax
for manipulating %fsr.
* sysdeps/sparc/sparc32/fpu/fpu_control.h: Make IEEE conformance
be the default.
* elf/elf.h (HWCAP_SPARC_*): New definitions.
* elf/rtld.c (_dl_hwcap): New variable.
* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Record AT_HWCAP.
* sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c: New file.
Attempt to get hold of the page size based on what we might have
been told at startup time in _dl_pagesize. This will be obsolete
when I finish the kernel hooks for a proper sysconf(), stay tuned.
Sparc 64 merge:
* sysdeps/sparc/sparc64/dl-machine.h (ELF_FIXUP_RETURN_VALUE): New.
Figure out the right thing to return based on the .plt format.
* sysdeps/sparc/sparc64/fpu/fpu_control.h: Update comment.
* sysdeps/unix/sysv/linux/sparc/sparc64/bits/types.h (__dev_t):
Should have been 64-bits wide.
* sysdeps/unix/sysv/linux/sparc/sparc64/init-first.h: sll->sllx,
optimize for branch delay slot usage.
1997-08-22 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* csu/Makefile ($(objpfx)crt%.o): Fix a missing *.so -> *.os
change.
1997-08-20 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* math/libm-test.c (identities): Change epsilon.
* sysdeps/i386/fpu/bits/mathinline.h: Correct arguments to fabs,
fabsf, fabsl, __fabsl.
* sysdeps/libm-i387/e_remainderl.S: Pop extra value from FPU stack.
* sysdeps/libm-ieee754/s_csinhl.c: Include <fenv.h>.
1997-08-14 03:14 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-minimal.c: Don't use relative #include paths.
(malloc): Don't try to initialize _dl_pagesize, it already is.
(__sigjmp_save, longjmp): Reformat.
* sysdeps/generic/dl-sysdep.c: Implement _dl_show_auxv function to
show content of auxiliary array.
(_dl_sysdep_start): Remember start of auxiliary vector.
* sysdeps/mach/hurd/dl-sysdep.c: (_dl_show_auxv): New dummy function.
* elf/link.h: Add prototype for _dl_show_auxv.
* elf/rtld.c (dl_main): Call _dl_show_auxv if LD_SHOW_AUXV envvar
is present.
* libio/iofdopen.c: Better prepare for use in libstdc++.
* libio/iofflush.c: Likewise.
* libio/iofgetpos.c: Likewise.
* libio/iofgets.c: Likewise.
* libio/iofopen.c: Likewise.
* libio/iofputs.c: Likewise.
* libio/iofread.c: Likewise.
* libio/iofsetpos.c: Likewise.
* libio/ioftell.c: Likewise.
* libio/iofwrite.c: Likewise.
* libio/iogetdelim.c: Likewise.
* libio/iogets.c: Likewise.
* libio/iopopen.c: Likewise.
* libio/ioputs.c: Likewise.
* libio/iosetbuffer.c: Likewise.
* libio/iosetvbuf.c: Likewise.
* libio/ioungetc.c: Likewise.
* libio/iovsprintf.c: Likewise.
* libio/iovsscanf.c: Likewise.
* manual/creature.texi: Mention _XOPEN_SOURCE_EXTENDED in correct
place.
* manual/math.texi: Add comment to sincos decsription to say it's a
GNU extension.
Fix description of random function.
* posix/fnmatch.h: Recognize Windog by _WINDOWS32 not WIN32.
* posix/glob.c: Likewise. Handle stupid system headers on SunOS.
Add casts for all __alloca calls.
* posix/glob.h: Recognize Windog by _WINDOWS32 not WIN32.
Declare additional GLOB_* constants also if _GNU_SOURCE is defined.
Patches by Paul D. Smith <psmith@BayNetworks.COM>.
* stdio-common/_itoa.c: Don't use relateive #include paths.
* sysdeps/i386/fpu/bits/mathinline.h: Enable optimizations even for
gcc 2.7.
(atan): Loading 1.0 from memory does not pay off.
(asinh): Fix typo.
1997-08-13 09:44 Philip Blundell <Philip.Blundell@pobox.com>
* sysdeps/stub/accept.c: Use socklen_t where necessary.
* sysdeps/stub/bind.c: Likewise.
* sysdeps/stub/connect.c: Likewise.
* sysdeps/stub/getsockname.c: Likewise.
* sysdeps/stub/getsockopt.c: Likewise.
* sysdeps/stub/recvfrom.c: Likewise.
* sysdeps/stub/sendto.c: Likewise.
* sysdeps/stub/setsockopt.c: Likewise.
1997-08-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* io/ftw.c (object_compare): Avoid memcmp when comparing scalar
types.
1997-08-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* math/libm-test.c (cbrt_test): Add epsilon for long double to
`cbrt (-0.001)'.
1997-08-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/stub/bits/string.h: Fix comment.
1997-08-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/Makefile (routines): Remove dl-version.
(dl-routines): Add it here instead. This removes dead code from
libc.so.
1997-08-12 17:17 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de>
* malloc/thread-m.h (thread_atfork, thread_atfork_static): New
macros to encapsulate pthread_atfork's functionality.
* malloc/malloc.c (ptmalloc_lock_all, ptmalloc_unlock_all): New
functions, registered via thread_atfork in the initialization
routine or via thread_atfork_static in global scope. This
ensures a consistent state of all locks across fork().
1997-08-11 23:00:32 1997 Mark Kettenis <kettenis@phys.uva.nl>
* login/programs/xtmp.c (compare_entry):
Partially undo patch made by Klaus Espenlaub. There
was no xtmp/utmp typo. Added comment to cclarify this.
* login/programs/xtmp.h: Likewise.
* posix/getopt.c: Recognize Windog by _WINDOWS32 not WIN32.
Patch by Paul D. Smith <psmith@BayNetworks.COM>.
1997-08-12 13:51 Ulrich Drepper <drepper@cygnus.com>
* login/getutid.c: Rename to __getutid and make getutid and getutxid
weak aliases.
Patch by ir. Mark M._Kettenis <kettenis@phys.uva.nl>.
1997-08-11 23:55 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
Add bits/mman.h.
1997-08-11 08:51:21 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* stdlib/fmtmsg.c (fmtmsg): Add static to
__libc_once_define macro.
* libc.map (__progname_full, __progname): Added.
1997-08-04 08:31 H.J. Lu <hjl@gnu.ai.mit.edu>
* sysdeps/unix/sysv/linux/if_index.c (if_nametoindex): Return 0
if SIOGIFINDEX is not defined.
(if_indextoname): Initialize "result" to NULL.
(if_nametoindex, if_nameindex): Fix ENOSYS setting.
1997-08-11 11:58 Richard Henderson <rth@cygnus.com>
Sparc ISO C 9x exception handling:
* sysdeps/sparc/fpu/bits/mathdef.h: New file.
* sysdeps/sparc/fpu/fclrexcpt.c: New file.
* sysdeps/sparc/fpu/fegetenv.c: New file.
* sysdeps/sparc/fpu/fegetround.c: New file.
* sysdeps/sparc/fpu/feholdexcpt.c: New file.
* sysdeps/sparc/fpu/fesetenv.c: New file.
* sysdeps/sparc/fpu/fesetround.c: New file.
* sysdeps/sparc/fpu/feupdateenv.c: New file.
* sysdeps/sparc/fpu/fgetexcptflg.c: New file.
* sysdeps/sparc/fpu/fraiseexcpt.c: New file.
* sysdeps/sparc/fpu/fsetexcptflg.c: New file.
* sysdeps/sparc/fpu/ftestexcept.c: New file.
* sysdeps/sparc/sparc32/fpu/bits/fenv.h: New file.
* sysdeps/sparc/sparc64/fpu/bits/fenv.h: New file.
1997-08-11 11:58 Richard Henderson <rth@cygnus.com>
Sparc64 merge:
* configure.in: Change up subdirectories, rename sparc8->sparcv8.
* csu/Makefile: Nuke need-nopic-initfini bits. The problem was
that sparc64 ld did not recognize pic relocs at all.
* elf/dl-deps.c: Include <string.h>.
* elf/do-rel.h (elf_dynamic_do_rel): Take reloc address and size
directly instead of the DT names to get them from.
* elf/dynamic-link.h (_ELF_DYNAMIC_DO_RELOC): New macro distilled
from ELF_DYNAMIC_DO_REL{,A}. Define a second version that accounts
for the possibility that DT_RELA and DT_JMPPLT overlap, as such is
the case on the Sparc.
* elf/elf.h: Stub out Elf64_Ver*, and make them the same as the
Elf32_Ver* bits. The linker does not even know to differentiate
between the word sizes. Someone should examine this and figure
out what the proper sizes of things should be for 64-bit hosts
before the sparc64 libraries are distributed.
* shlib-versions: Rename sparc64 ld.so to not conflict with sparc32
on the same machine.
Move old sysdeps/sparc contents to sysdeps/sparc/sparc32,
rename sparc8 subdir to sparcv8, move sysdeps/sparc64 content to
sysdeps/sparc/sparc64. Same for sysdeps/unix/sysv/linux/sparc.
* sysdeps/sparc/Implies: Do ieee754 here.
* sysdeps/sparc/configure.in: Move from sparc32/.
* sysdeps/sparc/sparc32/Implies: Do wordsize here.
* sysdeps/sparc/sparc64/Implies: Likewise.
* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_load_address):
Use uninitialized .got to find load address instead of AT_BASE, as
the later does not exist when running ld.so directly.
* sysdeps/sparc/sparc32/fpu/fpu_control.h: Move from ../.
* sysdeps/sparc/sparc64/fpu/fpu_control.h: Likewise.
* sysdeps/sparc/sparc32/udiv_qrnnd.S: Clean up PIC support.
* sysdeps/sparc/sparc64/Makefile (sysdep_routines): Add s_finitel
and s_signbitl for stdio.
* sysdeps/sparc/sparc64/configure.in: Remove, we no longer need
nopic_initfini.
* sysdeps/sparc/sparc64/bsd-_setjmp.S: Remove.
* sysdeps/sparc/sparc64/bsd-setjmp.S: Remove.
* sysdeps/unix/sysv/linux/sparc/sparc64/bsd-_setjmp.S: New empty file.
* sysdeps/unix/sysv/linux/sparc/sparc64/bsd-setjmp.S: New empty file.
* sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add __longjmp alias.
* sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Add weak _setjmp
and setjmp entry points.
* sysdeps/sparc/sparc64/dl-machine.h: Finish real implementation.
* sysdeps/sparc/sparc64/elf/crtbegin.S: Add copyright, fix PIC.
* sysdeps/sparc/sparc64/elf/crtend.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/sigaction.h (struct sigaction):
Fix sa_flags size for sparc64; add sa_restorer for kernel.
* sysdeps/unix/sysv/linux/sparc/sparc64/brk.S: Fix PIC.
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/init-first.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S: New file.
1997-08-10 18:29:08 1997 Mark Kettenis <kettenis@phys.uva.nl>
* login/login.c (login): Check for correct return value of
utmpname.
1997-08-11 16:49 Ulrich Drepper <drepper@cygnus.com>
* time/tzset.c (__tzset_internal): Correctly handle TZ strings
following incorrect old POSIX specs.
Patch by Paul Eggert <eggert@twinsun.com>.
* sysdeps/generic/bits/sigaction.h: Correct comment for SA_RESTART.
* sysdeps/unix/bsd/osf/bits/sigaction.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/sigaction.h: Likewise.
* sysdeps/unix/sysv/linux/bits/sigaction.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/sigaction.h: Likewise.
* sysdeps/unix/sysv/minix/bits/sigaction.h: Likewise.
* sysdeps/unix/sysv/sysv4/bits/sigaction.h: Likewise.
Reported by NIIBE Yutaka <gniibe@mri.co.jp>.
1997-08-09 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* manual/math.texi: Define the macros @mul and @infinity and use
them to format the multiplication and infinity signs.
(FP Comparison Functions): Use @code, not @math, for C code
examples.
* elf/dl-profile.c: Add descriptions and implement reading of