* sysdeps/mach/hurd/setitimer.c (quantize_timeval): New function.
(setitimer_locked): Use it to quantize the timer values. Use
quantized timer values to check if the timeout changed.
2000-01-23 Mark Kettenis <kettenis@gnu.org>
* inet/rexec.c (rexec_af): Use SA_LEN instead of __libc_sa_len.
2000-01-22 Thorsten Kukuk <kukuk@suse.de>
* sunrpc/xdr_rec.c: Don't set frag_sent if no more data,
fixes part 2 of bug 1549.
* sunrpc/rpc_des.h: Remove unused defines.
2000-01-22 Mark Kettenis <kettenis@gnu.org>
* intl/Makefile ($(objpfx)msgs.h): Do $(make-target-directory) first.
2000-01-22 Thorsten Kukuk <kukuk@suse.de>
* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Remove sys/io.h.
* sysdeps/unix/sysv/linux/alpha/Makefile: Add sys/io.h.
* sysdeps/unix/sysv/linux/arm/Makefile: Likewise.
* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
* sysdeps/unix/sysv/linux/sys/io.h: Move from here ...
* sysdeps/unix/sysv/linux/i386/sys/io.h: ... to here, add inb, outb
and other inline functions for port access.
* sysdeps/unix/sysv/linux/alpha/sys/io.h: Add prototypes for port
access functions.
2000-01-23 Ulrich Drepper <drepper@cygnus.com>
* iconv/gconv_simple.c: Fix two problems in UTF-8 decoder.
Patch by Bruno Haibe <haible@ilog.fr>.
* sysdeps/mach/hurd/errnos.awk: Rediddle to collect lines and print
them all at the end, eliding the final comma.
* sysdeps/mach/hurd/bits/errno.h: Regenerated.
* sysdeps/unix/sysv/linux/fstatvfs.c: Move actual code in...
* sysdeps/unix/sysv/linux/internal_statvfs.c: ...here. New file.
* sysdeps/unix/sysv/linux/statvfs.c: Don't use fstatvfs since the
open call would require read permission.
Patch by James Antill <james@and.org>.
* sysdeps/unix/sysv/linux/Dist: Add internal_fnmatch.c.
* inet/getnameinfo.c: Terminate host name for NI_NOFQDN.
PR1515. Patches by Hideaki YOSHIFUJI <yoshfuji@ecei.tohoku.ac.jp>.
* sysdeps/posix/getaddrinfo.c (gaih_local): If name is given and
AI_NUMERICHOST flag is set, return an error.
Patch by Hideaki YOSHIFUJI <yoshfuji@ecei.tohoku.ac.jp>.
2000-01-17 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/bits/ipc.h: New file.
* sysdeps/unix/sysv/linux/bits/sem.h: New file.
* sysdeps/unix/sysv/linux/bits/shm.h: New file.
* sysdeps/unix/sysv/linux/bits/msg.h: New file.
* sysdeps/unix/sysv/linux/bits/alpha/ipc.h: Update for new ipc.
* sysdeps/unix/sysv/linux/bits/alpha/sem.h: New file.
* sysdeps/unix/sysv/linux/bits/alpha/shm.h: New file.
* sysdeps/unix/sysv/linux/bits/alpha/msg.h: New file.
* sysdeps/unix/sysv/linux/bits/sparc/ipc.h: New file.
* sysdeps/unix/sysv/linux/bits/sparc/sem.h: New file.
* sysdeps/unix/sysv/linux/bits/sparc/shm.h: New file.
* sysdeps/unix/sysv/linux/bits/sparc/msg.h: New file.
* sysdeps/unix/sysv/linux/msgctl.c (__old_msgctl):
Renamed from msgctl.
(__new_msgctl): New function.
* sysdeps/unix/sysv/linux/semctl.c (__old_semctl):
Renamed from semctl.
(__new_semctl): New function.
* sysdeps/unix/sysv/linux/shmctl.c (__old_shmctl):
Renamed from shmctl.
(__new_shmctl): New function.
* sysdeps/unix/sysv/linux/msgget.c: Define __LIBC_IPC_INTERNAL.
* sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
* sysdeps/unix/sysv/linux/semget.c: Likewise.
* sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
* sysdeps/unix/sysv/linux/semop.c: Likewise.
* sysdeps/unix/sysv/linux/shmat.c: Likewise.
* sysdeps/unix/sysv/linux/shmdt.c: Likewise.
* sysdeps/unix/sysv/linux/shmget.c: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/msgctl.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/shmctl.c: New file.
* sysdeps/unix/sysv/linux/Versions: Add msgctl, semctl, shmctl.
2000-01-17 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/Dist: Remove setres[ug]id.
* sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: Kill warnings.
* sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Define needed
syscalls.
* sysdeps/unix/sysv/linux/pwrite64.c: Use proper prototype.
* sysdeps/unix/sysv/linux/truncate64.c: Likewise.
* sysdeps/unix/sysv/linux/kernel-features.h: [gs]etres[ug]id are
available on sparc since 2.3.39.
* sysdeps/unix/sysv/linux/execve.c: Kill warnings.
2000-01-17 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/i386/chown.c (__syscall_chown): Use proper
prototype.
(__real_chown): Return EINVAL if owner or group are out of the range
-1U .. 65534.
* sysdeps/unix/sysv/linux/i386/lchown.c (__lchown): Likewise.
* sysdeps/unix/sysv/linux/i386/fchown.c (__fchown): Likewise.
* sysdeps/unix/sysv/linux/i386/setresuid.c (__setresuid): Return
EINVAL if ruid, euid or suid are out of the range -1U .. 65534.
* sysdeps/unix/sysv/linux/i386/setresgid.c (__setresgid): Similarly.
* sysdeps/unix/sysv/linux/i386/setreuid.c (__setreuid): Simplify.
* sysdeps/unix/sysv/linux/i386/setregid.c (__setregid): Likewise.
* sysdeps/unix/sysv/linux/m68k/chown.c (__syscall_chown): Use proper
prototype.
Don't include non-existant header.
(__chown): Return EINVAL if owner or group are out of the range
-1U .. 65534.
* sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list (setresuid,
setresgid): Inherit standard linux/syscalls.list definitions.
* sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: Remove.
* sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: Remove.
* sysdeps/unix/sysv/linux/syscalls.list (setresgid): Provide
__setresgid symbol.
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-13 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/i386/mmap64.S: Fix code generated if
mmap2 is available when compiling but no at runtime.
2000-01-11 Andreas Schwab <schwab@suse.de>
* sysdeps/mips/__longjmp.c (__longjmp): Change call to abort into
infinite loop to avoid pulling in stdio in the dynamic linker.
* sysdeps/mips/dl-machine.h (elf_machine_matches_host): Follow
change from 1999-10-07 to elf/elf.h and rename EM_MIPS_RS4_BE to
EM_MIPS_RS3_LE.
* sysdeps/mips/mips64/dl-machine.h: Likewise.
2000-01-09 Philip Blundell <philb@gnu.org>
* sysdeps/arm/dl-machine.h (CLEAR_CACHE): System calls clobber R0.
(dl_platform_init): Allow _dl_platform to be NULL.
* sysdeps/unix/sysv/linux/arm/sysdep.h (UNDOARGS_5): Fix error in
last change.
2000-01-03 Kaz Kylheku <kaz@ashi.footprints.net>
Redesigned how cancellation unblocks a thread from internal
cancellation points (sem_wait, pthread_join,
pthread_cond_{wait,timedwait}).
Cancellation won't eat a signal in any of these functions
(*required* by POSIX and Single Unix Spec!).
* condvar.c: spontaneous wakeup on pthread_cond_timedwait won't eat a
simultaneous condition variable signal (not required by POSIX
or Single Unix Spec, but nice).
* spinlock.c: __pthread_lock queues back any received restarts
that don't belong to it instead of assuming ownership of lock
upon any restart; fastlock can no longer be acquired by two threads
simultaneously.
* restart.h: restarts queue even on kernels that don't have
queued real time signals (2.0, early 2.1), thanks to atomic counter,
avoiding a rare race condition in pthread_cond_timedwait.
2000-01-02 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/ioperm.c: Use sysctl by preference
to obtain port mapping information. Avoid use of mprotect.
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.
2000-01-03 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_MMAP2_SYSCALL,
__ASSUME_TRUNCATE64_SYSCALL, __ASSUME_STAT64_SYSCALL): Define on
ARM for kernels >= 2.3.35.
2000-01-03 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/mmap.S: Remove mmap64 alias.
Optimise error handling a little.
* sysdeps/unix/sysv/linux/arm/mmap64.S: New file.
2000-01-03 Andreas Jaeger <aj@suse.de>
* include/resolv.h: Remove declarations for __ns_name_ntop and
__ns_name_unpack since those are available in resolv/arpa/nameser.h.
2000-01-03 Andreas Jaeger <aj@suse.de>
* time/tst-strptime.c (test_tm): Add tests for all fields of
struct tm.
2000-01-03 Ulrich Drepper <drepper@cygnus.com>
* string/bits/string2.h (__strsep_g): Don't handle empty __S special.
2000-01-03 Andreas Jaeger <aj@suse.de>
* string/tester.c (test_strsep): Add one more test.
2000-01-03 Philip Blundell <philb@gnu.org>
* string/tester.c (test_mempcpy): New function.
(main): Call it.
(test_memcpy): Test unaligned cases too.
* sysdeps/arm/bits/string.h (_HAVE_STRING_ARCH_mempcpy): Define.
* sysdeps/arm/fpu/bits/mathdef.h: New file.
* nss/Makefile: Add rules to build makedb.
* posix/Makefile (tests): Add tst-mmap.
* posix/tst-mmap.c: New file.
* sysdeps/unix/sysv/linux/i386/mmap64.S: Pop registers after mmap2
call before handling error.
1999-12-30 Geoffrey Keating <geoffk@cygnus.com>
* sysdeps/powerpc/dl-machine.c: Many minor formatting changes.
(OPCODE_LWZU): New macro.
(OPCODE_ADDIS_HI): New macro.
(OPCODE_LIS_HI): New macro.
(__elf_machine_runtime_setup): Change PLT code-generation scheme
for thread safety even with very large PLTs, better efficiency,
and to fix a cache-flushing bug. Also support the Motorola
8xx processors which have a different cache line size than all
the others.
(__elf_machine_fixup_plt): Likewise.
(__process_machine_rela): Don't use elf_machine_fixup_plt.
the (void) casts as now feraiseexcept returns a value.
(feclearexcept): Likewise.
* sysdeps/unix/sysv/linux/powerpc/sysdep.h: Don't use '%r0',
it interferes with the macros for AIX.
1999-12-30 Geoff Keating <geoffk@cygnus.com>
* sysdeps/powerpc/fpu/bits/fenvinline.h (feraiseexcept): Remove
the (void) casts as now feraiseexcept returns a value.
(feclearexcept): Likewise.
* sysdeps/unix/sysv/linux/powerpc/sysdep.h: Don't use '%r0',
it interferes with the macros for AIX.
1999-12-26 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/syscalls.list: Remove vm86. Set
argument count for `syscall' to 7.
* sysdeps/unix/sysv/linux/arm/sysdep.h: Add support for syscalls
with more than five arguments.
(DOARGS_5, UNDOARGS_5): Don't corrupt the calling stack frame.
1999-12-24 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/posix/system.c (__libc_system): Check whether command
processor is available if LINE is NULL. Don't return immediately
if wait call returned with EINTR.
Patches by Geoff Clare <gwc@unisoft.com> (PR libc/1497 and libc/1498).
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.