* include/netdb.h: Change type of first parameter of __getnetbyaddr_r.
* inet/getnetbyad.c: Likewise.
* inet/getnetbyad_r.c: Likewise.
* nis/nss_nis/nis-network.c: Likewise.
* nis/nssplus_nis/nisplus-network.c: Likewise.
* nss/nss_files/files-network.c: Likewise.
* resolv/netdb.h: Define uint32_t if not already happened.
Include bits/netdb.h. Remove definition of struct netent.
Change type of first parameter of getnetbyaddr_r and getnetbyaddr.
* sysdeps/generic/stdint.h: Allow definition of uint32_t elsewhere.
* sysdeps/generic/bits/netdb.h: New file.
* sysdeps/unix/sysv/linux/alpha/bits/netdb.h: New file.
2000-03-30 Ulrich Drepper <drepper@redhat.com>
Implement dynamic determination of constructor/destructor order in
the dynamic linker.
* elf/Versions [ld.so] (GLIBC_2.0): Remove _dl_init_next.
(GLIBC_2.2): Add _dl_init.
* elf/dl-close.c: Also call all destructors in FINI_ARRAY.
r_duplist is not anymore allocated separately. l_initfini is and
therefore free it if necessary.
* elf/dl-deps.c: If a searchlist has to be allocated, put all in one
malloc block. Otherwise allocate l_initfini list only.
Put dependencies for the object in l_initfini list.
Sort dependencies for the object to be loaded topologically.
* elf/dl-fini.c: Before running the destructors sort the topologically.
* elf/dl-init.c (_dl_init): Renamed from _dl_init_next. Rewrite to
call constructors instead of iterating over the pointers. Get list of
objects for which to run constructors from l_initfini element. Accept
argc, argv, and env as parameters and pass them to the constructors.
* elf/ld-load.c (_dl_map_object_from_fd): Initialize l_ldnum member
with size of dynamic section.
* elf/dl-open.c (dl_open_worker): Only call _dl_init instead of
_dl_init_next and calling constructors ourself.
* elf/dl-preinit.c (_dl_preinit): Renamed from _dl_preinit_next.
Take argc, argv, and env as parameters and pass them to the
constructors. Rewrite to call all constructors and not iterate over
the pointers.
* elf/dynamic-link.h: Don't relocate DT_FINI_ARRAY entry. Don't
precompute l_initcount and l_preinitcount.
* elf/link.h (struct link_map): Add l_ldnum member.
Make l_phdr_allocated part of the bitfield. Remove l_runcount,
l_initcount, and l_preinitcount. Add l_initfini.
* sysdeps/generic/ldsodefs.h: Replace _dl_init_next prototype with
one for _dl_init.
* sysdeps/i386/dl-machine (RTLD_START): Rewrite to match new init
function interface.
* sysdeps/unix/sysv/linux/init-first.h: Removed.
* sysdeps/unix/sysv/linux/Dist: Delete file here as well.
* sysdeps/unix/sysv/linux/init-first.c [PIC]: Don't use
SYSDEP_CALL_INIT. Make _init a strong alias of init. The calling
conventions now match.
* sysdeps/generic/libc-start.c: Calling __libc_init_first has no
effect for shared objects. Don't emit message and call only for
static library.
* sysdeps/unix/sysv/linux/net/if.h: Moved to ...
* sysdeps/gnu/net/if.h: here.
(_IOT_ifconf, _IOT_ifreq): Hurd ioctl type macros moved from ...
* sysdeps/mach/hurd/net/if.h: ... here; this file now removed.
* sysdeps/generic/net/if.h: New file. Declares just the standard
functions and `struct if_nameindex' type.
* socket/Makefile (headers): Add net/if.h here.
* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Not here.
* sysdeps/mach/hurd/Dist: Remove it here.
* sysdeps/unix/sysv/linux/Dist: And here.
* sysdeps/generic/if_index.c: Include <net/if.h>.
2000-03-13 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/generic/lockfile.c: Include <stdio.h>
(_IO_flockfile, _IO_funlockfile, _IO_ftrylockfile): #undef these in
case <libio.h> defined them.
(__flockfile, __funlockfile, __ftrylockfile): Functions renamed
from __internal_*.
(flockfile, _IO_flockfile, funlockfile, _IO_funlockfile,
ftrylockfile, _IO_ftrylockfile): Fix aliases accordingly.
* sysdeps/generic/bits/stdio-lock.h (_IO_lock_initializer): Use ...
for more pleasing parse error.
* elf/Makefile: Add rules to compile and run constload1 test.
* sysdeps/generic/lockfile.c: Include <stdio.h>
(_IO_flockfile, _IO_funlockfile, _IO_ftrylockfile): #undef these in
case <libio.h> defined them.
(__flockfile, __funlockfile, __ftrylockfile): Functions renamed
from __internal_*.
(flockfile, _IO_flockfile, funlockfile, _IO_funlockfile,
ftrylockfile, _IO_ftrylockfile): Fix aliases accordingly.
(input, output): Functions removed.
(mach_open_devstream): Use devstream_{read,write} as cookie functions,
using only the vanilla fopencookie interface.
* hurd/fopenport.c [! USE_IN_LIBIO] (cookie_io_functions_t): Define
as macro for __io_functions.
(funcsio): Use cookie_io_functions_t type name.
(fopenport): Renamed from __fopenport. Rewrite to call fopencookie.
* libio/iofopncook.c (_IO_cookie_init): New function, broken out of
fopencookie.
(fopencookie): Use it.
* libio/libio.h: Declare _IO_cookie_init.
* hurd/vpprintf.c (vpprintf) [USE_IN_LIBIO]: Implement using
_IO_cookie_init.
* libio/libio.h (__io_seek_fn): Fix second argument type
to be a pointer, in line with the manual and the old stdio.
* libio/iofopncook.c (_IO_cookie_seek): Fix (sole) caller.
* sysdeps/generic/bits/stdio-lock.h: New file.
This is a stub with #error, but that's better than no file at all.
* sysdeps/unix/sysv/linux/alpha/syscall.S:
* manual/message.texi (Using gettextized software):
* manual/filesys.texi (File Size):
* manual/charset.texi (glibc iconv Implementation):
* locale/programs/ld-collate.c (collate_output):
* manual/stdio.texi (Output Conversion Syntax):
argument type, for 2000-02-22 change in signal/signal.h declaration.
* sysdeps/generic/getdents64.c (__getdirentries64): Renamed
to getdirentries64 (no __), since the Linux implementation
has no __ name, and there is no declaration for the __ name.
* sysdeps/mach/bits/libc-lock.h (__libc_cleanup_end): New macro.
* sysdeps/mach/hurd/Makefile ($(common-objpfx)errnos.d): Tighten up
sed regexp so as not to break directory names including /../ within.
* sysdeps/unix/bsd/bits/waitflags.h: File removed.
The sysdeps/generic file is right for BSD. This file was in fact the
Hurd file, but the only difference was the WNOREAP flag that was never
actually implemented or used anywhere.
2000-02-28 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/start.c: Initialize __errno and add comment
explaining why. Remove K&R compatibility.
* sysdeps/powerpc/fpu/s_isnan.c: Avoid using asm statement to
declare aliases.
* sysdeps/powerpc/Makefile: Always pass flags to compile for ppc
and not rs6000.
[$(subdir)=misc] (sysdep_routines): Add gprsave0, gprrest0,
gprsave1 , and gprrest1.
Don't pass special flags to compiler for init and gmon-start if
this is no ELF platform.
* sysdeps/mach/hurd/bits/statfs.h: Define _STATFS_F_NAMELEN.
* sysdeps/unix/sysv/linux/bits/statfs.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/statfs.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/statfs.h: Likewise.
* sysdeps/posix/fpathconf.c: Don't unconditionally use f_namelen
in statfs. Check feature macro and use f_name_max or NAME_MAX
instead.
* sysdeps/posix/pathconf.c: Likewise.
* dlfcn/dlfcn.h: Remove DL_CALL_FCT definition here.
* sysdeps/generic/bits/dlfcn.h: Define DL_CALL_FCT here.
* sysdeps/mips/bits/dlfcn.h: Define DL_CALL_FCT here.
* iconv/skeleton.c: If DL_CALL_FCT is not yet defined, add dumy
definition here.
* sysdeps/generic/libc-start.c: Fix typo in comment.
* include/set-hooks.h: Allow systems to not define
symbol_set_define.
* configure.in: Unify machine names rs6000 and powerpc.
2000-02-25 Ulrich Drepper <drepper@redhat.com>
* conform/conformtest.pl (@headers): Add "sys/msg.h", "sys/mman.h",
"sys/ipc.h", "syslog.h", and "stropts.h".
Handle / in header names correctly.
* conform/data/stropts.h-data: New file.
* conform/data/syslog.h-data: New file.
* conform/data/sys/ipc.h-data: New file.
* conform/data/sys/mman.h-data: New file.
* conform/data/sys/msg.h-data: New file.
* misc/sys/mman.h: Define off_t and mode_t if not already done.
* streams/stropts.h: Define gid_t and uid_t if not already done.
* sysdeps/gnu/bits/ipc.h (IPC_INFO): Only define if __USE_GNU.
* sysdeps/unix/sysv/linux/alpha/bits/ipc.h: Likewise.
* sysdeps/unix/sysv/linux/bits/ipc.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/ipc.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/ipc.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/ipc.h: Likewise.
* sysvipc/sys/msg.h: Don't include sys/types.h.
Define time_t, pid_t, and ssize_t if not already done.
(struct msgbuf): Define only if __USE_GNU.
* sysdeps/generic/bits/msq.h: Include bits/types.h, not sys/types.h.
(MSG_EXCEPT): Only define if __USE_GNU.
Define msgqnum_t and msglen_t and use them in struct msqid_ds
definition.
* sysdeps/gnu/bits/msq.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/msq.h: Likewise.
* sysdeps/unix/sysv/linux/bits/msq.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/msq.h: Likewise.
* sysdeps/generic/bits/stropts.h (I_GWROPT): Renamed from I_GWRSET.
(FLUSHBAND): Only define is __USE_GNU.
(RPROTMASK): Likewise.
(SNDPIPE): Likewise.
(MUXID_ALL): Likewise.
(struct strrecvfd): Rename fill to __fill.
2000-02-02 Andreas Schwab <schwab@suse.de>
* malloc/Makefile (distribute): Add memprof.h.
* malloc/memprof.c: Move definition of GETSP and GETTIME to new
header memprof.h.
* sysdeps/generic/memprof.h: New file.
* sysdeps/alpha/memprof.h: New file.
* sysdeps/i386/memprof.h: New file.
* sysdeps/m68k/memprof.h: New file.
* sysdeps/mips/memprof.h: New file.
* sysdeps/powerpc/memprof.h: New file.
* sysdeps/sparc/memprof.h: New file.
2000-02-11 Ulrich Drepper <drepper@redhat.com>
* stdio-common/printf-parse.h (parse_one_spec): Set wide elements.
* stdio-common/printf_fp.c: Truely support wide characater output.
Finally handle decimal points and thousands separator characters
correctly for multibyte output.
* stdio-common/printf_size.c: Likewise.
* sysdeps/generic/printf_fphex.c: Likewise.
* sysdeps/ieee754/ldbl-96/printf_fphex.c: Likewise.
* stdio-common/vfscanf.c: Implement I modifier for numbers to read
locale dependent digits.
* locale/C-monetary.c (_nl_C_LC_MONETARY): Change wide character
decimal point and thousands separator values to wide characters from
wide character strings.
* locale/C-numeric.c (_nl_C_LC_NUMERIC): Likewise.
* locale/indigitswc.h: Dereference wcdigits array elements.
2000-02-03 Jakub Jelinek <jakub@redhat.com>
* stdlib/canonicalize.c (canonicalize): Zero terminate
path to copy on error.
2000-02-01 Cristian Gafton <gafton@redhat.com>
* misc/syslog.c (closelog): Reset LogType to SOCK_DGRAM.
2000-01-31 Philip Blundell <philb@gnu.org>
* sysdeps/arm/fpu/fpu_control.h (_FPU_DEFAULT): Set the AC bit.
2000-01-31 Andreas Jaeger <aj@suse.de>
* intl/Makefile (generated): msgs.h is generated.
* localedata/Makefile (generated-dirs): Add de_DE.437.
2000-01-31 Jakub Jelinek <jakub@redhat.com>
* config.make.in: Allow default localedir to come from configure.
* configure.in: Export libc_cv_localedir.
* sysdeps/unix/sysv/linux/configure.in: For sparc64, put locale
stuff into $exec_prefix/lib/locale because it can be shared between
32bit and 64bit libraries.
* configure: Rebuilt.
* sysdeps/unix/sysv/linux/configure: Rebuilt.
2000-01-31 Andreas Jaeger <aj@suse.de>
* inet/tst-network.c: New file.
* inet/Makefile (tests): Add tst-network.
* inet/inet_net.c (inet_network): Don't overwrite memory or allow
to great last digits.
2000-01-23 Philip Blundell <philb@gnu.org>
Add basic support for RPC over IPv6:
* sunrpc/rpc/svc.h (struct SVCXPRT): Use `struct sockaddr_storage'
for remote address.
(svcudp6_create, svcudp6_bufcreate, svctcp6_create): New
prototypes.
* sunrpc/rpc/clnt.h (clnttcp6_create, clntudp6_create,
clntudp6_bufcreate): New prototypes.
* inet/netinet/in.h (bindresport6): Likewise.
* sunrpc/Makefile (routines): Add svc_tcp6, svc_udp6, bindrsvprt6.
* sunrpc/Versions: Add svcfd6_create, svctcp6_create,
svcudp6_create, svcudp6_bufcreate, svcudp6_enablecache,
bindresvport6 for GLIBC_2.2.
* sunrpc/rpc_main.c: Support `tcp6' and `udp6' transport types.
* sunrpc/rpc_svcout.c: Likewise.
* sunrpc/svc_tcp.c (rendezvous_request): Use memcpy rather than
simple assignment when copying addresses.
* sunrpc/svc_udp.c (cache_get): Likewise.
* sunrpc/svc_unix.c (rendezvous_request): Likewise.
* sunrpc/bindrsvprt6.c, sunrpc/clnt_tcp6.c, sunrpc/clnt_udp6.c,
sunrpc/svc_tcp6.c, sunrpc/svc_udp6.c: New files.
2000-01-05 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/mmap64.S: Correct check for ENOSYS.
2000-01-23 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/i386/fxstat.c (__fxstat): Pass right
parameter to fstat calls.
2000-01-18 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/generic/bits/socket.h
(__ss_aligntype, struct sockaddr_storage): Make these like Linux
version, replacing old type name `__ss_align'.
2000-01-05 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/generic/lseek64.c (__libc_lseek64): Renamed from __lseek64.
(__lseek64, lseek64): Make these weak aliases for __libc_lseek64.
* sysdeps/mach/hurd/lseek.c (__libc_lseek): Renamed from __lseek.
(__lseek, lseek): Make these weak aliases for __libc_lseek.
* sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Renamed from __fcntl.
(__fcntl, fcntl): Make these weak aliases for __libc_fcntl.
* sysdeps/mach/hurd/open.c (__libc_open): Renamed from __open.
(__open, open): Make these weak aliases for __libc_open.
* sysdeps/generic/bits/socket.h (enum __socket_type): Remove
trailing comma.
(anonymous enum for MSG_*): Likewise.
(anonymous enum for SO_*): Likewise.
2000-01-23 Ulrich Drepper <drepper@cygnus.com>
* string/bits/string2.h: Fix typo (__GNU_SOURCE -> __USE_GNU)
(PR libc/1553).
2000-01-12 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_32BITUIDS):
Added for Linux 2.3.39+.
* sysdeps/unix/sysv/linux/getresgid.c: Support 32bit UIDs and
32bit GIDs.
* sysdeps/unix/sysv/linux/getresuid.c: Likewise.
* sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
* sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise.
* sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
* sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
* sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
* sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise.
* sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
* sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
* sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
* sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
* sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
* sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
* sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
* sysdeps/unix/sysv/linux/setegid.c: Likewise.
* sysdeps/unix/sysv/linux/arm/chown.c: New file.
* sysdeps/unix/sysv/linux/arm/fchown.c: New file.
* sysdeps/unix/sysv/linux/arm/geteuid.c: New file.
* sysdeps/unix/sysv/linux/arm/getegid.c: New file.
* sysdeps/unix/sysv/linux/arm/getuid.c: New file.
* sysdeps/unix/sysv/linux/arm/getgid.c: New file.
* sysdeps/unix/sysv/linux/arm/lchown.c: New file.
* sysdeps/unix/sysv/linux/i386/fchown.c: New file.
* sysdeps/unix/sysv/linux/i386/getegid.c: New file.
* sysdeps/unix/sysv/linux/i386/geteuid.c: New file.
* sysdeps/unix/sysv/linux/i386/getgid.c: New file.
* sysdeps/unix/sysv/linux/i386/getuid.c: New file.
* sysdeps/unix/sysv/linux/i386/lchown.c: New file.
* sysdeps/unix/sysv/linux/m68k/chown.c: New file.
* sysdeps/unix/sysv/linux/m68k/fchown.c: New file.
* sysdeps/unix/sysv/linux/m68k/getegid.c: New file.
* sysdeps/unix/sysv/linux/m68k/geteuid.c: New file.
* sysdeps/unix/sysv/linux/m68k/getgid.c: New file.
* sysdeps/unix/sysv/linux/m68k/getuid.c: New file.
* sysdeps/unix/sysv/linux/m68k/lchown.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/chown.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/fchown.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/getegid.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/geteuid.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/getgid.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/getuid.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/lchown.c: New file.
Based on a patch by Chris Wing <wingc@engin.umich.edu>.
2000-01-14 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sys/procfs.h: New file.
2000-01-13 Jakub Jelinek <jakub@redhat.com>
* sysdeps/generic/backtrace.c: Include signal.h which
sigcontextinfo.h headers are used to expect.
* sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h
(register_dump): Fix a typo in the printout.
Avoid using reg_window, so that asm/ptrace.h is not necessary.
* sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h
(ADVANCE_STACK_FRAME): Likewise.
* stdlib/longlong.h: Avoid using __sparc_v9__ ifdefs.
* sysdeps/sparc/sparc32/bits/wordsize.h: Likewise.
* sysdeps/sparc/sparc64/bits/wordsize.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Include bits/wordsize.h
to make it clear this file depends on __WORDSIZE.
* sysdeps/unix/sysv/linux/ftruncate64.c (__have_no_truncate64):
Renamed from have_no_truncate64.
* sysdeps/unix/sysv/linux/truncate64.c (__have_no_truncate64):
Likewise.
2000-01-04 Andreas Jaeger <aj@suse.de>
* nss/nss_db/dummy-db.h (struct db24): Add missing field flags.
(struct db27): Add missing fields byteswapped, join and flags;
remove wrong member handleq.
(struct dbc27): Correct lock field.
* nss/makedb.c: Remove __P.
2000-01-04 Andreas Jaeger <aj@suse.de>
* nss/nss_db/db-open.c (internal_setent): Check for db_open for
success, fix a memory leak and clean up function.
2000-01-04 Ulrich Drepper <drepper@cygnus.com>
* Makefile (install): Pass $(install_root) to ldconfig.
Patch by Akira YOSHIYAMA <yosshy@tkf.att.ne.jp>.
2000-01-03 Jakub Jelinek <jakub@redhat.com>
* soft-fp/op-1.h: Fix division for machines using not normalizing
version of udiv_qrnnd in longlong.h.
* soft-fp/sysdeps/mips/sfp-machine.h: Likewise.
* soft-fp/sysdeps/mips/mips64/sfp-machine.h: Likewise.
* soft-fp/sysdeps/sparc/sparc64/sfp-machine.h: Likewise.
Patch by Eddie C. Dost <ecd@skynet.be>.
* soft-fp/soft-fp.h (QItype, UQItype): New types used by longlong.h.
2000-01-03 Andreas Schwab <schwab@suse.de>
* sysdeps/generic/dl-sysdep.c: Initialize __libc_multiple_libcs,
needed for change in common symbol handing in newer binutils.
1999-12-23 Ulrich Drepper <drepper@cygnus.com>
* locale/programs/ld-monetary.c (monetary_finish): Add cast to
prevent warning.
* locale/programs/ld-collate.c: Implement writing out multibyte
collation data.
* locale/setlocale.c (setlocale): Allow setting LC_COLLATE again.
* locale/localeinfo.h: Declare variables only for currently implemented
collate functionality. Remove FORWARD_CHAR and ELLIPSIS_CHAR.
* locale/lc-collate.c: Define variables only for currently implemented
functionality.
* locale/langinfo.h: Define symbols only for currently implemented
functionality.
* locale/categories.def: Define elements for currently implemented
functionality.
* locale/C-collate.c: Comment out definitions of arrays with symbol
name definitions etc.
(_nl_C_LC_COLLATE): Update for currently defined information.
* intl/libintl.h: Remove dcgettext macro definition.
* intl/gettextP.h: Declare _nl_msg_cat_cntr.
* locale/iso-4217.def: Add NAD. Remove a few obsolete entries.
* sysdeps/generic/glob.c (glob): Pass alternate file access functions
also in recursive call. Patch by Joe Orton <joe@orton.demon.co.uk>.
1999-12-22 Jakub Jelinek <jakub@redhat.com>
* sysdeps/sparc/fpu/ftestexcept.c (fetestexcept): Use proper type
for __fenv_stfsr argument.
* sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Add
truncate64, ftruncate64, fstat64, lstat64, stat64 and mmap2.
Remove ugetrlimit.
* sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h
(XSTAT_IS_XSTAT64): Define.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Add
__libc_lseek64, __libc_pread, __libc_pread64, __libc_pwrite
and __libc_pwrite64.
Remove oldgetrlimit and oldsetrlimit.
* sysdeps/unix/sysv/linux/sparc/sparc64/fxstat64.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/lxstat64.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/xstat64.c: New file.
* sysdeps/unix/sysv/linux/fxstat64.c (__fxstat64): Pass the buf
pointer to the syscall, not address of that pointer.
* sysdeps/unix/sysv/linux/lxstat64.c (__lxstat64): Likewise.
* sysdeps/unix/sysv/linux/xstat64.c (__xstat64): Likewise.
(__syscall_stat64): Provide proper prototype.
* sysdeps/unix/sysv/linux/ftruncate64.c (ftruncate64): Share
has_no_truncate64 between truncate64 and ftruncate64.
* sysdeps/unix/sysv/linux/truncate64.c (truncate64): Likewise.
* sysdeps/unix/sysv/linux/kernel-features.h
(__ASSUME_TRUNCATE64_SYSCALL, __ASSUME_MMAP2_SYSCALL,
__ASSUME_STAT64_SYSCALL): Define on Sparc for kernels >= 2.3.35.
1999-12-22 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/alpha/syscalls.list: Add __libc_lseek64,
__libc_pread, __libc_pread64, __libc_pwrite and __libc_pwrite64.
1999-12-19 Andreas Jaeger <aj@suse.de>
* sysdeps/generic/libc-start.c: Remove declaration of
__libc_open. Move declaration of __libc_fcntl to ...
* include/fcntl.h: ...here.
* include/unistd.h: Move __libc_open and __libc_open64 to ...
* include/fcntl.h: ...here.
* malloc/malloc.h (__attribute_malloc__): Only define if hasn't
happened yet.
* malloc/Versions: __libc_freeres was exported with glibc 2.1.3,
rename label.
1999-12-17 Ulrich Drepper <drepper@cygnus.com>
* string/bits/string2.h (__strtok_r_1c): Help gcc optimizing string
access.
* locale/programs/ld-collate.c: Implement handling of absolute
ellipsis. Parsing of file and constructing the internal data
structures should now be complete.
(collate_finish): Start adding support to generate the data
structures which are written out to the file.
* intl/dcgettext.c: Rewrite to handle caching of previous results here
instead of in the dcgettext macro.
* intl/libintl.h (dcgettext): Don't define for systems using this
glibc or systems with tsearch.
* sysdeps/generic/mathdef.h: Protect definitions for math.h
against double inclusion.
* sysdeps/alpha/fpu/bits/mathdef.h: Likewise.
* sysdeps/i386/fpu/bits/mathdef.h: Likewise.
* sysdeps/m68k/fpu/bits/mathdef.h: Likewise.
* sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
* sysdeps/i386/fpu/libm-test-ulps: Add more deltas (are mobile PIIs
that different?).
1999-12-17 Andreas Jaeger <aj@suse.de>
* rt/aio.h (struct aiocb64): Add member __next_prio to sync the
struct with aiocb.
* rt/Makefile (tests): Added tst-aio64.
Added dependency rules for tst-aio64.
* rt/tst-aio64.c: New file, copied from tst-aio.c and changed for
64bit tests.
1999-12-15 Thorsten Kukuk <kukuk@suse.de>
* sysdeps/unix/sysv/linux/alpha/oldgetrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/oldsetrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/bits/resource.h: Change RLIM_INFINITY back to
old value (signed long).
* sysdeps/unix/sysv/linux/i386/bits/resource.h: New, with unsigned
long RLIM_INFINITY.
* sysdeps/unix/sysv/linux/getrlimit.c: Moved from here to ...
* sysdeps/unix/sysv/linux/i386/getrlimit.c: ... here.
* sysdeps/unix/sysv/linux/getrlimit64.c: Moved from here to ...
* sysdeps/unix/sysv/linux/i386/getrlimit64.c: ... here.
* sysdeps/unix/sysv/linux/oldgetrlimit64.c: Moved from here to ...
* sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c: ... here.
* sysdeps/unix/sysv/linux/oldsetrlimit64.c: Moved from here to ...
* sysdeps/unix/sysv/linux/i386/oldsetrlimit64.c: ... here.
* sysdeps/unix/sysv/linux/setrlimit.c: Moved from here to ...
* sysdeps/unix/sysv/linux/i386/setrlimit.c: ... here.
* sysdeps/unix/sysv/linux/setrlimit64.c: Moved from here to ...
* sysdeps/unix/sysv/linux/i386/setrlimit64.c: ... here.
* sysdeps/unix/sysv/linux/sparc/bits/resource.h: New.
* sysdeps/unix/sysv/linux/sparc/sparc64/oldgetrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/oldsetrlimit64.c: Removed.
1999-12-17 Andreas Jaeger <aj@suse.de>
* elf/ldconfig.c: Add new option -l to manualy link shared
libraries.
(options): Added option.
(parse_opt): Set option.
(main): Handle option.
(manual_link): New function.
1999-12-17 Thorsten Kukuk <kukuk@suse.de>
* string/bits/string2.h: Fix patch from 1999-12-07.
1999-12-16 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/strsep.c: If delim string has only one character
don't run over end of string.
* locale/programs/ld-collate.c (insert_weights): Also update next
pointer of last cursor element.
(insert_value): Return nonzero value if nothing got inserted.
(handle_ellipsis): Don't do anything if to-value cannot be inserted.
1999-12-10 Jakub Jelinek <jakub@redhat.com>
* stdlib/longlong.h (__sparc_v9__): Use %rDIGIT instead of %DIGIT
where appropriate.
1999-12-10 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction):
Copy sa_flags into kernel sigaction structure.
1999-12-14 Andreas Jaeger <aj@suse.de>
* string/tester.c (test_strsep): More tests for access beyond
the final NUL. The first two tests come from PR libc/1486 by
martinea@iro.umontreal.ca.
1999-12-14 Thorsten Kukuk <kukuk@suse.de>
* nis/ypclnt.c: Correct handling of cached client handles.
(__xdr_ypresp_all): Call callback function for errors, too,
like Solaris does.
* nis/nss_compat/compat-grp.c: Make sure errno is always set correct.
* nis/nss_compat/compat-initgroups.c: Likewise.
* nis/nss_compat/compat-spwd.c: Likewise.
* nis/nss_nis/nis-alias.c: Likewise.
* nis/nss_nis/nis-ethers.c: Likewise.
* nis/nss_nis/nis-grp.c: Likewise.
* nis/nss_nis/nis-hosts.c: Likewise.
* nis/nss_nis/nis-netgrp.c: Likewise.
* nis/nss_nis/nis-publickey.c: Likewise.
* nis/nss_nis/nis-service.c: Likewise. Also use services.byservicename
Map if available, optimize query if name/port and protocol is known.
1999-11-30 Andreas Jaeger <aj@suse.de>
Add ldconfig:
* elf/Makefile (extra-objs): Added ldconfig-modules.
(ldconfig-modules): New.
Added vpath for xstrdup and xmalloc.
Check for use-ldconfig instead of has-ldconfig.
($(objpfx)ldconfig): New rule with dependencies.
(distribute): Add new files.
* sysdeps/unix/sysv/linux/sparc/readelflib.c: New file,
developed together with Jakub Jelinek <jakub@redhat.com>.
* sysdeps/generic/readelflib.c: Likewise.
* elf/cache.c: New file.
* elf/ldconfig.c: New file.
* elf/ldconfig.h: New file.
* elf/readlib.c: New file.
* Makefile (install): Remove flag -d in ldconfig call.
* configure.in: Rename has_ldconfig to use_ldconfig, set it to no
by default.
* config.make.in (has-ldconfig): Renamed to use-ldconfig, changed
comment.
1999-12-01 Andreas Jaeger <aj@suse.de>
* sysdeps/generic/if_index.c (__protocol_available): Add missing
int for parameter.
* stdio/stdio.h: Fix typo.
Patches by Marcus G. Daniels <mgd@santafe.edu>.
1999-12-01 Andreas Jaeger <aj@suse.de>
* scripts/test-installation.pl (installation_problem): Filter out
libpthread_db.
1999-12-01 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/sysv/linux/alpha/bits/types.h: Fix signedness of
__rlim_t and __rlim64_t.
* sysdeps/unix/sysv/linux/mips/bits/types.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/types.h: Likewise.
1999-12-01 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add
oldgetrlimit64 and oldsetrlimit64 for subdir = resource.
* sysdeps/unix/sysv/linux/Versions: Add getrlimit, setrlimit,
getrlimit64 and setrlimit64 to version GLIBC_2.1.3.
* sysdeps/unix/sysv/linux/setrlimit.c: Correct handling of old and
new kernel version. Add symbol versions.
* sysdeps/unix/sysv/linux/syscalls.list: Add oldsetrlimit and
oldgetrlimit.
* sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add s_getrlimit
and s_ugetrlimit.
* sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/getrlimit.c: New file.
* sysdeps/unix/sysv/linux/getrlimit64.c: New file.
* sysdeps/unix/sysv/linux/oldgetrlimit64.c: New file.
* sysdeps/unix/sysv/linux/oldsetrlimit64.c: New file.
* sysdeps/unix/sysv/linux/setrlimit64.c: New file.
* sysdeps/unix/sysv/linux/alpha/oldgetrlimit64.c: New file.
* sysdeps/unix/sysv/linux/alpha/oldsetrlimit64.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/oldgetrlimit64.c: New
file.
* sysdeps/unix/sysv/linux/sparc/sparc64/oldsetrlimit64.c: New
file.
1999-09-11 Paul Eggert <eggert@twinsun.com>
* posix/glob.h (glob): If #defining to glob64, do this before
declaring it, so that all declarations and uses match, and do not
declare glob64, to avoid a declaration clash.
(globfree): Likewise with globfree64.
1999-09-08 Eli Zaretskii <eliz@is.elta.co.il>
* sysdeps/generic/glob.c (prefix_array) [__MSDOS__,WINDOWS32]:
Keep the trailing slash unless DIRNAME is just "x:/".
1999-10-27 Andreas Jaeger <aj@suse.de>
* sysdeps/generic/ifreq.h: New file.
* resolv/res_hconf.c: Add missing includes to get all prototypes.
(_res_hconf_reorder_addrs): Rewrite. This never worked before.
Reported by John DiMarco <jdd@cs.toronto.edu>.
(_res_hconf_reorder_addrs): Made thread safe.
(free_mem): New function, needed for malloc debugging.
1999-10-29 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/if_index.c (opensock): Move function to ...
* sysdeps/generic/opensock.c (__opensock): ...here in a new file.
* sysdeps/unix/sysv/linux/if_index.c: Change all callers of
opensock to use __opensock.
* socket/Makefile (routines): Add opensock.
* include/sys/socket.h (__opensock): Add prototype declaration.
1999-10-18 Andreas Jaeger <aj@suse.de>
Added improved math testsuite:
* math/libm-test.inc: New file, contains all tests from
libm-test.c but in a different form.
* math/libm-test.c: Removed.
* sysdeps/generic/libm-test-ulps: New file: Fallback ulps file.
* math/gen-libm-test.pl: New file: Preprocessor.
* math/test-double.c: Adopted to new testsuite.
* math/test-idouble.c: Likewise.
* math/test-float.c: Likewise.
* math/test-ifloat.c: Likewise.
* math/test-ldouble.c: Likewise.
* math/test-ildoubl.c: Likewise.
* math/Makefile: Added rules to generate new suite.
1999-10-12 Andreas Jaeger <aj@suse.de>
* stdlib/tst-environ.c: Include <string.h> for strcpy declaration.
* math/basic-test.c: Fix typo.
* locale/programs/xstrdup.c: Include string.h for glibc
compilation to get string prototypes.
* sysdeps/unix/sysv/linux/alpha/sys/ucontext.h: Add definition of
gregset_t and fpregset_t.
* sysdeps/generic/s_nexttowardf.c: Add parenthesis to shut up gcc
warnings. Correct value for x == 0.
* argp/argp-help.c: Remove broken definition of flockfile and
funlockfile.
1999-10-12 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/sysv/linux/alpha/bits/sigaction.h: Update to match
generic Linux version.
1999-10-12 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/bits/sigaction.h: Remove K&R compatibility.
1999-10-04 Ulrich Drepper <drepper@cygnus.com>
* include/string.h: Add __memrchr declaration.
* string/string.h: Moce __memrchr declaration to include/string.h.
1999-10-03 Ulrich Drepper <drepper@cygnus.com>
* string/Makefile (routines): Add memrchr.
* sysdeps/generic/memrchr.c: Don't undef memchr, undef memrchr.
Correct order of tests for matching bytes.
* string/tester.c: Add tests for memrchr.
* sysdeps/i386/i486/bits/string.h (__memrchr): Correct implementation.
Start from the last character and take decrement not increment
into account for correction in return line. Add memrchr alias.
* sysdeps/i386/bits/string.h: Likewise.
1999-09-19 Ulrich Drepper <drepper@cygnus.com>
* po/pl.po: Updated.
1999-09-17 Andreas Schwab <schwab@suse.de>
* Makefile (clean): Also remove $(postclean) files.
1999-09-15 Andreas Jaeger <aj@suse.de>
* pwd/Makefile (otherlibs): Add for building with static-nss.
* inet/Makefile (otherlibs): Likewise.
1999-09-15 Andreas Jaeger <aj@suse.de>
* sysdeps/generic/aio_sigqueue.c (__aio_sigqueue): Use old style
function definition to avoid a compilation failure.
1999-09-15 Andreas Jaeger <aj@suse.de>
* stdlib/tst-environ.c (main): Add getenv regression test for
environment variable that's one character long.
1999-09-15 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/i386/sigaction.c: Protect real time
signal definitions to let glibc compile with older Linux versions
(2.0.10 to 2.1.100 or so).
1999-09-10 Andreas Schwab <schwab@suse.de>
* sysdeps/generic/getenv.c (getenv): Fix lookup for single
character variable on bigendian platforms without unaligned memory
access.
1999-08-25 Ulrich Drepper <drepper@cygnus.com>
* inet/Makefile (routines): Add getipnodebynm.
* inet/getipnodebynm.c: New file.
* nss/digits_dots.c: If HAVE_TYPE is define type contains the
interface type.
* nss/nss_files/files-XXX.c: Define EXTRA_ARGS, EXTRA_ARGS_DECL, and
EXTRA_ARGS_VALUE is not already done.
(internal_getent): Allow extra parameters and pass them to parse_line.
(_nss_files_get,ENTNAME_r): Pass extra parameters to internal_getent.
(_nss_files_get##name##_r): Likewise.
* nss/nss_files/files-hosts.c: Define EXTRA_ARGS, EXTRA_ARGS_DECL,
and EXTRA_ARGS_VALUE to pass flags and type to parser.
Add getipnodebyname function.
* nss/nss_files/files-parse.c: Define EXTRA_ARGS, EXTRA_ARGS_DECL, and
EXTRA_ARGS_VALUE is not already done.
(parse_line): Add EXTRA_ARGS_DECL to parameter list.
* nss/nss_db/db-XXX.c (lookup): Allow extra parameters and pass them
to parse_line.
(_nss_db_get##name##_r): Pass extra parameters to lookup.
(_nss_db_get,ENTNAME_r): Likewise.
* sysdeps/generic/if_index.c (__protocol_available): New function.
* sysdeps/unix/sysv/linux/if_index.c: Likewise.
* login/pty-private.h: Move to...
* sysdeps/generic/pty-private.h: ...here.
* sysdeps/unix/sysv/linux/pty-private.h: New file. Linux specific
version.
* login/programs/pt_chown.c (do_pt_chown): Use unix98_pseudo_p is
available.
* dirent/Makefile (routines): Add getdents64.
* sysdeps/unix/sysv/linux/Makefile [dirent] (sysdep_routines):
Remove getdents64.
* dirent/dirent.h: Redirect getdirentries to getdirentries64 if
compiled with _FILE_OFFSET_BITS=64.
* sysdeps/generic/getdents64.c: New file.
* sysdeps/unix/sysv/linux/getdirentries.c: Also redefine off_t and
__lseek for getdirentries64 definition.
* sysdeps/unix/sysv/linux/llseek.c: Make __lseek64 a strong alias.
* sysdeps/unix/sysv/linux/sys/sendfile.h: Don't allow use with
_FILE_OFFSET_BITS=64.
1999-08-19 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/setenv.c: Update(__add_to_environ): Initialize
ep after we have the lock.
* sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h: New file.
Patch by Richard Henderson.
1999-08-18 Ulrich Drepper <drepper@cygnus.com>
* ctype/ctype.h: Avoid useless #endif #if pairs.
* dirent/dirent.h: Define ino_t and ino64_t if not done already.
(seekdir): Fix type of second parameter.
* sysdeps/generic/seekdir.c: Likewise.
* sysdeps/mach/hurd/seekdir.c: Likewise.
* sysdeps/unix/seekdir.c: Likewise.
* dlfcn/dlfcn.h: Define RTLD_NEXT and RTLD_DEFAULT only if __USE_GNU.
* posix/sys/types.h: Define type useconds_t if not done already.
* posix/unistd.h: Likewise. Use this in ualarm and usleep
declarations.
* sysdeps/generic/bits/types.h: Define type __useconds_t.
* sysdeps/unix/sysv/linux/alpha/bits/types.h: Likewise.
* sysdeps/unix/sysv/linux/bits/types.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/types.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/types.h: Likewise.
* sysdeps/unix/sysv/sysv4/solaris2/bits/types.h: Likewise.
1999-08-15 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/aio_sigqueue.c: Take extra parameter and
initialize si_pid from it.
* sysdeps/generic/aio_sigqueue.c (__aio_sigqueue): Take extra
parameter.
* rt/aio_misc.c (__aio_enqueue_request): Initialize caller_pid.
* rt/aio_misc.h (struct waitlist): Add caller_pid element.
(struct requestlist): Likewise.
Adjust prototypes of __aio_notify_only and __aio_sigqueue.
* rt/notify.c (__aio_notify_only): Take extra parameter. Pass it
to __aio_sigqueue.
(__aio_notify): Pass caller PID to __aio_notify_only.
* rt/aio_suspend.c: Initialize caller_pid.
* rt/lio_listio.c: Likewise.
* rt/lio_listio64.c: Likewise.
* rt/lio_listio.c: If nothing has to be done free mutex before
signalling.
* rt/lio_listio64.c: Likewise.
1999-08-02 Thorsten Kukuk <kukuk@suse.de>
* nis/nis_callback.c (internal_nis_do_callback) use poll()
instead of select().
1999-08-02 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/s_nextafter.c: Define __nexttoward and
nexttoward so something else so that aliasing works.
1999-08-02 Thorsten Kukuk <kukuk@suse.de>
* sysdeps/generic/math_ldbl.h: Fix typo.
* sysdeps/generic/strtold.c: Remove unbalanced #endif.
* sysdeps/alpha/fpu/e_sqrt.c: Use new path for e_sqrt.c.
1999-08-02 Ulrich Drepper <drepper@cygnus.com>
* elf/resolvfail.c: Include stdio.h. Also test dlerror.
1999-07-30 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/sysv/linux/getsysstats.c (GET_NPROCS_PARSER): New
definition.
(__get_nprocs): Use it.
(__get_nprocs_conf): Define as separate function if
GET_NPROCS_CONF_PARSER is defined.
* sysdeps/unix/sysv/linux/alpha/getsysstats.c: New file.
* include/sys/sysinfo.h: New file.
* sysdeps/generic/sys/sysinfo.h: Remove declaration of internal
interface.
* sysdeps/unix/sysv/linux/sys/sysinfo.h: Likewise.
1999-07-30 H.J. Lu <hjl@gnu.org>
* libio/iofflush.c (fflush_unlocked): Weak aliase if
_IO_MTSAFE_IO is not defined.
* libio/clearerr.c (clearerr_unlocked): Likewise.
* libio/feof.c (feof_unlocked): Likewise.
* libio/ferror.c (ferror_unlocked): Likewise.
* libio/fputc.c (fputc_unlocked): Likewise.
* libio/getc.c (getc_unlocked, fgetc_unlocked): Likewise.
* libio/getchar.c (getchar_unlocked): Likewise.
* libio/putc.c (putc_unlocked): Likewise.
* libio/putchar.c (putchar_unlocked): Likewise.
1999-07-30 Thorsten Kukuk <kukuk@suse.de>
* sunrpc/Versions: Add svc_getreq_common, svc_getreq_poll,
svc_max_pollfd and svc_pollfd to GLIBC_2.2
* sunrpc/rpc/svc.h: Use rpc*_t types, add new prototypes
for svc_run/poll interface.
* sunrpc/rpc/types.h: Add rpc*_t typedefs.
* sunrpc/rpc_common.c: Add svc_pollfd and svc_max_pollfd as
global variable.
* sunrpc/svc.c: Add svc_getreq_poll and svc_getreq_common,
rewrite other svc_getreq* functions to use svc_getreq_common.
* sunrpc/svc_run.c: Use poll().
1999-07-30 Andreas Schwab <schwab@suse.de>
* Makerules: Put sysd-versions and Versions.all on
postclean-generated instead of common-generated.
1999-07-29 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/time.texi (Basic CPU Time): Note that clock_t can wrap
around and CLOCKS_PER_SEC is 1e6.
* malloc/malloc.c (ptmalloc_init): Also initialize __libc_pagesize
if no threads are used.
* libio/iofwrite.c: Add weak alias for _unlocked function if not
_IO_MTSAFE_IO.
* libio/iofread.c: Likewise.
* libio/iofgets.c: Likewise.
* libio/iofputs.c: Likewise.
* sysdeps/generic/bits/libc-lock.h (__libc_cleanup_end): New
definition.
* sysdeps/generic/setenv.c: Move setenv code in new function
__add_to_environ. Add new parameter specifying already
constructed string for the environment.
(setenv): Call __add_to_environ with new parameter set to NULL.
(unsetenv): Really test all elements for duplicated name. Missed those
cases where the two are following each other.
* sysdeps/generic/putenv.c: Use __add_to_environ instead of setenv.
* include/stdlib.h: Add prototype of __add_to_environ.
* stdlib/tst-environ.c: New file.
* 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>
* 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.
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.
* 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>.
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-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.
* sysdeps/generic/siglist.h: ... here. This file should be usable for
any platform, since it just associates the SIG* macros with text names
and descriptions. For any signal macros do not exist on every
platform, we can use #ifdef tests here and still use this single
common file for all platforms.
* sysdeps/generic/siglist.c: Rewrite using <siglist.h>. This file
should be usable for all platforms after the binary compatibility
stuff in the current sysdeps/gnu version is no longer required.
* sysdeps/generic/Makefile: Remove rules for generating siglist.c.
* sysdeps/generic/make_siglist.c: File removed.
1999-06-16 Roland McGrath <roland@baalperazim.frob.com>
1999-06-14 Geoff Keating <geoffk@ozemail.com.au>
* stdlib/tst-strtoll.c: New file.
* stdlib/Makefile (tests): Add tst-strtoll.c
* stdlib/strtol.c: It is not generally true that if
(unsigned)a*(unsigned)b overflows, then the result is
less than 'a'.
* sysdeps/generic/strchr.c: Include <memcopy.h> and use reg_char
for character to search, to help the compiler.
* sysdeps/generic/strchrnul.c: Likewise.
* sysdeps/generic/memchr.c: Likewise.
* sysdeps/generic/memccpy.c: Likewise.
* sysdeps/generic/rawmemchr.c: Likewise. Fix comment.
1999-06-13 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
1999-06-09 Jakub Jelinek <jj@ultra.linux.cz>
* stdlib/longlong.h: gas changed sethi handling when without
%hi(). Fix assembly.
* sysdeps/generic/dl-cache.c (_dl_cache_lookup): Allow
port specific cache id checks.
* sysdeps/generic/dl-cache.h: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/dl-cache.h: New file.
1999-06-07 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/if_index.c: Use SIGIOCGIFINDEX and fix
another SIOGIFNAME typo.
1999-06-07 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-lookup.c: Remove duplicated assert.h inclusion.
* sysdeps/generic/printf_fphex.c (__printf_fphex): Optimize a little
bit.
1999-06-05 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sysdeps/generic/printf_fphex.c (__printf_fphex): Don't ignore
the precision if the mantissa is zero.
1999-06-05 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* manual/lang.texi (Floating Point Parameters): GCC already
supports long double for a long time.
1999-06-05 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* math/libm-test.c (j0_test, j1_test, jn_test, y0_test, y1_test,
yn_test): Increase some epsilons.
1999-05-26 Jakub Jelinek <jj@ultra.linux.cz>
* stdlib/longlong.h (add_ssaaaa, sub_ddmmss, umul_ppmm):
Optimized sparc64 routines.
* stdio-common/vfprintf.c (vfprintf): Don't handle long numbers if
they are the same as ints.
* stdio-common/vfscanf.c (_IO_vfscanf): Likewise.
* wcsmbs/wcstol.c: Moved to ...
* sysdeps/generic/wcstol.c: ...here.
* wcsmbs/wcstoul.c: Moved to ...
* sysdeps/generic/wcstoul.c: ...here.
* wcsmbs/wcstoll.c: Moved to ...
* sysdeps/generic/wcstoll.c: ...here.
* wcsmbs/wcstoull.c: Moved to ...
* sysdeps/generic/wcstoull.c: ...here.
* wcsmbs/wcstol_l.c: Moved to ...
* sysdeps/generic/wcstol_l.c: ...here.
* wcsmbs/wcstoul_l.c: Moved to ...
* sysdeps/generic/wcstoul_l.c: ...here.
* wcsmbs/wcstoll_l.c: Moved to ...
* sysdeps/generic/wcstoll_l.c: ...here.
* wcsmbs/wcstoull_l.c: Moved to ...
* sysdeps/generic/wcstoull_l.c: ...here.
* sysdeps/wordexp-64/wcstol.c: New file.
* sysdeps/wordexp-64/wcstoul.c: New file.
* sysdeps/wordexp-64/wcstoll.c: New file.
* sysdeps/wordexp-64/wcstoull.c: New file.
* sysdeps/wordexp-64/wcstol_l.c: New file.
* sysdeps/wordexp-64/wcstoul_l.c: New file.
* sysdeps/wordexp-64/wcstoll_l.c: New file.
* sysdeps/wordexp-64/wcstoull_l.c: New file.
1999-05-25 Ulrich Drepper <drepper@cygnus.com>
* stdlib/strtol.c: Moved to ...
* sysdeps/generic/strtol.c: ...here.
* stdlib/strtoul.c: Moved to ...
* sysdeps/generic/strtoul.c: ...here.
* stdlib/strtoll.c: Moved to ...
* sysdeps/generic/strtoll.c: ...here.
* stdlib/strtoull.c: Moved to ...
* sysdeps/generic/strtoull.c: ...here.
* stdlib/strtol_l.c: Moved to ...
* sysdeps/generic/strtol_l.c: ...here.
* stdlib/strtoul_l.c: Moved to ...
* sysdeps/generic/strtoul_l.c: ...here.
* stdlib/strtoll_l.c: Moved to ...
* sysdeps/generic/strtoll_l.c: ...here.
* stdlib/strtoull_l.c: Moved to ...
* sysdeps/generic/strtoull_l.c: ...here.
* sysdeps/wordexp-64/strtol.c: New file.
* sysdeps/wordexp-64/strtoul.c: New file.
* sysdeps/wordexp-64/strtoll.c: New file.
* sysdeps/wordexp-64/strtoull.c: New file.
* sysdeps/wordexp-64/strtol_l.c: New file.
* sysdeps/wordexp-64/strtoul_l.c: New file.
* sysdeps/wordexp-64/strtoll_l.c: New file.
* sysdeps/wordexp-64/strtoull_l.c: New file.
1999-05-19 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/generic/bits/elfclass.h: Version common to
wordsize-32 and wordsize-64.
* sysdeps/generic/bits/environments.h: Ditto.
* sysdeps/generic/stdint.h: Ditto.
* sysdeps/generic/inttypes.h: Ditto.
* sysdeps/generic/bits/wordsize.h: New file.
* stdlib/Makefile: Add bits/wordsize.h to headers.
* sysdeps/sparc/sparc64/bits/wordsize.h: New file.
* sysdeps/sparc/sparc64/fpu/bits/fenv.h: Allow the same exported
headers to be used for 32bit and 64bit ABI compilations.
* sysdeps/sparc/sparc64/fpu/fpu_control.h: Ditto.
* sysdeps/unix/sysv/linux/sparc/sparc64/bits/setjmp.h: Ditto.
* sysdeps/unix/sysv/linux/sparc/sparc64/bits/types.h: Ditto.
* sysdeps/unix/sysv/linux/sparc/sparc64/bits/statfs.h: Ditto.
* sysdeps/unix/sysv/linux/sparc/sparc64/sys/ucontext.h: Ditto.
* sysdeps/wordsize-64/bits/elfclass.h: Remove.
* sysdeps/wordsize-64/bits/environments.h: Remove.
* sysdeps/wordsize-64/stdint.h: Remove.
* sysdeps/wordsize-64/inttypes.h: Remove.
* sysdeps/wordsize-64/bits/wordsize.h: New file.
* sysdeps/wordsize-32/bits/elfclass.h: Remove.
* sysdeps/wordsize-32/bits/environments.h: Remove.
* sysdeps/wordsize-32/stdint.h: Remove.
* sysdeps/wordsize-32/inttypes.h: Remove.
* sysdeps/wordsize-32/bits/wordsize.h: New file.
1999-05-19 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/sparc/sparc64/memcpy.S (__align_cpy_4, __align_cpy_8,
__align_cpy_16): New functions.
(__align_cpy_2, __align_cpy_1): New aliases to memcpy.
* sysdeps/sparc/sparc32/Versions: New file.
* sysdeps/sparc/sparc64/Versions: New file.
* sysdeps/sparc/Versions: Remove.
1999-05-19 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/unix/sysv/linux/configure.in:
On sparc64-*-linux*, set slibdir to /lib64 if prefix
is /usr, plus set libdir to ${exec_prefix}/lib64.
* sysdeps/unix/sysv/linux/configure: Regenerated.
* config.make.in: Propagate libdir settings from configure
to the Makefiles.
* shlib-versions: sparc64-*-linux* dynamic linker is
/lib64/ld-linux.so.2.
1999-05-14 Mark Kettenis <kettenis@gnu.org>
* sysdeps/generic/getutmp.c: Include <string.h>
(getutmp): Rewrite to only copy those members that are really
present in `struct utmp'.
* sysdeps/generic/getutmpx.c: Likewise.
1999-05-11 Ulrich Drepper <drepper@cygnus.com>
* elf/Versions (ld.so) [GLIBC_2.1.1]: Add _dl_lazy.
* elf/dl-open.c (_dl_open_worker): Only relocate newly loaded objects
lazily if LD_BIND_NOW is not set.
* elf/dl-support.c (_dl_lazy): New variable.
(non_dynamic_init): Set _dl_lazy according to LD_BIND_NOW envvar.
* elf/rtld.c (_dl_lazy): new global variable.
( dl_main): Remove lazy, replace it by _dl_lazy.
1999-05-06 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* locale/setlocale.c (new_composite_name): Check also whether the
first category name differs.
1999-05-11 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sysdeps/unix/sysv/linux/ftime.c: Use the bsd implementation, not
the generic one.
1999-05-11 Philip Blundell <pb@nexus.co.uk>
* sysdeps/generic/bits/socket.h (struct sockaddr_storage): New
structure; storage suitable for any socket address.
* sysdeps/unix/sysv/linux/bits/socket.h (struct sockaddr_storage):
Likewise.
* sysdeps/unix/sysv/linux/mips/bits/socket.h (struct
sockaddr_storage): Likewise.
* inet/netinet/in.h: Use ULONG_MAX not ~0 to test for a 64-bit
platform.
* 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/generic/glob.c (glob_in_dir): It's no error if opendir
fails on a file.
Reported by Sergei Ivanov <svivanov@pdmi.ras.ru> [PR libc/1032].
1999-04-10 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Rewrite to
use binary search.
Based on a patch by Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>.
1999-04-07 H.J. Lu <hjl@gnu.org>
* manual/install.texi (Reporting Bugs): Add section about reported
1999-03-17 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/segfault.c (write_strsignal): New function.
(catch_segfault): Use it instead of calling strsignal.
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-09 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* stdlib/strtod.c (round_and_return): Fix rounding of denormals.
(DENORM_EXP): New define. Use it as the exponent for a denormal.
* stdlib/strtold.c: Moved to ...
* sysdeps/generic/strtold.c: ... here.
* sysdeps/m68k/strtold.c: New file.
1999-03-09 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* stdio-common/printf_fphex.c (__printf_fphex): Print no decimal
point if the precision is zero, even if the mantissa is non-zero.
1999-02-07 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-lookup.c: Increment _dl_num_relocations in the four entry
point functions, not do_lookup since the later can be called more
than once.
1999-01-23 Ulrich Drepper <drepper@cygnus.com>
* nss/nss_files/files-XXX.c (internal_getent): Make sure the buffer has
at least two bytes (not one). Correct buflen parameter type.
* nss/nss_files/files-alias.c (get_next_alias): Make sure buffer
has at least two bytes. Use fgets_unlocked instead of fgets.
* ctype/ctype.h: Don't user __tolower directly for tolower
implementation. Use inline function which tests for the range
first. Make _tolower equivalent to old tolower macros.
Likewise for toupper.
* ctype/ctype.c: Change tolower/toupper definition accordingly.
* argp/argp-help.c: Use _tolower instead of tolower if possible.
* inet/ether_aton_r.c: Likewise.
* inet/ether_line.c: Likewise.
* inet/rcmd.c: Likewise.
* intl/l10nflist.c: Likewise.
* locale/programs/ld-collate.c: Likewise.
* locale/programs/linereader.c: Likewise.
* locale/programs/localedef.c: Likewise.
* nis/nss_nis/nis-alias.c: Likewise.
* nis/nss_nis/nis-network.c: Likewise.
* posix/regex.c: Likewise.
* resolv/inet_net_pton.c: Likewise.
* stdio-common/printf_fp.c: Likewise.
* stdio-common/vfscanf.c: Likewise.
* sysdeps/generic/strcasestr.c: Likewise.
* math/bits/mathcalls.h: Fix typo.
* sysdeps/unix/sysv/linux/sys/sysmacros.h: Pretty print.
* sysdeps/unix/sysv/linux/Dist: Remove sys/sysmacros.h.
* sysdeps/unix/sysv/linux/Makefile: Remove sys/sysmacros.h.
* posix/Makefile (headers): Add sys/sysmacros.h.
* posix/sys/types.h: Include sys/sysmacros.h for __USE_BSD.
* sysdeps/generic/sys/sysmacros.h: New file.
* sysdeps/mach/hurd/xmknod.c: Include sys/types.h and remove minor and
major definition.